Big Data e Poliglota Persistência
O termo poliglota é emprestado e redefinido para grandes dados como um conjunto de aplicações que utilizam diversas tecnologias de banco de dados central, e este é o resultado mais provável do seu planejamento de implementação. A definição oficial de poliglota é "alguém que fala ou escreve várias línguas." Ele vai ser difícil escolher um estilo de persistência não importa como limitar a sua abordagem para a big data pode ser.
Um banco de dados de persistência poliglota é usado quando é necessário resolver um problema complexo, quebrando esse problema em segmentos e aplicação de modelos de banco de dados diferentes. Em seguida, é necessário agregar os resultados em um armazenamento de dados híbridos e solução de análise. Um número de fatores afetam esta decisão:
Você já está usando poliglota persistência em seu local de trabalho existente. Se a sua empresa ou organização é grande, você provavelmente está usando RDBMSs múltipla, data warehouses, data marts, arquivos simples, servidores de gerenciamento de conteúdo, e assim por diante.
Este ambiente híbrido é comum, e você precisa entender isso para que você possa tomar as decisões corretas sobre a integração, análise, actualidade dos dados, a visibilidade de dados, e assim por diante. Você precisa entender tudo isso porque você precisa descobrir como ele vai encaixar na sua aplicação de dados grande.
O mais ideal de ambientes, onde você tem apenas uma tecnologia de persistência, provavelmente não é adequado para grande resolução de problemas de dados. No mínimo, você vai precisar de introduzir um outro estilo de banco de dados e outras tecnologias de apoio para a sua nova aplicação.
Dependendo da variedade e velocidade de sua coleta de dados grande, você pode precisar de considerar diferentes bases de dados para suportar uma implementação. Você também deve considerar suas necessidades de integridade transacional. Você necessita para ter conformidade ácido ou vontade cumprimento BASE ser suficiente?
Suponha que você precisa para identificar todos os clientes para o seu produto que adquiriram nos últimos 12 meses e comentaram em sites sociais sobre sua experiência - e se eles tiveram algum casos de suporte, onde adquiriram o produto, como foi entregue, o que pagou, como eles paga, se eles foram para o site da empresa, quantas vezes, o que eles fizeram, e assim por diante.
Em seguida, suponha que você quer oferecer-lhes um desconto promocional para seus smartphones quando eles estão entrando em um de seus (ou um de seus parceiros ") lojas de varejo.
Este é um desafio de dados grande no seu melhor. Múltiplas fontes de dados com estruturas muito diferentes precisam ser coletados e analisados para que você possa obter as respostas a estas perguntas. Em seguida, você precisa determinar se os clientes se qualificar para a promoção e, em tempo real, empurrá-los um cupom oferecendo-lhes algo novo e interessante.
Este tipo de problema não pode ser resolvido facilmente ou de forma rentável com um tipo de tecnologia de banco de dados. Mesmo que algumas das informações básicas é transacional e, provavelmente, em um RDBMS, as outras informações é não-relacional e vai exigir pelo menos dois tipos de motores de persistência (espaciais e gráfico). Você tem agora poliglota persistência.