oodb该是什么样~~~

前期在用db4o作小型web项目的数据库。感想如下:

1.使用起来很方便,基本上储存用set就可以了,适合任意对象,就是插入速度有点慢。
2.检索比较麻烦,语法感觉比较复杂。特别是复杂的检索
3.配置起来还算简单,也有索引。
4.我大量的使用了ext().getBYID()之类的方法直接得到对象。
5.getById后必须active这点比较无聊。
6.用id取对象的话,就一定不能碎片整理,否则id会变

总的来说,经过再次包装后,db4o已经比较适合我使用了。它小巧,速度还行,还有一定的缓存机制,确实很适合数据量不大的小型web应用。不过另外的问题也有,比如说现在的6.3就不支持6.1的文件了。

再说一下我对oo数据库的需求。
1.需要一个直接定位对象的方法,用id或者命名都可以,根据id直接取出对象速度一定要快,最好为常数。
2.外置索引,并且独立。也就是说索引和数据库本身解耦,可以根据需要随意选择索引的实现,而不会影响数据库。这里可能需要数据库本身提供触发器的接口。其实彻底分开也没什么不可以的,由应用本身去协调索引和数据库的关系。
3.事务,其实也就是提供一个缓存机制处理对象的储存。很好实现
4.储存方式可扩展,不再仅限于文件。
5.使用内存量可配置

大家有什么看法?

你可能感兴趣的:(Web,.net,ext,OO)