Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Имеем: репликацию транзакций с SQL Server 2008 на DB2 10 под z/os. При небольшом объеме записей в таблицах все проходит прекрасно. Начиная примерно со ста тысяч записей уже идет нереально долго. При этом в самом начале репликации записи переносятся быстро, но потом все сильно замедляется. А нужно перенести таблицу, в которой более 10 миллионов записей... Самые простые варианты, как поменять параметры агентов уже применяли - помогает несильно. Что еще можно попробовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 15:27 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Эта тема касается и DB2, и MS SQL, так что, чем просто переносить эту в подраздел http://www.sql.ru/forum/actualtopics.aspx?bid=1, имеет смысл держать темы и там, и тут. Что касается "посоветовать", с мэйнфреймовой DB2 я незнаком, но соображения общего характера напрашиваются. Очевидно, надо совместно с администратором DB2 искать "бутылочное горлышко". Если оно на стороне DB2 (а похоже на то), то на форуме по MS SQL искать решение бессмысленно. Интересно также, чьими средствами осуществляется репликация - MS SQL или DB2. Скажем, при первичной настройке репликации DB2 UDB может воспользоваться LOAD (и, наверное, мэйнфреймовая DB2 тоже), что многократно быстрее обычной вставки. (Ну, если потом будут транзакции по 10 миллионов записей, это другое дело). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 20:11 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Я бы не стал сразу валить все на db2 или ms sql, а проверил бы еще например сеть, помониторить ее например можно на предмет задержек и пропускной способности. Если рассматривать базу, то процесс вставки могут тормозить индексы, есть ли они в таблицах куда заливаются данные? Мб при чтении данных из ms sql процесс чтения натыкается на блокировки (если у него модель блокировочная) и ждет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2011, 08:26 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Ну, ни на сетку, ни на блокировки это, на первый взгляд, не похоже. Первичные ключи, наверное, есть. А может, и нет. На каком этапе настройки, как происходит репликация a la MS SQL, неизвестно. Описание проблемы очень бедное и скудное. С другой стороны, раз есть z/os, (по моему представлению) там просто обязан быть админ, который может посмотреть и помониторить на стороне DB2, что, собственно, происходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2011, 09:45 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Я понимаю, что на форуме по MS SQL мне могут посоветовать только настройки на стороне SQL. Но вдруг они как-то смогут разрешить проблему, почему не попробовать? Репликация проводится как раз таки средствами sql'ного сервера. Общие рекомендации по увеличению производительности репликаций мы читали, сеть проверяли, индексы убивали. Спасибо, но это все не помогает. Насчет блокировок - делаем на тестовой базе на таблице, которая больше нигде не используется. Внутри sql'ных серверов даже очень большие репликации проходят быстро. Вставка аналогичного объема данных скриптом в таблицу на DB2 тоже проходит с нормальной скоростью. Вопрос действительно в том, как найти пресловутое "бутылочное горлышко". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2011, 09:47 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
K.T.V.Имеем: репликацию транзакций с SQL Server 2008 на DB2 10 под z/os. При небольшом объеме записей в таблицах все проходит прекрасно. Начиная примерно со ста тысяч записей уже идет нереально долго. При этом в самом начале репликации записи переносятся быстро, но потом все сильно замедляется. А нужно перенести таблицу, в которой более 10 миллионов записей... Самые простые варианты, как поменять параметры агентов уже применяли - помогает несильно. Что еще можно попробовать? Какой DB2-драйвер используете для коннекта к DB2/zOS ? ODBC? OLEDB? .Net provider ? Тормозит одинаково при всех трех ? Если заливать SSIS-пакетом, то также тормозит ? Вам нужна именно потранзакционная репликация MSSQL -> DB2/zOS или периодические загрузки полных таблиц ? Если мне маразм не изменяет, то у DB2/zOS в DDF была/есть возможность приоретизации DDF-тредов (удаленных коннектов). Нужно проконсультироваться с админом DB2/zOS насчет возможных perfomance-лимитов по DDF-тредам. P.S. В свое время у меня помнится подобные же проблемы на больших таблицах были с MSSQL2000 <-> DB2 z/OS V7 через DB2 Connect + ODBC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2011, 11:07 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Большое спасибо всем за поддержку! Первичный ключ есть. На DB2, судя по всему, данные вставляются блоками по 1000 записей, хотя все возможные настройки касательно этого на sql'е мы меняли. Не можем понять, в чем беда. Драйвер, при помощи которого выполняется подключение - Microsoft OLE DB For Db2. Практически не имеет собственных настроек. Остальные драйверы не удалось подключить к репликации. Есть ли в сети какая-то информация на этот счет? Репликация нужна потранзакционная. Не очень хорошо понимаю смысл использования SSIS, если нам нужна именно репликация? Возможно ли выполнить первоначальную загрузку через него, а потом настроить репликацию на уже заполненную таблицу? Насчет приоритета DDF-тредов - да, вариант, попробуем найти. mitek, как Вы решили свою проблему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2011, 15:23 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
K.T.V.Драйвер, при помощи которого выполняется подключение - Microsoft OLE DB For Db2. Практически не имеет собственных настроек. Остальные драйверы не удалось подключить к репликации. Есть ли в сети какая-то информация на этот счет? Готовых линков нет. Нужно плотно гуглить. K.T.V.Репликация нужна потранзакционная. Не очень хорошо понимаю смысл использования SSIS, если нам нужна именно репликация? Возможно ли выполнить первоначальную загрузку через него, а потом настроить репликацию на уже заполненную таблицу? SSIS имел ввиду как вариант тестирования производительности большой загрузки. По особенностям репликации MSSQL здесь подскажут наврядли, но вот тут пишут, что : Administrators can move data from SQL Server to DB2 by using Replication wizards in SQL Server Management Studio, as part of either snapshot or transactional replication operations. For Replication, SQL Server uses linked servers for connectivity and Integration Services for synchronizing data with DB2 K.T.V.mitek, как Вы решили свою проблему? Мне не нужна была репликация, поэтому настроил federation gateway на DB2/LUW и импортил через никнеймы (аналог linked servers) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2011, 16:18 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
K.T.V., если все-таки тормоза на стороне zDB2, можете попробовать посмотреть в эту сторону: OUTBUFF , аналог LOGBUFSZ для LUW, как я понимаю... Если это так, на больших вставках может хорошо рулить... How DB2 writes the active log... Плюс ко всему - попробуйте помониторить bufferpool-ы zDB2. -DISPLAY BUFFERPOOL (DB2) По поводу блоков вставки на zDB2 есть ограничение - вроде бы 32768 записей в одном блоке, 1000 ваша явно меньше... Как пришли ко мнению, что K.T.V.На DB2, судя по всему, данные вставляются блоками по 1000 записей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2011, 03:30 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Ещё можете через RMF и/или SDSF -> da посмотреть активности вроде загрузки каналов (io), процессоров... Если будет чуток яснее во что упираетесь - может стать примерно понятно куда смотреть... Опять же через SDSF -> LOG можно на вскидку глянуть, как часто DB2 логи выгружает (OFFLOAD) - active to archived. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2011, 03:37 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Hunterik, ищем :) про 1000 записей - вероятно, он коммитит их по штуке строк, потому что периодически выполняемый count выдает нам приращение в количестве, кратном 1000. Администратор DB2 говорит, что там с настройками все ok, активность загрузки он мониторил, все остальное тоже или делал или сейчас сделает. Вполне вероятно, что проблема таки в драйвере :( которому сложно найти альтернативу в виду отсутствия документации. Конечно, у нас остается вариант отказа от репликации в пользу очередей, linked серверов или банального load'a, но это будет не совсем то, чего требовалось достичь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2011, 10:00 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
K.T.V., 1. Желательно на провайдере включить трассировку выполнения. Чтобы видеть какие запросы уходят на DB2 и какие ответы приходят. Может помочь понять логику и время исполнения отдельных запросов. Как это включается - не знаю, не специалист по MSSQL. 2. Можно попробовать настроить "родного" провайдера(ов) DB2, которые идут в составе с клиентом DB2. Разрядность (32бит, 64бит) клиента DB2 должна совпадать с разрядностью MS SQL сервера, насколько мне известно. Репликация использует Linked Server? Если да, то по поводу возможных проблем есть материал здесь: Cannot create an instance of OLE DB provider "IBMDADB2" for linked server 3. Можно настроить репликацию средствами IBM, т.е. IBM InfoSphere Replication Server. Это правда отдельная тема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2011, 11:33 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
Настроили монитор производительности на провайдере и обнаружили очень странную картину: со временем на нем резко уменьшается количество операций execute в секунду. Причем время ответа не меняется, падает именно частота выполнения. С чем это может быть связано? Трассировку выполнения пока настроить не удалось. Евгений, а что Вы можете подсказать по настройке DB2'шного провайдера? Мы раньше пробовали один раз, создавали строку подключения, но неудачно. Касательно 3го пункта - InfoSphere штука дорогая, проще уж самим додолбаться :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2011, 17:43 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
K.T.V., Вот здесь можно посмотреть строки подключения, только у Вас z/os, и неизвестно подойдут они или нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2011, 09:03 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
K.T.V.Евгений, а что Вы можете подсказать по настройке DB2'шного провайдера? Мы раньше пробовали один раз, создавали строку подключения, но неудачно. Linked Server 100% можно настроить, а чтобы помочь нужны подробности какие параметры задавали, какую ошибку(и) получили, т.к. "возможны варианты". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2011, 11:00 |
|
||
|
Вопрос по производительности репликации с Sql на DB2.
|
|||
|---|---|---|---|
|
#18+
const64, спасибо, ссылка полезная! Только вот у нас вроде даже работает linked server через IBM'овский драйвер, но репликация к нему никак не хочет подключаться. Евгений, вот настройки для линка (для наглядности убрала все операторы GO): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2011, 18:02 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=37389801&tid=1602163]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 161ms |

| 0 / 0 |
