Uvod
Montaža
Pristup bazi podataka
Uklonite testnu bazu podataka
Igranje u bazi podataka
Postavljanje klastera
Zaključak
Uvod
RethinkDB je NoSQL baza podataka koja pohranjuje podatke kao JSON dokumente. Ima super intuitivan jezik upita i značajke koje su uobičajeno dostupne u tradicionalnim RDBMS-ima kao što su "pridruživanje tablica" i "grupiranje po". Ovaj vodič će objasniti kako postaviti RethinkDB klaster koristeći 3 Vultr VPS poslužitelja koji koriste CentOS 7.
Montaža
Pokrenite Vultr VM s CentOS 7 kao operativnim sustavom i omogućenim privatnim umrežavanjem .
Nakon što je VM spreman, prijavite se i dodajte RethinkDB yum repozitorij na popis spremišta:
sudo wget http://download.rethinkdb.com/centos/6/`uname -m`/rethinkdb.repo -O /etc/yum.repos.d/rethinkdb.repo
Zatim instalirajte RethinkDB:
sudo yum install rethinkdb
Pristup bazi podataka
Pokrenite RethinkDB pokretanjem naredbe ispod. Imajte na umu da se "obvezujemo za sve" kako ne bismo naišli na probleme kada pokušavamo pristupiti RethinkDB-ovom web administratorskom sučelju.
rethinkdb --bind all
Za pristup putem weba koristite port 8080 tako da upišete http://[vultr-ip-address]:8080u adresnu traku svog web preglednika. Trebali biste vidjeti RethinkDB-ov strašan alat za web administraciju.
Napomena: Ako ne vidite alat za web administraciju, zaustavite RethinkDB izdavanjem naredbe Ctrl + C. Otvorit ćemo CentOS vatrozid i ponovno pokrenuti RethinkDB:
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --reload
rethinkdb --bind all
Uklonite testnu bazu podataka
Ubuduće ćemo koristiti web sučelje za manipulaciju bazom podataka. Pristupite mu tako da pregledate http://[vultr-ip-address]:8080i kliknete na vezu "Tablice". Vidjet ćete da je RethinkDB već instalirao "testnu" bazu podataka. Kliknite na vezu "Data Explorer" i pokrenite naredbu ispod za brisanje "testne" baze podataka.
r.dbDrop('test')
Igranje u bazi podataka
Dok ste još uvijek u odjeljku "Data Explorer" administratora RethinkDB-a, izradite novu bazu podataka pod nazivom "tweetDB" pokretanjem koda u nastavku.
r.dbCreate('tweetDB')
Zatim napravite tablicu "tweets".
r.db('tweetDB').tableCreate('tweets')
Umetnite neke zapise u tablicu "tweets".
r.db('tweetDB').table('tweets').insert([
{
name: 'Lami',
twitterHandle: 'mrLami',
message: 'Best cloud hosting on the planet - vultr'
},
{
name: 'Vultr Hosting',
twitterHandle: '@TheVultr',
message: '50% off on new instances - coupon - tgif'
}
])
Upitajte tablicu "tweets" da biste vidjeli rezultate.
r.db('tweetDB').table('tweets')
Trebali biste vidjeti sljedeće ispod prikaza stabla (s različitim ID-ovima).
[
{
"id": "6afe436c-7db4-4c86-b4db-3279acb3265d" ,
"message": "50% off on new instances - coupon - tgif" ,
"name": "Vultr Hosting" ,
"twitterHandle": "@TheVultr"
} ,
{
"id": "fd328cd5-d9f4-40ee-8a32-880cd8cda15d" ,
"message": "Best cloud hosting on the planet - vultr" ,
"name": "Lami" ,
"twitterHandle": "mrLami"
}
]
Postavljanje klastera
Pokrenite drugi i treći stroj koristeći upute iz odjeljaka "Instalacija" , "Povezivanje s novom instancom VM-a" i "Pristup bazi podataka" ovog vodiča. Obavezno izbrišite "testnu" bazu podataka na svakoj od novih instanci i NEMOJTE im dodavati nove baze podataka.
Nakon brisanja "testne" baze podataka iz druge i treće instance, vratite se na njihove naredbene linije i zaustavite RethinkDB izdavanjem Ctrl + C (ili Cmd + C na Macu). Sada ponovno pokrenite RethinkDB na ovim instancama koristeći donju naredbu (u osnovi kažemo novim drugim i trećim instancama da se pridruže prvoj).
$ rethinkdb --join [ip-of-first-vultr-vm]:29015 --bind all
U drugoj i trećoj instanci pristupite sučeljima web administratora i idite na odjeljak "Data Explorer". Pokrenite sljedeći upit da biste dobili popis tweetova.
r.db('tweetDB').table('tweets')
Vidjet ćete da su se već replicirali iz glavne (prve postavke VM) instance.
Zaključak
Iako je RethinkDB još uvijek u povojima u vrijeme pisanja ovog teksta, ima puno obećanja i ima moćno web-bazirano administrativno sučelje koje čini teške zadatke koji su obično uključeni u skaliranje baze podataka (sharding, replikacija) lako postići sa samo nekoliko klikova.
Za daljnje čitanje posjetite RethinkDB Docs . Također pogledajte #rethinkdb IRC kanal kako biste saznali više od zajednice.
Ostale verzije
CentOS 7
Ubuntu 14
Napisala Lami Adabonyan