31
Introdução ao NOSQL Otávio Santana @otaviojava https://github.com/otaviojava/ http://about.me/otaviojava

Visão do NOSQL introdução do Cassandra

Embed Size (px)

DESCRIPTION

O que é NOSQL? Tipos de bancos NOSQL? O que é Cassandra? Quem usa, quando usar e como? Comunidade Como fazer parte da comunidade

Citation preview

Page 1: Visão do NOSQL introdução do Cassandra

Introdução ao NOSQL

Otávio Santana@otaviojavahttps://github.com/otaviojava/http://about.me/otaviojava

Page 2: Visão do NOSQL introdução do Cassandra

Cassandra Trip BrasilCassandra em Cinco CidadesLink: http://goo.gl/wbjQyzData: 2 de setembro, Segunda-FeiraCidade: Campinas

Data: 3 de setembro, Terça-FeiraCidade: São Paulo

Data: 3 de setembro, Terça-FeiraCidade: Online

Data: 4 de setembro, Quarta-FeiraCidade: Florianópolis

Data: 5 de setembro, Quinta-FeiraCidade: Brasília

Data: 6 de setembro, Sexta-FeiraCidade: Salvador

Page 4: Visão do NOSQL introdução do Cassandra

Agenda

Data ScienceBig DataNOSQLNOSQL – DefiniçõesRelacional vs NOSQLCassandraArquiteturaHierarquiaModelagemExemplo(Spring e CDI Weld)

Page 5: Visão do NOSQL introdução do Cassandra

Data Science

● Terra● Ouro● Petróleo● Informação● Big Data

● Empirical ● Theoretical ● Computational● eScience

Page 6: Visão do NOSQL introdução do Cassandra

Data Science

Page 7: Visão do NOSQL introdução do Cassandra

Data Science

1.Preparing to run a model 2.Running the model 3.Communicating the results

Page 8: Visão do NOSQL introdução do Cassandra
Page 9: Visão do NOSQL introdução do Cassandra

Flu trends

Redes Sociais

Page 10: Visão do NOSQL introdução do Cassandra

Eleições

Page 11: Visão do NOSQL introdução do Cassandra

Negócios

• E-commerce• Marketing• Cerveja e Fraldas• Tail Target

Page 12: Visão do NOSQL introdução do Cassandra

Relação

• Data Science• Big Data• NOSQL

Page 13: Visão do NOSQL introdução do Cassandra

Big Data

• 3 Vs (Velocidade, variedade e volume)

• Sem definição

Page 14: Visão do NOSQL introdução do Cassandra

Big Data

• Cache• Data Grid• Algoritmo

Page 15: Visão do NOSQL introdução do Cassandra

Hadoop

●Hadoop Common●Hadoop Distributed File System (HDFS™)●Hadoop YARN●Hadoop MapReduce●Ambari™●Avro™●Cassandra™●Chukwa™●HBase™●Hive™●Mahout™●Pig™●ZooKeeper™

Page 16: Visão do NOSQL introdução do Cassandra

NOSQL

Não apenas SQLConhecer o melhor dos dois mundosUso específico

Page 17: Visão do NOSQL introdução do Cassandra

A.C.I.D. vs B.A.S.E

AtomicidadeConsistênciaIsolamentoDurabilidade

Basicamente AvaliadoSoft-stateEventualmente persistente

Page 18: Visão do NOSQL introdução do Cassandra

SQL vs NOSQLDriverSQL ANSITransaçãoAlto custo de IOFácil troca de BancoRelacionamento

APINão padronizadoNão TransaçãoBusca por chaveDifícil troca de BancoNão relacionamento

Page 19: Visão do NOSQL introdução do Cassandra

Classificação

Arquitetura Armazenamento Estrutura Dados

Chave-ValorDocumentosGrafoFamília de Colunas

Page 20: Visão do NOSQL introdução do Cassandra

CassandraDistribuídaConfigurávelFamília de Colunas

Page 21: Visão do NOSQL introdução do Cassandra

CassandraGossipNível de consistênciaLeitura e Escrita

ANYONELOCAL_QUORUMEACH_QOURUMALL

Disponibilidade

Consistência

Page 22: Visão do NOSQL introdução do Cassandra

Modelagem

TwittSandra

Usuários Seguidores Seguidos

User Line TimeLine Tweets

Page 23: Visão do NOSQL introdução do Cassandra

Column Family Usuários

alice nome : Allison senha : *

bob nome : Roberto senha : *

eve nome : Evelyn senha : *

chuck nome : Carlos senha : * site : datastax.com

Usuários

Page 24: Visão do NOSQL introdução do Cassandra

Column Family Followers

alice bob : mallory : trent :

Seguidores

Page 25: Visão do NOSQL introdução do Cassandra

Column Family Following

alice bob : carlos : david :

Seguidos

Page 26: Visão do NOSQL introdução do Cassandra

Column Family UserLine

alice 125695372 : AXML 126695372 : XCVL 127695372 : XENY

bob 125795372 : SDFG 126895372 : XCVN

eve 125694372 : FDHL

arthur 125600000 : AXML 125800000 : XCVL 127900000 : XENY

Twettes do usuário

Page 27: Visão do NOSQL introdução do Cassandra

Column Family Timeline

bob 125795372 : SDFG 126895372 : XCVN

eve 1279900000 : FDHL

arthur 125600000 : AXML 125800000 : XCVL 127900000 : XENY

alice 125795372 : SDFG 125800000 : XCVL 1279900000 : FDHL

TimeLine

Page 28: Visão do NOSQL introdução do Cassandra

Column Family: Tweets

LMNO timestamp : 175695372

corpo : estou tão equivicado? user : carlos

AXML timestamp : 125695372

corpo: recebeu a minha mensagem? user : alice

DEXDL timestamp : 155695372

corpo: ouvi o que diz. user : eve

BADFO timestamp : 135695372

corpo : manda-me a senha.

user : mallory

Tweets

Page 29: Visão do NOSQL introdução do Cassandra

Column Family: UserLine

bob 127695372 : XENY126695372 : XCVL 200000000 : LUMP

Column Family: TimeLine

alice 125795372 : SDFG 125800000 : XCVL 1279900000 : FDHL 200000000 : LUMP

125695372 : AXML

bob 125795372 : SDFG 126895372 : XCVN 200000000 : LUMP

eve1279900000 : FDHL 200000000 : LUMP

UserLine e TimeLine

Page 30: Visão do NOSQL introdução do Cassandra

Exemplo

Integração

http://otaviojava.github.io/Easy-Cassandra/

Page 31: Visão do NOSQL introdução do Cassandra

Obrigado

Otávio Santana@otaviojavahttps://github.com/otaviojava/http://about.me/otaviojava