Apresentação Cassandra Fatec Zona Sul ÍNDICE

:
1. 1.1 2. CASSANDRA ................................................................................................................................................... 1 POR QUE O NOME CASSANDRA?................................................................................................................ 1 ESTRUTURA DE DIRETÓRIOS DO CASSANDRA................................................................................................. 1 BIN...................................................................................................................................................................... 1 CONF .................................................................................................................................................................. 1 INTERFACE .......................................................................................................................................................... 2 JAVADOC ............................................................................................................................................................ 2 LIB ...................................................................................................................................................................... 2 3. 4. 5. QUAL A DIFERENÇA ENTRE OS BANCOS RELACIONAIS E O CASSANDRA?........................................................ 2 TUTORIAL DE INSTALAÇÃO CASSANDRA ........................................................................................................ 2 OBJETOS DO CASSANDRA............................................................................................................................... 8 5.1 KEYSPACES ................................................................................................................................................ 8 5.2 COLUMN FAMILIES ...................................................................................................................................... 9 5.2.1 Opções para Column Families ........................................................................................................... 10 5.3 SUPERCOLUMN ......................................................................................................................................... 10 5.4 COLUMNS ............................................................................................................................................... 10 5.4.1 Ordenação de colunas ...................................................................................................................... 10 6. 7. 8. 9. SEGURANÇA ................................................................................................................................................. 11 CLIENTS ........................................................................................................................................................ 11 PARTICULARIDADES ..................................................................................................................................... 11 BIBLIOGRAFIA............................................................................................................................................... 12

Apresentação Cassandra Fatec Zona Sul .

Possui três básicas funções: y STORAGE-CONF. mas que ninguém iria acreditar nela.que nada mais é que a abreviação de NotOnly SQL.Sua característica principal é que ele é um banco de dados n ão relacional. criador desse banco de dados.2011 . incluindo Facebook. Twitter. mas cada linha não precisa possuir as mesmas colunas de outra linha. NoSQL são diferentes sistemas de armazenamento que vieram para suprir necessidades em demandas onde os bancos de dados tradicionais (relacionais) são ineficazes. ele rogou uma praga que possibilitaria a ela enxergar o futuro. que significa que para qualquer linha pode possuir uma ou mais colunas. Cassandra era tão bonita que o deus Apollo deu a ela a habilidade de ver o futuro.XML Arquivo que permite criar sua base de dados como suas Keyspaces e column families. Contém também scripts para rodar o NODETOOL. Atualmente utilizado em larga escala por alguns dos maiores proprietários na Web. implantado no Facebook em 2007 para solucionar o problema de pesquisa. Estrutura de diretórios do Cassandra A aplicação Cassandra está localizada e difundida em alguns diretórios muito importantes para o seu funcionamento. no qual eles tiveram que lidar com uma grande quantidade de volume de dados de uma maneira que era difícil para escalar com métodos tradicionais. Cassandra FATEC ZONA SUL . 2. 1. como examinaremos mais no decorrer deste trabalho. Considerado como um banco de dados orientado à coluna. movimento iniciado em 1998 . BIN .Por este fato não é errado falar que o Cassandra é orientadoà coluna. uma ferramenta para configurar um cluster. antes de explicarmos o que é o Cassandra. mas quando ela recusou o amor dele. a seguir esta a explicação de cada diretório no qual o Cassandra esta inserido. devemos explicar o que é NoSQL. doou o código do Cassandra para o Apache Foundation em 2009 que hoje é a responsável pelo banco. isso pode ser mais útil pensar como se fosse um índex. CONF -Este diretório contém os arquivos de configuração da Instância do Cassandr a. Reddit. Rackspace. Cisco.Apresentação Cassandra Fatec Zona Sul 1. Cassandra Primeiramente. y Contém arquivos para configurar autenticações.Como exemplo deste movimentoo Cassandraé um dos casos de sucesso deste novo conceito de banco de dados.O conceito Sparse .Este diretório contém os executáveis para rodar o Cassandra e a linha de comando dele. Digg. Cloudkick. base de linha orientada.1Por que o nome Cassandra? Cassandra era filha do Rei Priam e da Rainha Hecuba de Troia. O Facebook.

THRIFT. nós temos o banco de dadosque é o mais alto container que corresponde a uma única aplicação.6 ou anteriores.Este diretório contém uma documentação gerada para Website usando a ferramenta JavaDocdo Java.Este diretório contém todas as bibliotecas externas que o Cassandra necessita para rodar. 3. y LIB. O resultado é a tela mostrada ao lado. no mundo relacional temos que atribuir valores nulos às colunas que não possuem valores e no mundo não relacional podemos atribuir valores apenas para as colunas que desejamos. Tutorial de Instalação Cassandra Primeiramente antes de iniciarmos a instalação do Cassandra devemos preparar as variáveis de ambiente do Windows.2011 . no qual possu i nomes também. este diretório contém um único arquivo. Qual a diferença entre os bancos relacionais e o Cassandra? No banco de dados relacional. não sendo obrigados a atribuir valores nulos às colunas que não serão preenchidas. INTERFACE .Apresentação Cassandra Fatec Zona Sul Contém um arquivo chamado LOG4J que permite a você mudar os níveis de login da aplicação para ajustar às suas necessidades. Primeiro Passo:Clicar em Start > Clique com o botão direito em cima do ícone Meu Computador e em propriedades > em seguida clique na TAB Advanced>EnvironmentVariables. Este arquivo representa o RPC(Remote Procedure Call) Cliente API qu e o Cassandra disponibiliza. O Banco de dados possui tabelas. chamado CASSANDRA. Tabelas possuem nomes e contém uma ou mais colunas. a principal diferença esta quando nós adicionamos dados em uma tabela. Até então nada de diferente. JAVADOC .Para versões 0. Figura 01 Propriedades do Sistema Cassandra FATEC ZONA SUL . 4.

Apresentação Cassandra Fatec Zona Sul Segundo Passo: Clique no botãoNew para adicionar as variáveis.2011 . Figura 02 Variáveis de Ambiente Figura 03 Variável JAVA_HOME Figura 04 Variável CASSANDRA_HOME Cassandra FATEC ZONA SUL .

Apresentação Cassandra Fatec Zona Sul Terceiro Passo: Copie os arquivos do Cassandra para o diretório C:/ Figura 05 Copiando os arquivos para C: Diretório BIN Figura 06 Explicando o Diretório BIN Cassandra FATEC ZONA SUL .2011 .

2011 .Apresentação Cassandra Fatec Zona Sul Diretório CONF Figura 07 Explicando o Diretório CONF Diretório INTERFACE Figura 08 Explicando o Diretório INTERFACE Cassandra FATEC ZONA SUL .

2011 .Apresentação Cassandra Fatec Zona Sul Diretório JAVADOC Figura 09 Explicandoo Diretório JAVADOC Diretório LIB Figura 10 Explicando o Diretório LIB Agora que já estamos familiarizados com os diretórios do Cassandra. vamos ao quarto Passo! Cassandra FATEC ZONA SUL .

bat Este arquivo é o nosso servidor....2011 .. Localize o diretório onde esta os arquivos Bin do Cassandra e execute o arquivo Cassandra. toda vez que for executar o Cassandra é necessário executá-lo antes de conectar-se à algum client do Cassandra ....Apresentação Cassandra Fatec Zona Sul Quarto Passo: Rodar o Cassandra. Figura 14 Executando o Cassandra Client Testando a conexão. Figura 13 Executando o Servidor do Cassandra Sexto Passo: Rodando o Cassandra.. para isso.bat O Client do Cassandra padrão Não esqueça de conectar ao localhost e a porta de entrada do Cassandra que é 9160. para isso clique em start e em executar e digite cmd e em seguida pressione enter. Cassandra FATEC ZONA SUL . devemos localizar os arquivos da pasta bin e executar o Cassandra-cli.

Cassandra FATEC ZONA SUL .Apresentação Cassandra Fatec Zona Sul Figura 15 Testando a conexão do Banco de Dados Agora com o Cassandra configurado vamos conhecer como funciona um banco de dados não relacional e sua estrutura de dados. usaremos como base para inserção no mundo de dados não relacional para facilitar esta aprendizagem. mas lembrando que esta pratica não é muito recomendada.2011 . e assim como no mundo relacional as Keyspaces possuem nomes e atributos que define seu comportamento. Embora usarmos algumas analogias ao banco de dados relacional. 5.1 Keyspaces Um cluster é um container para Keyspaces. Uma keyspace é o container mais alto para dados no Cassandra. não se engane. A keyspace corresponde a um banco de dados no mundo relacional. Objetos do Cassandra 5. Observação: O Cassandra permite a criação de várias Keyspaces por aplicação.

Esta estratégia copia Replicas em um único data Center.São containers para uma coleção de linhas.2011 . entretanto. de uma forma que ele não tem no ção da sua colocação no rack de dados.2 Column Families Na mesma maneira que um banco de dados é um container para tabelas. Utilize esta estratégia quando usar o ReplicationFactor3 e quando quiser assegurar alta disponibilidade no acesso dos seus dados. você pode atribuir atributos básicos por keyspace: y Replication factor OReplicationfactorrefere-se ao numero de nós que irão agir como cópias de cada registro inserido. Columns families Uma column family é análoga a uma tabela no modelo relacional e é um container para uma coleção de tuplas. o Name Nome da ColumnFamily o Comparator Indica como as colunas vão ser organizadas quando retornadas em uma query se de acordo com long. uma keyspace é um container para lista de uma ou mais column families. Existem diferentes estratégias para determinar quais os nós vão receber as cópias de cada Key. Isso permite a você decidir quanto você quer pagar em performance para ganhar mais consistência.Apresentação Cassandra Fatec Zona Sul No Cassandra. eles não influenciam em nada no seu modelo de dados. Cassandra FATEC ZONA SUL . o OldNetworkTopologyStrategy Utilizado para distribuir dados em diferentes racks no mesmo data Center. y y As configurações de ReplicationFactor e Replica PlacementStrategy são configuradas por Keyspace. 5. ela representa a estrutura dos seus dados. byte. o NetworkTopologyStrategy Possibilita especificar eventualmente como as replicas devem ser colocadas nos Data Centers. Replica placement strategy O Replica placement se refere a como as replicas vão ser copiadas no anel (Conjunto de Clusters). apenas são modos de segurança e confiabilidade de dados utilizados por ele. elas podem ser: o SimpleStrategy Usada por padrão. name e comparator. UTF8 ou outro tipo de organização. no qual estão em uma coluna ordenada. Column Families possuem duas características.

2011 . rows_cached Numero de linhas cujo o conteúdo será armazenado na memória. 5. e retorna a mesma linha das duas ou mais replicas e pelo menos uma das replicas aparece desatualizado.4. Columns são organizadas pelo Compare With tipo definido quando criada a column family e você pode escolher uma das seguintes opções: y y y y y y y y AsciiType BytesType LexicalUUIDType IntegerType LongType TimeUUIDType UTF8Type Custom Cassandra FATEC ZONA SUL .1 Ordenação de colunas No Cassandra você especifica como os nomes das colunas vão ser comparadas quando organizadas no momento da consulta pelo usuário.4 Columns Situadas dentro de column families ou super column families. Por padrão columnFamilies são configuradas com o tipo Standard.O Cassandra quando armazena suas informações armazena em arquivos fragmentados. para otimizar a performance de queries é importante manter estas informações juntas. para isso se faz necessário o uso de Supercolumns.3 Supercolumn O beneficio de usar uma Supercolumn é per mitir o agrupamento das columns. como locações por column family. para uma Super Column Family você configura seu padrão para o tipo Super. Esta opção não se refere as colunas name/values.Apresentação Cassandra Fatec Zona Sul 5.1 Opções para Column Families Existem várias opções de parâmetros que você pode atribuir à uma Column family. Preload_row_cache Especifica como você quer popular as linhas em cachê ou na hora em que startar o Server.2. 5. read_repair_chance Valor entre 0 e 1 que representa a probabilidade da operação de leitura irá desempenhar quando uma query é executada sem a specificaçãoquorum. 5. comment Esta opção é apenas um comentário padrão que auxilia relembrar as definições das sua column family. mas sim ao numero de Keys. entre os quais estão: keys_Cached Numero de locações para manter em cachê por SSTable.

Particularidades Como funciona a proteção de dados com o uso de Views no Cassandra? Como tudo no Cassandra é completamente diferente do estamos acostumados.2011 .Apresentação Cassandra Fatec Zona Sul Observação: Pelo fato de não possuir a clausula Order By os dados que são inseridos no Cassandra devem ser gravados de forma já ordenada. . Para o uso de proteção de dados temos que trabalhar com a criação de outras column families (tabelas). o Cassandra permite qualquer cliente na sua rede a conectar-se com sua instancia.Access.auth.AllowAllAuthenticatorpara org.properties Alterando as permissões do usuário Editar o arquivo cassandra.cassandra.Thrift .apache. você deve criar uma segunda column family chamada UsuarioCidade que armazene os dados do usuário com a cidade como key.Pelops 8.Cassandra Web Console . você deve mudar o método de autenticação do Cassandra de AllowAllAuthenticatorpara SimpleAuthenticator.cassandra. o uso de Views não podia ser diferente.Hector (Java) .Avro . y AllowAuthenticator . Cassandra FATEC ZONA SUL . Se você quiser fornecer credenciais para conexão no seu banco de dados. Como exemplo vamos supor que temos uma tabela chamado Usuário e você gostaria de saber encontrar um usuário em uma cidade especifica.Standard y SimpleAuthenticator Opção para configurar os usuários e autenticações para sua instância Arquivos.apache.auth.SimpleAuthenticator 7. 6.xml Trocar org. Clients Assim como vários banco de dados.properties e passwd. o Cassandra tem opções para vários clientes. assim quando a query for realizada você deve especificar a tabela recém criada UsuarioCidade.Chiton (Pyton) . Segurança Por default.

2011 . Editoria: O¶Reilly.com/cassandra-insert-column-example http://abel-perez.com/resources/programming/t-how-to-install-cassandra-+thrift-and-why-you-shou-1956.google. 1ª Edição.dicasl.php?pagina=cassandra http://www.com/tutoriales/tutoriales.org/cassandra/ThriftExamples#Java http://code.adictosaltrabajo.softwareprojects. http://abel-perez.org/servlets/ProjectProcess?pageID=p4wYuA Cassandra FATEC ZONA SUL .United States of America.php http://www.com/tutoriales/tutoriales.330p.tigris.nl/?p=108 http://abel-perez.adictosaltrabajo.com/p/cassandra-java-client/ http://subclipse.com/apache-cassandra-simplified-client-api http://wiki.com/cassandra-insert-column-example http://www.org/servlets/ProjectProcess?pageID=p4wYuA http://www.html http://dustyreagan. Bibliografia Eben Hewitt.Apresentação Cassandra Fatec Zona Sul 9.apache. Cassandra: The Definitive Guide .sodeso.php?pagina=cassandra http://subclipse.com. 2010.com/installing-cassandra-on-ubuntu-linux/ http://www.tigris.br/arquivo/apache_cassandra_nosql_uma_tecnologia_emergente.

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.