|
|
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.!YuraIII, Oracle vs MSSQL: http://triffids.googlepages.com/oraclevsyukon автор В Microsoft сервере отсутсвуют многие типы индексов, которые доступны в Оракле, что занчительно влияет на планы запросов и может в некоторых случаях дать преимущество оптимизатору Оракла на порядок: Интересно , а исходя из каких критеривев крутости (преймущественности) в список попал этот пункт ? автор ....... Reverse key indexes Yes / No .... ИМХО эта фича - мягкая резиновая ручка на грабли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 13:02 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Hint - index range scan. Что бы дать понять, что я в теме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 13:13 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
interestingHint - index range scan. Что бы дать понять, что я в теме. неа мимо темы: Reverse Key IndexesMany database tables have primary or unique keys based on a sequence. These keys are usually indexed by b-tree indexes which, by nature, store the indexed values in order. This behavior of sequential storage gives this type of index the name of “monotonic” or “right-growing” index. These types of indexes can become performance bottlenecks on high-volume transactional systems because of serialization that occurs when inserting values into the leaf-blocks of these indexes. To avoid this serialization, reverse-key indexes can be used. A reverse-key index stores indexed values in reverse-bit order. So, where the values (234, 235, 236) are stored sequentially and contiguously in a normal b-tree index, they are stored out of sequence and non-adjacent (236, 234, 235) for the reverse-key index (see Table 2-3). Over a larger set, this reversing of the key distributes the indexed values across the leaf-node blocks of the index, thereby eliminating the serialization on sequential inserts. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 13:46 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.!interestingHint - index range scan. Что бы дать понять, что я в теме. неа мимо темы: Уверены ? Reverse Key Indexes Over a larger set, this reversing of the key distributes the indexed values across the leaf-node blocks of the index, thereby eliminating the serialization on sequential inserts. Прошу прокоментировать http://richardfoote.wordpress.com/category/reverse-key-indexes/ автор The net result of using this suggested strategy is not good. 1) Oracle ignores the Reverse Key Index anyways as a LIKE ‘EIWOB%’ is a range predicate 2) Oracle therefore performs a [u]Full Table Scan anyways[/u] 3) As the query is effectively searching for all records that start with ‘EIWOB’, not as expected all records that end with ‘BOWIE’, the two queries in the example will actually return completely different results В контексте заявления и ответить на поставленный ранее вопрос :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 14:42 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.!locky можно - только на нужное поле гы, а вот так в оракле нельзя. Это печально. (С) т.е. в данном конкретном случае FBI есть способ изобретательно выйти из затруднения, в которое другие даже не попадают. Что, собственно, не умаляет прочих достоинств FBI. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 14:48 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.! Over a larger set, this reversing of the key distributes the indexed values a cross the leaf-node blocks of the index, thereby eliminating the serialization on sequential inserts. [/quot] Суть проблемы с index range scan содержится в приведенной Вами цитате. А про оптимайзер в контексте index range scan можно по ссылке почитать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 15:06 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.! неа - деньги. если к каждому полю где у меня upper() индекс висит пришлось бы дублировать поле я бы в 4гб XE редакции бы не влез. А upper() индекс места не занимает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 15:49 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Le PeaceYo.! неа - деньги. если к каждому полю где у меня upper() индекс висит пришлось бы дублировать поле я бы в 4гб XE редакции бы не влез. А upper() индекс места не занимает? Занимает но в случае с индексом по вычисляемой колонкой - место еще под колонку нужно правда, в скуле то в данном случае FBI нафиг не нужен... ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 16:35 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
locky, ага, врубился. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2010, 18:41 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
interesting Суть проблемы с index range scan содержится в приведенной Вами цитате. попытка наковырять недостатки зачетная но не совсем понятно, что оно меняет в плане наличия отсутствия такого индекса в мсскл. да, чудо лекарством от всех болезней оно не станет, при like конечно же начнет фулсканить, но по строгому соответствию достанет именно по index range scan реверсного индекса. interesting Интересно , а исходя из каких критеривев крутости (преймущественности) в список попал этот пункт ? я ответил на поставленный вопрос ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2010, 19:29 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
MasterZiv YuraIII wrote: > B-tree indexes Yes / Yes > B-tree cluster indexes Yes / No > Hash cluster indexes Yes / No > Reverse key indexes Yes / No > Bitmap indexes Yes / No > Bitmap join indexes Yes / No > Function-based indexes Yes / No > Domain indexes Yes / No > Index-organized tables Yes / Yes (clustered tables) Я из вышеперечисленного понимаю только Bitmap indexes и Hash indexes. Bitmap indexes вообще никому нахрен не нужны по большому счёту. Hash - ну, без них можно жить. Так что это -- всего лишь бла-бла-бла, дешёвый маркетинг, и дурацкое фалломерение, не более. Все субд более-менее одинаковы, и выбор их лежит не в плоскости технологии. bitmap и bitmap join - очень даже вкусные фичи, но не для олтп задач, офк. function based - нужны в спецфичных случаях, но если уж нужны - прирост в производительности будет зачетный. IOT - тоже штука крайне спецфичная, не на каждый день. остальное (кроме btree стандартных) - не пользовал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 15:16 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
aZm wrote: > bitmap и bitmap join - очень даже вкусные фичи, но не для олтп задач, офк. Вот именно. А не для OLTP нужны всё равно более специальные СУБД. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2010, 12:07 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
MasterZiv aZm wrote: > bitmap и bitmap join - очень даже вкусные фичи, но не для олтп задач, офк. Вот именно. А не для OLTP нужны всё равно более специальные СУБД. кто тебе такое сказал? у нас 10 теровое хранилище, тьфу-тьфу, одним ораклом сыто :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2010, 17:37 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.! попытка наковырять недостатки зачетная но не совсем понятно, что оно меняет в плане наличия отсутствия такого индекса в мсскл. да, чудо лекарством от всех болезней оно не станет, ..... Не сочтите за буквоедство автор В Microsoft сервере отсутсвуют многие типы индексов , которые доступны в Оракле, что занчительно влияет на планы запросов и может в некоторых случаях дать преимущество оптимизатору Оракла на порядок ИМХО Присутствие Reverse key indexes не совсем соответствует цитате, Ваше заключение было бы полностью правдиво , если бы в списке небыло Reverse key indexes. Если смотреть в суть проблемы, то фича появилось как затычка архитектурной проблемы ограниченного количества слотов транзакций в блоке данных. И никаких супер бенифитов не предоставляет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 11:44 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
поправлюсь , что бы присечь инсинуации. Не количеством, как таковым, а самим фактом наличия слотов транзакций в блоках данных и индексов и логикой работы с ними. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 11:59 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
interestingпоправлюсь , что бы присечь инсинуации. Не количеством, как таковым, а самим фактом наличия слотов транзакций в блоках данных и индексов и логикой работы с ними. который, в отличии от затычки, таки представляет определенные бенефиты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 12:12 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)interestingпоправлюсь , что бы присечь инсинуации. Не количеством, как таковым, а самим фактом наличия слотов транзакций в блоках данных и индексов и логикой работы с ними. который, в отличии от затычки, таки представляет определенные бенефиты. Не совсем понял, что вы имеете ввиду , сказав который? Слоты транзакций? Так это аналог блокировок в других СУБД. Конечно предостваляет контроль и управление транзакционной целостностью данных. Любое архитектурное решение имеет свои достоинства и недостатки. А попытка показать недостаки как достоинства - маркетинговый булшит. Я не говорю, что в других сабжевых СУБД нет похожих недостатков, они просто другие, потому что у них архитектура другая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 12:35 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
interesting Не количеством, как таковым, а самим фактом наличия слотов транзакций в блоках данных и индексов и логикой работы с ними. атрибуты транзакции в блоке данных то тут каким боком ? перечитайте мою цитату из доки, ва куда понесло совсем не туда. interestingИМХО Присутствие Reverse key indexes не совсем соответствует цитате, а вот эту конструктивней, подправлю. за одно можно показать какой бенефит кластерный индекс дает, помнится я pkarklin показывал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 12:47 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.! атрибуты транзакции в блоке данных то тут каким боком ? перечитайте мою цитату из доки, ва куда понесло совсем не туда. Имелось ввиду , не сами атрибуты, а их количество на блок относительно количества строк ( ключей) в блоке и конкуренция за доступ к слотам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 12:55 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
interesting Имелось ввиду , не сами атрибуты, а их количество на блок относительно количества строк ( ключей) в блоке и конкуренция за доступ к слотам. атрибуты чего ? транзакции - бред, нет в индексе никаких атрибутов транзакции. конкуренция за leaf блок происходит в любой субд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 12:59 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.! нет в индексе никаких атрибутов транзакции. Вы хотите сказать что при изменении ( добавлении ) ключа в индексном блоке не занимается ( используется) слот транзакций из этого блока ? Yo.! конкуренция за leaf блок происходит в любой субд. Еще раз interesting Я не говорю, что в других сабжевых СУБД нет похожих недостатков, они просто другие, потому что у них архитектура другая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 13:20 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
interesting Конечно предостваляет контроль и управление транзакционной целостностью данных. который - факт :) Скорее позволяет не держать блокировки в оперативной памяти. По поводу достоинств/недостатков архитектур согласен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 14:06 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
interesting Вы хотите сказать что при изменении ( добавлении ) ключа в индексном блоке не занимается ( используется) слот транзакций из этого блока ? нет кончено, откуда же ему взяться в блоках индекса, атрибуты транзакции в блоке данных, а не индекса хранятся. interestingЕще раз вы еще раз повторили глупость, разберитесь в структуре блока индекса и данных и возвращайтесь с новым тезисом ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 14:13 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
Yo.! разберитесь в структуре блока индекса и данных и возвращайтесь с новым тезисом ;) Я сходу не нашнл отличий в заголовке блока индекса и данных . Может конкретную ссылку дать ? Yo.! нет кончено, откуда же ему взяться в блоках индекса, атрибуты транзакции в блоке данных, а не индекса хранятся. Давайте поступим по другому, Вы подумаете и расскажете ( аргументируете) зачем в create index имеются INITRANS MAXTRANS параметры, а потом продолжим разговор. ссылка для размышлений : http://www.databases-la.com/?q=node/71 автор Each server transaction needs one transaction entry in the index block header before it can make changes to a block. Если Ваша аргументация будет убедительна , пойду искать новые тезисы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 16:20 |
|
||
|
Oracle vs MS SQL vs Sybase
|
|||
|---|---|---|---|
|
#18+
ок, убедил. с ITL в блоках индекса я слунил. но всетаки возвращаемся к interesting Если смотреть в суть проблемы, то фича появилось как затычка архитектурной проблемы ограниченного количества слотов транзакций в блоке данных. в реальности у индекса не произойдет ограничения, если в блоке не хватает места под ITL этот блок индекса просто разбивается на два. в свою очередь мсскл при привышении кол-ва блокировок проэскалирует блокировки до блокировки всей таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2010, 17:25 |
|
||
|
|

start [/forum/topic.php?fid=35&msg=36490259&tid=1552814]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 242ms |
| total: | 375ms |

| 0 / 0 |
