|
su.dbms.sql- SU.DBMS.SQL ------------------------------------------------------------------ From : Dmitry Kuzmenko 2:5020/400 16 Feb 2001 14:57:32 To : All Subject : Re: Проблема с большими таблицами -------------------------------------------------------------------------------- Hello, Oleg! Oleg Ivantchouk wrote: > >> Hе понял. Oracle - классический версионник (интересно, а какой сервер > > DK> заблуждение. Оракл - не "классический" версионник. Он вообще не > DK> версионник, если так можно выразиться. > > Ваше определение классического версионника в студию, плиз. могу затребовать аналогичное подтверждение - с каких это пор блокировочный сервер вдруг стал "классическим" версионником. > ... > DK> И появилось это в Оракле не далее > DK> чем с 7-ой версии. В 8-ой версии, если я не ошибаюсь, в Оракле появилась > DK> версионность метаданных. > > Что имеется в виду под метаданными? Данные из словаря? Они обрабатываются > также, как и обычные - тут дискриминации нет и не было. версионность метаданных - это когда ты можешь на таблице с миллионом записей сделать ALTER TABLE X ADD FIELD1 INTEGER... и записи останутся нетронутыми. Т.е. сервер будет считывать старые версии ( в смысле структуры) записей, а показывать их по новому. > DK> Почему не совсем версионник - потому что допускает пропадание версий, > DK> если те не вмещаются в transaction log. Т.е. на длинной RR-транзакции там > DK> есть шанс, что в определенный момент тебе начнут показываться свежие > > Это просто решается. Стандартный уровень изоляции - read commited. > Однако можно задать (в том числе для сессии) > ALTER SESSION SET ISOLATION_LEVEL SERIALIZABLE; вообще все решается всегда очень просто - вырубанием всех остальных пользователей, и работа в однопользовательском режиме. И зачем тогда в Оракле ввели версионность, если ты предлагаешь работать в SERIALIZABLE? Я тебе про фичу REPEATABLE READ, а ты мне - "давайте будем работать в другом режиме". > Размер истории, хранимый в блоках данных, может задаватся параметрами > INITRANS и MAXTRANS (и для индексов тоже). > > Добавлю, что если транзакция не пишет в базу, то есть является readonly, то > уровень изоляции repeatable read используется автоматически. > > Чем же Oracle не классический версионник? а чем он КЛАССИЧЕСКИЙ? С каких это пор сервер, в котором постепенно были реализованы способы версионирования, стал "классическим"??? Тут выяснилась еще одна интересная история. Оракл в 1998 году якобы запатентовал принцип SNAPSHOT. Hа эту тему рекомендую прочитать http://www.bountyquest.com/winner/winner4.htm -- Dmitry Kuzmenko, Epsylon Technologies. TechSupport Manager. InterBase support. Welcome to http://ib.demo.ru/ (1251) (095) 530-28-06. Отправлено через сервер Talk.Ru - http://www.talk.ru --- ifmail v.2.15dev5 * Origin: Epsylon Technologies (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms.sql/2108a17ef760.html, оценка из 5, голосов 10
|