用Python编写应用程序,并使用各种ORM设置和直接SQL。所有这些都像罪一样丑陋。
我一直把ZODB看作是一个对象商店,它看起来很有前途......你会推荐吗?您的经验,问题和批评是什么,特别是关于开发人员的观点,可扩展性,完整性,长期维护和替代方案?有人用它开始一个项目并抛弃它吗?为什么呢?
虽然ZODB,Pypersyst和其他人背后的想法很有趣,但他们似乎缺乏热情:(
答案 0 :(得分:25)
我在Zope和外面使用ZODB已有十多年了。如果您的数据是分层的,这很好。客户经营的最大的数据存储可能......我不知道... 100GB在里面?无论如何,这个数量级的东西。
这是a performance comparison against Postgres。
如果您正在编写WSGI Web应用程序,这些软件包可能很有用:
答案 1 :(得分:14)
与“任何键值存储”相比,ZODB的主要功能是将属性更改与真实ACID事务自动集成,并对其他持久对象进行干净的“任意”引用。
ZODB比Zope默认使用的FileStorage更大:
总的来说,我很高兴使用ZODB几乎可以解决任何数据形状不明显“方形”的问题。
答案 2 :(得分:4)
我会推荐它。
我真的没有任何批评。如果它是您要查找的对象存储,则可以使用。我之前已经存储了250万个物体,并且没有感觉到压力。
答案 3 :(得分:2)
ZODB已用于大量大型数据库
大多数ZODB使用者可能是Zope用户,如果他们从Zope迁移出来,他们会迁移出去
性能不如relatonal数据库+ ORM那么好,特别是如果你有很多写入。
长期维护并不是很糟糕,您希望不时打包数据库,但这可以直接进行。
如果要在ZODB上使用多个进程,则必须使用ZEO,这比直接使用ZODB慢很多
我不知道ZODB如何在闪存盘上执行。
答案 4 :(得分:0)
通过酸洗,您应该能够以类似的方式使用任何key value数据库。