Lighting Talk - Apache Cassandra

Preview:

Citation preview

RAFAEL DOMINGUES

Quem é Cassandra?

Em um passado não tão distante...

Raio - XApache Cassandra

Desenvolvedor Apache SoftwareFoundation

Plataforma Multiplataforma

Escrito em Java

Licença Apache License 2.0

Recursos•Distribuído e Descentralizado;• Escalabilidade elástica;•Alta disponibilidade e tolerância a

falhas;•Consistência;•Orientação a colunas;•Alto desempenho.

SQL x CQL

SQL CQLDatabase Keyspace

Table Column Family

Row Record

Column Column

Estrutura

Exemplo - Twitter

Exemplo - Twitter

Aprendendo Cassandra• Conexão:connect localhost/9160;

• Criação da KeySpace: create keyspace Project;

• Seleção da KeySpace: use Project;

• Criação da Family Column: create column family User with comparator = UTF8Type;

• Adição dos retornos: update column family User with column_metadata = [column_name: first, validation_class: UTF8Type}, column_name: last, validation_class: UTF8Type}, column_name: age, validation_class: UTF8Type, index_type: KEYS}];

Aprendendo Cassandra• Inserção de dados: assume User keys as utf8;set User['jsmith']['first'] = 'John';set User['jsmith']['last'] = 'Smith';set User['jsmith']['age'] = '38';

• Alteração de dados: set User['jsmith']['first'] = 'Jack';

• Leitura de dados: get User['jsmith']; get User where age = '12';

• Exclusão de dados: del User['jsmith'];del User['jsmith']['age'];

Conclusão