哪种数据库技术适用于大结构化数据?

Jon*_*nas 5 mysql cloud bigtable mongodb cassandra

场景:假设您的 200 个表中有 90TB 的文本。这是结构化的相关数据。相比dbpedia只是数据更多。任何真正关系型、分布式和高性能的数据库都可以完成这项工作。不要\xe2\x80\x99 期望像社交网络那样多的更新,但大约 500 次读取查询/秒 20 次更新/秒,但除此之外所需的主要功能是高速对数据库进行大型分析,因为数据将通过机器进行重新处理和改进像 apache mahout 一样不断学习。

\n\n

现在的第一个问题是,从哪些数据库技术开始(或等待它们被释放)来首先维护所有数据,网络访问者数量相对较少,但对快速分析/机器学习的要求很高?其次,为了可能发生的特殊目的而跟踪哪些其他数据库,以及哪些数据库应从列表中删除或成对放置,哪些数据库应仅应用一个(/更好的)。

\n\n
Cloudera/Brisk (Cassandra,Hive)\nmysql(cluster), mariadb\nBerkeley DB\ndrizzle, nimbusdb,\nscidb (http://www.theregister.co.uk/2010/09/13/michael_stonebraker_interview/)\nmongodb\ndatadraw\nneo4j\n
Run Code Online (Sandbox Code Playgroud)\n

Gat*_* VP 2

但除此之外,所需的主要功能是以最快的速度对数据库进行大型分析

现在您只需要 90TB 以上的 RAM 就可以了。“最大”速度是一个非常相对的概念。

我在大约 200 个表中存储了大约 90TB 的文本。这是结构化的相关数据。任何真正的关系型分布式高性能数据库都可以完成这项工作。

什么是“真正的关系型分布式数据库”

让我们翻转一下。假设您有 90 台服务器,每台服务器保存 1TB 的数据。您计划如何在 200 个表和 90 台服务器之间执行联接?

一般来说,跨服务器连接的扩展性不太好。尝试在 90 台服务器上运行联接的规模可能会更小。对 200 个表进行分区是一项艰巨的工作。

在这种情况下一般要跟踪哪些其他数据库以及从列表中删除哪些数据库

好的,这里有很多后续问题:

  • 你现在在跑什么?
  • 您的痛点是什么?
  • 您真的打算安装一个新系统吗?
  • 是否有可以首先测试的较小的子系统?
  • 如果您有 200 个表,您正在运行多少个不同的查询?数千?
  • 您计划如何测试查询行为是否正确?