|
|
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
Задача: Есть база на Oracle, которую необходимо наполнить данными. Есть несколько различных баз на Oracle и MS SQL Server, в которых эти данные уже хранятся. Необходимо сделать выгрузку из всех баз-источников, результат загрузить в новую базу. Вопрос: Можно ли сделать так, чтобы был единый механизм выгрузки? На выходе нужно получить XML, который будет грузиться в базу-назанчение. Баз источников - 8 штук, структура XML-документа может меняться. Не очень-то хочется делать идентичные изменения в 8 местах. Что можете посоветовать? На чем можно реализовать единых механизм? (С++, Delphi, SQL???) Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2007, 17:34 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
FMVНа чем можно реализовать единых механизм? (С++, Delphi, SQL???) Если просто делать свою работу, то выгрузку можно сделать средствами репортеров, загрузку - sql*loader. Если слегка выпендриться - воспользуйтесь MS DTS. Если поупражняться в новомодных веяниях - сделайте на Oracle Enterprise Service Bus. Если денег куры не клюют - приобретите интеграционную платформу вроде TIBCO. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 01:09 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
FMVМожно ли сделать так, чтобы был единый механизм выгрузки? На выходе нужно получить XML, Этому "нужно XML" есть обоснование? Или "слышали что круто и вообще все вокруг его используют"? FMVЧто можете посоветовать? На чем можно реализовать единых механизм? (С++, Delphi, SQL???) Реализовать можно на чем угодно. Из того, с чем я работал, я бы в первую очередь посмотрел в сторону Oracle Warehouse Builder; это не его основное предназначение, но тем не менее, задачи перекачки данных рисуются на нем исключительно легко и непринужденно (ограничение - онлайн перекачки, то есть при наличии сетевой связи источника с приемником). Правда, с другой стороны, инструмент нуждается в освоении, поэтому для разовой пустяковой задачи возиться с ним - перебор; тут уже вопрос, насколько серьезна ваша задача. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 02:33 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
FMVЗадача: Есть база на Oracle, которую необходимо наполнить данными. Есть несколько различных баз на Oracle и MS SQL Server, в которых эти данные уже хранятся. Необходимо сделать выгрузку из всех баз-источников, результат загрузить в новую базу. Вопрос: Можно ли сделать так, чтобы был единый механизм выгрузки? На выходе нужно получить XML, который будет грузиться в базу-назанчение. Баз источников - 8 штук, структура XML-документа может меняться. Не очень-то хочется делать идентичные изменения в 8 местах. Что можете посоветовать? На чем можно реализовать единых механизм? (С++, Delphi, SQL???) Спасибо. По крайней мере из Оракловых баз можно вытянуть данные через DBLink (прочитайте в хелпе про create database link ....). При желании можно процедуру выгрузки написать на PL/SQL... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 07:20 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
Спасибо всем за ответы. softwarer FMVМожно ли сделать так, чтобы был единый механизм выгрузки? На выходе нужно получить XML, Этому "нужно XML" есть обоснование? Или "слышали что круто и вообще все вокруг его используют"? Обоснование есть - требование заказчика. У них есть утилита по загрузке данных, оформленных в виде XML. Моя задача - получить эти файлы на основании существующих баз. Базы, в которую все будет заливаться, у меня нет, поэтому не помогут DBLink для Oracle'овых баз. Проблема усугубляется в итеративности этой выгрузки, а потому не хотелось бы многократно переписывать одно и то же в 10 местах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 09:06 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
FMV Можно написать утилиту (для каждой СУБД отдельную) котрая по словарю выгрузит все или выбранные таблицы в файл CSV или XML. Вот только с BLOB непотно что делать. Аналогично с загрузкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 09:39 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
К счастью LOB'ов нет :) Я правильно понял, что универсальное решение не получится? Максимум что можно сделать - это написать 2 утилиты для каждой СУБД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 09:51 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
FMVЯ правильно понял, что универсальное решение не получится? Максимум что можно сделать - это написать 2 утилиты для каждой СУБД? Тем более что у вас их всего 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 10:55 |
|
||
|
Выгрузка из Oracle и SQL Server
|
|||
|---|---|---|---|
|
#18+
FMVОбоснование есть - требование заказчика. У них есть утилита по загрузке данных, оформленных в виде XML. Это, конечно, аргумент, хотя я бы все равно внимательно к нему присмотрелся. А то за неделю до подписания акта заказчик вдруг обнаружит, что "XML" и "реальные объемы данных" несовместимы..... FMV Моя задача - получить эти файлы на основании существующих баз. Тогда вопрос сводится к тому, "сколько и насколько разных баз" есть и может быть. В наличии различных СУБД в данном случае нет большой беды - на уровне простых запросов совместимость вполне достаточная, написать "универсальное подключение" не составляет проблемы. Важен вопрос "сколько различных структур данных придется обслуживать" - одну, две или восемь? Если восемь, очевидно, потребуется некоторая прокладка, которая сможет взять данные в первом-втором-третьем-четвертом входных форматах и конвертировать в некую универсальную форму, по которой и будет генериться выходной документ. Сделать это можно двумя основными способами: 1. Придумать некую метаинформацию, описывающую структуру данных в каждом случае. Типа "нужное нам поле лежит в таблице А и называется Б, доступно из таблицы В по ключу Г". Подход универсальный, но довольно масштабный; хорош для внедряемых универсальных решений, но для данного случае скорее всего слишком громоздок (придется либо писать довольно хитрый генератор SQL, либо ограничиться очень неэффективной реализацией с уймой мелких запросов). 2. Придумать некие "интеграционные объекты", скажем, view, с универсальным набором полей и реализацией, собирающей их из обслуживаемой базы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 14:49 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=166&tid=1346190]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 399ms |

| 0 / 0 |
