+7 (495) 229-0436   shopadmin@itshop.ru 119334, г. Москва, ул. Бардина, д. 4, корп. 3
 
 
Вход
 
 
Каталог
 
 
Подписка на новости
Новости ITShop
Windows 7 и Office: Новости и советы
Обучение и сертификация Microsoft
Вопросы и ответы по MSSQLServer
Delphi - проблемы и решения
Adobe Photoshop: алхимия дизайна
 
Ваш отзыв
Оцените качество магазина ITShop.ru на Яндекс.Маркете. Если вам нравится наш магазин - скажите об этом Google!
 
 
Способы оплаты
 
Курс расчета
 
 1 у.е. = 91.69 руб.
 
 Цены показывать:
 
 
 
 
  
Новости, статьи, акции
 

Создание представления через модуль знаний (Create View IKM)

25.06.2012 12:45
deepedit

God aften!
Представления (или, как их еще называют - вьюхи) очень важны, иногда они являются непосредственным воплощением ETL процесса. Например, на этапе загрузки данных из источников вполне вероятно использование представлений для простейших преобразований данных.
Нельзя сказать, что такое важное значение представлений никак не отражено в фольклоре. Как поет фронтмен группы ETaLlica - James_PK_Head_Field:
I am the View
I am the Table(t).
I am the View, I am the Table(t).
Даже из этого отрывка ясно, что представления многими ставятся на одно из первых мест.
В ODI есть возможность создания таблиц, например, с помошью опций модулей знаний можно создавать временную таблицу, но нет модуля знаний для создания представлений.
Из своего опыта, я хотел бы отметить две возможных задачи, которые периодически возникают при разработке ETL проектов. Первая задача - иметь возможность отслеживать пути происхождения данных, иногда это называется lineage, если в этой цепочке есть представления. И вторая задача - создание объектов БД при развертывании на промышленном сервере или в новой схеме БД при разработке.
В случае создания таблиц можно воспользоваться механизмами Конструктора Моделей. Код представлений также можно хранить в виде процедур по их созданию, но существует более подходящий вариант.
На одном из проектов я увидел, что существует специальный модуль знаний, для создания представлений. Этот модуль использовался при моделировании представления через интерфейс ODI. Я уточнил у коллег, оказалось, что этот модуль знаний не поставляется вместе с ODI, т.е. является самописным.
Итак, как же получить такой модуль знаний из того, что уже есть? На самом деле, совсем просто. Стандартный модуль знаний для загрузки данных из Oracle в Oracle имеет необходимый нам кусок. Смотрите, LKM Oracle to Oracle (DBLINK) работает, в упрощенном изложении, по следующему алгоритму:
    1. Удалить dblink на целевой БД.
    2. Создать dblink на целевой БД.
    3. Создать представление/таблицу на источнике.
    4. Создать синоним на результат пункта 3 в целевой БД.
    5. Далее работает интеграционный модуль знаний.
    6. Удалить созданное в пунктах 4, 3, 2.
      Таким образом все, что необходимо сделать для создания нового модуля знаний для создания представлений, это небольшая модификация уже существующего кода из другого модуля знаний, штатно поставляемого с ODI.
          Вот этот код:
            create or replace view <%=odiRef.getTable("L", "TARG_NAME", "D")%>
              (
                  <%=odiRef.getColList("", "[CX_COL_NAME]", ",\n\t", "", "")%>
                  )
                    as select <%=odiRef.getPop("DISTINCT_ROWS")%>
                        <%=odiRef.getColList("", "[EXPRESSION]", ",\n\t", "", "")%>
                        from  <%=odiRef.getFrom()%>
                          where  (1=1)
                            <%=odiRef.getFilter()%>
                              <%=odiRef.getJrnFilter()%>
                                <%=odiRef.getJoin()%>
                                  <%=odiRef.getGrpBy()%>
                                    <%=odiRef.getHaving()%>
                                        Если я ничего не забыл, код, по сравнению с оригинальным вариантом, измененился только в плане передаваемых команде getTable параметров.
                                            Создайте новый интеграционный модуль знаний и поместите приведенный код в единственный шаг этого IKM на вкладку Command on Target
                                                Выглядеть будет примерно так:
                                                        И, как результат, при просмотре через модель ветки Populated By, будут видны таблицы или представления, которые загружают данное представление:
                                                                Таким образом, в полном согласии с заветами, мы начали с существующего кода в поставляемом модуле знаний и модифицировали его для наших нужд.

                                                                Ссылки по теме

                                                                  
                                                                Помощь
                                                                Задать вопрос
                                                                 программы
                                                                 обучение
                                                                 экзамены
                                                                 компьютеры
                                                                Бесплатный звонок
                                                                ICQ-консультанты
                                                                Skype-консультанты

                                                                Общая справка
                                                                Как оформить заказ
                                                                Тарифы доставки
                                                                Способы оплаты
                                                                Прайс-лист
                                                                Карта сайта
                                                                 
                                                                Бестселлеры
                                                                Курсы обучения "Atlassian JIRA - система управления проектами и задачами на предприятии"
                                                                Microsoft Windows 10 Профессиональная 32-bit/64-bit. Все языки. Электронный ключ
                                                                Microsoft Office для Дома и Учебы 2019. Все языки. Электронный ключ
                                                                Курс "Oracle. Программирование на SQL и PL/SQL"
                                                                Курс "Основы TOGAF® 9"
                                                                Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год. Электронный ключ
                                                                Курс "Нотация BPMN 2.0. Ее использование для моделирования бизнес-процессов и их регламентации"
                                                                 

                                                                О нас
                                                                Интернет-магазин ITShop.ru предлагает широкий спектр услуг информационных технологий и ПО.

                                                                На протяжении многих лет интернет-магазин предлагает товары и услуги, ориентированные на бизнес-пользователей и специалистов по информационным технологиям.

                                                                Хорошие отзывы постоянных клиентов и высокий уровень специалистов позволяет получить наивысший результат при совместной работе.

                                                                В нашем магазине вы можете приобрести лицензионное ПО выбрав необходимое из широкого спектра и ассортимента по самым доступным ценам. Наши менеджеры любезно помогут определиться с выбором ПО, которое необходимо именно вам. Также мы проводим учебные курсы. Мы приглашаем к сотрудничеству учебные центры, организаторов семинаров и бизнес-тренингов, преподавателей. Сфера сотрудничества - продвижение бизнес-тренингов и курсов обучения по информационным технологиям.



                                                                 

                                                                О нас

                                                                 
                                                                Главная
                                                                Каталог
                                                                Новинки
                                                                Акции
                                                                Вакансии
                                                                 

                                                                Помощь

                                                                 
                                                                Общая справка
                                                                Как оформить заказ
                                                                Тарифы доставки
                                                                Способы оплаты
                                                                Прайс-лист
                                                                Карта сайта
                                                                 

                                                                Способы оплаты

                                                                 

                                                                Проекты Interface Ltd.

                                                                 
                                                                Interface.ru   ITShop.ru   Interface.ru/training   Olap.ru   ITnews.ru  
                                                                 

                                                                119334, г. Москва, ул. Бардина, д. 4, корп. 3
                                                                +7 (495) 229-0436   shopadmin@itshop.ru
                                                                Проверить аттестат
                                                                © ООО "Interface Ltd."
                                                                Продаем программное обеспечение с 1990 года