目前,我在MySQL中有一个DB结构,其中有几十个表,其中有各种外键连接。所有的数据都在我将要加载的文件中,所以我希望能够将设计移植到使用Drupal 7的存储系统中,因为我可以简单地设置一些东西(使用提要模块?)以Drupal 7喜欢的方式获取我的数据。这样做的最终目的是进行大量人工修改,将表中的条目与关系连接起来,并可能修改一些看似错误的实地数据。因此,整个目标是在Drupal 7中创建用于查看和编辑(特别是添加)关系的人机界面。问题是,存储数据的适当方式是什么,因此我必须编写所需的小模块代码?
在我看来,我会选择三个模块中的一个来完成这项任务:
关系和实体引用将允许我将所有数据存储在节点(实体?)在Drupal 7中,因此Drupal将有“本机支持”来处理所有这些东西。然而,我预计将有数以千万到最低的数以十亿计的节点,每个节点与其他节点的关系可能高达3。关系或实体引用在使用视图等引用外部数据(或者从该引用中获取引用数据等)时处理这一问题的效率如何?它们是否支持具有空引用的节点,因为在用户能够设置它们之前,许多节点都是空的(因此,我需要一种方法来找到具有特定空引用的节点)。
数据是另一种可能,但它在alpha中,我想知道它的稳定性和效率。在我看来,将所有数据存储在外部MySQL数据库中,而不是存储在Drupal节点中,从一开始就破坏了使用Drupal的全部目的。我对此的感觉正确吗?
我有一个困难的时间确定我需要什么来管理我的内容,这似乎奇怪,考虑到Drupal 7是一个CMS。我一定是漏掉了什么,但我不知道是什么。什么是最成熟的模块?为了处理/接口如此大量的相互关联的数据,并能够通过和让用户大部分建立和管理“表”之间的链接(所以“外键”),以及可能的实地数据审查和修订?有什么可以满足的吗?
发布于 2012-05-03 11:51:46
关系和实体引用将允许我将所有数据存储在节点(实体?)在Drupal 7中,因此Drupal将有“本机支持”来处理所有这些东西。然而,我预计将有数以千万到最低的数以十亿计的节点,每个节点与其他节点的关系可能高达3。关系或实体引用在使用视图等引用外部数据(或者从该引用中获取引用数据等)时处理这一问题的效率如何?
如果您需要显示数据,则另一个模型将无助于您。您可能需要一些分页,或者给查询一个最大深度的递归,以只加载您感兴趣的实体。我想使用一些已经被支持的东西将为您节省大量的工作。
没有基准,你几乎找不到瓶颈。因此,最简单的方法似乎是实体引用,并根据需要进行优化。您可以创建一些测试数据,以便尽早发现限制。但是以后一定会有优化请求的方法。
https://stackoverflow.com/questions/10356862
复制相似问题