Camada 2 da Big Data Stack: bancos de dados operacionais
No núcleo de qualquer ambiente de dados grande, e camada 2 da pilha de dados grande, são os motores de banco de dados contendo as coleções de elementos de dados relevantes para o seu negócio. Estes motores precisa ser rápido, escalável e rocha sólida. Eles não são todos iguais, e certos ambientes de big data se sairá melhor com um motor que outra, ou mais provavelmente com uma mistura de bancos de dados.
Por exemplo, embora seja possível usar sistemas de gerenciamento de banco de dados relacional (RDBMSs) para todas as suas grandes implementações de dados, não é possível fazê-los por causa do desempenho, escala, ou mesmo custo. Um número de diferentes tecnologias de banco de dados estão disponíveis, e você deve tomar cuidado para escolher sabiamente.
Não existe um único escolha certa existe sobre linguagens de banco de dados. Embora o SQL é a linguagem de consulta de banco de dados mais prevalente em uso hoje, outros idiomas podem fornecer uma maneira mais eficaz ou eficiente de resolver seus desafios de big data. É útil pensar dos motores e linguagens como ferramentas em uma do nº 147-implementador caixa de ferramentas. # 148- Seu trabalho é escolher a ferramenta certa.
Por exemplo, se você usar um modelo relacional, provavelmente você vai usar SQL para consultá-lo. No entanto, você também pode usar linguagens alternativas como Python ou Java. É muito importante compreender que tipos de dados podem ser manipulados pelo banco de dados e se ele suporta o verdadeiro comportamento transacional. designers de banco de dados descrever este comportamento com a sigla ÁCIDO. Ele significa
Atomicidade: Uma transação é # 147-tudo ou nada # 148- quando é atômica. Se qualquer parte da transação ou o sistema subjacente falhar, toda a transação falha.
Consistência: Apenas as operações com dados válidos vai ser realizada na base de dados. Se os dados forem corrompidos ou imprópria, a operação não será concluída e os dados não serão gravados no banco de dados.
Isolamento: Várias transações simultâneas não irá interferir uns com os outros. Todas as transações válidas será executado até concluído e na ordem em que foram submetidos para processamento.
Durabilidade: Depois que os dados da transação é gravado no banco de dados, ele permanece lá # 147-forever # 148.;
Motor query Language MapReduce Tipos de dados transações Exemplos relacional SQL, Python, C Não digitado ÁCIDO PostgreSQL, Oracle, DB / 2 Colunar Rubi Hadoop Predefinidas e digitado Sim, se estiver ativado HBase Gráfico Andar a pé, Pesquisa, Cypher Não Untyped ÁCIDO Neo4J Documento comandos javascript digitado Não MongoDB, CouchDB Valor chave Lucene, Comandos javascript BLOB, semityped Não Riak, Redis
Depois de entender suas necessidades e entender os dados que você está reunindo, onde colocá-lo, eo que fazer com ele, você precisa organizá-la de modo que possa ser consumida para análise, relatórios ou aplicações específicas.