我需要考虑一个存储大量数据的数据库。虽然我最初的要求是简单地检索数据块并将它们保存在excel文件中,但我希望将来会有更复杂的数据用例,其中数据将被不同的应用程序使用,特别是对于分析 - 因此需要使用聚合查询。
我愿意使用基于云的存储或本地存储。我正在考虑azure存储表(当需要使用聚合数据时,我可以在azure表存储周围有一个包装器服务+缓存,但最终会以nosql类型存储结束)和本地MongoDB。有人可以建议在本地MongoDB / couchbase / ravendb的天蓝色表存储Vs中保存大数据的优缺点吗?成本因素可以忽略不计。
答案 0 :(得分:1)
我怀疑这个问题最终会因为其广泛的性质和收集更多意见而不是事实的潜力而被关闭。那说:
这实际上是特定于应用程序的体系结构问题,处理延迟和带宽,以及维护本地服务器和其他资源的需求。在本地,您将完全控制您的硬件资源,但如果您正在从云中对数据库进行大量查询,则性能将受到延迟和带宽的限制。基于云的存储(无论是在MongoDB还是任何其他数据库中)如果在同一数据中心设置,则具有与您的应用程序相邻的优势。
请记住:任何持久性数据库存储都需要在Azure存储中支持其数据,这意味着Blob存储支持的挂载磁盘。您需要处理每磁盘1TB的大小限制(通过条带在8核盒子上扩展到16TB),您需要将其与存储需求进行比较。如果你需要超过16TB,你需要分片,使用200TB表存储,或者使用本地MongoDB。但是...... MongoDB和Table Storage是两种不同的动物,一种是基于文档的,侧重于查询强度,另一种是具有高速离散查找的键/值存储。比较两者关于本地与云的概念是次要的(在我看来)比较与你的应用相关的功能。