使用图形数据库时,最难解决的问题是选择粒度级别.让我们说我有一个图表显示在一周中的某些日子发生的事情:垃圾日,周五墨西哥比克,周五BYOB等.
我可以让每一天都成为一个节点(周一,周二,周三,......),这样,查询特定的日子很快.
我可以创建一个名为Day的节点,并使用星期几添加属性名称.这样,显示图表中的所有日子都很容易查询.
对自己思考,使节点非常具体是不好的,因为粒度没有限制.例如,星期六早上,晚上和晚上,或者更糟糕的是,每天每小时一个新节点.我还可以通过将星期六节点通过"晚上"边缘链接到垃圾日节点来使边缘成为粒度的一个组成部分.
我偶尔遇到类似的问题,例如; 我应该根据一个人的全名创建一个新节点,还是一个名为"Person"的节点,其属性为"name".然后我根据便利性制作特定或一般的节点,但我觉得可能有一些最佳实践或更高级别的原则我缺少.我不清楚如何判断哪条路更好.