Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Согласованность данных  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
Добрый вечер,

может кто нибудь в двух словах дать четкое описание что значит согласованность данных?

Я прочитал такое определение: каждая транзакция фиксирует только допустимые данные, и пример, если списали с одного счета, но не пополнили другой счет, то данные несогласованы. Но это согласованность с точки зрения приложения и не факт, что это не две транзакции(списания/пополнения), и первая транзакция делает с этой точки зрения базу несогласованной.
20 авг 17, 00:09    [20736495]     Ответить | Цитировать Сообщить модератору
 Re: Согласованность данных  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 7126
cobalt_frog,
Согласованность данных, это понятие приложения
И только приложение решает когда данные согласованы, а когда нет

Именно поэтому, что делать commit или rollback - решает разработчик, а не rdbms.

ТО есть, если commit не было, в случае сбоя, транзакция откатывается целиком.

А если приложение получило завершение commit, то даже в случае сбоя системы, правильно
настроенная rdbms гарантирует что после восстановления системы на этот момент времени, все изменения транзакции сохранятся в базе.
20 авг 17, 00:24    [20736511]     Ответить | Цитировать Сообщить модератору
 Re: Согласованность данных  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 7126
cobalt_frog,
автор

...
Но это согласованность с точки зрения приложения и не факт, что это не две транзакции(списания/пополнения), и первая транзакция делает с этой точки зрения базу несогласованной.


Если в приложении возникает такая ситуация, то му**к разработчик, а не база.
20 авг 17, 00:26    [20736514]     Ответить | Цитировать Сообщить модератору
 Re: Согласованность данных  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
Vadim Lejnin
cobalt_frog,
автор

...
Но это согласованность с точки зрения приложения и не факт, что это не две транзакции(списания/пополнения), и первая транзакция делает с этой точки зрения базу несогласованной.


Если в приложении возникает такая ситуация, то му**к разработчик, а не база.


Кто же спорит?
Речь о том, что в определении именно слова "каждая транзакция фиксирует только допустимые данные".
20 авг 17, 00:36    [20736522]     Ответить | Цитировать Сообщить модератору
 Re: Согласованность данных  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 7126
cobalt_frog,

Либо кривой переводчик (что скорее всего), либо либо автор - "неправильный" архитектор
20 авг 17, 00:45    [20736529]     Ответить | Цитировать Сообщить модератору
 Re: Согласованность данных  [new]
K790
Member

Откуда:
Сообщений: 631
автор
Я прочитал такое определение

где? и при чем тут Oracle?
20 авг 17, 11:48    [20736766]     Ответить | Цитировать Сообщить модератору
 Re: Согласованность данных  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10040
cobalt_frog
Я прочитал такое определение


Начни хотя-бы с ACID:

The consistency property ensures that any transaction will bring the database from one valid state to another. Any data written to the database must be valid according to all defined rules, including constraints, cascades, triggers, and any combination thereof. This does not guarantee correctness of the transaction in all ways the application programmer might have wanted (that is the responsibility of application-level code), but merely that any programming errors cannot result in the violation of any defined rules.

SY.

Сообщение было отредактировано: 20 авг 17, 16:19
20 авг 17, 16:18    [20737018]     Ответить | Цитировать Сообщить модератору
 Re: Согласованность данных  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
SY
cobalt_frog
Я прочитал такое определение


Начни хотя-бы с ACID:

The consistency property ensures that any transaction will bring the database from one valid state to another. Any data written to the database must be valid according to all defined rules, including constraints, cascades, triggers, and any combination thereof. This does not guarantee correctness of the transaction in all ways the application programmer might have wanted (that is the responsibility of application-level code), but merely that any programming errors cannot result in the violation of any defined rules.

SY.


Я с этого и начинал, оттуда и возник этот вопрос, но к сожалению полез в русскую википедию . Меня смутило определении именно оттуда.
20 авг 17, 22:33    [20737505]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить