我正在为一个科学合作网站设计一个系统。基本上,对于不同的研究主题,有许多不同的数据模型。列、字段类型、列数、映射和结构不同。每个现有的数据模型也可以被其他人重用。
场景示例:一位科学家进来设计了一个实验类型A,然后创建了数据模型并开始填写数据。然后保存实验类型A的数据模型,可以重复使用,其他人可以选择这个模型A 并在不重新设计的情况下填写数据。同样,科学家可以设计他们喜欢的任何数据模型。
例如:
实验类型 A 我们有结构:
-Hypothesis(String target1,String target2, int number1,int number2)
-existingwork(String target1,string target2) //(maps to Hypothesis table)
-Cohorts (int number1,int number2)
-male //(maps to Cohorts table)
-female //(maps to Cohorts table)
-Results (String result1,String result2)
实验类型 B 我们有结构:
-Hypothesis(BigInt bigint,String name,String target)
-feedback(String feedback) //(maps to Hypothesis table)
-comments(String comment,Date date) //(maps to Hypothesis table)
-ExperimentTarget (int number1,int number2,int number3)
-Healthy //(maps to Cohorts table)
-Unhealthy //(maps to Cohorts table)
-Impact (int impackFactor)
-Conclusion(String conclusion,Date date)
实现这一点的最佳方法是什么?如果我们为每种实验类型创建一个模式,我认为它会太重,不是吗?
我曾考虑过 Nosql 方法,但看起来映射部分很难(例如,将“现有工作”映射到 A 类中的“假设”)。
诸如http://neo4j.org/之类的图形数据库怎么样,这可以完成这项工作吗?
各位大侠请指教!谢谢