SlideShare uma empresa Scribd logo
1 de 46
Baixar para ler offline
Cassandra NoSQL
  fmasanori@gmail.com
    17 de março de 2012
 slideshare.net/fmasanori
•   Eu, vocês e Java
•   Motivação
•   Big Data e NoSQL
•   Cassandra
•   Hello World: Cassandra
•   Pentaho
•   Hello World: Pentaho + Cassandra
•   Perguntas e sugestões
• Computação IME-USP e Mestrado ITA
• ed e lint Cobra Tecnologia
• Credicard Mastercard – sistema autorização
• PriceWaterhouseCoopers
• Itaú BankBoston
• Docente FATEC: algoritmos, estrutura de
  dados, data warehouse, tópicos avançados
  em bancos de dados
• Interesses: Python, Data Warehouse, NoSQL,
  Pentaho, Google Technology, Facebook
Vocês
•   Estudantes
•   Professores
•   Desenvolvedores Java
•   Sabe quem é Sang Shin
•   Sun Tech Days/ Java One
•   NoSQL
•   Cassandra
•   Pentaho
Job Trends (indeed.com)
Job Trends (indeed.com)
Big Data
Big Data
•   2720 exabytes serão criados em 2012
•   1 exabyte = 1 bilhão de gigabytes
•   Mais bytes que estrelas no universo
•   Twitter: 230M tweets/dia
•   YouTube: upload de 1 hora de vídeo/seg
•   Drowning in numbers (The Economist)
Novas arquiteturas são necessárias
Escalabilidade vertical
• Escalabilidade para leituras num banco
  relacional é trabalhoso
• Escalabilidade para escritas num banco
  relacional é virtualmente impossível
  (e caso você consiga ele deixou de ser
  relacional...)
Escalabilidade vertical
Escalabilidade horizontal
Escalabilidade horizontal
Dois artigos famosos
• Bigtable: A distributed storage system for
  structured data, 2006
• Dynamo: Amazon’s highly available key-
  value store, 2007
Apache Hadoop
Not Only SQL




Mas BDs não relacionais são antigos...
Qual o problema com bancos de
         dados relacionais?

“If I had asked people what they wanted, they
                would have said faster horses”.
                                    Henry Ford.
Escalabilidade + ACID = digestão difícil
BASE = ajuda na digestão




Basically Available Soft State Eventually Consistent
Eventually Consistent




  “Eventual” pt-br: pode não ocorrer
“Eventual” inglês: irá ocorrer em breve
Teorema CAP
• Consistency:
  – Todos os clientes enxergam os mesmos dados
  – Consistência tradicional (ACID)
  – Consistência eventual (BASE)
• Availability
• Partition tolerance
• Não mais que 2 dos 3 requisitos (E. Brewer, S.
  Gilbert, N. Lynch)
Not Only SQL
Difíceis de comparar
Cassandra:
 • Distribuído
 • Tolerante à falhas
 • Escalável
 • Orientado a colunas
Bigtable, 2006     Dynamo, 2007




Open Source, 2008




   Apache, 2009          Cassandra, 2010
Cassandra vs MySQL (50GB)

MySQL:
 ~300ms write
 ~350ms read
Cassandra:
 ~0.12ms write
 ~15ms read
Hello World
Hello World Cassandra
Download DataStax Community Edition
ou
Download Apache Cassandra

./cassandra

./cassandra-cli –h localhost –p 9160

Conflitos:
  cassandra.bat (windows)
  /etc/cassandra/cassandra-env.sh (ubuntu)
Obs.: necessário Oracle Sun Java
Hello World Cassandra
create keyspace jugvale;
use jugvale;
create column family demo;
set demo[0][0] = utf8(‘fernando’);
set demo[0][1] = utf8(‘masanori’);
get demo[0];
del demo[0];
exit;
Hello World Cassandra
• Clientes Cassandra: Java, PHP, Python, Ruby...
• CQL (Cassandra Query Language)



• Pentaho Data Integration
• Analytics no mercado mundial, Gartner:
• 2009: +3.8 %
• 2010: +13.4%

• América Latina:
• 2010: +19.5%
Operacional x Analítico
                             Operacional                  Analítico
Propósito               Executar um processo         Avaliar um processo
Estilo interação     Insert, update, delete, query    Query (read-only)
Escopo interação         Transação individual             Agregação
Padrão query             Previsível e estável            Imprevisível
Foco temporal                   Atual                  Histórico e atual
Otimização               Update concorrente           Query (agregação)
Projeto                       ER na 3FN              Star Schema ou Cubo

                                                                  (Adamson, 2010)
Banco Relacional Tradicional




                               (Timo Elliott, SAP)
Banco Colunar




                (Timo Elliott, SAP)
Hello World: Pentaho + Cassandra
Hello World: Pentaho + Cassandra
•   Gravar dados no Cassandra
•   Ler dados do Cassandra
•   Criar um relatório a partir do Cassandra
•   Vídeos curtos incluídos nos links acima
Créditos
• Jonathan Ellis (DataStax), vários slides
• Timo Elliott (SAP), tetris colunar
• ADAMSON, C., Star Schema, The Complete
  Reference, McGrawHill, 2010.
Outros tópicos
• NewSQL
• The End of an Architectural Era, M.
  Stonebraker et al., VLDB 2007
• Polyglot Persistence (Martin Fowler)
Perguntas ou sugestões?
   fmasanori@gmail.com
  facebook.com/fmasanori
   twitter.com/fmasanori

Mais conteúdo relacionado

Mais procurados

Persistência Poliglota, Big Data e NoSQL FISL 15
Persistência Poliglota, Big Data e NoSQL FISL 15Persistência Poliglota, Big Data e NoSQL FISL 15
Persistência Poliglota, Big Data e NoSQL FISL 15Christiano Anderson
 
NOSQL uma breve introdução
NOSQL uma breve introduçãoNOSQL uma breve introdução
NOSQL uma breve introduçãoWise Systems
 
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLEstudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLOrlando Vitali
 
Escalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQLEscalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQLFernando Ike
 
Bancos de dados nosql (not only sql)
Bancos de dados nosql (not only sql)Bancos de dados nosql (not only sql)
Bancos de dados nosql (not only sql)Rodrigo Valerio
 
Modelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência PoliglotaModelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência PoliglotaGlaucio Scheibel
 
Performance Codificando Night Week 2016
Performance Codificando Night Week 2016Performance Codificando Night Week 2016
Performance Codificando Night Week 2016Rodolfo Fadino Junior
 
Introdução no sql mongodb java
Introdução no sql mongodb javaIntrodução no sql mongodb java
Introdução no sql mongodb javaFabiano Modos
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosJoão Helis Bernardo
 

Mais procurados (17)

Persistência Poliglota, Big Data e NoSQL FISL 15
Persistência Poliglota, Big Data e NoSQL FISL 15Persistência Poliglota, Big Data e NoSQL FISL 15
Persistência Poliglota, Big Data e NoSQL FISL 15
 
NOSQL uma breve introdução
NOSQL uma breve introduçãoNOSQL uma breve introdução
NOSQL uma breve introdução
 
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLEstudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQL
 
Introdução ao NoSql
Introdução ao NoSqlIntrodução ao NoSql
Introdução ao NoSql
 
Escalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQLEscalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQL
 
Bancos de dados NoSQL (Not only sql)
Bancos de dados NoSQL (Not only sql)Bancos de dados NoSQL (Not only sql)
Bancos de dados NoSQL (Not only sql)
 
Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2
 
Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1
 
Banco de dados nas nuvens - aula 3
Banco de dados nas nuvens - aula 3Banco de dados nas nuvens - aula 3
Banco de dados nas nuvens - aula 3
 
Bancos de dados nosql (not only sql)
Bancos de dados nosql (not only sql)Bancos de dados nosql (not only sql)
Bancos de dados nosql (not only sql)
 
Tirando leite de pedra
Tirando leite de pedraTirando leite de pedra
Tirando leite de pedra
 
Modelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência PoliglotaModelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência Poliglota
 
2012 - Veris - DBA Career and Oracle Database
2012 - Veris - DBA Career and Oracle Database2012 - Veris - DBA Career and Oracle Database
2012 - Veris - DBA Career and Oracle Database
 
Performance Codificando Night Week 2016
Performance Codificando Night Week 2016Performance Codificando Night Week 2016
Performance Codificando Night Week 2016
 
Introdução no sql mongodb java
Introdução no sql mongodb javaIntrodução no sql mongodb java
Introdução no sql mongodb java
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
 
Bancos de dados NoSQL
Bancos de dados NoSQLBancos de dados NoSQL
Bancos de dados NoSQL
 

Semelhante a Cassandra NoSQL JUG Vale 2012

Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento ORNécio de Lima Veras
 
NoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPNoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPAricelio Souza
 
Projeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecordProjeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecordtchandy
 
Escalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuariosEscalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuariosAmazon Web Services LATAM
 
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmicaPepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmicaFATEC São José dos Campos
 
Benchmark LucidDB x MySQL para aplicações de Business Intelligence
Benchmark LucidDB x MySQL para aplicações de Business IntelligenceBenchmark LucidDB x MySQL para aplicações de Business Intelligence
Benchmark LucidDB x MySQL para aplicações de Business IntelligenceFATEC São José dos Campos
 
MySQL do ISAM ao NoSQL
MySQL do ISAM ao NoSQLMySQL do ISAM ao NoSQL
MySQL do ISAM ao NoSQLAirton Lastori
 
I nd t_bigdata(1)
I nd t_bigdata(1)I nd t_bigdata(1)
I nd t_bigdata(1)wchevreuil
 
MySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicaçõesMySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicaçõesMySQL Brasil
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documentoAlex Martins
 

Semelhante a Cassandra NoSQL JUG Vale 2012 (20)

Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
MAC5855 - NoSQL
MAC5855 - NoSQLMAC5855 - NoSQL
MAC5855 - NoSQL
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
 
NoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPNoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAP
 
Projeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecordProjeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecord
 
Bigadata casese opotunidades
Bigadata casese opotunidadesBigadata casese opotunidades
Bigadata casese opotunidades
 
Escalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuariosEscalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuarios
 
NoSQL: Perdas e Ganhos
NoSQL: Perdas e GanhosNoSQL: Perdas e Ganhos
NoSQL: Perdas e Ganhos
 
Inovacao em-escala-final
Inovacao em-escala-finalInovacao em-escala-final
Inovacao em-escala-final
 
NoSQL Livre
NoSQL LivreNoSQL Livre
NoSQL Livre
 
Artigo Nosql
Artigo NosqlArtigo Nosql
Artigo Nosql
 
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmicaPepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
 
Benchmark LucidDB x MySQL para aplicações de Business Intelligence
Benchmark LucidDB x MySQL para aplicações de Business IntelligenceBenchmark LucidDB x MySQL para aplicações de Business Intelligence
Benchmark LucidDB x MySQL para aplicações de Business Intelligence
 
Webinar: Introdução a Big data
Webinar: Introdução a Big dataWebinar: Introdução a Big data
Webinar: Introdução a Big data
 
MySQL do ISAM ao NoSQL
MySQL do ISAM ao NoSQLMySQL do ISAM ao NoSQL
MySQL do ISAM ao NoSQL
 
I nd t_bigdata(1)
I nd t_bigdata(1)I nd t_bigdata(1)
I nd t_bigdata(1)
 
Internet sem drama
Internet sem dramaInternet sem drama
Internet sem drama
 
Apresentação
ApresentaçãoApresentação
Apresentação
 
MySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicaçõesMySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicações
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documento
 

Mais de FATEC São José dos Campos

import pybr12: experiencias de inclusión en la última PyCon Brazil
import pybr12: experiencias de inclusión en la última PyCon Brazilimport pybr12: experiencias de inclusión en la última PyCon Brazil
import pybr12: experiencias de inclusión en la última PyCon BrazilFATEC São José dos Campos
 
Lista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbisLista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbisFATEC São José dos Campos
 

Mais de FATEC São José dos Campos (20)

Seja feliz programando em python
Seja feliz programando em pythonSeja feliz programando em python
Seja feliz programando em python
 
import pybr12: experiencias de inclusión en la última PyCon Brazil
import pybr12: experiencias de inclusión en la última PyCon Brazilimport pybr12: experiencias de inclusión en la última PyCon Brazil
import pybr12: experiencias de inclusión en la última PyCon Brazil
 
Import community pycon jp
Import community pycon jpImport community pycon jp
Import community pycon jp
 
Import community
Import communityImport community
Import community
 
Diversidade na Comunidade Python
Diversidade na Comunidade PythonDiversidade na Comunidade Python
Diversidade na Comunidade Python
 
Why python
Why pythonWhy python
Why python
 
Hackeando Dados públicos com python
Hackeando Dados públicos com pythonHackeando Dados públicos com python
Hackeando Dados públicos com python
 
Import community
Import communityImport community
Import community
 
Python, the next Brazilian generation
Python, the next Brazilian generationPython, the next Brazilian generation
Python, the next Brazilian generation
 
Para gostar de Python DevDay
Para gostar de Python DevDay Para gostar de Python DevDay
Para gostar de Python DevDay
 
Classic Games with Python in the browser
Classic Games with Python in the browserClassic Games with Python in the browser
Classic Games with Python in the browser
 
Exercício Programa 1 Python para Zumbis
Exercício Programa 1 Python para ZumbisExercício Programa 1 Python para Zumbis
Exercício Programa 1 Python para Zumbis
 
Lista de exercícios V python para zumbis
Lista de exercícios V python para zumbisLista de exercícios V python para zumbis
Lista de exercícios V python para zumbis
 
Lista de exercícios IV python para zumbis
Lista de exercícios IV python para zumbisLista de exercícios IV python para zumbis
Lista de exercícios IV python para zumbis
 
Lista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbisLista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbis
 
Lista de exercícios II python para zumbis
Lista de exercícios II python para zumbisLista de exercícios II python para zumbis
Lista de exercícios II python para zumbis
 
Lista de exercícios I python para zumbis
Lista de exercícios I python para zumbisLista de exercícios I python para zumbis
Lista de exercícios I python para zumbis
 
Lista de exercícios XIV Python para Zumbis
Lista de exercícios XIV Python para ZumbisLista de exercícios XIV Python para Zumbis
Lista de exercícios XIV Python para Zumbis
 
TWP56 DJ Mix 1
TWP56 DJ Mix 1TWP56 DJ Mix 1
TWP56 DJ Mix 1
 
TWP54 Exceções
TWP54 ExceçõesTWP54 Exceções
TWP54 Exceções
 

Último

PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESEduardaReis50
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFtimaMoreira35
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?AnabelaGuerreiro7
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdflucassilva721057
 
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresAnaCarinaKucharski1
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfMarianaMoraesMathias
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 

Último (20)

PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdf
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdf
 
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 

Cassandra NoSQL JUG Vale 2012

  • 1. Cassandra NoSQL fmasanori@gmail.com 17 de março de 2012 slideshare.net/fmasanori
  • 2. Eu, vocês e Java • Motivação • Big Data e NoSQL • Cassandra • Hello World: Cassandra • Pentaho • Hello World: Pentaho + Cassandra • Perguntas e sugestões
  • 3. • Computação IME-USP e Mestrado ITA • ed e lint Cobra Tecnologia • Credicard Mastercard – sistema autorização • PriceWaterhouseCoopers • Itaú BankBoston • Docente FATEC: algoritmos, estrutura de dados, data warehouse, tópicos avançados em bancos de dados • Interesses: Python, Data Warehouse, NoSQL, Pentaho, Google Technology, Facebook
  • 4. Vocês • Estudantes • Professores • Desenvolvedores Java • Sabe quem é Sang Shin • Sun Tech Days/ Java One • NoSQL • Cassandra • Pentaho
  • 8. Big Data • 2720 exabytes serão criados em 2012 • 1 exabyte = 1 bilhão de gigabytes • Mais bytes que estrelas no universo • Twitter: 230M tweets/dia • YouTube: upload de 1 hora de vídeo/seg • Drowning in numbers (The Economist)
  • 9. Novas arquiteturas são necessárias
  • 10. Escalabilidade vertical • Escalabilidade para leituras num banco relacional é trabalhoso • Escalabilidade para escritas num banco relacional é virtualmente impossível (e caso você consiga ele deixou de ser relacional...)
  • 14. Dois artigos famosos • Bigtable: A distributed storage system for structured data, 2006 • Dynamo: Amazon’s highly available key- value store, 2007
  • 16.
  • 17. Not Only SQL Mas BDs não relacionais são antigos...
  • 18. Qual o problema com bancos de dados relacionais? “If I had asked people what they wanted, they would have said faster horses”. Henry Ford.
  • 19. Escalabilidade + ACID = digestão difícil
  • 20. BASE = ajuda na digestão Basically Available Soft State Eventually Consistent
  • 21. Eventually Consistent “Eventual” pt-br: pode não ocorrer “Eventual” inglês: irá ocorrer em breve
  • 22. Teorema CAP • Consistency: – Todos os clientes enxergam os mesmos dados – Consistência tradicional (ACID) – Consistência eventual (BASE) • Availability • Partition tolerance • Não mais que 2 dos 3 requisitos (E. Brewer, S. Gilbert, N. Lynch)
  • 25.
  • 26. Cassandra: • Distribuído • Tolerante à falhas • Escalável • Orientado a colunas
  • 27. Bigtable, 2006 Dynamo, 2007 Open Source, 2008 Apache, 2009 Cassandra, 2010
  • 28.
  • 29. Cassandra vs MySQL (50GB) MySQL: ~300ms write ~350ms read Cassandra: ~0.12ms write ~15ms read
  • 30.
  • 32. Hello World Cassandra Download DataStax Community Edition ou Download Apache Cassandra ./cassandra ./cassandra-cli –h localhost –p 9160 Conflitos: cassandra.bat (windows) /etc/cassandra/cassandra-env.sh (ubuntu) Obs.: necessário Oracle Sun Java
  • 33. Hello World Cassandra create keyspace jugvale; use jugvale; create column family demo; set demo[0][0] = utf8(‘fernando’); set demo[0][1] = utf8(‘masanori’); get demo[0]; del demo[0]; exit;
  • 34. Hello World Cassandra • Clientes Cassandra: Java, PHP, Python, Ruby... • CQL (Cassandra Query Language) • Pentaho Data Integration
  • 35.
  • 36. • Analytics no mercado mundial, Gartner: • 2009: +3.8 % • 2010: +13.4% • América Latina: • 2010: +19.5%
  • 37. Operacional x Analítico Operacional Analítico Propósito Executar um processo Avaliar um processo Estilo interação Insert, update, delete, query Query (read-only) Escopo interação Transação individual Agregação Padrão query Previsível e estável Imprevisível Foco temporal Atual Histórico e atual Otimização Update concorrente Query (agregação) Projeto ER na 3FN Star Schema ou Cubo (Adamson, 2010)
  • 38. Banco Relacional Tradicional (Timo Elliott, SAP)
  • 39. Banco Colunar (Timo Elliott, SAP)
  • 40. Hello World: Pentaho + Cassandra
  • 41. Hello World: Pentaho + Cassandra • Gravar dados no Cassandra • Ler dados do Cassandra • Criar um relatório a partir do Cassandra • Vídeos curtos incluídos nos links acima
  • 42.
  • 43.
  • 44. Créditos • Jonathan Ellis (DataStax), vários slides • Timo Elliott (SAP), tetris colunar • ADAMSON, C., Star Schema, The Complete Reference, McGrawHill, 2010.
  • 45. Outros tópicos • NewSQL • The End of an Architectural Era, M. Stonebraker et al., VLDB 2007 • Polyglot Persistence (Martin Fowler)
  • 46. Perguntas ou sugestões? fmasanori@gmail.com facebook.com/fmasanori twitter.com/fmasanori