我希望使用关系模式来表示网络。
我的网络的实体是:
关系模型是否适合于表示这样的网络?
我正在考虑将SQL/No SQL作为选项。我的数据规模预计不会以非常快的速度增长。我不想基于任何预定义的查询模式选择SQL/No SQL。
发布于 2014-03-05 11:30:26
通常表示网络的最好工具是像Neo4j这样的图形数据库。
但是,当您想在SQL中这样做时,节点(或图论中的Vertex )和圆弧(正确地称为Edge)都会得到自己的表。一个Vertex只包含关于顶点本身的数据,而不包含它与他人关系的信息。Edge将包含它链接的两个节点的主键,以及关于链接本身的任何元信息。
当您需要存储多个节点的路径时,应该使用两个表。一个包含路径ID和整个路径的任何数据的Path表,以及另一个包含路径ID、路径中的数字和包含路径所包含的所有位置的Edge表的主键的表PathVertex。
https://stackoverflow.com/questions/22194205
复制相似问题