文章详情页
一个新的Berkeley DB java 持久API
Sleepycat Software 正在收集来自于它的用户和潜在用户关于一个新的对象持久 java API(A New Java Persistence API for Berkeley DB)的反馈。该API和其他java领域的持久解决方案例如EJB3,hibernate和jdo有着类似的地方,但也有着重大的不同。传统上,Berkeley DB提供了不利用计划或数据模型而创建高性能数据库应用的必要能力.甚至它 的对象绑定和stored collections的java API都不受任何种类的数据模型的约束.这提供了最大限度的灵活性,但对快速定义大而且复杂的模型没有内置的支持.该API为Berkeley DB 事务引擎提供了一个内在的持久对象模型.在不影响性能的前提下对复杂的对象模型提供支持是设计的中心.从the com.sleepycat.persist package的总括看一下该API。该package新增加了三个子package:model,evole和raw.The Berkeley DB Persistence API,url: com.sleepycat.persist o com.sleepycat.persist.model o com.sleepycat.persist.evolve o com.sleepycat.persist.raw我们在Sleepycat对你们的反应、评论、建议和其他反馈,包括正面和反面的都很有兴趣。我们尤其想了解的是:(以下该API指的是Java Persistence API for Berkeley DB) 1.你对哪种java的持久方案更有兴趣? 以及相比该API的可用性,如何评估它的可用性? 该API的那些方面更有用或无用? 2.该API严重依赖了jdk1.5的泛型和标注(or注解)特性. 不使用这些新的语言的特性,我们认为可用性会大打折扣. 你认为使用这些语言的特性是对还是错? 为什么? 3. 该API,在增加了可用性的同时,并未提高查询的易用性. 你认为查询的易用性是对java持久方案的一个必备要求吗? 4.该API并未遵照现存的标准如JDO。 我们认为,这样做会在可用性和性能方面打折扣。 你认为遵守标准比可用性和性能更重要吗? 如果你还不熟悉已经存在的Berkeley DB产品线,请记着下面的背景信息。 *Berkeley DB是一个嵌入式的数据库library,不是一个数据库服务器。 通过一个非常快的Btree(B数)存储结构对事务和锁提供了很好的控制, Berkeley DB的应用比使用其他方案的应用建造的更好。 *Berkeley DB查询易用性不高。查询都是通过访问索引和使用等价的join方式来执行的。 使用erkeley DB,手工优化查询比一个简单的查询语言优化器做的更好。 *传统上Berkeley DB 提供了一个key-value(键-值)API来访问Btree(B数)数据库。 在Berkeley DB中,一个'database'(数据库),和一个SQL 表等价,并被描述为一个key-value pairs(键-值对)的集合。 在Berkeley DB底层API中,使用byte arrays,而不是对象,用来做keys(键)和values(值)。 通过 Bind and Collections APIs,使用某些机制,keys(键)和values(值) 可以被映射为java对象. * Sleepycat有三个产品线:原始的Berkeley DB,Berkeley DB java 版以及Berkeley DB XML。 该API初始目标是提供给Berkeley DB Java 版使用,但有可能在不远的将来被改写为适合在原始的Berkeley DB上使用。 它现在还不适合使用在 使用了XML以及XML Schema作为数据模型的 Berkeley DB XML,Thank you in advance for taking a look at this and for any feedback that you are willing to provide!The Sleepycat Java Edition team官方地址:http://dev.sleepycat.com/
标签:
Java
相关文章:
排行榜