在Plone中存储大量数字数据并从中生成报告

时间:2013-01-02 18:12:41

标签: postgresql plone zope

我刚刚安装了plone 4,并将学习如何将当前的xhtml / css站点迁移到它。但是,我也有不同的需求来存储客户端数字数据(在许多情况下很多),他们可以远程访问和使用它们来生成报告。 zopedb会容纳这个吗,还是我可以使用postgres作为后端?

2 个答案:

答案 0 :(得分:6)

对于表格数据,请使用数据库。您可以使用Zope的(老年人和老化的)ZSQLMethods,或者使用python代码和自定义代码,从Plone访问Postgres。

后者不是那么难或令人生畏,但它确实需要您阅读如何为Plone创建自定义包。就个人而言,我会使用SQLAlchemy将数据库集成到Plone视图中。

答案 1 :(得分:1)

以下是我们如何做的示例。

我们运行了一个拥有4000个用户和80000个数据记录(内容项)的大型Plone站点。数据主要存储在ZODB中。只要ZODB适合您的服务器内存,您就可以轻松扩展它。如果您的数据集是< 32 GB,当前硬件没问题。

出于报告目的,ZODB并不好,因为所有报告工具都假定(My)SQL后端。所以我们在修改过的事件上的Archetypes内容上有Plone到MySQL的重复数据。然后报告在Plone中完成了使用Python和R报告语言的视图,而没有太多与Plone的绑定(它是通用的Python代码,不是Plone特有的)。

但是,由于权限,角色以及Plone + ZODB为您自动处理的问题,主数据存储仍然是ZODB。

可以手动或使用http://pypi.python.org/pypi/ore.contentmirror

等附加组件来处理对MySQL的复制