我想用你的智慧为数据仓库系统找到正确的解决方案。以下是一些更好地理解问题的细节:
数据被组织成一个星型模式结构,具有一个大的事实和15维。
每月20B事实行
包含100行的10个维度(某种层次结构)
5维数千行
2维~200 K行
2大尺寸,50m-100米排
两个典型的查询对此DB运行。
顶级成员在dimq:中
select top X dimq, count(id)
from fact
where dim1 = x and dim2 = y and dim3 = z
group by dimq
order by count(id) desc针对元组的度量:
select count(distinct dis1), count (distinct dis2), count(dim1), count(dim2),...
from fact
where dim1 = x and dim2 = y and dim3 = z 问题:
(目前请忽略进口和装载问题)
Tnx,
哈盖。
发布于 2008-12-09 21:49:01
我再强调也不为过了:用现成的报告工具得到一些很好的东西。
每月有200亿行使您处于VLDB领域,因此需要分区。基数较低的维度也意味着位图索引将是性能的胜利。
我对此的看法是,Teradata或Netezza可能是这份工作的理想工具,但肯定是最昂贵的。甲骨文、Sybase智商甚至SQL Server也会处理所涉及的数据卷,但速度会慢一些--它们是共享磁盘体系结构,但仍然可以管理这类数据卷。有关本帖和Server中与VLDB相关的特性,请参阅Exadata存储平台,同时请记住,Oracle刚刚引入了Exadata存储平台。
我的备份包容量计划建议每个月可能有3-5 TB,包括Oracle或Server的索引。虽然索引页在Oracle上有16字节的ROWID,而在Server上有6字节的页面引用,但在具有位图索引的oracle上可能要少一些。
Sybase IQ广泛使用位图索引,并对数据仓库查询进行了优化。虽然是共享磁盘体系结构,但对于这种类型的查询(IIRC -它是最初的面向列的体系结构)来说,它是非常有效的。这可能比Oracle或Server更好,因为它专门用于这类工作。
格林梅可能是一个更便宜的选择,但我从来没有真正使用过它,所以我不能评论它在实践中的效果如何。
如果您有10个维度,只有几百行,可以考虑将它们合并到一个垃圾尺寸中,这将通过将10个键合并为一个键来缩小事实表。您仍然可以在垃圾维度上实现层次结构,这将使事实表的大小减少1/2或更多,并通过索引消除大量磁盘使用。
我强烈建议您使用一些可以很好地使用合理的跨部门报告工具的工具。这意味着SQL前端。像水晶报告这样的商业系统允许拥有一套更容易获得的SQL技能的人进行报告和分析。开源世界也产生了伯尔特、贾斯珀报道和彭塔霍。。Hive或HBase让您参与了构建自定义前端的工作,除非您愿意在接下来的5年中用Python编写自定义报表格式化程序,否则您确实不需要这样做。
最后,将其保存在某个您可以轻松从生产系统获得快速数据提要的地方。这可能意味着您自己的硬件在您自己的数据中心。这个系统将是I/O绑定的,它对大量的数据进行简单的处理。这意味着您需要具有快速磁盘子系统的机器。云提供商倾向于不支持这类硬件,因为它比这些设备传统上使用的一次性1U盒贵一个数量级。快速磁盘I/O不是云体系结构的一种优势。
发布于 2008-12-20 00:50:31
我在维蒂卡上取得了很大的成功。我目前每天装载2亿到10亿行,平均每月大约90亿行--尽管我一个月的工作量高达170亿行。我有接近21个维度,查询运行得非常快。当我们根本没有时间窗口来做数据发布时,我们就从旧的系统中前进了。
我们对不同的解决方案进行了非常详尽的试验和研究--并且实际观察了市场上的一切。虽然Teradata和Netezza都适合我们,但它们对我们来说太贵了。Vertica在价格/性能比上都击败了他们。顺便说一句,它是一个柱状数据库。
我们现在有大约80个用户,预计到明年年底,当我们开始全面推出时,它将增长到900左右。
我们正在为报表广泛使用ASP.NET/dundas/reporting服务。它对第三方报告解决方案也很好--尽管我们还没有尝试过。
顺便问一下,你打算用什么来做数据发布?我们正在使用信息a,并且对它非常满意。SSIS把我们逼上了墙。
发布于 2012-10-01 09:23:33
使用HBase和jasperserver报告插件,可以创建体面的报告。可以在HBase中创建低延迟OLAP。这将与SQL一样工作。Jasperserver HBase插件提供Hbase查询语言,这是一个扩展的Hbase扫描命令。
https://stackoverflow.com/questions/354231
复制相似问题