Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4] 5 6   вперед  Ctrl      все
 Re: Способы реализации индексов  [new]
ОКТОГЕН
Member

Откуда:
Сообщений: 2498
Ёш, я тоже.
Всё что коммитится - становится видным в другой транзакции.
В пж по крайней мере.
1 апр 11, 17:28    [10458724]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
ОКТОГЕН
Member

Откуда:
Сообщений: 2498
Gluk (Kazan), скажите нам в оракле такое же поведение, и если нет,
то в чём отличие?
1 апр 11, 17:29    [10458741]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
-2-
Member

Откуда:
Сообщений: 15330
ОКТОГЕН,

Прочтите уже хоть википедию про уровни изоляции, не имеющие прямого отношения к этой теме. В оракле, с небольшими вариациями интерпретации, поддерживаемые уровни - READ COMMITED и SERIALIZABLE.
1 апр 11, 17:39    [10458810]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Ёш
Member

Откуда:
Сообщений: 2892
ОКТОГЕН
Ёш, я тоже.
Всё что коммитится - становится видным в другой транзакции.
В пж по крайней мере.
Это если по умолчанию, при read committed, при serializable pg делает снапшот при первом запросе в транзакции и больше его не «двигает» при следующих запросах, так что в примере в первой транзакции всегда будет возвращаться одна строка, даже если её удалить и закомитить удаление в параллельной транзакции :)

Я спросил в разделе по Oracle, там пишут что Oracle не увидит изменения после begin, так что он видимо «делает снапшот» сразу при begin, а не ждёт первого запроса как pg.
1 апр 11, 17:41    [10458845]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
ОКТОГЕН
Member

Откуда:
Сообщений: 2498
Ёш, а получится закоммитить другую транзакцию? Блокировок разве не будет?
1 апр 11, 17:49    [10458898]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Ёш
ОКТОГЕН
Ёш, я тоже.
Всё что коммитится - становится видным в другой транзакции.
В пж по крайней мере.
Это если по умолчанию, при read committed, при serializable pg делает снапшот при первом запросе в транзакции и больше его не «двигает» при следующих запросах, так что в примере в первой транзакции всегда будет возвращаться одна строка, даже если её удалить и закомитить удаление в параллельной транзакции :)

Я спросил в разделе по Oracle, там пишут что Oracle не увидит изменения после begin, так что он видимо «делает снапшот» сразу при begin, а не ждёт первого запроса как pg.


У Oracle нет begin :) (Вернее есть, но к транзакциям он отношения не имеет)
И select без from не канает (и без into в анонимном блоке тоже)
и много других "мелких" отличий :)

Скушно все это, пока
1 апр 11, 17:54    [10458923]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Ёш
Member

Откуда:
Сообщений: 2892
ОКТОГЕН
Ёш, а получится закоммитить другую транзакцию? Блокировок разве не будет?
получится, версионник же, select не блокирует delete :)
1 апр 11, 18:01    [10458971]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54803

Ёш
версионник же, select не блокирует delete :)

Ещё бы в нём insert не блокировал delete, так был бы версионник...

Posted via ActualForum NNTP Server 1.4

1 апр 11, 18:05    [10458998]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Индекс Способович
Guest
Раз уж тут специалисты по PG есть, как обстоят в нем дела индексированием.
1. Данные могут браться из индекса (версионный/блокировочный режим)?
2. При index seek и index scan могут использоваться несколько индексов?
1 апр 11, 18:15    [10459066]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Ёш
Member

Откуда:
Сообщений: 2892
Индекс Способович
Раз уж тут специалисты по PG есть, как обстоят в нем дела индексированием.
1. Данные могут браться из индекса (версионный/блокировочный режим)?
Нет, есть в TODO, но такая возможность пока не реализована. Блокировочного режима нет.
Индекс Способович
2. При index seek и index scan могут использоваться несколько индексов?
Да. http://www.postgresql.org/docs/current/static/indexes-bitmap-scans.html
1 апр 11, 18:36    [10459158]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Ёш
Member

Откуда:
Сообщений: 2892
Dimitry Sibiryakov
Ёш
версионник же, select не блокирует delete :)

Ещё бы в нём insert не блокировал delete, так был бы версионник...
А разве блокирует?
1 апр 11, 18:43    [10459196]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54803

Ёш
А разве блокирует?

Elic утверждает что да:
https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=837896&msg=10414051

Posted via ActualForum NNTP Server 1.4

1 апр 11, 18:54    [10459251]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Ёш
Member

Откуда:
Сообщений: 2892
Dimitry Sibiryakov
Ёш
А разве блокирует?

Elic утверждает что да:
https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=837896&msg=10414051
Так это Oracle, а я про postgres ОКТОГЕНу отвечал %)
1 апр 11, 19:01    [10459305]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Apex
Member

Откуда: Made in USSR
Сообщений: 3910
ScareCrow
совершенно беспонятия. склоняюсь что нет.

Можно: битмап индексы или битмап-конвершн обычных индексов. Индексы независимые, но используются совместно для поиска записей. Более того, в случае предиката по двум полям, по которым существуют два независимых битмап индекса и выборки значений только этих двух полей, к таблице обращения вообще не будет.
2 апр 11, 19:40    [10461713]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Индекс Способович
Guest
Apex
ScareCrow
совершенно беспонятия. склоняюсь что нет.

Можно: битмап индексы или битмап-конвершн обычных индексов. Индексы независимые, но используются совместно для поиска записей. Более того, в случае предиката по двум полям, по которым существуют два независимых битмап индекса и выборки значений только этих двух полей, к таблице обращения вообще не будет.

"битмап-конвершн" это как в Firebird построение битовых карт по индексам?
3 апр 11, 00:32    [10462583]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Индекс Способович
Guest
И уж до кучи, может тут есть специалисты по MySQL, а как там с этим дела обстоят?
1. Данные могут браться из индекса (версионный/блокировочный режим)?
2. При index seek и index scan могут использоваться несколько индексов?
3 апр 11, 00:35    [10462589]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
или AND EQUAL
Guest
Apex
Можно: битмап индексы или битмап-конвершн обычных индексов.
или AND EQUAL
3 апр 11, 13:09    [10463098]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709

On 03.04.2011 1:35, Индекс Способович wrote:

> И уж до кучи, может тут есть специалисты по MySQL, а как там с этим дела обстоят?

Для начала нам много engine, в каждом индексы и таблицы свои.

Posted via ActualForum NNTP Server 1.4

3 апр 11, 22:48    [10464931]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709

On 03.04.2011 1:35, Индекс Способович wrote:

> И уж до кучи, может тут есть специалисты по MySQL, а как там с этим дела обстоят?

> 1. Данные могут браться из индекса (версионный/блокировочный режим)?

Почему ты вообще думаешь, что данные НЕ могут когда-то браться из индекса ?
Могут. От версионности или блокировочности там ничего не зависит.

> 2. При index seek и index scan могут использоваться несколько индексов?

Нет, MySQL таких стратегий выполнения не имеет, на сколько я в курсе.
Возможно, где-то более 5.1 что=то есть.

Posted via ActualForum NNTP Server 1.4

3 апр 11, 22:51    [10464960]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
ScareCrow
Member

Откуда: Белый город
Сообщений: 17472
автор
Могут. От версионности или блокировочности там ничего не зависит.

ага, щас. Скажите этО Firebird
4 апр 11, 01:15    [10465363]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
ScareCrow
автор
Могут. От версионности или блокировочности там ничего не зависит.

ага, щас. Скажите этО Firebird


С этого места подробнее :) Как версионность влияет на возможность брать данные непосредственно из индексов, не обращаясь к таблицам?

Видимо я что-то пропустил в этой жизни :)
4 апр 11, 08:33    [10465520]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67469
Блог
Gluk (Kazan)
Как версионность влияет на возможность брать данные непосредственно из индексов, не обращаясь к таблицам?
Видимо я что-то пропустил в этой жизни :)

Мы привыкли к версионности на уровне блоков, то есть к автоматической версионности любых объектов БД вплоть до секвенсоров, которым она мешает. В Интербейсе картина немного иная
4 апр 11, 09:06    [10465579]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709

On 04.04.2011 2:15, ScareCrow wrote:

> ага, щас. Скажите этО Firebird

"MySQL, а как там с этим дела обстоят?"

Маша ?

Posted via ActualForum NNTP Server 1.4

4 апр 11, 09:18    [10465617]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
interesting
Guest
Gluk (Kazan)
interesting

автор

Как индексы не зная про версии знают видим ли элемент для твоей транзакции?


ScareCrow
пропущено...

никак.
В Оракле когда что то читается, движок восстанавливает их состояние (грубо говоря) на момент старта транзакции запроса.



fixed

ps Я был бы счаслив , если бы вы были правы , но увы :)


Зависит от уровня изоляции ващета :) увы Вам


Мне ? Спасибо :)

Давайте разберемся , на каких уровнях изоляции транзакция в оракл может использовать версии :)
На всех прочих соотвественно не может .

Вариантов не много , думаю для вас не составит труда их перечислить.
4 апр 11, 10:59    [10466068]     Ответить | Цитировать Сообщить модератору
 Re: Способы реализации индексов  [new]
interesting
Guest
interesting
Gluk (Kazan)
пропущено...


Зависит от уровня изоляции ващета :) увы Вам


Мне ? Спасибо :)

Давайте разберемся , на каких уровнях изоляции транзакция в оракл может использовать версии
консистентное чтение .
На всех прочих соотвественно не может .

и почему именно так ( Hint: SQL standard)

Вариантов не много , думаю для вас не составит труда их перечислить ?


fixed ,
дабы вопрос был более понятен .
4 апр 11, 11:30    [10466272]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4] 5 6   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить