在过去一年左右的时间里,我一直在使用 Django 进行开发,并且非常喜欢它。但有时我发现 ORM 有点像紧身衣。我在数据库中来回移动的所有数据都可以轻松放入 1GB 的 RAM。即使项目增长了几个数量级,它仍然适合 1GB。
我想要一个解决方案,我的应用程序只需要在启动时从磁盘读取,但在我更新对象时隐式写入磁盘。我不太关心这可能给我带来的任何速度提升。我真正追求的是增加的灵活性。如果我有一个与链表、树或其他数据结构非常匹配的问题,我不应该将其移植到关系数据库中。
Python会很好,但其他语言也很好。我正处于这个探索阶段。我想了解一下现有的解决方案。在谷歌搜索这个问题时,我得到了很多与不同 Nosql 项目相关的点击。但是,据我所知,Nosql 是关于当您因为拥有太多数据而超出关系数据库时您所做的一切。我真的处于光谱的另一端。我的数据太少,以至于关系数据库实际上是多余的。
对象数据库是谷歌搜索这个问题时出现的另一件事,这让我想起了 Zope 和 ZODB。很久以前我涉足过 Zope,但我真的不喜欢它。但是读了一点对象数据库让我觉得这可能是我正在寻找的东西。再说一次,他们普遍未能吸引用户让我怀疑。对象数据库已经存在了很长时间,但仍然没有流行起来。我想这意味着他们有问题?