Drupal 如何处理大量相互关联的数据

Drupal 如何处理大量相互关联的数据,drupal,drupal-7,Drupal,Drupal 7,目前我在MySQL中有一个DB结构,其中有几十个表,表之间有各种外键链接。所有的数据都在我要加载的文件中,所以我希望我可以将设计移植到一个与Drupal 7一起工作的存储系统,因为我可以简单地设置一些东西(使用Feeds模块?)以Drupal 7喜欢的方式获取数据。这样做的最终目的是进行大量人工修改,将表中的条目与关系链接在一起,并可能修改一些看起来错误的字段数据。因此,整个目标是在Drupal7中创建用于查看和编辑(特别是添加)关系的人机界面。问题是,存储数据的正确方式是什么,因此我必须根据需

目前我在MySQL中有一个DB结构,其中有几十个表,表之间有各种外键链接。所有的数据都在我要加载的文件中,所以我希望我可以将设计移植到一个与Drupal 7一起工作的存储系统,因为我可以简单地设置一些东西(使用Feeds模块?)以Drupal 7喜欢的方式获取数据。这样做的最终目的是进行大量人工修改,将表中的条目与关系链接在一起,并可能修改一些看起来错误的字段数据。因此,整个目标是在Drupal7中创建用于查看和编辑(特别是添加)关系的人机界面。问题是,存储数据的正确方式是什么,因此我必须根据需要编写尽可能少的模块代码

在我看来,我会从3个模块中选择一个来完成这项任务:

  • 关系
  • 实体引用
  • 资料
关系和实体引用将允许我将所有数据存储在Drupal 7中的节点(实体?)中,因此Drupal将拥有处理所有内容的“本机支持”。但是,我预计将有1亿到几十亿个节点,每个节点中可能有多达3个与其他节点的关系。当使用视图等引用外部数据(可能从该引用中获取引用的数据,等等)时,关系或实体引用处理此问题的效率如何?它们是否支持具有空引用的节点,因为在用户可以设置它们之前,许多节点都是空的(因此我需要一种方法来查看具有特定空引用的节点)

数据是另一种可能性,但它是阿尔法的,我想知道它的稳定性和效率。在我看来,将我的所有数据存储在外部MySQL数据库而不是Drupal节点中,一开始就违背了使用Drupal的全部目的。我的感觉对吗

我很难确定我需要什么来管理我的内容,考虑到Drupal7是CMS,这似乎很奇怪。我肯定错过了什么,但我不确定是什么。对于处理/连接大量相互关联的数据,并且能够让用户主要设置和管理“表”之间的链接(即“外键”)以及现场数据审查和修订,最成熟的模块是什么?有足够的吗

关系和实体引用将允许我存储所有数据 在Drupal 7中的节点(实体?)中,因此Drupal将具有“本机” 支持“处理所有的东西”。不过,我预计会有 1亿到数十亿个节点,可能多达3个 与每个节点中其他节点的关系。关系或关系的效率如何 实体引用在引用外部数据时处理此操作(和 可能从该引用中获取引用数据,等等)使用 意见之类的

如果您需要显示数据,其他模型将无法帮助您。您可能需要一些分页或为查询提供最大的递归深度,以便只加载您感兴趣的实体。我想使用一些已经被支持的东西会帮你节省很多工作


没有基准测试,你几乎找不到瓶颈。因此,选择最简单的方法,即实体引用,并根据需要进行优化。您可以创建一些测试数据,以便尽早发现限制。但是以后肯定会有办法优化请求。

为什么你这么肯定需要使用Drupal?我不知道数据是否有助于将事物转化为实体。一般来说,您可能希望很好地掌握实体,然后使用实体构造工具包之类的工具准备不同类型的内容,然后使用提要导入每种不同类型的内容(不确定提要是否与实体配合良好)。最后一步是在视图中创建一个界面(也可以使用VBO),让用户负责其余的后勤工作。