..


Sponsorētās saites

Lietošana kopā ar Cassandra PHPCassa

Raksts raksta Ciro Cardone
Lapa 1 no 4

Šī panta mērķis ir parādīt, kā lietot Cassandra mūsu PHP programmas.
Cassandra ir projekts Facebook ar mērķi disengaging no MySQL uzglabāt ziņas Iesūtne.

Cassandra pieder pie saimes produktiem nosql, proti, tiem, programmatūras risinājumi, kas saglabā datus, izmantojot SQL sintaksi un attiecību jēdzienu, lai tas nav RDBMS, bet izplatīt datu bāzi, paredzēts darbam kopu un vadīt lielu daudzumu dati. Tā vietā, izmantojot jēdzienu galda, Tuple un attiecības, Cassandra izmanto kolonna orientēta pieeja jāīsteno, izmantojot Hash un Array, kas uzglabā informāciju formā {taustiņu: value}.

Kā attīstīta

Cassandra tagad Apache projekts izstrādāts java6 tāpēc pilnīgi portatīvo, kam ir tikai prasības uzstādīt JRE.

Cassandra Project

Galvenās iezīmes Cassandra, ir:

  1. Decentralizācija: datu bāze ir sadalīta vienā mezglā ar apvienības. Ir vājās tīklu, vai pārtraukuma punktus.
  2. Elastība: caurlaidspēju lasīšanas / rakstīšanas palielinās lineāri, pievienojot jaunu mašīnu (mezglus) klastera bez dīkstāves vai traucējumu pieteikumus.
  3. Kļūdas Tolerance: Dati tiek automātiski atkārtot par mezgliem. Tā ir atbalsta replikāciju vairāku datu centriem. Neizdevās mezglus var nomainīt bez jebkādas dīkstāves.
  4. "Izturība" Cassandra ir paredzēta gadījumos, kad datu zudums ir kritiska un nebūtu ietveramas pat tad, ja visu datu centru atrisina problēmu, datu zudumu, izmantojot sinhronizācijas mehānismu, kura pamatā commitlog.
  5. Elastīgums: Jūs varat izvēlēties atjaunināt katram stratēģiju, lai labotu situāciju, replikācija var būt sinhronas vai asinhronas.

Lai saņemtu visas šīs priekšrocības, tomēr izstrādātāji ir nācies atteikties no darījumu vadību.

Data Model

Kolonnas (kolonna) zemākā līmeņa organizācijas datu Cassandra, ir tuples, kas satur vārdu, vērtību un timestamp. Tās bieži ir attēlotas kā piemēru JSON notācija:






 {



  



 "Vārds": "Vārds",



  



 "Vērtība": "Cyrus"



  



 "Laikspiedols": 123456789







 }



Nosaukums un vērtība bloki baitu organizēta kā UTF-8 strings. Atslēgu / vērtību pāri ir "etiķetes" ar laikspiedolu. Cassandra izmanto laikspiedola, lai redzētu jaunāko vērtības (atcerieties, mēs runājam par kopu) un tad risināt konfliktus.

Kolonna kolonna ir organizēti ģimenēs, kas ir līdzīgs tabulu relāciju datu bāzē. Kolonna ģimene ir pasūtīts saraksts, kolonnas, kas var būt atsauces pēc viņa vārda. Katra kolonna ģimene tiek saglabāta atsevišķā failā, un fails tiek sakārtoti rindās (rindās).

Ailē ģimenēm, savukārt, sagrupēti keyspaces, parasti vienu pieteikumu. Mazāk izmantoto ir superColumns, īpaša kolonnas, kas satur viņos citām kolonnām.

Izmērs parasti ir 4-Cassandra tāpēc ir šādi:

 



 Keyspace -> sleja Family -> Ģimenes Row Kolonna -> Columns -> Vērtības

 
Gadījumā, ja mēs pievienot SuperColumns:
 



 Keyspace -> sleja Super Family -> Ģimenes Super sleja Row -> Super Columns -> Columns -> Vērtības

 

Šeit ir JSON pārstāvniecība vienkāršs apzīmējums:






 Lietotāji {



  



 "Cyrus": {



    



 "Niks": "Ci83"



    



 "Vārds": "Cardone"



  



 }







 }



un sarežģītāka lietojumiem supercolumns





 Lietotāji {



  



 "Cyrus": {



    



 "Prasmes": {



      



 "Java": "Great"



      



 "PHP", "Excellent"



    



 },



    



 "Reģistrs": {



      



 "Niks": "Ci83"



      



 "Vārds": "Cardone"



    



 }



  



 }







 }



In keyspace "Lietotāji" ir definēta kā atslēgu "Cyrus" supercolonne ar diviem "prasmes" un "reģistrs", no kuriem katrs satur atslēgu / vērtību pārus.

Šajā pašā kategorijā ...
E-Learning
Linux (Kurss) Linux (Kurss)
Pilnīga rokasgrāmata, lai atvērtā koda sistēmas. Sākot no 49 €.
MySQL (Kurss) MySQL (Kurss)
Vadība ir atvērtā koda datu bāzi. Sākot no € 39.
PHP (Kurss) PHP (Kurss)
Pilns kurss, lai radītu dinamisku tīmekļa vietnes. Sākot no 49 €.
Sponsorētās saites