首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带事务的分布式存储

带事务的分布式存储
EN

Stack Overflow用户
提问于 2012-02-16 15:11:47
回答 2查看 855关注 0票数 4

我目前正在开发一个托管在google app engine上的应用程序。然而,gae有很多缺点:它很昂贵,而且很难调试,因为我们不能附加到真实的实例上。

我正在考虑将gae改为一个开源的替代方案。不幸的是,满足我的现有NOSQL解决方案都不支持类似于gae事务的事务(gae支持实体组内的事务)。

你对解决这个问题有什么看法?我目前正在考虑一个像Apache Cassandra +一些事务锁定服务(hazelcast)的商店。有没有人有这方面的经验?你能推荐些什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-26 13:09:19

cassandra有计划在未来支持实体组,请参阅CASSANDRA-1684

如果您的数据不能在没有事务的情况下轻松建模,那么使用非跨越式数据库值得吗?你需要可伸缩性吗?

在cassandra中执行类似事务的标准方法在此presentation中描述,从幻灯片24开始。基本上,您将类似于WAL log条目的内容写入1行,然后在多行上执行实际写入,然后删除WAL日志行。失败时,只需读取并执行WAL日志中的操作即可。由于所有cassandra写入都有用户提供的时间戳,所以所有写入都可以成为幂等的,只需将写入的时间戳与WAL日志条目一起存储即可。

这种策略为您提供了ACID中的原子性和持久性,但您不会获得一致性和隔离性。如果你的工作规模需要像cassandra这样的东西,你可能无论如何都需要放弃完整的ACID事务。

票数 2
EN

Stack Overflow用户

发布于 2012-02-17 19:38:39

您可能希望尝试使用AppScaleTyphoonAE在您自己的硬件上托管为App Engine构建的应用程序。

如果您是在Python下进行开发,那么您可以使用Werkzeug debugger提供非常有趣的调试选项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9306987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档