Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Параметры не sql-типа в java-процедурах / 10 сообщений из 10, страница 1 из 1
07.03.2013, 09:53
    #38176919
ankalex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметры не sql-типа в java-процедурах
Доброго времени суток!
Есть большая процедура на java, состоящая из 50 логических блоков, каждый из которых модифицирует 1 таблицу в текущей базе (DB2) и соотв. ей таблицу на MSSQL. Поставлена задача вынести эти 50 блоков в отдельные небольшие java-процедуры, и просто вызывать их по-очереди из основной процедуры. При этом не хотелось бы 50 раз открывать/закрывать коннекты, но способа передать процедуре не sql-тип, а java-тип Connection или PreparedStatement я не знаю.
Может, кто-нибудь подскажет, это вообще возможно? Или есть какой-то другой вариант?
DB2 10 for z/OS
...
Рейтинг: 0 / 0
07.03.2013, 10:28
    #38176954
Параметры не sql-типа в java-процедурах
ankalex,

Какие задачи решает эта хранимая?
Модифицируются одни и те же данные, т.е. это вариант репликации или нечто иное?
Насколько сложная логика заложена в блоках Java-хранимой?

Connection к подсистеме, в которой работает сама хранимая нужно получать с помощью URL:"jdbc:default:connection".
В этом случае будет использоваться текущая нить исполнения.
Но, исполнение Java-хранимой это далеко ненулевой оверхед.
Поэтому решение разнести код на 50 разных хранимых - это не самое удачное решение с точки зрения производительности (ИМХО).
С учетом версии 10 могу предложить переписать ту часть кода, которая работает с локальной базой на NativeSQL, а в хранимую(ые) вынести код, взаимодействующий с MSSQL.

Желательно рассмотреть возможность иначе наладить взаимодействие с MSSQL.
Навскидку (не зная процессов) могу предложить репликации или Federation(через промежуточный DB2 for LUW).
...
Рейтинг: 0 / 0
07.03.2013, 10:49
    #38176977
ankalex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметры не sql-типа в java-процедурах
Процедура - репликация 50 таблиц с MSSQL на DB2, логика - простая, но последовательность операций важна (запись в DB2, удаление с MSSQL,запись в DB2, удаление с MSSQL,...). Производительность сейчас устраивает. Получается, что уйти от многократных коннект/дисконнект к MSSQL не получится?
...
Рейтинг: 0 / 0
07.03.2013, 11:05
    #38176998
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметры не sql-типа в java-процедурах
ankalexПроцедура - репликация 50 таблиц с MSSQL на DB2, логика - простая, но последовательность операций важна (запись в DB2, удаление с MSSQL,запись в DB2, удаление с MSSQL,...). Производительность сейчас устраивает. Получается, что уйти от многократных коннект/дисконнект к MSSQL не получится?

А количество записей много в таблицах, если не многомиллионные, то может проще сделать LINK на DB2 с MSSQL и закидывать данными прямо оттуда в DB2?
...
Рейтинг: 0 / 0
07.03.2013, 11:18
    #38177009
ankalex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметры не sql-типа в java-процедурах
Записей много, у линков есть ограничения и недостатки (в свое время от них ушли, всех причин не помню).
...
Рейтинг: 0 / 0
07.03.2013, 11:32
    #38177024
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметры не sql-типа в java-процедурах
ankalexЗаписей много, у линков есть ограничения и недостатки (в свое время от них ушли, всех причин не помню).
Записей много - тогда все понятно, а на шину данных, на ту же WebSphere нельзя повесить?
...
Рейтинг: 0 / 0
07.03.2013, 12:40
    #38177114
ankalex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметры не sql-типа в java-процедурах
Какие-то стандартные средства админ пытался использовать, но возникали разного рода проблемы.
На данный момент, если бы не большой размер текущей процедуры (что не нравится руководству) - все было бы отлично.
...
Рейтинг: 0 / 0
07.03.2013, 13:03
    #38177173
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметры не sql-типа в java-процедурах
ankalexКакие-то стандартные средства админ пытался использовать, но возникали разного рода проблемы.
На данный момент, если бы не большой размер текущей процедуры (что не нравится руководству) - все было бы отлично.

Да не я тоже туфту прогнал - WebSphere дорогая, пипец и разбираться в ней не просто, тем более шина - весчь своеобразная имхо.
А нельзя красиво оформить эту процедуры, блоки с комментариями, с try, catch всевозможными, тобишь стандартизировать. Объяснить руководоству, что лишние коннекты это время и опять же поддерживать 50 процедур, вместо 1-ой.
Иначе скажите есть смысл настраивать репликацию, а это нагрузка на админа, опять же если она упадёт - без админа её починить будет Вам напряжно!Руководству оно надо?

P.S.
Кстати , а в сторону федеративных баз и NICKNAME (для таблиц MSSQL) не смотрели?
...
Рейтинг: 0 / 0
07.03.2013, 13:27
    #38177223
Параметры не sql-типа в java-процедурах
ankalexПроцедура - репликация 50 таблиц с MSSQL на DB2, логика - простая, но последовательность операций важна (запись в DB2, удаление с MSSQL,запись в DB2, удаление с MSSQL,...). Производительность сейчас устраивает. Получается, что уйти от многократных коннект/дисконнект к MSSQL не получится?

Тут масса вопросов.
1. Что мешает использовать собственно репликацию в том или ином виде?
Если такой софт не куплен и нет средств на покупку, можно посмотреть в сторону например SymmetricDS

2. Если это репликация (по сути), зачем вообще оформлять процесс в виде хранимых процедур?
В этом случае проще и надежнее (ИМХО) вынести функционал в отдельный сервис, это может быть или Standalone-программа, либо программа под управлением минимального сервера приложений (для обеспечения транзакционности например).

В данном случае можно выделить весь Java-код в отдельную программу, которая будет исполняться в z/OS как пакетное задание и выполнять всю работу по синхронизации/репликации.
...
Рейтинг: 0 / 0
07.03.2013, 13:29
    #38177228
Параметры не sql-типа в java-процедурах
ankalexКакие-то стандартные средства админ пытался использовать, но возникали разного рода проблемы.
На данный момент, если бы не большой размер текущей процедуры (что не нравится руководству) - все было бы отлично.
А большой это сколько? Если там нет логики, а только копирование данных, то откуда там большой размер?
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Параметры не sql-типа в java-процедурах / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]