..


Enllaços patrocinats

El seu ús amb PHPCassa Cassandra

Article escrit per Ciro Cardone
Pàgina 1 de 4

El propòsit d'aquest article és mostrar com utilitzar Cassandra en les nostres aplicacions PHP.
Cassandra és un projecte dins de Facebook amb l'objectiu de deslligar-se de MySQL per emmagatzemar els missatges de la safata d'entrada.

Cassandra pertany a la família de productes de NoSQL, és a dir, les solucions de programari que emmagatzemen les dades utilitzant la sintaxi SQL i el concepte de relació, de manera que no és un RDBMS, però una base de dades distribuïda, dissenyat per treballar en un clúster i administrar grans quantitats de de dades. En lloc d'utilitzar els conceptes de la taula, tupla i la relació, utilitza Cassandra columna enfocament orientat a terme mitjançant l'ús d'haixix i de matriu, que emmagatzema la informació de la forma {clau: valor}.

A mesura que es desenvolupa

Cassandra és ara un projecte d'Apache desenvolupat per tant, totalment portàtil java6, tenint només un requisit per instal · lar un JRE.

Projecte Cassandra

Les principals característiques de Cassandra són els següents:

  1. Descentralització: la base de dades es distribueix en els mateixos nodes al clúster. Hi ha colls d'ampolla a la xarxa, ni punts de trencament.
  2. Elasticitat: el rendiment de lectura / escriptura s'incrementa linealment amb la incorporació de noves màquines (nodes) amb el grup sense temps d'inactivitat o interrupció de les aplicacions.
  3. Tolerància a fallades: les dades es repliquen automàticament en els nodes. Té suport per a la reproducció de múltiples centres de dades. Els nodes no poden ser reemplaçats sense cap temps d'inactivitat.
  4. "Durabilitat" Cassandra està dissenyat per a aplicacions on la pèrdua de dades és fonamental i ha de caure tot i que el centre de dades resol el problema de la pèrdua de dades a través d'un mecanisme de sincronització basades en commitlog.
  5. Flexibilitat: vostè pot triar l'actualització per a cada estratègia per corregir la situació, la replicació pot ser sincrònica o asincrònica.

Per obtenir tots aquests beneficis, però, els desenvolupadors han hagut d'abandonar la gestió de transaccions.

El model de dades

Les columnes (columna) és el més baix nivell d'organització de dades en Cassandra, són tuples que contenen un nom, un valor i una marca de temps. Sovint es representa a manera d'exemple amb la notació JSON:






 {



  



 "Nom": "Nom",



  



 "Valor": "Cyrus"



  



 "L'Hora": 123456789







 }



Nom i el valor són ordenats matriu de bytes com UTF-8. El parell clau / valor és "etiquetes com" amb una marca de temps. Cassandra és la marca de temps per veure quin és el valor més recent (recordem que estem parlant d'un grup) i després a manejar els conflictes.

La columna de la columna estan organitzats en famílies, que són l'anàleg d'una taula en una base de dades relacional. Una família columna conté una llista ordenada de les columnes que es pot fer referència pel seu nom. Cada família columna es guarda en un arxiu separat i l'arxiu s'ordena en files (files).

Les famílies de la columna al seu torn s'agrupen en keyspaces, normalment un per cada aplicació. Menys utilitzats són superColumns, columnes especials que contenen al seu interior altres columnes.

La grandària típica de 4-Cassandra és per tant, de la següent manera:

 



 Espai de claus -> Família columna - Família> Fila Columna -> Columnes -> Valors

 
En el cas que s'afegeix el SuperColumns:
 



 Espai de claus - Columna> Família Super -> Super Fila Columna Família -> Columnes Super -> Columnes -> Valors

 

Aquí hi ha la representació JSON d'una notació senzilla:






 {Usuaris



  



 "Cyrus": {



    



 "Àlies": "Ci83"



    



 "Nom": "Cardone"



  



 }







 }



i una més complexa utilitza supercolumns





 {Usuaris



  



 "Cyrus": {



    



 "Habilitats": {



      



 "Java": "Gran"



      



 "PHP", "excel · lent"



    



 },



    



 "Registre": {



      



 "Àlies": "Ci83"



      



 "Nom": "Cardone"



    



 }



  



 }







 }



En espai de claus "Usuaris" es defineix com una clau "Cyrus", amb dos supercolonne "habilitats" i "registre" cada un d'ells conté parells clau / valor.

A la mateixa categoria ...
E-Learning
Curs de Linux Curs de Linux
Guia completa de codi obert del sistema. A partir de 49 €.
Curs de MySQL Curs de MySQL
Gestió de base de dades de codi obert. A partir de 39 €.
Curs de PHP Curs de PHP
Cicle complet per a la creació de llocs web dinàmics. A partir de 49 €.
Enllaços patrocinats