Neo4j选择价值设计决策

时间:2018-11-02 21:17:46

标签: neo4j etl data-modeling graph-databases multi-select

TLDR:单选和多选选择字段:对于通用ETL工具,我应该将它们建模为与关系或直接标签相连的节点

详细信息:

我正在考虑要构建的ETL工具/工作流程,该工具/工作流程是从API来源提取来动态创建图形的。该api通常返回的数据结构为属于“列表”(例如“人物”,“公司”,“城市”等)的单独条目,并且条目上还具有单独的属性/属性。

我知道我想为每个“列表”创建节点标签,但事实是,多个列表类型在单个条目上具有单选和多选选择字段(例如公司列表的公司类型。Company type选项可能包括机构,银行,学校,投资者,房地产公司等,并且公司可以具有一种或多种类型)。

理想情况下,我希望通用规则可以在写入neo4j图时处理所有列表中的所有选择字段。 (另一个选择字段是“ Tier”,例如,第1层,第2层,第3层和第4层是潜在值)

最好的做法是

  1. 为每个选择字段类别创建一个节点标签(即,具有该节点的X个实例的名为“ CompanyType”的节点标签,用于每个公司类型的“ name”属性等于该公司类型的一个公司),然后链接公司节点通过“ company_type”边缘到其一个或多个CompanyType节点

  1. 为每个选择字段选项创建一个节点标签,并将该标签应用于相关的Company节点(这样,Company节点可能会有5-6个标签,例如Company:Tier1:Tier2:Investor:Bank)

0 个答案:

没有答案