..
Účelem tohoto článku je ukázat, jak používat Cassandra v naší PHP aplikací.
Cassandra je projekt v rámci Facebooku s cílem oproštění se od MySQL k ukládání zpráv do složky Doručená pošta.
Cassandra patří do rodiny produktů nosql, zejména těch softwarových řešení, které ukládají data pomocí SQL syntaxe a představa o vztahu, tak to není RDBMS, ale distribuované databáze, která umožňuje nasazení v clusteru a spravovat velké množství data. Místo používání pojmů stolu, tuple a vztahu, Cassandra používá sloupec orientovaný přístup realizován pomocí hashe a pole, které uchovává informace ve formě {klíč: hodnota}.
Cassandra je nyní projekt Apache vyvinul java6 tedy přenosný, má jen požadavek na instalaci JRE.

Hlavní rysy Cassandra jsou:
Chcete-li získat všechny tyto výhody se však vývojáři museli opustit správu transakcí.
Sloupce (sloupce) je nejnižší úroveň organizace dat v Cassandra, jsou n-tice, které obsahují jména, hodnoty a časové razítko. Oni jsou často reprezentováni jako příklad zápisu JSON:
{
"Jméno": "Jméno",
"Value": "Cyrus"
"Časové razítko": 123456789
}
Jméno a hodnoty jsou pole bytů uspořádány jako UTF-8 řetězce. Klíč / hodnota páru "štítky" s časovým razítkem. Cassandra používá časové razítko, aby viděli, co poslední hodnoty (pamatujte, mluvíme o cluster) a zvládat konflikty.
Sloupec sloupce jsou uspořádány do skupin, které jsou blízké tabulky v relační databázi. Sloupec rodina obsahuje uspořádaný seznam sloupců, které lze označit za jejich jménem. Každý sloupec rodina je uložen v samostatném souboru a soubor je uspořádána do řádků (řádky).
Sloupec rodiny jsou pak seskupeny do keyspaces, typicky jedno použití. Méně používané jsou superColumns, speciální sloupce, které obsahují v nich další sloupce.
Typická velikost 4-Cassandra je tedy následující:
Keyspace -> Sloup Rodinné -> Rodina řádku sloupce -> Columns -> HodnotyV případě, že přidáme SuperColumns:
Keyspace -> Sloupec Super Family -> Rodina Super Sloupec Row -> Super sloupce -> Columns -> Hodnoty
Zde je zastoupení JSON prostého zápisu:
Uživatelé {
"Cyrus": {
"Přezdívka": "Ci83"
"Jméno": "Cardone"
}
}
a složitější používá supercolumns
Uživatelé {
"Cyrus": {
"Skills": {
"Java": "velký"
"PHP", "výborně"
}
"Registry": {
"Přezdívka": "Ci83"
"Jméno": "Cardone"
}
}
}
V keyspace je "Uživatelé" definováno jako klíč "Cyrus" supercolonne s dvěma "dovednosti" a "registr", z nichž každá obsahuje dvojice klíč / hodnota.
| |
Linux (kurz)
Kompletní průvodce pro open-source systému. Od 49 €. |
| |
MySQL (kurz)
Správa open-source databáze. Od 39 €. |
| |
PHP (kurz)
Celý kurz pro vytváření dynamických webů. Od 49 €. |