Bases de dados de documentos em um ambiente de dados grande

Você encontra dois tipos de bancos de dados de documentos para projetos de big data. Um é frequentemente descrito como um repositório de conteúdo full-estilo do documento. A outra é uma base de dados para o armazenamento de componentes de um documento para o armazenamento permanente, tal como uma entidade estática ou dinâmica para a montagem das partes de um documento. A estrutura dos documentos e dos seus componentes é fornecido por Notação javascript Object (JSON) e / ou JSON binário (BSON).

bases de dados de documentos são mais úteis quando você tem que produzir uma grande quantidade de relatórios e eles precisam ser montadas dinamicamente a partir de elementos que mudam com freqüência.

Na sua essência, JSON é um formato de intercâmbio de dados, com base em um subconjunto da linguagem de programação javascript. Embora parte de uma linguagem de programação, é textual na natureza e muito fácil de ler e escrever. Ele também tem a vantagem de ser fácil para computadores de manusear. Existem duas estruturas básicas em JSON, e eles são suportados por muitos, se não todos, linguagens de programação modernas.

A primeira estrutura básica é uma coleção de pares nome / valor, e eles são representados por meio de programação como objetos, registros, introduzidos listas, e assim por diante. A segunda estrutura de base é uma lista ordenada de valores, e que são representados por meio de programação como matrizes, listas, ou sequências. BSON é uma serialização binária de estruturas JSON projetados para aumentar o desempenho e escalabilidade.

MongoDB para big data

MongoDB é o nome do projeto para o “hu (mongo) nos banco de dados” do sistema. É mantido por uma empresa chamada 10gen como código aberto e está disponível gratuitamente sob a licença v3.0 GNU AGPL. licenças comerciais com suporte completo estão disponíveis a partir 10gen.

MongoDB é composto de bases de dados contendo “coleções”. A coleção é composta de “documentos”, e cada documento é composto de campos. Assim como em bancos de dados relacionais, você pode indexar uma coleção.

Este procedimento aumenta o desempenho de pesquisa de dados. Ao contrário de outras bases de dados, no entanto, MongoDB retorna algo chamado um “cursor”, que serve como um indicador para os dados. Esta é uma capacidade muito útil porque oferece a opção de contar ou classificar os dados sem extraí-lo. Nativamente, MongoDB suporta BSON, a implementação binária de documentos JSON.

MongoDB é também um ecossistema que consiste dos seguintes elementos:

De alta disponibilidade e serviços de replicação para o dimensionamento através de redes locais e em toda a área.

  • Um sistema de arquivos baseado em grid, permitindo o armazenamento de grandes objetos, dividindo-as entre vários documentos.

  • MapReduce para apoiar análises e agregação de diferentes coleções / documentos.

  • Um serviço de fragmentação que distribui um único banco de dados em um cluster de servidores em um único ou em vários centros de dados. O serviço é impulsionado por uma chave caco. A chave caco é usado para distribuir documentos de forma inteligente em várias instâncias.

  • Um serviço de consulta que suporta consultas ad hoc, consultas distribuídas e pesquisa de texto completo.

  • implementações eficaz MongoDB incluem

    • gerenciamento de conteúdo de alto volume



    • Rede social

    • arquivamento

    • análises em tempo real

    CouchDB para big data

    Outro banco de dados não relacional é muito popular CouchDB. Como MongoDB, CouchDB é open source. Ele é mantido pela Apache Software Foundation e está disponível sob a licença Apache v2.0. Ao contrário MongoDB, CouchDB foi concebida para mimetizar a teia em todos os aspectos.

    Por exemplo, CouchDB é resistente a desistências de rede e continuará a operar muito bem em áreas onde a conectividade de rede é irregular. É também em casa em um smartphone ou em um centro de dados. Isso tudo vem com alguns trade-offs. Por causa do mimetismo folha subjacente, CouchDB é alta latência resultando em uma preferência para o armazenamento de dados local.

    CouchDB não é bem adequado para implementações menores. Você deve determinar se esses trade-offs podem ser ignorados, como você começar a sua implementação de dados grande.

    Video: Resolver erro de importação de banco de dados muito grande no PhpMyAdmin

    bancos de dados CouchDB são compostos de documentos que consistem em campos e anexos, bem como uma “descrição” do documento na forma de metadados que é mantida automaticamente pelo sistema. A tecnologia subjacente possui todas as capacidades ACID. A vantagem em CouchDB sobre relacional é que os dados são empacotados e pronta para manipulação ou de armazenamento em vez de espalhadas por fileiras e tabelas.

    CouchDB também é um ecossistema com as seguintes capacidades:

    • compactação: As bases de dados são compactados para eliminar espaço desperdiçado quando um certo nível de vazio é atingido. Isso ajuda o desempenho e eficiência para persistência.

    • Ver modelo: Um mecanismo para filtrar, organizar e elaborar relatórios sobre os dados utilizando um conjunto de definições que são armazenados como documentos no banco de dados. Você encontra um relacionamento um-para-muitos dos bancos de dados para pontos de vista, assim você pode criar muitas maneiras diferentes de representar os dados que você “fatiado e picado.”

    • Replicação e distribuídos serviços: armazenamento documento é concebido para fornecer replicação bidireccional. réplicas parciais podem ser mantidos para suportar distribuição com base em critérios determinados ou a migração para dispositivos com conectividade limitada. replicação nativa é de pares base, mas você pode implementar Master / Slave, Mestre / Master, e outros tipos de modalidades de replicação.

      Video: Aula de Banco de Dados 2 - Mala Direta com Word usando Banco de Dados

    implementações CouchDB eficazes incluem

    • gerenciamento de conteúdo de alto volume

    • Dimensionamento de smartphone para data center

    • Aplicações com conectividade de rede limitada ou lenta


    Publicações relacionadas