sql >> Database teknologi >  >> NoSQL >> CouchDB

Nyttige scripts til Couchbase Dba

Hvorfor Couchbase?

Nutidens missionskritiske applikationer kræver support til millioner af interaktioner med slutbrugere. Traditionelle databaser blev bygget til tusindvis. Designet til konsistens og kontrol, de mangler smidighed, fleksibilitet og skalerbarhed. For at udføre flere use cases er organisationer tvunget til at implementere flere typer databaser, hvilket resulterer i en "database sprawl" - og ineffektivitet, træg tid til markedet og dårlig kundeoplevelse. Traditionelle transaktions- og analytiske databaser går forud for nutidens virkelighed i skyen overalt. En cloud-native dataadministrationsplatform giver dig en reel konkurrencefordel.

Virksomheder indser, at kravene til ekstraordinært kundeengagement ikke kun kan opfyldes på app-niveauet. At bygge en flot og veldesignet app er kun en begyndelse. Det er den underliggende database, der gør forskellen. En Engagement Database driver flere interaktioner og oplevelser ved at frigøre det fulde potentiale af data, i enhver skala, på tværs af enhver kanal eller enhed, for at skabe et mere meningsfuldt forhold.

Couchbase Server er en open source, distribueret, NoSQL dokumentorienteret engagementsdatabase. Det afslører et hurtigt nøgleværdilager med administreret cache til dataoperationer på under millisekunder, specialbyggede indeksere til hurtige forespørgsler og en kraftfuld forespørgselsmotor til at udføre SQL-lignende forespørgsler. Til mobil- og Internet of Things-miljøer kører Couchbase også indbygget på enheden og administrerer synkronisering til serveren.

Couchbase Server er specialiseret til at levere datastyring med lav latens til interaktive web-, mobil- og IoT-applikationer i stor skala. Almindelige krav, som Couchbase Server er designet til at opfylde, omfatter:

  • Unified Programming Interface
  • Forespørgsel
  • Søg
  • Mobil og IoT
  • Analyse
  • Kernedatabasemotor
  • Udskaleringsarkitektur
  • Memory-first-arkitektur
  • Big data og SQL integrationer
  • Sikkerhed i fuld stack
  • Container- og Cloud-implementeringer
  • Høj tilgængelighed

Couchbase-scripts til dbas

Couchbase er også hurtigere til at læse og skrive end andre open source-databaser.

Opgradering er nul nedetid.

Doc for Couchbase

https://docs.couchbase.com/server/6.5/getting-started/start-here.html

Videouddannelse til Couchbase

https://learn.couchbase.com/store

Forskelle mellem virksomheder og samfund

https://www.couchbase.com/products/editions

 

export JAVA_HOME=/usr/java/jre1.8.0_241-amd64
export PATH=$PATH:$JAVA_HOME/bin
export CAUCHBASE_HOME=/opt/couchbase
export PATH=$PATH:$CAUCHBASE_HOME/bin
export LD_LIBRARY_PATH=/opt/couchbase/lib
export CLASSPATH=$CLASSPATH:/opt/couchbase/lib/*
export PYTHONPATH=/opt/couchbase/lib/python
#Install cauchbase
wget https://packages.couchbase.com/releases/6.0.0/couchbase-server-community-6.0.0-centos7.x86_64.rpm
rpm -ivh couchbase-server-community-6.0.0-centos7.x86_64.rpm



#Start couchbase
systemctl enable couchbase-server
systemctl start couchbase-server
systemctl status couchbase-server


#bucket-create
couchbase-cli bucket-create --cluster=192.168.56.74:8091 --user Administrator --password password --bucket travel-data --bucket-type couchbase --bucket-ramsize 100 --bucket-replica 1 --compression-mode active
#backup
mkdir -p /tmp/cbbackup/
cd /opt/couchbase/bin
cbbackup http://192.168.56.74:8091 /tmp/cbbackup/ -u Administrator -p password

#restore
 
cbrestore /tmp/cbbackup http://192.168.56.74:8091 -u Administrator -p password --bucket-source=travel-data --bucket-destination=travel-data
#Audit setting
couchbase-cli setting-audit -c 192.168.56.74:8091 --username Administrator \
--password password --audit-enabled 1 --audit-log-rotate-interval 604800 \
--audit-log-path /opt/couchbase/var/lib/couchbase/logs


#List cluster
couchbase-cli server-list -c 192.168.56.74:8091 --username Administrator \
--password password

 
#Couchbase terminal
cd /opt/couchbase/bin 
./cbq -u Administrator -p password -engine=http://192.168.56.74:8091/



#Dba forespørgsler SELECT * FRA system:keyspaces; vælg active_requests.* fra system:active_requests; vælg * fra system:completed_requests; VÆLG * FRA system:min_brugerinfo; VÆLG * FRA system:brugerinfo; VÆLG * FRA system:noder; VÆLG * FRA system:funktioner; VÆLG * FRA system:functions_cache;

#Revisions effekt på ydeevne

Revision er lukket med alle futures. Stresstest:
1000000 række, 10 min, 1,2gb. Spanden har 2 replikaer. 20 pers.

Revision åbnes med alle futures. Stresstest:
1000000 række, 10 min, 1,2gb. Spanden har 2 replikaer. 20 pers. Revisionsfilstørrelse =256 kb.

#Sample queries
SELECT callsign FROM `travel-sample` LIMIT 5;
SELECT * FROM `travel-sample` WHERE type="airport" LIMIT 1;
SELECT name FROM `travel-sample` WHERE type="hotel" AND city="Medway" and pets_ok=true LIMIT 10;
SELECT name,phone FROM `travel-sample` WHERE type="hotel" AND city="Manchester" and directions IS NOT MISSING ORDER BY name LIMIT 10;
#perf metric data
cbstats 192.168.56.74:11210 -j -u Administrator -p password -b travel-data all


#Rebalance status with http protocol as rest api
curl --silent -u Administrator:password 192.168.56.74:8091/pools/default/tasks | python -mjson.tool | grep -A1 -B4 rebalance
#Stats on web interface
http://192.168.56.74:8091/pools/default/buckets/travel-data/stats


#Databelastning til stresstest

cbworkloadgen -n 192.168.56.74:8091 \
-n 192.168.56.74:8091 \
-u Administrator -p password \
-r .9 -i 1000000 -j \
-s 100 \
-b travel-data \
-t 10


#Cluster server list
couchbase-cli server-list -c 192.168.56.74:8091 --username Administrator --password password
curl -u Administrator:password -v -X GET http://192.168.56.74:8091/pools/default | jq '.' | grep hostname


#Session time out set
curl -X POST -u Administrator:password \
http://192.168.56.74:8091/settings/security \
-d "uiSessionTimeout=600"

#Stats
cbstats -b travel-data -u Administrator -p password \
192.168.56.74:11210 vbucket | grep 1014


Thanks

  1. Ændring af Redis-port i Docker Compose virker ikke

  2. Hvad er den bedste måde at lave ajax-paginering på med MongoDb og Nodejs?

  3. Hvordan opdaterer man _id'et for et MongoDB-dokument?

  4. Hurtig referencevejledning til forskellige NoSQL-databaser