database - 如何处理大数据数据集市/事实表? (2.4 亿行)

标签 database hadoop data-warehouse hive infobright

我们有一个 BI 客户,每个月在他们的销售数据库表中生成大约 4000 万行,这些行是从他们的销售交易中生成的。他们想用 5 年的历史数据构建一个销售数据集市,这意味着这个事实表可能有大约 2.4 亿行。 (40 x 12 个月 x 5 年)

这是结构良好的数据。

这是我第一次面对如此大量的数据,这让我开始分析垂直数据库工具,如 Inbright 和其他工具。但是对于这种软件,一个简单的查询仍然需要运行非常非常长的时间。

这让我了解了 Hadoop,但在阅读了一些文章后,我得出结论,Hadoop 不是创建事实表的最佳选择(即使使用 Hive),因为在我看来 Hadoop 旨在处理非结构化数据.

所以,我的问题是:构建这个挑战的最佳方式是什么? ,我不是在寻找合适的技术吗?我在如此大的事实表中可以获得的最佳查询响应时间是多少? ..或者我在这里遇到了一堵真正的墙,唯一的选择是构建聚合表吗?

最佳答案

您是否使用过适合您需求的 Google BigQuery(付费高级服务)。就这么简单

  1. 加载 CSV 格式的数据(记录用新行分隔,字段用可配置字符分隔)。该文件可以是 gzip 格式。您还可以附加到现有表。

  2. 开始使用 SQL 语句(尽管是有限的 sql 语句)进行查询,结果以数百万行的秒数返回。

  3. 将数据提取到CSV或其他表中(类似于聚合层)

在这里查看。 https://developers.google.com/bigquery/

前 100GB 的数据处理是免费的。所以你现在就可以开始了,它还与谷歌电子表格集成,这将允许你创建可视化,如图表和图形等用于管理。您可以将 Google 电子表格导出为 Microsoft Excel/PDF。

Google 声明它可以扩展到多 TB 并提供实时查询(几秒响应)。

关于database - 如何处理大数据数据集市/事实表? (2.4 亿行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10937184/

相关文章:

javascript - 使用 Ajax 和 PHP 将文件上传到数据库

hadoop - 如何获取Hadoop集群中的主机数量,其IP和机架

hadoop - 将大量 reducer 输出写入 HBase

java - 在本地机器上为配置单元编写单元测试

sql - 根据 teradata 中表 2 的值更新表 1

database - 我们如何保存在sqlite3中创建的数据库

sql - 存储过程的执行时间

azure - 无法在 Azure SQL 数据仓库中查看代码或编写存储过程或表的脚本

amazon-redshift - Redshift 和超宽表

java - 更新: Problem with executing SQL query from Java