|
|
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.!where nvl(field1||field1,'ThisIsNull') = 'ThisIsNull' на этом можно окончить с перфоменсом ?Хорошо, сделали индекс ON tab1 (NVL(field1,'ThisIsNull')); Я правильно понимаю, что теперь, чтобы его заметил оптимизатор, во всех запросах вместо where field1 is null надо писать where nvl(field1||field1,'ThisIsNull') = 'ThisIsNull'? А во всех запросах с сортировкой, к примеру, писать order by nvl(field1,'ThisIsNull')? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 10:13 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
pkarklinАлександр, полагаю, Вы в курсе, что такая же "замечательная оптимизация" есть и у MS SQL?! Ну, учитывая, что мы с Вами и с Merle ещё лет семь назад обсуждали тонкости её реализации в MSSQL - таки наверное в курсе :) StalkerSчем ближе система к чистой oltp (писателей больше, читателей меньше) Могу лишь ещё раз подчеркнуть, что у Вас забавное (с моей личной точки зрения) представление об oltp. Для меня oltp - это "очень много более-менее простых писателей и ещё немного больше более-менее простых читателей". StalkerS(т.е. представьте, что вам необходимо сделать оракл для pure writing environment с нулевым или крайне незначительным числом читателей). Можно-ли оптимизировать теперь архитектуру Оракл (и как) с учетом этого? В рассматриваемых моментах - скорее нет, чем да. Для того, чтобы отказаться от redo, нужно отказаться от журнализирования, инкрементальных бэкапов и вообще половины всего хорошего, что придумано с 70-го года. Чтобы отказаться от undo, придётся отказаться от восстановления после сбоев. Таким образом, если не говорить о глобальном редизайне и применении для тех же целей каких-либо принципиально иных механизмов - "оптимизировать" не получится. В том-то и прелесть версионности в Oracle, что она практически не потребляет дополнительных ресурсов, разница только в том, что информация в rollback сегментах дольше сохраняет статус актуальной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 10:19 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
SergSuperесли конкретно - банк работал каждым филиалом в своей базе, потом решил что база должна быть общая, сеть теперь позволяет И изначально не сделал репликации? Ну... в голове надо иметь не опилки, конечно. Хотя это лирика. SergSuperт.е. если надо перенести клиента, то сначала он проверялся в базе приемнике по ФИО, дате рождения, адресу .... и мне бы не помешал совет об эффективном выполнении 1. Создать в таблице уникальный индекс по набору проверяемых полей 2. insert into client select * from client@otherinstance log errors into err$client reject limit unlimited SergSuperно сейчас все работает автоматом Критерии сравнения всё равно надо как-то задавать. В том числе по ним можно автоматом создать индекс - это не медленнее, чем писать руками a1.f = a2.f or a1.f is null and a2.f is null. В целом описанный способ - не быстрейший, но по скорость/простота для этого случая, пожалуй, оптимален. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 10:29 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
softwarerМогу лишь ещё раз подчеркнуть, что у Вас забавное (с моей личной точки зрения) представление об oltp. Для меня oltp - это "очень много более-менее простых писателей и ещё немного больше более-менее простых читателей". называйте как желаете. Главное, что-бы было понятно отличие систем с большим числом писателей и малым числом читателей (особенно читателей сравнительно тяжелых запросов, простые читатели типа select Name where ID = 567 не будут сильно долго видеть на блокировках в любом случае) и систем с большим числом читателей и малым писателей. Лень искать точное определение OLTP, но оно очень близко к первому типу softwarer В рассматриваемых моментах - скорее нет, чем да. Для того, чтобы отказаться от redo, нужно отказаться от журнализирования, инкрементальных бэкапов и вообще половины всего хорошего, что придумано с 70-го года. Чтобы отказаться от undo, придётся отказаться от восстановления после сбоев. Таким образом, если не говорить о глобальном редизайне и применении для тех же целей каких-либо принципиально иных механизмов - "оптимизировать" не получится. В том-то и прелесть версионности в Oracle, что она практически не потребляет дополнительных ресурсов, разница только в том, что информация в rollback сегментах дольше сохраняет статус актуальной. зачем отказаться от журналирования, только от поддержки версий. Mне вот кажется сильно сомнительным, что никакие оптимизации не получится прикрутить. Скажем зачем у вас журнал разделен на 2 части - undo и redo и запись об одной и той-же операции пишется в оба места? Где-то читал, что это как раз оптимизиция под версионность ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:06 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
авторВ том-то и прелесть версионности в Oracle, что она практически не потребляет дополнительных ресурсов моя плакает. пляска REDO/UNDO/REDO и хранение дополнительных данных в блоках не потребляет ресурсов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:19 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
StalkerSзачем отказаться от журналирования, только от поддержки версий. Дык в Oracle журналирование и есть поддержка версий. Если в нём отказаться от версионности, это означает отказаться от журналирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:23 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
sdvsamaraДык в Oracle журналирование и есть поддержка версий. Если в нём отказаться от версионности, это означает отказаться от журналирования. вот я к тому, что ваше журналирование выполнено по всей видимости с учетом оптимизации под версионность, и без этого возможно могла-бы быть реализована более оптимально ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:27 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
StalkerS а почему ссылка на msdn по Visual Studio-тo? Нормальные ссылки давать нужно, типа этой не знаю, 5 лет назад вела на мсскл StalkerSчем ближе система к чистой oltp (писателей больше, читателей меньше) тем меньше присутствует Reader/writer blocking и тем меньше здесь нужна версионность это не правда. тест TPC-C, ничего более чистого не найти, транзакции вообще не пересекаются, ожиданий на блокировках там в принципе нет. казалось бы блокировочник тут должен быть просто на голову выше, правильно ? а что в суровой действительности ? оракл не смотря на "обузу" версионности на одинаковом железе быстрее даже в таком тесте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:46 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.!а что в суровой действительности ? оракл не смотря на "обузу" версионности на одинаковом железе быстрее даже в таком тесте. А можно прямой линк, где "быстрее на одинаковом железе"? Дабы мне не копаться. Заранее благодарен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:50 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
pkarklin А можно прямой линк, где "быстрее на одинаковом железе"? Дабы мне не копаться. Заранее благодарен! вот против мсскл http://oraclemind.blogspot.com/2006/11/tpc-c-oracle-10-vs-mssql2k5.html вот против DB2 http://oraclemind.blogspot.com/2005/10/tpc-c-oracle-vs-ibm.html а вот тут видно какое преимущество нужно обеспечить мсскл, чтоб вывести вперед: http://oraclemind.blogspot.com/2006/11/tpc-c-oracle-10-vs-mssql2k5.html т.е. по факту оракл со своей писаниной в UNDO и REDO сверху UNDO все равно оказывается быстрей, даже там где для блокировочника созданы более чем идеальные условия несталкивающихся транзакций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:05 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
StalkerSsdvsamaraДык в Oracle журналирование и есть поддержка версий. Если в нём отказаться от версионности, это означает отказаться от журналирования. вот я к тому, что ваше журналирование выполнено по всей видимости с учетом оптимизации под версионность, и без этого возможно могла-бы быть реализована более оптимально Да журналирование и есть версионность. Мы же всё равно пишем предыдущее состояние строки в журнал для возможности отката. Оптимизированно там в том смысле, что журналирование ведётся так, чтобы удобно и быстро можно было доставать версии из журнала. Причём это дело развивается, раньше были rollback сегменты, а сейчас undo tablespace. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:10 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
FavnYo.!where nvl(field1||field1,'ThisIsNull') = 'ThisIsNull' на этом можно окончить с перфоменсом ?Хорошо, сделали индекс ON tab1 (NVL(field1,'ThisIsNull')); Я правильно понимаю, что теперь, чтобы его заметил оптимизатор, во всех запросах вместо where field1 is null надо писать where nvl(field1||field1,'ThisIsNull') = 'ThisIsNull'? А во всех запросах с сортировкой, к примеру, писать order by nvl(field1,'ThisIsNull')? или я туплю или таки строка в field1 со значением 'ThisIsNull' пройдет условие!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:18 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Ivan Durakили я туплю или таки строка в field1 со значением 'ThisIsNull' пройдет условие!!!! 'ThisIsNull' || 'ThisIsNull' = 'ThisIsNullThisIsNull' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:20 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
sdvsamaraэто дело развивается, раньше были rollback сегменты, а сейчас undo tablespace. ... и песенка ослика-ораклиста ушла в историю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:22 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.!вот против мсскл вот против DB2 а вот тут видно какое преимущество нужно обеспечить мсскл, чтоб вывести вперед: мда.., любой коллекционер такому фанатизму и постоянству только позавидует. Подборки на одну тему с 2005 года! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:23 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Зайцев ФёдорIvan Durakили я туплю или таки строка в field1 со значением 'ThisIsNull' пройдет условие!!!! 'ThisIsNull' || 'ThisIsNull' = 'ThisIsNullThisIsNull' о да, не заметил склейку. Но честно говоря, это же не нормально ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:33 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.!, Это здорево, конечно. Берем текущий ТОП 10 некластерных конфигураций для TPC-C: http://www.tpc.org/tpcc/results/tpcc_perf_results.asp?resulttype=noncluster&version=5%¤cyID=0 Берем единственный результат MS SQL в этом списке: http://www.tpc.org/tpcc/results/tpcc_result_detail.asp?id=110083001 Total System Cost: 879,563 USD Performance: 1,807,347 tpmC Price/Performance: .49 USD per tpmC CPU Type: Intel Xeon X7560 2.26GHz Total # of Processors: 4 Total # of Cores: 32 Total # of Threads: 64 и ближайщий превосходящий результат Oracle: http://www.tpc.org/tpcc/results/tpcc_result_detail.asp?id=107103101 Total System Cost: 10,306,995 USD Performance: 2,196,268 tpmC Price/Performance: 4.70 USD per tpmC Total # of Processors: 32 Total # of Cores: 64 Total # of Threads: 128 Апупеть, какое превосходство, аж на целых 12% , при разнице в стоимости оборудования более чем на порядок !!! Будем еще меряться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:42 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Ivan DurakЗайцев ФёдорIvan Durakили я туплю или таки строка в field1 со значением 'ThisIsNull' пройдет условие!!!! 'ThisIsNull' || 'ThisIsNull' = 'ThisIsNullThisIsNull' о да, не заметил склейку. Но честно говоря, это же не нормально да никто таким бредом не занимается, ну если боишся что ThisIsNull может встречатся ну возьми 256 бит ключ вместо ThisIsNull. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:44 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.!Ivan DurakЗайцев ФёдорIvan Durakили я туплю или таки строка в field1 со значением 'ThisIsNull' пройдет условие!!!! 'ThisIsNull' || 'ThisIsNull' = 'ThisIsNullThisIsNull' о да, не заметил склейку. Но честно говоря, это же не нормально да никто таким бредом не занимается, ну если боишся что ThisIsNull может встречатся ну возьми 256 бит ключ вместо ThisIsNull. это ненормально не потому, что строка может встретится, а потому, что простая проверка на нулл в такую херню превращается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:46 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.! не знаю, 5 лет назад вела на мсскл ну здорово, дал ссылку и даже не посмотрел, куда она ведет Yo.! это не правда. тест TPC-C, ничего более чистого не найти, транзакции вообще не пересекаются, ожиданий на блокировках там в принципе нет. казалось бы блокировочник тут должен быть просто на голову выше, правильно ? а что в суровой действительности ? оракл не смотря на "обузу" версионности на одинаковом железе быстрее даже в таком тесте. насколько помню, в суровой действительности новые версии скуля обычно отрабатывают тесты tpc быстрее текущей версии оракла sdvsamara Да журналирование и есть версионность. Мы же всё равно пишем предыдущее состояние строки в журнал для возможности отката. Оптимизированно там в том смысле, что журналирование ведётся так, чтобы удобно и быстро можно было доставать версии из журнала. Причём это дело развивается, раньше были rollback сегменты, а сейчас undo tablespace ну так вот раз оптимизированно под версионность, значит уже не будет так оптимально в случае когда версионность не нужна, верно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:48 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
pkarklin Апупеть, какое превосходство, аж на целых 12% , при разнице в стоимости оборудования более чем на порядок !!! Будем еще меряться? формула1 ездит буквально на 12% быстрее спорткара, при большей стоимости на 2 порядка. ты сравниваешь системы между которыми 3 года и 2 поколения, причем разных архитектур. чем не понравилось сравнение в равных для обоих субд условиях на идентичном железе ? еще раз: на идентичном железе блокировочник не может показать преимущество над версионным ораклом даже в идеально подогнаных под блокировочник условиях. StalkerS насколько помню, в суровой действительности новые версии скуля обычно отрабатывают тесты tpc быстрее текущей версии оракла ты путаешь желаемое с действитильным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:56 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.!, Теперь посмотрим сюда: http://www.tpc.org/tpcc/results/tpcc_price_perf_results.asp?resulttype=noncluster И понимаем, что тест "на одинаковом оборудовании" не совсем показателен. Точнее, он совсем не показателен. И видим, что при разнице в Price/tpmC в 25% MS SQL рвет Oracle по производительности, как тузик грелку - более чем в шесть раз. Надеюсь, не надо объяснять, что "чистая" производительность потребителю, она как-бы не очень интересна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:59 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
Yo.!формула1 ездит буквально на 12% быстрее спорткара, при большей стоимости на 2 порядка. Понимаешь, я не готов платить за увеличение скорости на 12% на порядок больше денег. Yo.!ты сравниваешь системы между которыми 3 года и 2 поколения, причем разных архитектур. Угу. И это сравнение очень показательно. Где тест Oracle на новом оборудовании нового поколения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 13:07 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
StalkerSзачем отказаться от журналирования, только от поддержки версий. "Зачем отказываться от коробки передач, только от её крышки". StalkerSMне вот кажется сильно сомнительным, что никакие оптимизации не получится прикрутить. Сталкер, по Вашему ответу у меня сложилось устойчивое подозрение, что Вы не поняли смысла сказанного мной. Какие-то - наверное, получится. Существенные - вряд ли. StalkerSСкажем зачем у вас журнал разделен на 2 части - undo и redo Это... м... существенно неверное утверждение. Журнал не поделен на части, журнал - это redo. В журнале сохраняется информация об изменении большинства объектов БД, в том числе - об изменении undo. StalkerSГде-то читал, что это как раз оптимизиция под версионность Ни в коей степени. Это "оптимизация под откат транзакций", в том числе под восстановление после сбоев. sdvsamaraДык в Oracle журналирование и есть поддержка версий. Если в нём отказаться от версионности, это означает отказаться от журналирования С точностью до наоборот. Отказаться от поддержки версий можно, но это бесплатное приложение к механизму журнализирования, который всё равно нужен для других фундаментальных задач. sdvsamaraПричём это дело развивается, раньше были rollback сегменты, а сейчас undo tablespace. И шо, Вы таки хотите сказать, что в базах с undo tablespace нет rollback сегментов? pkarklinБерем единственный результат MS SQL в этом списке: и ближайщий превосходящий результат Oracle Вы, конечно, виртуозно играете доступными материалами, но раз Microsoft сливает в секции дорогих решений, попробуйте таки сравнить на сколь возможно похожем железе. Для этого достаточно взглянуть на Top Ten Price/Performance Results: МестоСерверАппаратураДата измеренияСтоимость1OracleHP ProLiant ML350 G608/16/10.39 USD 2MSSQLHP ProLiant DL580 G710/15/10.49 USD Так что продолжайте меряться ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 13:07 |
|
||
|
Система ЭОД - неудача или успех ?
|
|||
|---|---|---|---|
|
#18+
pkarklinYo.!, Теперь посмотрим сюда: http://www.tpc.org/tpcc/results/tpcc_price_perf_results.asp?resulttype=noncluster И понимаем, что тест "на одинаковом оборудовании" не совсем показателен. Точнее, он совсем не показателен. И видим, что при разнице в Price/tpmC в 25% MS SQL рвет Oracle по производительности, как тузик грелку - более чем в шесть раз. Надеюсь, не надо объяснять, что "чистая" производительность потребителю, она как-бы не очень интересна. единственно что мы понимаем это о что ты сейчас приперт к стенке фактом и пытаешься чисто технический вопрос об избыточности писанины версионного механизма заболтать не лежащими в технической плоскостью деньгами. да формула1 стоит дороже, жигули дешевле. да так устроен мир. что касается прйс/перфоменс, судить о нем по тестам TPC-C совершенно глупо. во первых по тому что оракл как ты видишь рвет мсскл по этой позиции и занимает верхнюю строчку. во вторых там расчет идет по прайсу, а я не слышал чтоб кто либо когда либо купил EE эдишен без двухзначной скидки. в третих там зачастую сравнивается теплое (бесконечные лицензии) с мягким (трехлетние) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 13:11 |
|
||
|
|

start [/forum/topic.php?fid=35&msg=36849439&tid=1552498]: |
0ms |
get settings: |
11ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 142ms |

| 0 / 0 |
