quinta-feira, 14 de maio de 2015

Michael Stonebreaker, NewSQL, NoSQL e outros

Caros leitores.

Desde o ano passado eu tenho dedicado uma fração do meu tempo para estudar um pouco sobre o mundo não relacional, que até o ano passado girava exclusivamente em torno do SQL Server e DB2, bancos que eu posso dizer que já conheço bastante.
Quem acompanhou algumas de minhas palestras menos deep-dive (não focadas no core das engines), sabe que eu vibro com o atual momento dos bancos de dados e as grandes oportunidades que temos.

Isso me levou a recentemente palestrar sobre DocumentDB e estar engajado em um novo projeto que envolve o MongoDB. Confesso, está muito divertido, então quero no futuro trazer um pouco disso para este blog.

Mas antes de falar mais sobre isso, deixo aqui algumas sugestões de estudo que considero bem interessantes para qualquer profissional de banco de dados:

• The tradicional RDBMS wisdom is (almost certainly) all wrong: http://slideshot.epfl.ch/play/suri_stonebraker
○ Palestra do Michael Stonebreaker. Acredito que dispensa apresentação e que em Março desse ano recebeu o Turing Award (clap clap clap).
• Podcast com Stonebreaker sobre a palestra (segue a mesma linha): http://www.se-radio.net/2013/12/episode-199-michael-stonebraker/
• Palestra do Mark Madsen no QCon SF sobre história do processamento de dados: http://www.infoq.com/presentations/db-history-data-processing

Have fun!

Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br

Próximos treinamentos Nimbus confirmados...

Pessoal, postagem rápida...
Temos confirmados 3 treinamentos na Nimbus, dois deles iniciando em breve e com últimas vagas disponíveis.


Acabei de verificar que o SQL22 atingiu o quórum, os que já se inscreveram vão receber o comunicado em breve.

Abraços

Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br

terça-feira, 5 de maio de 2015

Material do GAB 2015 - Azure DocumentDB

No dia 25 de Abril eu tive a oportunidade de palestrar em mais um evento, o Global Azure Bootcamp 2015 Brasília (http://gwab2015-brasilia.azurewebsites.net/).
Aproveitei minha corrente de estudos "beyond relational" e fiz minha primeira apresentação sobre o Azure DocumentDB. A sessão tinha duração de 50 minutos, mas me empolguei e falei por 1:15h. :-)



Você também pode fazer o download da apresentação.
Agora é achar uma brecha na agenda para fazer novamente a apresentação, dessa vez para o SQLServerDF.

Abraços

Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br

sexta-feira, 10 de abril de 2015

Análise do livro - Joe Celko's Complete Guide to NoSQL

Terminei de ler o livro "Joe Celko's Complete Guide to NoSQL" e deixo aqui minhas impressões…

Joe Celko é reconhecido no mundo relacional e faz muito tempo que quero ler um livro dele, então pensei: nada melhor que alguém que conhece bem os bancos de dados relacionais para falar de NoSQL, pois a visão seria mais crítica e realista, e não um devaneio achando que bancos de dados relacionais vão morrer até 2020 ou sei lá quando.

Infelizmente o livro deixa a desejar, principalmente se você está com expectativa bem alta, como era meu caso. Isso se deve ao fato do autor se perder em alguns capítulos, com conteúdo que não agrega ao assunto em questão, colocando exemplos e trechos de código que estão for a do objetivo, deixando outros capítulos bem superficiais.

E se você quer um livro onde vai ver alguns pequenos exemplos do uso do MongoDB, Hadoop, Cassandra, Neo4J, etc., para traçar paralelos, este NÃO é o seu livro. O autor em geral somente cita os produtos, sem mostrar exemplos de uso (ex.: programação ou administração), ou delinear prós e contras de cada um, o que deixa claro a proposta do livro em tratar os conceitos por detrás dos diferentes tipos de bancos de dados.

Pontos fortes:

  • O autor fala de outros modelos de bancos de dados que fogem as 4 tradicionais "categorias" de NoSQL (key-value store, column store, document store e graph).
  • Com a imensa bagagem do Celko ele conhece boa parte do histórico de diversos bancos de dados, o que nos ajuda a entender bem a evolução da tecnologia.
  • Muitas referências dos capítulos são fantásticas, oferecendo um bom guia para continuarmos aprofundando no assunto.
  • Para os temas em que aparentemente o autor tem mais intimidade, ele consegue ilustrar bem como é resolvido o problema no mundo relacional, comparando com outra abordagem.
    • O detalhamento de algumas questões sensíveis, como concorrência, níveis de isolamento e seus efeitos, são tratados com excelente detalhamento. 

Pontos fracos:

  • É comum você parar no meio de um capítulo e se questionar… por que isso está aqui? Bem fora de contexto e que poderia ser apenas uma referência para leitura. 
  • Também fica claro quais são os capítulos em que o autor tem mais experiência e gasta mais tempo, deixando o livro desigual.
    • Ex.: O capítulo "Hierarchical and network databases" é mais detalhado e extenso que o "map-reduce"
  • Não é um livro que mostra grandes exemplos de código NoSQL, mas sim trechos onde mostra como seria resolver com SQL tradicional.
    • Uma pequena curiosidade… a palavra JSON aparece 1 vez no livro. A palavra MongoDB somente em 4 parágrafos diferentes.
  • Provavelmente você espera ver mais detalhes de bancos colunares ou sobre map-reduce do que um capítulo sobre "Biometrics, Fingerprints, and Specialized Databases".

Então estou na dúvida se minha nota seria de duas ou três estrelas, então atribuo 2,5 estrelas (de 5!). Alguns capítulos são muito bons, já outros não valem a pena, pois são rasos até para um overview.

Aqui está o link para o livro na Amazon: http://www.amazon.com/Celkos-Complete-Guide-NoSQL-Non-Relational/dp/0124071929

Confesso que tenho na estante (ou no Kindle) outros livros do Joe Celko que ainda não li e, mesmo decepcionado com este livro, com certeza vou investir meu tempo para ler os outros, pois já tive ótimas referências.

Abraços

Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br

quinta-feira, 9 de abril de 2015

Agendado: Primeiro treinamento de Oracle

Em Junho/2015 vou fazer meu primeiro treinamento Oracle e claro, sendo um database geek, nem preciso dizer que estou muito animado com a ideia. Então resolvi falar um pouco sobre isso...

Já faz tempo que quero conhecer o Oracle, pois hoje não conheço PN do produto, o que é um quase um pecado capital para um profissional que todo dia estuda para se tornar um melhor arquiteto de dados.

Defendo veementemente que  o conhecimento de outros bancos de dados, entendendo seus pontos fortes, limitações e detalhes de arquitetura, vai fazer com que você não se torne um xiita babaca, sabendo propor soluções elegantes para problemas complexos... Além de ser muito divertido!
Por exemplo: estou conduzindo um benchmark para o armazenamento colunar do DB2 e discutindo com os consultores Nimbus sobre o uso do SQL Server ColumnStore em uma empresa. Comparando as diferentes implementações, já temos uma boa ideia de potenciais dificuldades e como superá-las.

E se continuar somando conhecimento de Oracle, NoSQL, outros modelos de armazenamento e processamento de dados, com certeza no futuro os problemas que terei chance de encarar serão ainda mais desafiadores.

Lembre-se que você está ouvindo isso de um profissional que está a mais de 15 anos com o SQL Server por perto e, mesmo depois de passar os últimos 2 anos dedicando mais tempo para o DB2, se considera hoje um melhor consultor e instrutor SQL Server.

Mas e aí, vou fazer os treinamentos oficiais da Oracle? Nem a pau! No momento é puro preconceito meu, desenvolvido ao longo dos anos conhecendo diferentes treinamentos SQL Server, então vou apostar todas as minhas fichas na Nerv. Vejo muita semelhança nos modelos de treinamento da Nimbus e da Nerv, empresa do Oracle ACE Ricardo Portilho (http://nervinformatica.com.br/instrutores.php), então a escolha foi lógica.

Vou começar logo por um treinamento avançado, o Oracle Performance Diagnostic e Tuning (http://nervinformatica.com.br/opdt.php), pois poderei traçar muitos paralelos com outros SGBDs e potencialmente fazer perguntas interessantes, que em uma turma iniciante seria totalmente fora de contexto.

Depois do curso vou registrar aqui as minhas impressões! E lá vou tentar controlar minha curiosidade, senão tenho certeza que o Portilho vai me expulsar de sala e nunca mais farei outro treinamento... :-)

Abraços

Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br