• Nie Znaleziono Wyników

Integracja heterogenicznych zasobów informacji

N/A
N/A
Protected

Academic year: 2021

Share "Integracja heterogenicznych zasobów informacji"

Copied!
10
0
0

Pełen tekst

(1)Zeszyty Naukowe nr. 838. 2010. Uniwersytetu Ekonomicznego w Krakowie. Dariusz Put Katedra Systemów Obliczeniowych. Integracja heterogenicznych zasobów informacji Streszczenie. Współczesne organizacje niejednokrotnie stają przed problemem integracji danych groma dzonych zarówno w systemach wykorzystywanych przez własne jednostki organizacyjne, jak i w systemach kontrahentów biznesowych lub klientów. Proces integracji ma na celu stworzenie systemu umożliwiającego sprawną (także automatyczną) wymianę danych pomiędzy poszczególnymi jednostkami i partnerami biznesowymi oraz dokonywanie analiz w czasie rzeczywistym. W artykule zaproponowano system integracji danych, w którym zapytania mogą być tworzone bezpośrednio przez użytkowników. System składa się z pięciu warstw. Omówiono budowę, wzajemne zależności, zawartość i zadania poszczególnych warstw, zarówno w zakresie przechowywania danych i metadanych, jak i w procesie generowania zapytań. Zwrócono uwagę na potrzebę standaryzacji składników systemu, w tym języka zapytań. W końcowej części artykułu dokonano analizy własności systemu oraz przedstawiono kierunki dalszych prac prowadzących do stworzenia ram dla budowy poszczególnych jego komponentów. Słowa kluczowe: integracja organizacji, integracja danych, zasoby informacyjne, systemy integracji zasobów.. 1. Wprowadzenie Przedsiębiorstwa, prowadząc działalność statutową, niejednokrotnie dokonują podziału struktury organizacyjnej na samodzielne jednostki odpowiedzialne za realizację nakreślonych celów. Poprzez wykonywanie wspólnych zadań jednostki te współdziałają na płaszczyźnie organizacyjnej, a po ich wydzieleniu zarządzanie nimi jest łatwiejsze. Ich częściowa autonomia może jednak stanowić barierę koordynacji działań organizacji jako całości, a także jej współpracy z innymi podmiotami lub przynajmniej je utrudniać. Dlatego obok dekompozycji złożonych struktur na elementy składowe realizowane są także przedsięwzięcia polegające na ich integracji..

(2) 90. Dariusz Put. Jednostki organizacji tworzą i rozwijają systemy informatyczne na własne potrzeby, gromadząc i wymieniając między sobą dane i informacje niezbędne do wykonywania codziennych zadań. Często istnieje potrzeba globalnego spojrzenia na organizację przez pryzmat wszystkich zgromadzonych w niej danych. Zasoby posiadane przez poszczególne działy są jednak niejednorodne pod wieloma względami: formy, syntaktyki, semantyki, sposobu ich rozumienia, co utrudnia ich wymianę, łączenie i przetwarzanie. Zagadnienie staje się jeszcze bardziej złożone, jeśli rozpatrywać współdzielenie danych w ramach kilku współpracujących organizacji. Oprócz wymienionych barier występują tu także problemy związane z niejednorodnością organizacyjną, różnym spojrzeniem na procesy biznesowe, odmienną kulturą czy sposobem lub zakresem prowadzonej działalności. Jednym z podstawowych celów podejmowania działań w kierunku integracji jest dążenie do usprawnienia procesów zachodzących w organizacjach, co ma się przyczynić do obniżenia kosztów i wzrostu efektywności działania organizacji. Zadanie to może być realizowane zarówno wewnątrz jednej organizacji, jak i pomiędzy kilkoma, które ze sobą współpracują. M.T. Frohlich i R. Westbrook [2001] przeprowadzili badania dotyczące związków pomiędzy dostawcami i odbiorcami w łańcuchu dostaw. Badając 322 przedsiębiorstwa, zauważyli silną korelację dodatnią pomiędzy integracją a wynikami ich działalności. Zagadnienie integracji wewnątrz- i międzyorganizacyjnej musi być rozpatrywane wieloaspektowo. W literaturze wymienianych jest kilka jej poziomów, wśród których najczęściej zwraca się uwagę na cztery: systemy, dane, aplikacje, procesy1. Poziomy te są powiązane: integracja danych jest często osiągana przez rozwiązania aplikacyjne, całość jest osadzona na platformie systemowej, najczęściej tworzonej przez komputery połączone w sieć, a przyjęte rozwiązania mają służyć usprawnieniu procesów zachodzących w organizacji. Zdefiniujmy proces integracji danych jako działania zmierzające do utworzenia systemu, który łączy dane pochodzące z heterogenicznych źródeł w taki sposób, aby rozproszenie danych było przezroczyste dla użytkowników oraz korzystających z systemu aplikacji. W artykule opisano system współdzielenia danych heterogenicznych, w którym zapytania generowane przez użytkowników za pomocą interfejsu graficznego mają standardową, uniwersalną postać, dzięki czemu mogą być skierowane do dowolnego systemu bazodanowego lub repozytorium przechowującego zasoby danych. Istotna w proponowanym systemie jest konieczność zaangażowania administratorów podsystemów wchodzących w jego skład jedynie w fazie jego powstawania oraz modyfikacji zakresu udostępnianych zasobów. 1. Por. m.in. [Giachetti 2004; Klaus, Rosemann i Gable 2000; Markus i Tanis 2000; Volkoff, Strong i Elmes 2005]..

(3) 91. Integracja heterogenicznych zasobów informacji. 2. Architektura i sposób działania systemu 2.1. Uwagi ogólne. Na rys. 1 przedstawiono schemat dostępu do zasobów heterogenicznych. Z jednej strony znajduje się użytkownik i jego potrzeby informacyjne oraz aplikacje poszukujące informacji, z drugiej występują zasoby zgromadzone w podsystemach wchodzących w skład systemu współdzielonego. Ze względu na zawartość zasoby te podzielono na dwie rozłączne grupy: 1. Zasoby hermetyczne, które są dostarczane użytkownikom w całości. Ich zawartość nie jest przeszukiwana w procesie tworzenia zapytań. Są opisywane przez zestaw atrybutów, które określają typ zasobu (rysunek, zdjęcie, dokument tekstowy, film), autora, datę utworzenia, zawartość, jego przeznaczenie itd. 2. Zasoby otwarte, czyli dane o obiektach i zdarzeniach. Ich struktura może być przeszukiwana w procesie generowania zapytania. Charakteryzowane są przez atrybuty typu tekstowego, liczbowego, daty. Są to zwykle dane przechowywane w bazach danych, repozytoriach XML itd. Łącznikiem między użytkownikami a zasobami jest system dostępu do zasobów, który powinien być zbudowany w taki sposób, aby umożliwić użytkownikom oraz aplikacjom wybór poszukiwanych obiektów i danych..       

(4)  . "  #$ $ '  ! #%. #

(5)  #&$ #%  $

(6)    #. .  & . . $ . .

(7) $"

(8)  .   . . . #!

(9)  . #. Rys. 1. Schemat dostępu do zasobów heterogenicznych Źródło: opracowanie własne..

(10) 92. Dariusz Put. Na rys. 2 przedstawiono schemat architektury proponowanego systemu, który składa się z pięciu warstw: zasobów, informacji o zasobach, interfejsu, dostępu i scalania oraz komunikatorów. Użytkownicy komunikują się z systemem poprzez warstwę interfejsu. Informacja o dostępnych zasobach jest pobierana w chwili uruchomienia interfejsu z modułu metadane, będącego częścią warstwy informacji o zasobach. Takie rozwiązanie sprawia, że użytkownicy mają możliwość sięgnięcia do struktur danych aktualnie dostępnych w systemie współdzielonym. W dalszej części artykułu została omówiona zawartość poszczególnych warstw, kolejność powstawania składników systemu oraz sposób tworzenia zapytań.. warstwa interfejsu warstwa informacji o zasobach. warstwa dostępu i scalania. metadane. moduł dostępu. katalog. moduł scalania. warstwa komunikatorów. warstwa zasobów (podsystemy). Rys. 2. Architektura systemu współdzielenia danych heterogenicznych Źródło: opracowanie własne.. 2.2. Komponenty systemu. Warstwa zasobów zawiera dane transakcyjne gromadzone w podsystemach składowych i wykorzystywane do wspomagania codziennej działalności organizacji oraz inne informacje, które będą udostępniane użytkownikom systemu współdzielonego. W warstwie tej przechowywane są zarówno zasoby hermetyczne, jak i otwarte. W podsystemach mogą występować dowolne repozytoria danych, także hurtownie danych. Warstwa komunikatorów obejmuje aplikacje działające w każdym z podsystemów wchodzących w skład systemu zintegrowanego. Aplikacje te są tworzone przez administratorów systemów składowych. Warstwa informacji o zasobach składa się z dwóch modułów: metadanych i katalogu. W module metadane zapisane są informacje o wszystkich zasobach dostępnych w systemie. Zasoby są charakteryzowane przez nazwy klas obiektów.

(11) Integracja heterogenicznych zasobów informacji. 93. oraz ich atrybuty. W katalogu przechowywane są informacje o tym, w których systemach składowych znajdują się poszczególne zasoby, oraz takie, które pozwalają jednoznacznie identyfikować obiekty. Katalog zawiera także słownik synonimów, w którym zapisane są informacje o tym, jak nazywa się obiekt w danym systemie składowym. Dzięki temu w module metadane, który zawiera identyfikatory obiektów i atrybutów udostępnianych użytkownikom w trakcie tworzenia zapytania, nazwy są jednoznaczne. W warstwie dostępu i scalania znajdują się dwa moduły będące aplikacjami. Moduł dostępu zawiera procedury, które kierują zapytania wygenerowane przez użytkowników do warstwy komunikatorów. Moduł scalania łączy dane otrzymane z podsystemów i przesyła je użytkownikom. Warstwa interfejsu jest wykorzystywana do generowania zapytań przez użytkowników. Jest tak skonstruowana, aby zapytania były tworzone w jak najprostszy sposób oraz aby możliwe było wybieranie wszystkich danych dostępnych w systemie rozproszonym, uwzględnionych w warstwie informacji o zasobach. W tej warstwie musi być zdefiniowany język zapytań dla użytkowników. 2.3. Tworzenie i modyfikacja systemu. Warstwy są powiązane, ich tworzenie musi się zatem odbywać w określonej kolejności. Powstawanie systemu można podzielić na trzy główne etapy: – uzgadnianie formatów przechowywania metadanych oraz tworzenie aplikacji, – wybór zasobów współdzielonych, – wypełnianie warstw. Kolejność tworzenia składników systemu przedstawiono na rys. 3. Najpierw należy zdefiniować formaty metadanych i katalogu. Obydwa te moduły są tworzone równocześnie i wymagają współdziałania przedstawicieli wszystkich jednostek, które udostępniają dane w systemie współdzielonym. Gdy zostanie uzgodniony format modułu metadane oraz zdefiniowany lub wybrany język zapytań dla użytkowników, można przystąpić do tworzenia warstwy interfejsu. Aplikacja tej warstwy wspomaga użytkowników w tworzeniu zapytań. Jest niezależna od zawartości modułu metadane – za każdym razem po uruchomieniu pobiera z niego aktualną informację o dostępnych zasobach. Dzięki temu modyfikacja metadanych nie wymaga zmian w warstwie interfejsu. Zadaniem modułu dostępu warstwy dostępu i scalania jest skierowanie zapytania otrzymanego od warstwy interfejsu do komunikatorów. Przed przystąpieniem do tworzenia tego modułu musi być uzgodniony format katalogu. Drugi składnik tej warstwy, moduł scalania, łączy dane otrzymane od komunikatorów, przekształcając je do uzgodnionej postaci. Do jego tworzenia można przystąpić po uzgodnieniu formatu katalogu oraz formatu danych przesyłanych użytkownikom. Ze względu na to, że moduł scalania komu-.

(12) 94. Dariusz Put. nikuje się z modułem dostępu, należy uzgodnić także format i sposób przesyłania komunikatów między nimi. Komunikatory stanowią łącznik pomiędzy podsystemami a warstwą dostępu i scalania. Do ich utworzenia wymagana jest znajomość języka zapytań oraz formatu danych przesyłanych użytkownikom.. moduł dostępu. język zapytań dla użytkowników. format metadanych. format katalogu. interfejs użytkownika. moduł scalania. format danych dla użytkowników. komunikatory. formaty metadanych. aplikacje. Rys. 3. Proces powstawania systemu i współzależność jego komponentów Źródło: opracowanie własne.. Gdy zostaną uzgodnione ramy formalne składników systemu, użytkownicy podsystemów mających wejść w skład systemu współdzielonego wybierają zasoby, które zostaną udostępnione. Zasoby te są identyfikowane na podstawie analizy danych o obiektach i zdarzeniach gromadzonych w danym podsystemie oraz analizy potrzeb informacyjnych użytkowników. Współdziałanie uczestników systemu na tym etapie pozwala określić potrzeby informacyjne, co stanowi podstawę do wypełnienia warstwy informacji o zasobach.. Warstwa informacji o zasobach metadane. katalog. Warstwa zasobów (podsystemy). Rys. 4. Wpływ modyfikacji warstwy zasobów na komponenty systemu Źródło: opracowanie własne.. Zmiana polegająca na usunięciu, modyfikacji lub dołączeniu nowych podsystemów wymaga jedynie dokonania modyfikacji warstwy informacji o zasobach (rys. 4). Administrator podsystemu uzgadnia wtedy zmiany z zarządcą warstwy.

(13) 95. Integracja heterogenicznych zasobów informacji. informacji o zasobach, który odpowiednio modyfikuje moduł metadane i katalog. Możliwe jest także opracowanie rozwiązania, aby zmiana ta dokonywana była przez administratorów podsystemów. 2.4. Generowanie zapytań. Proces tworzenia zapytań przedstawiono na rys. 5. Użytkownik, łącząc się z systemem, uruchamia generator zapytań. Najpierw określa, czy poszukiwane zasoby należą do typu hermetycznych czy otwartych. Następnie z modułu metadane warstwy informacji o zasobach przesyłane są nazwy klas obiektów wybranego typu wraz z nazwami ich atrybutów. Nazwy te są jednoznaczne i niezależne od stosowanych w poszczególnych systemach składowych. Następnie użytkownik decyduje o parametrach zapytania, korzystając z graficznego interfejsu. Wygenerowane w ten sposób zapytanie jest kierowane do modułu dostępu, który korzystając z informacji zapisanych w katalogu, przesyła je tylko do podsystemów zawierających poszukiwane zasoby. Przed skierowaniem zapytania do określonego podsystemu, także na podstawie informacji zapisanych w katalogu, moduł dostępu uzgadnia nazewnictwo obiektów i atrybutów. W podsystemie, do którego zostanie skierowane zapytanie, uruchamiany jest komunikator. Jego zadaniem jest przełożenie zapytania otrzymanego z warstwy dostępu do zasobów na język wykorzystywany w podsystemie i przesłanie go do podsystemu. Następnie zapytanie jest wykonywane, a wybrane dane są przetwarzane przez komunikator na uzgodniony format. Po uzyskaniu odpowiedzi od wszystkich podsystemów w module scalania następuje ujednolicenie nazw (na podstawie informacji zapisanych w katalogu), scalenie danych i przesłanie ich użytkownikowi.    %

(14)  !.    

(15) .  !"

(16)  ! !  .     . 

(17) # 

(18) #! " "!    $ . " 

(19)     .  ! " #!. 

(20)  "

(21)  ! !   #!.   !

(22)  ! !   #!. Rys. 5. Algorytm wybierania danych Źródło: opracowanie własne..     .

(23) 96. Dariusz Put. 3. Podsumowanie W artykule omówiono architekturę systemu integracji danych wraz z procedurą jego tworzenia i modyfikacji oraz sposobem wykorzystania. Proponowany system charakteryzuje się następującymi własnościami: 1) własności procesu tworzenia systemu oraz jego architektury: – tworzenie warstwy informacji o zasobach wymaga współdziałania uczestników systemu, – wykorzystanie standardowych technologii (np. XML) do przechowywania informacji w poszczególnych warstwach sprawi, że w przyszłości łatwiejsze będzie połączenie z innymi systemami, – podsystemy wchodzące w skład systemu współdzielonego nie wymagają modyfikacji, – wymagane jest ustalenie standardu metadanych (format oraz nazewnictwo klas obiektów i atrybutów), katalogu (format) oraz formatu danych przesyłanych użytkownikom, – wymagane jest uzgodnienie słownika nazw obiektów i atrybutów, – system umożliwia połączenie podsystemów, w których przechowywane są dane, na podstawie dowolnego modelu (np. relacyjnego, obiektowego, XML-owego) – warunkiem jest możliwość przekształcenia zapytania wygenerowanego w języku zapytań dla użytkowników na język zapytań wykorzystywany w danym podsystemie, – właściciel zasobów znajdujących się w podsystemie decyduje o tym, które zasoby mają być współdzielone, – poszczególne warstwy, oprócz warstwy informacji o zasobach, choć współdziałają ze sobą i muszą zostać utworzone w określonej kolejności, w trakcie działania systemu nie wymagają zmian; 2) własności dotyczące eksploatacji: – zmiany w warstwie zasobów (modyfikacja, usunięcie lub dołączenie nowych podsystemów) wymagają jedynie dokonania zmian w warstwie informacji o zasobach i pozostają bez wpływu na pozostałe warstwy systemu, – ze względu na wykorzystanie w systemie danych transakcyjnych podsystemy mogą być bardziej obciążone, – system jest elastyczny – umożliwia dołączanie, modyfikację i usuwanie systemów składowych; 3) własności języka zapytań dla użytkowników: – język zapytań jest standaryzowany, dzięki temu każdy użytkownik ma dostęp do wszystkich zasobów współdzielonych, – język zapytań jest uniwersalny – zapytania mogą być przekształcone na język wykorzystywany w każdym ze składowych podsystemów,.

(24) Integracja heterogenicznych zasobów informacji. 97. – język zapytań umożliwia wybór obiektów otwartych oraz wykonanie operacji projekcji i selekcji; agregacje, wyliczenia i inne operacje na danych są wykonywane przez aplikację kliencką po dostarczeniu danych użytkownikom. W artykule omówiono architekturę systemu oraz sposób jego działania. W dalszej kolejności muszą zostać podjęte prace nad zdefiniowaniem jego komponentów: języka zapytań dla użytkowników, formatu metadanych i katalogu oraz formatu danych przesyłanych użytkownikom. Należy także opracować skuteczną strategię prowadzącą do utworzenia systemu współdzielenia danych heterogenicznych. Konieczne jest, aby obejmowała zarówno wytyczne dotyczące jego tworzenia, jak i eksploatacji. Należy zdefiniować zadania oraz formę udziału uczestników systemu w poszczególnych etapach. Literatura Extending Document Management Systems with User-specific Active Properties [2000], ed. P. Dourish, Transaction of Information System, ACM, New York, nr 18(2). Frohlich M.T., Westbrook R. [2001], Arcs of Integration: an International Study of Supply Chain Strategies, „Journal of Operations Management”, nr 19(2). Giachetti R.E. [2004], A Framework to Review the Information Integration of the Enterprise, „International Journal of Production Research”, nr 42 (6). Klaus K., Rosemann M., Gable G. [2000], What Is ERP?, „Information Systems Frontiers”, nr 2(2). Markus M.L., Tanis C. [2000], The Enterprise Systems Experience – From Adoption to Success. Framing the Domains of IT Management: Projecting the Future through the Past, Pinnaflex Educational Resources, Cincinnati. Sauermann L. [2005], The Gnowsis Semantic Desktop for Information Integration, The 3rd Conference on Professional Knowledge Management, Graz, Austria. Volkoff O., Strong D.M., Elmes M.B. [2005], Understanding Enterprise System-enabled Integration, „European Journal of Information Systems”, nr 14. Integration of Heterogeneous Information Resources Contemporary organisations often deal with a problem of integration of data that are collected both in systems used by own organisational units and in databases of business contractors and clients. The purpose of data integration process is the creation of a system that enables an efficient (also automatic) data exchange between particular units and business partners, as well as performing of analyses in real time. The article proposes a data integration system that allows queries generation directly by users. The system consists of five layers. The construction, reciprocal dependencies, contents and tasks of particular layers, both in the area of data and metadata storage and in the queries generation process, have been discussed. Attention has been paid to the need of standardisation of system modules, including the queries language. In the final part of the paper, an analysis of.

(25) 98. Dariusz Put. system features has been carried out and directions of further research leading to creation of foundations for system components construction have been submitted. Key words: organisation integration, data integration, information resources, resources integration systems..

(26)

Cytaty

Powiązane dokumenty

 Zanurzenie języka zapytań w uniwersalny język programowania ma złą sławę określaną jako „niezgodność impedancji”..  XQuery wzoruje się na OQL, ale wprowadza

Zmienne, będące składowymi klasy, nazywa się (powszechnie w programowaniu obiektowym, nie tylko w języku C++) polami, natomiast funkcje składowe nazywa się

W takim przypadku odróŜnia się klasy dziedziczące bezpośrednio (ProduktRTV-Telewizor, Telewizor- TelewizorLCD) oraz pośrednio (ProduktRTV- TelewizorLCD). b) MoŜliwe jest

Jeśli na serwerze MS SQL znajduje się zainstalowana baza danych i dysponujemy MS SQL Server Managemant Studio, to istnieje możliwość skierowania do wybranej bazy danych poleceń

Sens tego zapytania można opisać w następujący sposób: Wybrać (SELECT) wszystkie kolumny z tabeli Ucznio- wie (Uczniowie.*) oraz wszystkie kolumny z tabeli Klasy (Klasy.*),

Полагаем, что ЯИ, как правило, направлена не на развлечение, а на выражение оценки к обозначаемому аббревиатурой

Nie współgra więc z rozumieniem podmiotowości omawianym przez Sendykę: odnosi się bardziej do kartezjańskiego „ja” niż self, które to pojęcia autorka zdecydowanie

mając dany graf G = (V, E) oraz tablicę jego krawędzi T , należy dla każdego zapytania (a, b) odpowiedzieć na pytanie ile spójnych składowych ma graf obcięty do krawędzi T