An Entity of Type: Thing, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

A nested transaction is a database transaction that is started by an instruction within the scope of an already started transaction. Nested transactions are implemented differently in different databases. However, they have in common that the changes are not made visible to any unrelated transactions until the outermost transaction has committed. This means that a commit in an inner transaction does not necessarily persist updates to the system. Theory for nested transactions is similar to the theory for flat transactions.

Property Value
dbo:abstract
  • A nested transaction is a database transaction that is started by an instruction within the scope of an already started transaction. Nested transactions are implemented differently in different databases. However, they have in common that the changes are not made visible to any unrelated transactions until the outermost transaction has committed. This means that a commit in an inner transaction does not necessarily persist updates to the system. In some databases, changes made by the nested transaction are not seen by the 'host' transaction until the nested transaction is committed. According to some, this follows from the isolation property of transactions. The capability to handle nested transactions properly is a prerequisite for true component-based application architectures. In a component-based encapsulated architecture, nested transactions can occur without the programmer knowing it. A component function may or may not contain a database transaction (this is the encapsulated secret of the component. See Information hiding). If a call to such a component function is made inside a BEGIN - COMMIT bracket, nested transactions occur. Since popular databases like MySQL do not allow nesting BEGIN - COMMIT brackets, a framework or a transaction monitor is needed to handle this. When we speak about nested transactions, it should be made clear that this feature is DBMS dependent and is not available for all databases. Theory for nested transactions is similar to the theory for flat transactions. The banking industry usually processes financial transactions using open nested transactions, which is a looser variant of the nested transaction model that provides higher performance while accepting the accompanying trade-offs of inconsistency. (en)
  • Вкладена транзакція — це транзакція бази даних, яка запускається інструкцією в межах уже розпочатої транзакції. Вкладені транзакції реалізуються по-різному в різних базах даних. Однак вони всі мають спільне те, що зміни не стають видимими для жодних непов’язаних транзакцій, доки не буде фіксовано крайню транзакцію. Це означає, що фіксація у внутрішній транзакції не обов’язково зберігає оновлення системи. У деяких базах даних зміни, внесені вкладеною транзакцією, не відображаються транзакцією «хост», поки вкладена транзакція не буде зафіксована. Дехто вважає, що це випливає з властивості ізоляції транзакцій. Здатність правильно обробляти вкладені транзакції є необхідною умовою для справжніх архітектур програм на основі компонентів. В інкапсульованій архітектурі на основі компонентів вкладені транзакції можуть відбуватися без відома програміста. Функція компонента може містити або не містити транзакцію бази даних (це інкапсульований секрет компонента. Див. Приховування інформації). Якщо виклик такої функції компонента здійснюється всередині блоку BEGIN - COMMIT, відбуваються вкладені транзакції. Оскільки популярні бази даних, такі як MySQL, не допускають вкладення блоків BEGIN - COMMIT, для цього потрібен фреймворк або монітор транзакцій. Коли ми говоримо про вкладені транзакції, слід пояснити, що ця функція залежить від СУБД і доступна не для всіх баз даних. Теорія вкладених транзакцій подібна до теорії плоских транзакцій. Банківська галузь зазвичай обробляє фінансові операції за допомогою відкритих вкладених транзакцій, що є більш вільним варіантом моделі вкладених транзакцій і забезпечує вищу продуктивність, приймаючи супутні компроміси невідповідності. (uk)
dbo:wikiPageID
  • 1867103 (xsd:integer)
dbo:wikiPageLength
  • 3225 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 931313025 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
rdfs:comment
  • A nested transaction is a database transaction that is started by an instruction within the scope of an already started transaction. Nested transactions are implemented differently in different databases. However, they have in common that the changes are not made visible to any unrelated transactions until the outermost transaction has committed. This means that a commit in an inner transaction does not necessarily persist updates to the system. Theory for nested transactions is similar to the theory for flat transactions. (en)
  • Вкладена транзакція — це транзакція бази даних, яка запускається інструкцією в межах уже розпочатої транзакції. Вкладені транзакції реалізуються по-різному в різних базах даних. Однак вони всі мають спільне те, що зміни не стають видимими для жодних непов’язаних транзакцій, доки не буде фіксовано крайню транзакцію. Це означає, що фіксація у внутрішній транзакції не обов’язково зберігає оновлення системи. Теорія вкладених транзакцій подібна до теорії плоских транзакцій. (uk)
rdfs:label
  • Nested transaction (en)
  • Вкладена транзакція (uk)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License