用于存储本体模型的数据库/灵活的层次结构

时间:2012-06-19 21:55:35

标签: mysql database oracle nosql relational-database

我正在为科学合作网站设计一个系统。基本上,针对不同的研究主题有许多不同的数据模型。列,字段类型,列数,映射和结构是不同的。每个现有的数据模型也可以被其他人重用。

方案示例: 一位科学家进来设计一个实验类型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/怎么样,这可以做到这一点吗?

伙计们,请指教!感谢

0 个答案:

没有答案