..
O objetivo deste artigo é mostrar como usar Cassandra em nossas aplicações PHP.
Cassandra é um projeto dentro do Facebook com o objetivo de desengatar a partir do MySQL para armazenar as mensagens na caixa de entrada.
Cassandra pertence à família de produtos NoSQL, nomeadamente as soluções de software que armazenam dados usando a sintaxe SQL e do conceito de relacionamento, por isso não é um RDBMS, mas um banco de dados distribuído, projetado para funcionar em um cluster e gerenciar grandes quantidades de de dados. Em vez de usar os conceitos de tupla, mesa e relação, usa Cassandra coluna abordagem orientada implementado através do uso de Hash e Array, que armazena as informações na forma {chave: valor}.
Cassandra é agora um projecto desenvolvido java6 Apache, portanto, totalmente portátil, tendo apenas um requisito para instalar um JRE.

As principais características de Cassandra são:
Para obter todos esses benefícios, no entanto, os desenvolvedores tiveram que abandonar o gerenciamento de transações.
As colunas (coluna) são o menor nível de organização dos dados em Cassandra, são tuplas que contêm um nome, um valor e um timestamp. Elas são muitas vezes representado como um exemplo a notação JSON:
{
"Nome": "Nome",
"Valor": "Cyrus"
"Timestamp": 123456789
}
Nome eo valor são arrays de bytes organizados como UTF-8 cordas. O par chave / valor é "rótulos como" com um timestamp. Cassandra usa o timestamp para ver o que o valor mais recente (lembre-se que estamos falando de um cluster) e depois para gerir conflitos.
A coluna de coluna são organizados em famílias, que são semelhantes a uma tabela em um banco de dados relacional. Uma família coluna contém uma lista ordenada de colunas que podem ser referenciados pelo seu nome. Cada família coluna é guardada em um arquivo separado eo arquivo é dispostas em fileiras (linhas).
As famílias coluna por sua vez são agrupadas em keyspaces, normalmente um por aplicação. Menos utilizados são superColumns, colunas especiais que contêm em si outras colunas.
O tamanho típico de 4-Cassandra é, portanto, como segue:
Keyspace - Família> Coluna -> Coluna Row Família -> Colunas -> ValoresNo caso em que nós adicionamos o SuperColumns:
Keyspace -> Coluna Super Família -> Família Super Linha Coluna - Colunas> Super -> Colunas -> Valores
Aqui está a representação JSON de uma notação simples:
{Usuários
"Cyrus": {
"Nickname": "Ci83"
"Nome": "Cardone"
}
}
e um mais complexo supercolumns usa
{Usuários
"Cyrus": {
"Skills": {
"Java": "Grande"
"PHP", "Excelente"
},
"Registro": {
"Nickname": "Ci83"
"Nome": "Cardone"
}
}
}
Em keyspace "Users" é definido como um "Cyrus" chave supercolonne com duas "habilidades" e "registro" cada um dos quais contém pares chave / valor.
| |
Linux (Curso)
Guia completo para open-source do sistema. A partir de 49 €. |
| |
MySQL (Curso)
Gestão de banco de dados open-source. A partir de 39 €. |
| |
PHP (Curso)
Curso completo para a criação de sites dinâmicos. A partir de 49 €. |