【问题标题】:Data Warehouse and Django数据仓库和 Django
【发布时间】:2012-04-10 15:06:12
【问题描述】:

这更像是一个架构问题,而不是技术问题。

我目前正在构建一个需要存储大量数据并使用这些数据进行分析(消费者行为)的商业网站/社交网络。

我正在使用 Django 和 PostgreSQL 数据库。

现在我的问题是:我想扩展此架构以包含数据仓库。理想情况是:操作数据库是当前的 Django PostgreSQL 数据库,而数据仓库是额外的,最好是多维模型。

我们仍处于非常早期的阶段,我们将使用 50 个用户进行测试,因此对于初学者来说,像单列表这样的原始元素就足够了。

我想知道是否有人在这种情况下有经验,那可以向我推荐一个创建数据仓库的框架,同时使用 Django 模型维护可操作的数据库以便于使用(如果可能的话)。

提前谢谢你!

【问题讨论】:

  • 如何复制到您的数据仓库?

标签: django postgresql data-warehouse


【解决方案1】:

以下是我最近使用的一些很酷的开源工具:

  • Kettle - 很棒的 ETL 工具,您可以使用它来将操作数据库中的数据提取到您的仓库中。支持任何带有 JDBC 驱动程序的数据库,并使其非常容易构建,例如星型架构。
  • Saiku - 基于 Pentaho Mondrian(MDX 实现)构建的漂亮的 Web 2.0 前端。这使您的用户可以轻松地构建复杂的聚合查询(想想 Excel 中的数据透视表),并且 Mondrian 层提供缓存等以使事情快速进行。在此处尝试the demo

【讨论】:

  • 谢谢,这些都是非常非常好的候选人。这可能符合我的需要。
  • +1。您好 Ramseyer,我使用 SSAS + Tableau Software 开发了一些 OLAP 项目。对于非营利组织,我将与 Mondrian + Saiku 开始一个新项目。如果您想与我分享您的专业知识,我可以将我的电子邮件地址发送给您。只知道在切换到这个环境之前要记住什么。
【解决方案2】:

我的回答不一定适用于数据仓库。在您的情况下,我看到了在 OLTP 关系存储(在本例中是 PostgreSQL)旁边实现 NoSQL 数据库解决方案的可能性。

为什么要考虑 NoSQL?除了明显的可扩展性优势之外,NoSQL 还提供了许多可能适用于您的场景的优势。例如,具有不同字段集的记录的灵活性以及基于键的访问。

由于您仍处于“试用”阶段,您可能会发现根据您的托管服务提供商决定使用 NoSQL 数据库解决方案会更容易。例如 AWSSimpleDBGoogle App Engine 提供他们自己的 DataStore 等。但是还有很多其他 NoSQL 解决方案可供您使用,它们具有很好的 Python 绑定。

【讨论】:

  • 可扩展性的好处对我来说并不明显。一个社交网站正在考虑做你描述的事情,并对他们正在考虑的产品进行基准测试。在此处查看他们的结果介绍:pgcon.org/2010/schedule/attachments/… 第 33 和 34 页有按产品划分的时间图表(较短的条形意味着更好的性能)。
  • 感谢您的建议。但是,考虑到我需要执行包含聚合的非常复杂的查询,支持 OLAP 而不是 OLTP 的系统将是首选,对吗?
猜你喜欢
  • 2011-02-10
  • 1970-01-01
  • 1970-01-01
  • 2017-06-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-04
  • 1970-01-01
相关资源
最近更新 更多