我正在为数据库的各种ACID属性寻找一个真实世界的例子。什么是ACID的真实例子?
18
A
回答
32
原子性 - 从一个帐户转帐到另一涉及从第一账户和第二存款操作作出退出操作的交易。如果存款操作失败,您不希望撤回操作发生。
一致性 - 数据库跟踪支票账户可能只允许唯一的检验数为每个交易
隔离存在 - 出纳找了一个平衡点,必须从涉及并发事务隔离从同一个帐户退出。只有在取款交易成功并且出纳员再次查看余额时,才会报告新余额。
耐久性 - 系统崩溃或任何其他故障不能让失去交易的结果或数据库的内容。通常可以通过单独的事务日志来实现持久性,这些事务日志可以“重新创建”来自某个选定时间点的所有事务(如备份)。
(来自现实世界的例子总结勒dorfier的link)
2
以任何给定的Perl脚本来操纵关系数据库中的数据,在其顶部放置一个“BEGIN”,在底部放置一个“COMMIT”,并且您知道perl脚本已经工作,根本不会影响你的数据库(除非你在mysql上插入DDL语句)。在设计强大的软件(以及我最喜欢的属性)时,Atomicity功能非常强大,可以保证这一点。
8
*原子性 - 从用户的角度来看,一个事务要么完全完成(即所有相关的数据库表更新)或根本没有。如果发生错误或中断,则到该点为止的所有更改都将被撤消。
•一致性 - 数据库中的所有完整性条件都与每个事务一起维护,从而将数据库从一个一致状态转换为另一个一致状态。
•隔离 - 每个事务都与其他事务隔离,因此每个事务只能访问属于一致数据库状态的数据。
•耐用性 - 如果事务已完成报告给用户,则数据库的结果更改会在后续硬件或软件故障中存在。
相关问题
- 1. 是OrientDB真的ACID兼容?
- 2. ASP.NET 4.0中SetSessionStateBehavior方法的真实例子是什么?
- 3. 什么是原型继承的真实例子?
- 4. ACID和非ACID SQL有什么不同?
- 5. Ember.js的真实例子
- 6. 真实的例子“=”使用
- 7. 什么是抽象类的目的/用途? (寻找真实世界的例子。)
- 8. JavaScript的void操作符的真实用例是什么?
- 9. 为什么表达式是真实的和真实的? (python 2.7)
- 10. Android中LaunchModes的真实世界用例是什么?
- 11. HORN的真实应用是什么?
- 12. 什么时候是>真实的?
- 13. 我的ToJSON Base64实例是否理智? FromJSON实例会是什么样子?
- 14. 什么是Google AppEngine实例?
- 15. 什么是实例变量?
- 16. 什么是播放实例
- 17. gprolog说“真的?”是什么意思?而不是在这个例子中“是”?
- 18. 什么是环形缓冲区/循环队列的真实生活实例?
- 19. 什么是TDD实际应用的高质量真实世界示例?
- 20. 为什么这总是回归真实?
- 21. 如何验证什么是噪音什么是真实数据?
- 22. 寻找真实世界的Gradle例子
- 23. 使用qunit和jstestrunner的真实例子?
- 24. tomcat className =“org.apache.catalina.authenticator.SingleSignOn”真实的例子?
- 25. 使用xmlns的真实例子?
- 26. Multiton - 真实世界的例子?
- 27. 什么是实体对象实例?
- 28. 什么是叶子实体?
- 29. 非ACID数据库合规性对现实世界的影响是什么?
- 30. 什么是子类的适当的实例声明?
这听起来像家庭作业。 – 2009-06-16 02:49:25
和它没有编程相关 – 2009-06-16 04:02:34