Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Cassandra com NOSQL parte 2

400 views

Published on

Matéria falando sobre o conceito de nosql e os tipos de bancos que saiu na revista espírito livre de abril de 2012

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Cassandra com NOSQL parte 2

  1. 1. ����� �� ����� � ������������� ��� ��������������� �� ���� � ����� � www.sxc.hu� � � � � �� � �� � � � � � �� � � �� �� ����� � �� �� � ������ ������ ��������� �� ������� Parte 2: No artigo anterior demonstrou­se um conceito básico sobre os bancos NOSQL Classificação além de fazer comparações entre os bancos “tradicionais” versus o NOSQL. Nesse artigo de bancos NOSQL abordaremos os tipos de bancos NOSQL, além de sua classificação e, demonstrare­ mos também, alguns exemplos. Por serem novos bancos ainda não existem padrões. Por mais que dois bancos possuam exatamente as mesmas classifica­ ções não é absoluto afirmar que eles possu­ em os mesmo recursos e que fazem as mesmas coisas. Isso sem falar no grande trabalho que haverá na mudança de um ban­ co NOSQL para outro, mesmo sendo seme­ lhantes. Existem hoje diversos SGBDs que se encaixam com o NOSQL. Eles são classifi­ cados por: Arquitetura, Armazenamento, �������� ����� � � ������ � � � ��
  2. 2. ����� �� ����� � ������������� ��� ��������������� �� ���� � ����� �Modelo de Dados: ­ RedisArquitetura Disco: Na arquitetura dividem­se em dois ti­ ­ CouchDbpos: distribuídos e não distribuídos. Os distri­ ­ MongoDbbuídos tomam a responsabilidade pela ­ Riakpartição dos dados e pela sua replicação. ­ VoldemortDistribuídos :­ Amazon Dynamo Configurável ­ BigTable­ Scalaris ­ Cassandra­ Voldemort ­ Hbase­ CouchDb ­ HyperTable­ Riak­ MongoDb Modelo de Dados­ BigTable O Modelo de Dados define como a in­ formação é armazenada e estruturada dentro­ Cassandra do banco.­ HyperTable ­ Chave/Valor Possui uma estrutura muito­ HBase semelhante a do Java.util.Map, onde pode­ mos armazenar uma chave e seu valor. EsseNão distribuídos: valor pode ser qualquer informação.­ Redis ­ Amazon Dynamo­ Tokyo Tyrant ­ Amazon S3­ MemcacheDb ­ Redis­ Amazon SimpleDb ­ ScalarisArmazenamento ­ Voldemort São aqueles que armazenam dadosem disco e na memória. Esta diferenciação Documentoé importante pois no caso da gravação em Este modelo permite armazenar qual­disco você vai precisar de um cache explici­ quer documento, sem a necessidade de defi­to. Já os dados armazenados em memória nir previamente sua estrutura. O documentonão são duráveis. Um ponto interessante a é composto por inúmeros campos, com tiposser avaliado é que no disco os dados tem de dados diversos ­ inclusive um campo po­menos possibilidade de serem perdidos, no de conter um outro, com uma estrutura se­entanto, o custo de I/O é altíssimo. Em rela­ melhante a um arquivo XML.ção à memória, apesar do acesso ser mais ­ Amazon SimpleDbrápido, deve­se levar em conta o fato dos da­ ­ Apache Couchdbdos ficarem em regiões voláteis. ­ MongoDbMemória: ­ Riak­ Scalaris�������� ����� � � ������ � � � ��
  3. 3. ����� �� ����� � ������������� ��� ��������������� �� ���� � ����� �Colunas amigo de, mora em, comprado por). Esse modelo tornou­se popular através ­ Neo4jdo paper BigTable do Google, com o objetivode montar um sistema de armazenamento ­ InfoGridde dados distribuído. Projetado para ter um ­ Sonesalto grau de escalabilidade e de volume de ­ HyperGraphDBdados é composto por três componentes­ Keyspace: Semelhante a um banco de da­ Conclusão:dos relacional tem como função agrupar um Neste artigo falou­se sobre os diversosconjunto de Famílias de Colunas. tipos de bancos NOSQL, além de classificá­­ Família de Colunas: Semelhante a uma ta­ los por arquitetura, armazenamento e mode­bela no modelo relacional, organiza as colu­ lo de dados. Conclui­se que, com o grandenas. Faz uso de uma chave única, que traz número de aplicações e suas diversidade, foiflexibilidade ao modelo sem poluir as linhas necessário a criação de algumas formas decom colunas nulas. armazenamento para atender melhor um re­ quisito específico. Finalizando uma breve in­­ Coluna: É uma tupla composta por nome, trodução sobre o NOSQL.timestamp e valor, onde os dados são real­mente armazenados. No próximo artigo abordaremos o Cas­ sandra e suas características. Duas características adicionais e impor­tantes deste modelo são a forma de consul­ta, que pode ser executada apenas atravésda chave das linhas de uma família de colu­nas, e a necessidade de definir previamente Referênciaso conjunto de colunas que podem ser arma­ __ Porcelli, Alexandre: Java Magazine nº 86 Introdu­zenadas em cada família. ção ao NOSQL­ Cassandra __ Ferreira, Edmar: http://va.mu/TfSR­ Google BigTable __ Cassandra: http://va.mu/TixL­ HBase __ Reis, Valéria Quadros dos: http://va.mu/TfST­ Hyperbase Grafo (whiteboard friendly) é uma es­trutura de dados que conecta um conjunto devértices através de um conjunto de arestas.Os bancos de dados de grafo moderno su­portam estruturas de grafo multi­relacionais, ������ ��������� �� �������onde existem tipos diferentes de vértices (re­ ������� �� ����� �� ������������� ���� ��������� �� ��������� �� ������presentando pessoas, lugares, itens) e dife­ ����������� ������� ���������� �������� �� ����rentes tipos de arestas (como por exemplo �� ������� �������� �� ������ �� �����.�������� ����� � � ������ � � � ��

×