官术网_书友最值得收藏!

  • Learning PostgreSQL 11
  • Salahaldin Juba Andrey Volkov
  • 263字
  • 2021-07-02 13:11:37

ACID properties

In a relational database, a single logical operation is called a transaction. The technical translation of a transaction is a set of database operations, which are createread, update, and delete (CRUD). An example of explaining a transaction is a budget assignment to several projects in the company assuming we have a fixed amount of money. If we increase a certain project budget, we need to deduct this amount of increase from another project. The ACID properties in this context could be described as follows:

  • Atomicity: All or nothing, which means that if a part of a transaction fails, then the transaction fails as a whole.
  • Consistency: Any transaction gets the database from one valid state to another valid state. Database consistency is governed normally by data constraints and the relation between data and any combination thereof. For example, imagine if someone would like to completely purge his account on a shopping service. In order to purge his account, his account details, such as a list of addresses, will also need to be purged. This is governed by foreign key constraints, which will be explained in detail in the coming chapter.
  • Isolation: Concurrent execution of transactions results in a system state that would be obtained if the transactions were executed serially.
  • Durability: The transactions that are committed—that is, executed successfully—are persistent even with power loss or some server crashes. In PostgreSQL, this is done normally by a technique called Write-Ahead Logging (WAL). Another database refers to this as a transaction log such as in Oracle.
主站蜘蛛池模板: 舒城县| 加查县| 崇州市| 郯城县| 左贡县| 深圳市| 通辽市| 红安县| 津市市| 怀远县| 夹江县| 铁力市| 邵东县| 嫩江县| 湾仔区| 朔州市| 赣州市| 云龙县| 西青区| 怀远县| 望江县| 通榆县| 靖州| 民勤县| 东光县| 理塘县| 全南县| 临汾市| 涟源市| 张家口市| 鄂伦春自治旗| 沅陵县| 大关县| 霍山县| 独山县| 灵璧县| 抚顺市| 花垣县| 海安县| 西和县| 广西|