Sistemas de armazenamento de dados gratuitos-especificamente, para armazenamento de dados

StackOverflow https://stackoverflow.com/questions/1616266

  •  06-07-2019
  •  | 
  •  

Pergunta

Estou construindo algumas coisas de relatórios para o nosso site (um site de tamanho decente que recebe vários milhões de visualizações de páginas por dia) e estou me perguntando se há algum bom/de código aberto gratuito/de código aberto.

Especificamente, estou procurando apenas algo para armazenar os dados-planejo criar um front-end personalizado/UI para que ele mostre as informações com as quais nos preocupamos. No entanto, não quero criar um banco de dados personalizado para isso e, embora tenha certeza de que um banco de dados SQL não funcionaria aqui, não tenho certeza do que usar exatamente. Quaisquer indicadores de artigos úteis também seriam apreciados.

EDIT: Devo mencionar-um db que vi brevemente foi MongoDB. Parece que pode funcionar, mas seus "casos de uso" mencionam especificamente o data warehousing como "menos adequado": http://www.mongodb.org/display/docs/use+cases . Além disso, ele não parece ser especificamente direcionado para o data warehousing.

Foi útil?

Solução

http://www.hypertable.org/ Pode ser o que você está procurando é (e estou seguindo suas descrições acima aqui) algo para armazenar grandes quantidades de dados registrados com normalização. ou seja, um log de visitantes.

A Hypertable é baseada no projeto BigTable do Google. Vejo http://code.google.com/p/hypertable/wiki/PerformanceTaolQuerylog para benchmarks

Você perde as capacidades relacionais do DBS baseado em SQL, mas ganha muito em desempenho. Você pode facilmente usar o Hypertable para armazenar milhões de linhas por hora (o espaço do disco rígido suportado).

espero que ajude

Outras dicas

Posso não entender o problema corretamente-no entanto, se você encontrar algum tempo para (re) visitar o "The Data Warehouse Toolkit", você descobrirá que tudo o que é preciso para um DW básico é um banco de dados SQL de vanila simples, em outros Palavras Você pode criar um DW decente com o MySQL usando o Myisam para o mecanismo de armazenamento. A questão está apenas na granularidade desejada da informação - o que você deseja manter e por quanto tempo. Se seus relatórios forem periódicos e você implementar um armazenamento ou cache de relatório, não precisará armazenar agregações pré-calculadas (sem necessidade de cubos). Em outras palavras, o Kimball Star com relatórios em cache pode fornecer desempenho decente em muitos casos. Você também pode analisar a edição comunitária do “Pentaho BI Suite” (código aberto) para começar rapidamente com o ETL, análise e relatórios - e experimentar um pouco para avaliar o desempenho antes de mergulhar no desenvolvimento personalizado. Embora isso possa não ser o que você esperava, pode valer a pena considerar.

Pentaho Mondrian

  • Código aberto
  • Usa banco de dados relacional padrão
  • MDX (pense na tabela Pivot)
  • ETL (via chaleira)

Eu uso isso.

Além da resposta de Mike de Hypertable, convém dar uma olhada no projeto Hadoop da Apache:

http://hadoop.apache.org/

Eles fornecem várias ferramentas que podem ser úteis para o seu aplicativo, incluindo o HBASE, outra implementação do conceito BigTable. Eu imagino que, para relatar, você também pode achar a implementação do MapReduce.

Tudo depende dos dados e de como você planeja acessá -los. Monetdb é um mecanismo de banco de dados orientado a colunas da equipe mais revolucionária das tecnologias de banco de dados. Elas Acabei de receber o prêmio de melhor artigo de 10 anos do VLDB. O banco de dados é de código aberto e há Muitas críticas online elogiando -os.

Talvez você deva dar uma olhada em TPC E veja qual dos conjuntos de dados de problemas de teste correspondem melhor ao seu caso e trabalham a partir daí.

Considere também a necessidade de simultaneidade, ele adiciona uma grande sobrecarga para qualquer tipo de abordagem e, às vezes, não é realmente necessária. Por exemplo, você pode pré-digestar alguns dados resumidos ou índices e apenas protegê-los para alta simultaneidade. O perfil de suas consultas de dados é a seguinte etapa.

Sobre o SQL, eu também não gosto, mas não acho que seja inteligente descartar um motor apenas por causa do idioma front-end.

Eu vejo um problema semelhante e pensando em usar o Pleno Myisam com http://www.jitterbit.com/ como camada de acesso a dados. O Jitterbit (ou outra ferramenta gratuita) parece muito agradável para esse tipo de transformação.

Espero que isso ajude um pouco.

Muitas pessoas usam o MySQL ou o PostGres :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top