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

Script utili per Couchbase Dba

Perché Couchbase?

Le odierne applicazioni mission-critical richiedono supporto per milioni di interazioni con gli utenti finali. I database tradizionali sono stati creati per migliaia. Progettati per coerenza e controllo, mancano di agilità, flessibilità e scalabilità. Per eseguire più casi d'uso, le organizzazioni sono costrette a distribuire più tipi di database, con conseguente "espansione incontrollata del database" e inefficienza, tempi di commercializzazione lenti e scarsa esperienza del cliente. I tradizionali database transazionali e analitici sono antecedenti alla realtà odierna del cloud ovunque. Una piattaforma di gestione dei dati cloud-native ti offre un vero vantaggio competitivo.

Le aziende si stanno rendendo conto che i requisiti per un coinvolgimento straordinario dei clienti non possono essere soddisfatti solo a livello di app. Costruire un'app bella e ben progettata è solo l'inizio. Il database sottostante è ciò che fa la differenza. Un database di coinvolgimento alimenta molteplici interazioni ed esperienze liberando il pieno potenziale dei dati, su qualsiasi scala, su qualsiasi canale o dispositivo, al fine di promuovere una relazione più significativa.

Couchbase Server è un database di coinvolgimento NoSQL orientato ai documenti open source, distribuito. Espone un veloce archivio chiave-valore con cache gestita per operazioni di dati inferiori al millisecondo, indicizzatori appositamente creati per query veloci e un potente motore di query per l'esecuzione di query di tipo SQL. Per gli ambienti mobile e Internet of Things, Couchbase funziona anche in modo nativo sul dispositivo e gestisce la sincronizzazione con il server.

Couchbase Server è specializzato nella gestione dei dati a bassa latenza per applicazioni Web interattive, mobili e IoT su larga scala. I requisiti comuni che Couchbase Server è stato progettato per soddisfare includono:

  • Interfaccia di programmazione unificata
  • Interroga
  • Cerca
  • Mobile e IoT
  • Analisi
  • Motore di base del database
  • Architettura a scalabilità orizzontale
  • Architettura incentrata sulla memoria
  • Big data e integrazioni SQL
  • Sicurezza completa
  • Distribuzioni di container e cloud
  • Alta disponibilità

Script Couchbase per dbas

Couchbase è anche più veloce in lettura e scrittura rispetto ad altri database open source.

L'aggiornamento è zero tempi di inattività.

Doc per Couchbase

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

Educazione video per Couchbase

https://learn.couchbase.com/store

Differenze tra aziende e comunità

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 query SELECT * FROM system:keyspaces; seleziona active_requests.* da sistema:active_requests; seleziona * da sistema:richieste_completate; SELEZIONA * DA sistema:my_user_info; SELEZIONA * DA sistema:info_utente; SELEZIONA * DA sistema:nodi; SELEZIONA * DA sistema:funzioni; SELEZIONA * DA sistema:functions_cache;

#Effetto dell'audit sulla performance

L'audit è chiuso con tutti i futures. Stress test:
1000000 righe, 10 min, 1,2 GB. Il secchio ha 2 repliche. 20 persec.

L'audit è aperto con tutti i futures. Stress test:
1000000 righe, 10 min, 1,2 GB. Il secchio ha 2 repliche. 20 pers. Dimensione file di controllo =256kb.

#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


#Carico dati per stress test

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

No