你能解释一下如何在 ArangoDB 中处理历史数据吗?
例如,我有 5 个集合:
1. 学校 [Type = Documents] - 我保留有关学校的信息。我有2所学校: - 最佳学校 - NotveryBestSchool
2. 班级 [Type = Documents] - 我保留有关班级的信息。我有 4 节课: - 最佳 A 级 - 最佳 B 级 - NotveryBest A类 - NotveryBest B级
3. 学生 [类型 = 文档] - 我保留有关学生的信息: - 蒂米 - 丽莎 - 凯尔 - 巴特
4. ClassinSchool [Type = Edge] - 我保留有关学校班级的信息,其中“父母”=“学校”,“孩子”=班级: _From: School/BestSchool _To: Class/Best A Class _From: School/BestSchool _To: Class/Best B Class _From: School/NotveryBestSchool: Class/NotveryBest A Class _From: School/NotveryBestSchool: Class/NotveryBest B Class
最后: 5. StudentsinClass [Type = Edge] - 我保留有关学生在课堂上的信息,其中“父母”=“学生”,“孩子”=班级 _发件人:学生/蒂米 _收件人:班级/Best A Class _From:学生/Lisa _To:Class/Best B Class _From: Students/Kail: Class/NotveryBest A Class _From: Students/Bart: Class/NotveryBest B Class
情况就是这样。2017年巴特学得很好。年底,他从“NotveryBest B班”转入新班“NotveryBest A班”。2018年,他学得更好,父母决定把他转到另一所学校,在那里他可以发挥自己的才能。他从“NotveryBestSchool”转到新学校“BestSchool”和“Best B Class”班。
假设:我是否理解正确,为了跟踪 Bart 在班级和学校之间的移动,我必须在边缘添加日期?此边缘中的主要字段应该是 StartDates 和 EndDates?或者也许我需要将他的动作存储在 Bart 的参数中?第三个选项 - 制作一个单独的集合“历史”并将所有内容存储在那里。
选择哪个选项?