O que você deve saber sobre nosql para conseguir um emprego de dados grande
Uma vasta quantidade de informação é armazenada em RDBMSs, mas que sobre todos os outros tecnologia de dados grande que você ouvir falar? A enorme quantidade de dados ea necessidade de acessá-lo rapidamente, bem como armazenar dados não estruturados, requer uma série de outros sistemas que permitem velocidade e agilidade. O advento da não somente SQL (NoSQL) fornecido aos usuários uma maneira mais flexível e escalável para armazenar e acessar dados para acomodar as demandas de grandes dados.
Conteúdo
- Armazenamentos de dados valor-chave de par
- Bases de dados orientados a documentos
- Video: engenharia de computação - bancos de dados - 11º bimestre
- Bases de dados orientada a gráfico
- Video: fundamentos de big data: banco de dados nosql
- Bancos de dados orientada a coluna
- Video: turbine suas aplicações com um banco de dados nosql
armazenamentos de dados valor-chave de par
Este sistema não requer um modelo altamente estruturado como um sistema relacional. O sistema de chave-valor-par (KVP) concentra-se em tabelas e chaves, permite uma grande flexibilidade, e pode crescer até um tamanhos muito grandes sem sacrificar o desempenho. Isso é chamado escala. scaling, ou a adição de milhões ou bilhões de itens para um armazenamento de dados, pode impactar negativamente o desempenho em um sistema tradicional. lojas KVP que “escalam bem” pode ficar muito, muito grande e ainda executar rápido.
UMA chave é um identificador que é usado para encontrar um valor, a coisa que você deseja armazenar. Juntos, eles são considerados um par.
Digamos que você deseja armazenar as preferências do usuário como fruta favorita, carro, cor e esporte. Para acessar essas informações, você poderia simplesmente consultar a chave, o que poderia ter sido recuperado de um cookie do navegador e recuperar esses dados.
O “sistema”, neste caso, permite armazenar e consultar o valor par de chaves de programação. Consultando uma chave significa simplesmente olhando-lo e obter o valor. O sistema KVP oferece enorme flexibilidade para uma situação como esta, onde você não deseja restringir as escolhas de armazenamento. Quando você precisa para armazenar bilhões de itens de dados, um RDMS tradicional pode executar mal.
soluções KVP para big data são projetados para serem altamente escalável e resiliente. Estas tecnologias são normalmente armazenados totalmente na memória de acesso aleatório (RAM), por isso o acesso é rápido e não requer a consulta para acessar os dados armazenados em um dispositivo físico como uma unidade de disco, que leva muito mais tempo para acessar.
Grid computing é um conceito de espalhar empregos em muitos computadores para obter o emprego feito mais rapidamente, bem como fornecer um alto nível de disponibilidade ou de tolerância a falhas.
implementações KVP prevalentes incluem o seguinte:
Amazon DynomoDB: Um armazenamento de dados NoSQL KVP oferecido como um serviço de nuvem da Amazon.
FoundationDB: Um armazenamento de dados NoSQL KVP que garante transações ACID.
MemcacheDB: A (baseado em grid) Loja de dados distribuídos que residia na RAM.
Redis: Um cache de valores-chave com a capacidade de armazenar todos os tipos de dados - estruturados e não estruturados. Na indústria pessoas se referem a Redis como um servidor de estrutura de dados.
Riak: Um open-source NoSQL KVP baseado nos conceitos do produto Amazon DynomoDB.
bases de dados orientados a documentos
bases de dados orientado para o documento permitem o armazenamento e recuperação de dados semi-estruturado - dados que está em algum lugar entre não-estruturados (como um tweet) e estruturada. páginas da web e documentos são um grande exemplo de dados semi-estruturada.
Considerando que as RDBMSs são orientadas em torno de mesas e chaves, os sistemas orientados a documentos usar um paradigma documento. Em vez de armazenar dados em linhas e colunas, o modelo de documento define as informações em um documento e armazena essa informação de forma lógica. Esta é uma abordagem muito flexível e simplificado para armazenamento e recuperação de dados.
Muitos destes NoSQL de dados bancos de dados documentais loja em formato JSON.
Video: Engenharia de Computação - Bancos de Dados - 11º Bimestre
implementações orientados a documentos populares incluem o seguinte:
Cassandra: Uma parte do projeto de código aberto Apache, este é um sistema de banco de dados distribuído (baseado em grid) orientado a documentos.
CouchDB: Um sistema orientado a documentos-fonte aberto banco de dados que tem capacidades ACID.
MarkLogic: Um sistema de base de dados orientado para o documento disponível comercialmente apontado como empresa pronto. Este é altamente segura, confiável e usado por muitos Fortune 1000 empresas para processos voltados para o cliente.
MongoDB: Talvez o principal sistema de banco de dados NoSQL que usa uma abordagem orientada para o documento. Este também é open-source sob o modelo de licença Apache.
bases de dados orientada a Gráfico
Este tipo de banco de dados usa conceitos de nós, arestas e propriedades para armazenar informações e relacionamentos. grafos dirigidos são especialmente úteis quando se pensa em relacionamentos complexos como horários com várias dependências, ou em uma rede social, onde você precisa para armazenar informações sobre pessoas e sua conexão.
teoria dos grafos é a ciência de ver modelos matemáticos em termos de gráficos de relacionar objetos uns com os outros. Uma imagem da rede social é um exemplo de um gráfico. Nós são as pessoas, e a borda conecta essas pessoas. As propriedades podem definir as extremidades, ou relações.
Este tipo de armazenamento de dados é especialmente útil para sites como o LinkedIn ou Facebook.
Um exemplo de uma tecnologia gráfico popular é GraphDB, que é usado para mapear os relacionamentos de dados especiais chamar RDF triplos. A ferramenta leva objetos e fatos, e graficamente relaciona-os.
Video: Fundamentos de Big data: Banco de Dados NoSQL
bancos de dados orientada a coluna
Estes sistemas são distribuídos armazenamentos de dados orientado por colunas. Eles orientar informação não em fileiras, como tradicional RDBMSs, mas em colunas. Isso permite o agrupamento natural dos dados, o que acelera a análise.
Video: Turbine suas aplicações com um banco de dados NoSQL
Tradicional RDBMSs deve seguir um caminho bem definido para organizar a informação chamado normalização mesa, o que evita a repetição tipos de colunas e informações pausas para baixo a natureza atômica. Assim, para montar um relatório, um programador tem de ligar esses elementos atômicos, usando SQL, em agrupamentos que fazem sentido para um ser humano. Isso pode levar um tempo muito longo quando se lida com grandes quantidades de dados. RDMBSs tradicionais são muito mais lentos porque eles devem fazer ligações complicadas e demoradas para montar grandes áreas de dados em relatórios.
HBase é um armazenador de dados populares distribuído orientado por colunas, que foi modelado depois sistema Bigtable do Google. HBase é construído sobre o sistema de arquivos Hadoop. HBase permite acesso rápido às tabelas que são bilhões de linhas por milhões de colunas.
Com bancos de dados de coluna, você pode agregar informações verticalmente em famílias de colunas, permitindo o acesso rápido de grandes quantidades de dados. Ao contrário dos modelos relacionais, que são seguidos focados, grandes colunas e dados de resumo sobre as colunas pode ser feito muito mais rápido.