解决方法
自60年代以来,IBM大型机一直拥有“非关系型”数据库(诸如IMS变体之类的分层数据库).这些数据库仍然在使用,因为它们非常快并且处理规模很大.
关系数据库的要点是提供一种用于存储和检索数据的常规,相对抽象的方法,其中可以相对独立于数据模型完成调整(对IMS而言不是这样).它们的设计反应是无法轻易地重新组织层次数据库.好处是良好的组织;缺点是中等,而不是高性能.
Google提供可扩展存储和MapReduce来处理规模.它不是关系型的.
在过去的十年中,以XML为基础,以基本的层次结构形式存储数据,这是一个巨大的推动,因为XML是隐式分层的.这是一个巨大的错误恕我直言,因为它重复了heirarchical数据库的不便,但没有任何表现.这个运动似乎几乎已经死了,我并不感到惊讶.
在我看来,对于非关系的大多数实际推动都是针对性能和规模的.我不知道这对“小”应用程序有多大帮助.
人们已经提出,但没有使用基于知识的方案进行大量的实际数据管理.想到Doug Lenat的CYC.数据库的能力帮助一个应用程序得出非明显的结论让我觉得非常有趣的“小”应用程序试图“聪明”.但目前还没有很多.