https://media.blubrry.com/hipsterstech/content.blubrry.com/hipsterstech/hipsters_022_nosql.mp3Podcast: Play in new window | Download | Embed RSS | More Compartilhar Assinar NoSQL: por quê? – Hipsters #22 13/12/2016 / infra infraestrutura Podcast / 28 Comentários O que o Oracle, o MS SQL Server, o MySQL, o Postgre e tantos outros não fazem que popularizou o uso de outras soluções, conhecidas como NoSQL? Como é utilizar uma dessas soluções, como o MongoDB? Minha base de dados não vai ficar um grande bagunça para dar manutenção? Bem, ela já é uma bagunça sem isso :). Participantes: Paulo Silveira, host do hipsters Mauricio Linhares, o cohost que realmente conhece uma penca de assuntos David Paniz, trabalhou no NuBank onde atuou bastante com NoSQL e é autor do livro de NoSQL da Casa do Código Gleicon Moraes, engenheiro de software da LuizaLabs, autor do livro Ferramentas DevOps Links citados no episódio e extras: MongoDB 😛 NoSQL Summer: uma sugestão de papers importantes Paper do Teorema CAP Palestra sobre NoSQL do David Paniz NoSQL Tapes: estudos de caso e entrevistas sobre NoSQL, assim como esse tape do Startup Tapes. Apresentação do Brad Fitzpatrick sobre Memcached no Livejournal. Aurora Deep Dive do AWS Reinvent 2015, muito bom para entender os componentes de um DB e como chegaram a solução de um MySQL escalável Deep Dive do DynamoDB – para entender quais parametros o usuário tem que se preocupar e como um desenho de tabela incompatí vel com as queries pode custar caro Cursos bacanas relacionados: Curso de Redis Curso de MongoDB Produção e conteúdo: Alura Cursos online de Tecnologia – https://www.alura.com.br === Caelum Ensino e Inovação Edição e sonorização: Radiofobia Podcast e Multimídia Relacionado
João Ângelo - 1 Muito bom o podcast como sempre mas por favor coloca um target _blank nos links. rsrssr Responder
Fabrício Cabral - 0 Muito bom o podcast! Só uma pequena correção na página: o nome correto é Memcached e não Nemcached! Responder
Marcello Patto - 0 Ainda não havia o Firebase no dia em que gravaram esse Podcast? Eu estou começando a usar o Angular2 e Firebase. O que dizem dessa combinação? Responder
David Paniz - 0 Honestamente nunca usei o Firebase. Ele também é dessas soluções de armazenamento como serviço, a grosso modo é bem semelhante ao DynamoDB, mas hospedado pelo Google. Tem boa parte das vantagens e desvantagens que comentamos sobre ele. A combinação por si só parece ok, mas o importante é entender como vai armazenar e como vai buscar seus dados para então escolher a melhor solução. Isso é tão importante que o segundo parágrafo da documentação deles é justamente sobre isso: “Building a properly structured database requires quite a bit of forethought. Most importantly, you need to plan for how data is going to be saved and later retrieved to make that process as easy as possible.” https://firebase.google.com/docs/database/web/structure-data Responder
Matheus Oliveira - 0 Hoje o mongodb dá suporte a Join e Aggregation via $lookup https://docs.mongodb.com/v3.2/reference/operator/aggregation/lookup/ Responder
David Paniz - 0 Oi Matheus, Ótima dica, só toma cuidado que apesar do MongoDB suportar “joins” com o $lookup, pelo menos por enquanto, o intuito é apenas para ajudar em operações analíticas e não deve ser uma “muleta” para sua aplicação. No post abaixo você pede encontrar “Most of the time all the data for a record tends to be located in a single document. For the operational application, accessing data is simple, high performance, and easy to scale with this approach. When it comes to analytics and reporting, however, it is possible that the data you need to access spans multiple collections.” https://www.mongodb.com/blog/post/joins-and-other-aggregation-enhancements-coming-in-mongodb-3-2-part-1-of-3-introduction Falei sobre isso numa apresentação que fiz sobre modelagem de relacionamentos em documentos Responder
Matheus Oliveira - 0 Legal David, muito obrigado pela resposta e explicação. Tem o link dessa apresentação? Abraço. Responder
David Paniz - 0 Oi Matheus, a gravação está disponível no youtube em https://www.youtube.com/watch?v=FMWMVptX8N8 Responder
Sergio Leite - 0 Pessoal, apenas uma pequena correção. O “Vector Clock” proposto por Lamport, apesar de ter a palavra “clock”, não utiliza horários propriamente dito, mas contadores que são incrementados em uma unidade a cada alteração no dado. Responder
Juscilan Moreto - 0 “No NoSql, o Schema continuará existindo, porém controlado apenas pela App” – Muito bom. Responder
Mario Junior - 0 Muito bom, um dos melhores episódios tecnicamente. @davidpaniz:disqus / @mauriciolinhares:disqus / @Gleicon : Vcs já deram uma olhada no RethinkDB? Eles tem uma página bem grande sobre suas diferenças em relação ao MongoDB, e parece ser beeeem interessante, principalmente em relação a escabilidade horizontal. Abs. Responder
Maurício Linhares - 0 Nunca usei ele, mas li a respeito. A situação hoje é meio complicada, dado que a equipe foi pra Stripe e não se sabe se vão manter o banco (o site parece estar fora do ar e não tem muito movimento nos repos do github). Não recomendaria usar ele no momento. Responder
Fabio Telles Rodriguez - 0 Seria interessante mostrar que os bancos de dados relacionais tem extensões não relacionais faz um bom tempo. Particularmente o PostgreSQL possui o tipo de dados Hstore que é um campo chave valor dentro de uma tabela relacional há bem uns 5 anos. Há uns anos tem também o tipo JsonB onde tem tipos de dados do tipo Json com uma excelente indexação e funções embutidas. No entanto, além da questão do particionamento horizontal, os bancos de dados NoSQL utilizam o armazenamento colunar, enquanto os bancos de dados relacionais utilizam o armazenamento orientado a linhas. De fato temos bancos de dados diferentes para problemas bem diferentes. Bancos de dados hierárquicos são um pesadelo para as bases relacionais, e soluções NoSQL são maravilhosas nisso. Responder
Gisele Zomer Rossi - 0 Muito bom!!! Amigos, estamos começando um projeto novo e estamos na dúvida sobre colocar relatorios em procedures no banco (melhor desempenho) ou fazer na aplicação. Gostaria da opnião de vcs. Obrigada Responder
Dexter Gandini - 0 Vocês também bombaram em analise rsrs? Busca em um chave valor dado um hash é O(1) =) Responder