Съпоставяния в Informatica: Създаване, Компоненти, Параметър, Променлива
Какво е картографиране?
Картографирането е колекция от изходни и целеви обекти, свързани заедно чрез набор от трансформации. Тези трансформации се състоят от набор от правила, които определят потока от данни и как данните се зареждат в целите.
Картографирането се състои от следния набор от обекти
- Определение на източника – Дефиницията на източника определя структурата и характеристиките на източника, основните типове данни, типа на източника на данни и др.
- Трансформация – Обектите за трансформация определят как се трансформират изходните данни и могат да се прилагат различни функции по време на процеса.
- Target дефиниция - Target дефиницията дефинира крайната цел, където ще бъдат заредени данните.
- Връзки – Връзки свързват дефиницията на източника с различни трансформации и целеви таблици. Той определя как данните протичат от източника към целта и трансформациите.
Защо се нуждаете от картографиране?
Картографирането е обект в Informatica, с помощта на който можете да определите как изходните данни се променят, преди да достигнат дестинацията или целевия обект. Харесайте, ако имате име на служител като „Bill Клинтън“ във вашата изходна система и в целевата система изискването е да имате име на служител във формат като „Клинтън Bill”, такива операции могат да бъдат проектирани на ниво картографиране. В основни линии това, което правите с изходните данни, се определя на ниво картографиране.
Картографирането е основният обект на Informatica, с помощта на който можем да дефинираме детайлите на трансформацията на данни и характеристиките на обекта източник/цель. Съпоставянията ни помагат да дефинираме трансформацията на данните на отделните нива на колони за всеки ред. Дори в едно картографиране можете да управлявате множество източници и цели.
Компоненти на картографирането
Основните компоненти на картографирането са
- Изходни таблици
- Картографиране на параметри и променливи
- Target обекти
- Картографски трансформации
Има различни обекти, които представляват картографиране. Картографирането може да се състои на източници, цели, параметри и променливи за картографиране, маплети, различни трансформации и дефинирани от потребителя функции.
- Източник на картографиране: Източниците на картографиране са обектите, откъдето извличате изходните данни. Това може да бъде таблица на база данни, плосък файл, XML източник или COBOL източник на файл
- Цел за картографиране: Цел за картографиране са нашите целеви обекти, където се зареждат окончателно обработените данни. Цел за картографиране може да бъде релационна таблица на база данни, плосък файл или XML файл. Източниците и целите са задължителни във всяко картографиране, техният тип може да е различен
- Параметри и променливи за картографиране: Съпоставянето на параметри и променливи ви помага да създавате временни променливи обекти, които ще ви помогнат да дефинирате и съхранявате временни стойности, докато картографирате обработката на данни. Параметрите и променливите за картографиране са незадължителни потребителски дефинирани типове данни, които могат да бъдат създадени за картографиране и могат да бъдат препращани и актуализирани за конкретно изискване. Ще научим повече за картографирането на параметри и променливи в този раздел
- Mapplets: Те са обекти, които се състоят от набор от трансформации, източник или цели. Маплетите обикновено се създават за повторно използване на съществуващата функционалност на набор от трансформации. Може да се използва във всяко едно съпоставяне.
Какво е Stage Mapping?
Етапното картографиране е картографиране, при което създаваме репликата на изходната таблица. Например, в производствена система, ако имате таблица „служител“, можете да създадете идентична таблица „служител_етап“ в ETL схема.
Наличието на локална таблица на етапа предлага различни предимства, като престой в производството, няма да повлияе на вашата ETL система, защото имате своя собствена таблица „employee_stage“, вместо да препращате към таблицата „employee“ в производството. В една производствена система може да има други операции и процеси, които влияят на производителността. Въпреки това, когато имате реплика на етапна таблица, само ETL процеси ще имат достъп до нея. Това предлага предимства в производителността.
В Stage Mappings,
- Източник и Target таблиците имат идентични структури
- Данните в целевата таблица са реплика на данните от таблицата източник или
- Данните в етапна (целева) таблица са подмножество от изходни данни.
Например, ако вашата изходна таблица съдържа подробности за служителите на deptno 10, 20, 30 и 40. Таблицата на етапа може да бъде таблица, която има записи на служители само на deptno 10 & 30.
Целта на създаването на етапни таблици в Data warehouse е да направи процеса на преобразуване на данни ефективен чрез извличане само на онези данни, които са подходящи за нас, а също и да минимизира зависимостта на ETL/Data Warehouse от операционната система в реално време.
Как да създадете картографиране
В това упражнение ще създадем етапно картографиране, в което източникът ще бъде „emp table“, а целта ще бъде „emptgt“.
Конвенция за наименуване – имената на картографиране са с префикс 'm_', последвани от имена на таблици източник и целева таблица, разделени със знак за долна черта.
Пример – ако зареждате таблица emp_target от таблицата emp, тогава името на картографирането може да бъде „m_emp_emp_target“.
Стъпка 1) Стартиране на Mapping Designer
- Отворете Informatica Designer Tool
- Кликнете върху иконата на Mapping Designer, за да стартирате Mapping Designer
Стъпка 2)В Mapping Designer
- Щракнете върху Меню за картографиране
- Изберете Опция за създаване
Стъпка 3) Въведете име на картографиране като „m_emp_emp_target“ и изберете бутона OK.
Картографирането ще бъде създадено и посочено в папката за картографиране.
Едно съпоставяне трябва да има поне a източник и цел, ще добавите източници и цели към картографирането.
Стъпка 4) В тази стъпка ще,
- Изберете таблицата с източници „emp“ под папката с източници.
- Плъзнете и пуснете таблица „emp“ в дизайнера на картографиране.
В дизайнера на картографиране ще се покаже импортираната изходна таблица.
Забележка – Когато импортирате която и да е релационна таблица (база данни) в картографиране, също ще бъде създаден допълнителен обект от тип квалификатор на източника. Тази трансформация на квалификатор на източник е необходима и помага на интеграционната услуга на Informatica да идентифицира таблицата на базата данни източник и нейните свойства. Всеки път, когато импортирате таблица източник, трансформацията на квалификатор на източник също ще бъде създадена. Никога не трябва да изтривате обект на квалификатор на източник в картографиране.
Стъпка 5) В тази стъпка ще,
- Изберете таблицата източник „emp_target“ под Targets папка.
- Плъзнете и пуснете таблица „emp_target“ в дизайнера на картографиране
В дизайнера на картографиране ще бъде импортирана и показана „целева таблица“.
За да управлявате пространството за изглед, можете да иконизирате тези обекти в картографирането.
Стъпка 6)Щракнете с десния бутон където и да е в празното работно пространство на дизайнера на картографиране и изберете опция – Подреждане на всички икони.
След като изберете опцията „Подреждане на всички емблематични“, работното пространство ще изглежда така.
Стъпка 7) In Информатика, Ние проектираме с потока отляво надясно. Така че изходните таблици трябва да са от лявата страна, а целевите трябва да са отдясно. За да подредите таблици в нашето работно пространство, изберете таблицата „emp_target“, след което я плъзнете и пуснете в дясната страна на таблицата emp.
След това пренареждане работното пространство ще изглежда така.
Забележка – Периодично използвайте клавишната комбинация „ctrl+s“, за да запазите промените в хранилището.
Стъпка 8) Сега имате изходни и целеви таблици във вашето картографиране, но картографирането все още не е завършено. Изходната и целевата таблици трябва да бъдат свързани, за да се завърши картографирането.
За свързване на източник и цели
Double щракнете върху таблицата SQ_EMP и таблицата EMP_TARGET, за да промените изгледа им от иконичен на графичен.
Стъпка 9) Щракнете с десния бутон върху работното пространство на дизайнера на картографиране и изберете опцията „Автоматична връзка“ по име.
Стъпка 10) За да свържете източника с целевата таблица
- Изберете Изходни колони на таблицата.
- Плъзнете и пуснете колони в целевата таблица.
Източникът и Target таблиците ще бъдат свързани и ще се появят свързващи стрелки от източника към целевата таблица.
Забележка – Тук сте свързали всички изходни колони със съответната целева колона на таблицата. Това означава, че за всеки извлечен изходен запис всички колони на целта ще бъдат заредени. Ако искате да изключите конкретна колона от зареждане, щракнете върху връзката на тази колона и натиснете клавиша за изтриване от клавиатурата. Връзката ще бъде премахната и целевата колона няма да се зареди.
Стъпка 11) Използвайте клавишната комбинация „ctrl+s“, за да запазите промените във вашето картографиране. В изходния прозорец можете да видите съобщението за валидиране/разбор на картографиране. Потвърждава, че картографирането ви е валидно. Освен това ще има временна зелена отметка до името на картографирането в дървото на папките за картографиране, което показва, че картографирането е извършено успешно.
При картографирането може да има изискване, при което трябва да предадем променлива към картографирането, или може да има сценарий, при който трябва да изчислим временни променливи и допълнително да се изисква да ги съхраним за следващото изпълнение на сесията на картографирането. За тези цели създаваме параметри и променливи за картографиране.
Параметри и променливи за картографиране
Както всеки език за програмиране, Informatica има свой собствен начин за дефиниране на параметри и променливи. Но за разлика от други езици за програмиране, Informatica не е език, базиран на код. За да създадете параметри и променливи в Informatica, трябва да следвате предварително дефинирания синтаксис и навигация.
Разлика между параметри и променливи –
Параметри за картографиране | Картографиране на променливи |
---|---|
Параметрите за картографиране са онези типове данни, чиято стойност, веднъж присвоена, остава постоянна по време на изпълнението на картографирането. Например, ако сте създали параметър за картографиране deptno=20, тогава стойността 20 ще бъде постоянна за цялото изпълнение на картографиране. Параметърът, където и да бъде препратен, винаги ще връща стойност 20 за този екземпляр на изпълнение на картографиране. За нов екземпляр на картографиране стойността на параметъра може да бъде предефинирана. | Променливите за картографиране са обекти, които могат да бъдат препращани по време на изпълнението на картографиране (за достъп до техните стойности) и техните стойности могат да бъдат преназначавани. Например променлива за картографиране на total_salary може да се използва в картографиране и нейната стойност може да се актуализира въз основа на заплатите. |
Параметрите и променливите за картографиране са специфични само за картографиране. Те не могат да бъдат посочени в друго картографиране.
Как да създадете параметър за картографиране
Когато създавате параметър за съпоставяне, по време на изпълнението на съпоставянето услугата за интеграция търси присвоената му стойност. Тези стойности могат да бъдат присвоени на следните места.
- Вътрешен файл с параметри
- При присвояване на променливи преди сесията
- Първоначална стойност в хранилището
- Стойност по подразбиране, зададена по време на създаването на променлива
Стъпка 1) За да създадете параметър за картографиране - В дизайнера на картографиране,
- Изберете меню за картографиране
- Изберете менюто за параметри и променливи
Стъпка 2) В следващия екран,
- Кликнете върху менюто за добавяне на нова променлива
- От падащото меню изберете тип като параметър
- Въведете името на параметъра като $$Deptno
- Въведете първоначална стойност 10
- Изберете бутона OK
Сега сте създали deptno параметър за картографиране с първоначално зададена стойност 10 и този параметър може да бъде препратен в картографирането.
Как да създадете променлива за картографиране
Стъпка 1) В дизайнера на картографиране
- Изберете меню за картографиране
- Изберете менюто за параметри и променливи
Стъпка 2) На следващия екран
- Кликнете върху менюто за добавяне на нова променлива
- От падащото меню изберете тип като променлива
- Въведете име на променлива като $$TotalSalary
- Изберете DataType като десетичен
- Въведете първоначална стойност 0
- Изберете бутона OK
Това ще създаде променлива за картографиране.
Забележка – имената на параметрите за картографиране и променливите винаги започват с $$.
Oбобщение
Съпоставянията са важни в Informatica за съпоставяне на изходните данни с целта според изискванията на проекта. Обсъдихме съпоставяне на етапи и концепция за променливи и параметри за съпоставяне.