Apache Cassandra的高级Java客户端选择
有四个高级API可以访问Cassandra,我没有时间尝试它们。所以我希望找到一个可以帮助我选择合适人选的人。
我会写下我对他们的发现:
DataNucleus将-卡桑德拉 - 插件
优点:
支持JPA1,JPA2,JDO1 - JDO3 - 我在评论中看到,JDO比使用JPA的Hibernate更好地扩展
kundera中提到的所有专业人士?
缺点:
到目前为止对JDO没有任何考验(当然只与我有关;)
找不到文档!
昆德拉
优点:
具有所有优点的JPA 1.0注释(标准符合,没有样板代码,......)
承诺在不久的将来跟随功能:JPA听众,@ Preersers @PostPersist等 - 关系,@ OneToMany,@ ManyToMany等 - 交易支持,@ Transactional
缺点:
插件的早期开发阶段?
错误?
没有可能解决JDO / JPA框架中的问题?
s7 pelops
优点:
纯java api - >更好地控制持久性?
缺点:
纯java api - >样板代码
hector 0.7
优点:
Maven化
spring integration - >依赖注入
纯java api - >更好地控制持久性?
jmx监控?
管理节点似乎很容易和灵活
缺点:
纯java api(无注释) - >锅炉板代码
结论到目前为止
由于我对RDMS,Hibernate,JPA,Spring以及对EJB不再那么新闻充满信心,我的第一印象是,去kundera本来是正确的选择。但在阅读了一些有关JPO,DataNucleus的帖子后,我不再确定了。对于DataNucleus,学习曲线应该是陡峭的(对于经验丰富的JPA开发人员?),我不确定,我是否应该去实现它。
我主要担心的是插件的状态。还有JDO和Datanucleus-Cassandra-Plugin的论坛支持/帮助,因为据我所知,它并没有广泛传播。
有人在那里,谁有经验,有一些framworks已经可以给我一个暗示?也许混合策略也是有意义的。如果(如果存在的话)JDO不灵活/足够/不足以满足我的需求,那么回归到一个更容易的pelops或hector的API?这可能吗?是否有类似于JPA的方法来获取SQL连接和获取/放置数据?
在阅读了一下之后,我发现了以下附加信息:
Datanucleus-Cassandra-Plugin基于pelops,也可以访问以获得更大的灵活性,更高的性能(?),这应该用于具有大量数据的列族,JDO / JPA访问应仅用于“管理“数据,性能不是那么重要,数据量不是很大。
对于hector或pelops来说,这仍然是个问题。
为它的后来发布Datanucleus-Cassandra-Plugin可扩展性,或者
hector for it对节点hanldling的支持更充分。
没有找到相关结果
已邀请:
7 个回复
久坡
肺鬼耙扮群
授巨
梦砍废么
屉杆绊
痴浪墨
穗揣