- Cassandra High Availability
- Robbie Strickland
- 198字
- 2021-08-06 19:50:29
ACID
One of the most significant obstacles that prevents traditional databases from achieving high availability is that they attempt to strongly guarantee the ACID properties:
- Atomicity: This guarantees that database updates associated with a transaction occur in an all-or-nothing manner. If some part of the transaction fails, the state of the database remains unchanged.
- Consistency: This assures that the integrity of data will be preserved across all instances of that data. Changes to a value in one location will definitely be reflected in all other locations.
- Isolation: This attempts to ensure that concurrent transactions that manipulate the same data do so in a controlled manner, essentially isolating in-process changes from other clients. Most traditional relational database systems provide various levels of isolation with different guarantees at each level.
- Durability: This ensures that all writes are preserved in nonvolatile storage, most commonly on disk.
Database designers most commonly achieve these properties via write masters, locks, elaborate storage area networks, and the like—all of which tend to sacrifice availability. As a result, achieving some semblance of high availability frequently involves bolt-on components, log shipping, leader election, sharding, and other such strategies that attempt to preserve the original design.
推薦閱讀
- Splunk 7 Essentials(Third Edition)
- Dreamweaver CS3+Flash CS3+Fireworks CS3創意網站構建實例詳解
- 面向STEM的mBlock智能機器人創新課程
- JavaScript實例自學手冊
- Practical Data Wrangling
- Photoshop CS4經典380例
- 教父母學會上網
- 大數據挑戰與NoSQL數據庫技術
- 現代機械運動控制技術
- Hadoop Real-World Solutions Cookbook(Second Edition)
- Photoshop CS3圖像處理融會貫通
- 完全掌握AutoCAD 2008中文版:綜合篇
- 高維聚類知識發現關鍵技術研究及應用
- 數據掘金
- 分數階系統分析與控制研究