我需要存储大量的小数据对象(每月数百万行)。一旦他们得救,他们就不会改变。我需要:
time-oriented)
一起使用的话)。
我的第一张照片是Infobright社区--这是一种面向列的、只读的MySQL存储机制。
另一方面,人们认为NoSQL方法可能会更好。Hadoop+Hive看起来很混杂,但是文档看起来很差,版本号小于1.0。
我听说过超级饭桌,五旬斋,MongoDB .
你有什么建议吗?
(是的,我在这里找到了一些话题,但那是在一两年前)
编辑:其他解决方案: MonetDB,InfiniDB,LucidDB -你怎么看?
发布于 2011-05-06 10:33:10
我在这里也有同样的问题,并进行了研究;BI的两种存储方式:
面向
)
答案取决于你真正需要什么:
如果您的数百万行同时加载(nighly批处理左右),则
而来的东西。
http://www.mysqlperformanceblog.com/2010/01/07/star-schema-bechmark-infobright-infinidb-and-luciddb/
如果实时添加行,则为
的东西。
面向文档的DBs不适合BI,它们更适用于需要频繁访问特定行的CRM/CMS问题。
至于类别内的确切选择,我仍未决定。卡桑德拉在分布式,莫奈或InfiniDB的CODB,是领先的。据报道,Monet在加载非常大的表时遇到问题,因为它在内存中运行索引。
发布于 2010-03-17 22:52:33
您还可以考虑使用GridSQL。即使对于单个服务器,您也可以创建多个逻辑“节点”,以便在处理查询时利用多个核心。
GridSQL使用PostgreSQL,因此您还可以利用将表划分为子表来更快地评估查询。您提到的数据是面向时间的,所以这将是创建子表的一个很好的候选。
发布于 2010-03-12 13:58:25
如果您正在寻找与报告工具的兼容性,基于MySQL的东西可能是您的最佳选择。至于什么对你有用,Infobright可能会奏效。还有其他几种解决方案,不过,您可能也想看看普通的MySQL和Archive表。每个记录都被压缩和存储,IIRC,它是为您的工作负载类型设计的,但是我认为Infobright应该得到更好的压缩。我也没有真正使用过,所以我不确定哪一个最适合你。
至于关键价值商店(如NoSQL),是的,它们也可以工作,而且有很多其他的选择。我知道CouchDB有“视图”,但我没有机会使用任何视图,所以我不知道它们的工作效果如何。
我对您的数据集唯一关心的是,由于您提到了时间,您可能希望确保您使用的任何解决方案都将允许您在某一时间内存档数据。这是一个常见的数据仓库实践,只保持N个月的数据在线,并存档其余的。这就是在RDBMS中实现的分区非常有用的地方。
https://stackoverflow.com/questions/2423363
复制相似问题