Środowisko Oracle Application Server w internetowej aplikacji inteligentnego systemu lingwistycznego



Podobne dokumenty
Wybrane działy Informatyki Stosowanej

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

1 Wprowadzenie do J2EE

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Oracle Application Express -

Ekspert MS SQL Server Oferta nr 00/08

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Wybrane działy Informatyki Stosowanej

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Bazy danych 2. Wykład 1

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne)

Wybrane działy Informatyki Stosowanej

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Plan. Aplikacja. Architektura aplikacji. Architektura aplikacji Tworzenie aplikacji Application Builder podstawy

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Inteligentny czujnik w strukturze sieci rozległej

Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

Spis treści. Przedmowa

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

Tomasz Grześ. Systemy zarządzania treścią

Programowanie Komponentowe WebAPI

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Wdrożenie modułu płatności eservice. dla systemu Magento

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:

ActiveXperts SMS Messaging Server

PRZEWODNIK PO PRZEDMIOCIE

Zastosowanie Oracle Designer/2000 do projektowania i implementacji aplikacji WWW

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Aplikacje Internetowe, Servlety, JSP i JDBC

Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS. (c) 2008 Grupa SPOT SJ

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera :

Protokół HTTP (2) I) Wprowadzenie. II) Użyte narzędzia: III) Kolejność działań

edziennik Ustaw Opis architektury

Analiza porównawcza środowisk rozwoju aplikacji internetowych

Część I Rozpoczęcie pracy z usługami Reporting Services

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie

Systemy obiegu informacji i Protokół SWAP "CC"

Dokumentacja aplikacji Szachy online

Serock warsztaty epuap 28 październik 2009 r. Sławomir Chyliński Andrzej Nowicki WOI-TBD Szczecin

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Tworzenie aplikacji bazodanowych

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Oracle JDeveloper Suite 2.0 jako wydajne środowisko do tworzenia aplikacji intra- i internetowych, na przykładzie sklepu elektronicznego

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści

Projektowanie oprogramowania. Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

System Kancelaris. Zdalny dostęp do danych

Anna Fiedorowicz Bazy danych 2

Polityka prywatności Spółdzielni Mieszkaniowej Słoneczny Stok

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Tomasz Greszata - Koszalin

PROJEKT Z BAZ DANYCH

System zarządzający grami programistycznymi Meridius

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat protokołu http.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Wykład Ćwiczenia Laboratorium Projekt Seminarium

WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką

Aplikacje WWW - laboratorium

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań,

Plan. Stan sesji (1/2) Stan sesji (2/2) Stan sesji Tworzenie przycisku Integracja prostego formularza z raportem Tworzenie formularza z raportem

Oracle10g: Programowanie w PL/SQL

PHP: bazy danych, SQL, AJAX i JSON

Konspekt pracy inżynierskiej

Praca w programie dodawanie pisma.

Wdrożenie modułu płatności eservice. dla systemu Zen Cart

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Wprowadzenie do J2EE. Maciej Zakrzewicz.

XII Konferencja Sieci i Systemy Informatyczne Łódź, październik 2004 NOWOCZESNA WITRYNA WWW W NOWOCZESNEJ SZKOLE

Liczba godzin 1,2 Organizacja zajęć Omówienie programu nauczania 2. Tematyka zajęć

Instrukcja instalacji

Programowanie obiektowe

Pojęcie systemu baz danych

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

KARTA PRZEDMIOTU. Programowanie aplikacji internetowych

Zdalne monitorowanie i zarządzanie urządzeniami sieciowymi

SZKOLENIE TWORZENIE SYSTEMÓW

Bazy danych i ich aplikacje

Transkrypt:

Rozdział 46 Środowisko Oracle Application Server w internetowej aplikacji inteligentnego systemu lingwistycznego Streszczenie. W rozdziale przedstawiono sposób tworzenia aplikacji w architekturze trójwarstwowej z wykorzystaniem środowiska Oracle Application Server jako alternatywy do innych oferowanych metod obsługi bazy inteligentnego lingwistycznego systemu. Autorzy niniejszego rozdziału odwołują się do zasad budowy algorytmów przeznaczonych do analizy tekstu na podstawie reguł gramatyki strukturalnej i komunikacyjnej z elementami modelu logicznego języka, które zostały one przedstawione w artykule: Intelligent Linguistic Database Systems i zaprezentowane na konferencji FCCS 2005 w Bronisławowie. Prezentowany system w wymienionym środowisku jest w stanie, na podstawie przekazanego zdania, wyszukać i jednoznacznie określić wyrazy lub grupy wyrazów pod względem gramatyki komunikatywnej. Artykuł ten obejmuje zakres tworzenia systemu internetowego wykorzystującego moduł serwera HTTP Oracle - mod_plsql.wtyczka ta odwzorowuje żądania przeglądarki do określonej ścieżki wirtualnej na wywołania procedur składowanych. Prezentowana aplikacja obejmuje moduły wprowadzania, analizy i prezentacji danych. 1 Wstęp Aplikacja bazodanowa stanowi warstwę pośrednią między systemem zarządzania bazą danych a użytkownikiem. Aby skorzystać z bazy danych trzeba posłużyć się jakąś aplikacją. Tworzeniem aplikacji zajmują się programiści wykorzystując do tego celu różnorodne narzędzia i technologie. 2 Metody tworzenia aplikacji w środowisku Oracle Oracle dostarcza zbioru narzędzi i środowisk umożliwiających wykorzystanie najpopularniejszych języków programowania do tworzenia aplikacji łączących się z bazą danych. Interfejsem najniższego poziomu jest interfejs OCI (Oracle Call Interface), który Sławomir Wiak, Paweł Drzymała, Henryk Welfle, Maria Dems: Politechnika Łódzka, Instytut Mechatroniki i Systemów Informatycznych, ul. Stefanowskiego 18/22, 90-924 Łódź, Polska email: (wiakslaw, pdrzymal, welfle, mdems)@p.lodz.pl

S. Wiak, P. Drzymała, H. Welfle, M. Dems przeznaczono do wykorzystania z poziomu C/C++. OCI wymaga od programisty stosunkowo dużych umiejętności oraz poświęcenia niemałej dawki czasu na programowanie i usuwanie błędów. Dostępne są również aplikacje tzw. prekompilatorów dla różnych języków programowania. Prekompilator tłumaczy program z zanurzonymi instrukcjami SQL na program zrozumiały dla kompilatora C. Obecnie Oracle kładzie największy nacisk na obsługę języka Java. Dostęp do baz danych realizowany jest w tym języku poprzez wykorzystanie interfejsu JDBC (Java DataBase Connectivity). Alternatywnym sposobem programowania dostępu do baz danych w aplikacjach Javy jest wykorzystanie prekompilatora o nazwie SQLJ. Prekompilator ten działa podobnie jak prekompilatory z grupy Pro* - program w Javie z zanurzonymi instrukcjami SQL tłumaczony jest na kod z odwołaniami do JDBC, a następnie kompilowany. Obok Javy podstawowym językiem proceduralnym jest PL/SQL. Na przestrzeni lat firma ORACLE znacząco rozszerzyła możliwości tego języka, umożliwiając wykorzystanie go również do tworzenia aplikacji pracujących po stronie klienta. Proste aplikacje WWW mogą być tworzone na bazie oprogramowania serwera baz danych. Oracle 9i Database zawiera serwer http oparty na Apache, kontroler serwletów i JSP oraz umożliwia tworzenie procedur składowanych generujących kod HTML. 3 Konfiguracja środowiska OAS i serwera http Komunikacja klienta możliwa jest dzięki modułowi serwera HTTP Oracle - mod_plsql. Wtyczka ta odwzorowuje żądania przeglądarki do określonej ścieżki wirtualnej (domyślnie /pls) na wywołania procedur składowanych. Procedury składowane generują kod HTML, przekazywany następnie do modułu PL/SQL, który zwraca go przeglądarce. Modul PL/SQL łączy się z bazą danych wykorzystując parametry konfiguracyjne zapisane w tzw. deskryptorze dostępu do baz danych DAD (rys. 1). Rys. 1. Strona konfiguracji ustawień serwera http Menu konfiguracyjne Mod_plsql (rys. 2, 3) wykorzystywane jest do przeprowadzenia konfiguracji bramki deskryptora dostępu do baz danych (gdzie ustawia się m.in. informacje o połączeniu Oracle, tryb identyfikacji, parametry wysyłania plików). 440

Środowisko Oracle Application Server w internetowej aplikacji inteligentnego systemu lingwistycznego Rys. 2. Zdefiniowane przykładowe deskryptory dostępu do baz danych Rys. 3. Konfiguracja przykładowego deskryptora dostępu do baz danych Konfiguracja zapisywana jest do pliku tekstowego wdbsrv.app w katalogu serwera http który dostępny jest w podanej lokalizacji : ORACLE_HOME/Apache/modplsql/cfg/ Przy właściwie ustawionym deskryptorze dostępu procedury można wywołać przez podanie ich nazwy w przeglądarce według opisu: http:/nazwa_serwera/pls/nazwa_deskryptora/procedura lub http:/nazwa_serwera/pls/nazwa_deskryptora/nazwa_pakietu.procedura 4 Wbudowane pakiety Web Toolkit języka PL/SQL Oracle zawiera grupę wbudowanych pakietów PL/SQL zwanych PL/SQL Web Toolkit. Głównym zadaniem tych pakietów jest generowanie kodu HTML i przesyłanie go do przeglądarki na komputerze klienta za pośrednictwem modułu serwera Apache o nazwie mod_plsql. PL/SQL Web Toolkit składa się z wybranych pakietów: htp i htf, owa_cache, owa_cookie, owa_image, owa_opt_lock, owa_pattern, owa_sec, owa_text, owa_util. Podstawowym i najczęściej wykorzystywanym systemowym pakietem jest pakiet Hyper Text Procedures (htp) generujący znaczniki HTML natomiast pakiet Hyper Text Functions (htf) zawiera funkcje. 441

S. Wiak, P. Drzymała, H. Welfle, M. Dems Pakiet owa_cookie służy do przechowywania po stronie klienta użytecznych informacji. Ze względu na wydajność aplikacji powinno stosować się cookie a nie ukryte pola formularza. W pakiecie owa_cookie znajdują się procedury i funkcje, pozwalające wysyłać cookies do przeglądarki i je z niej odczytywać. Pokazane są w tabeli 1. Tabela 1. Procedury i funkcje pakietu owa_cookie Nazwa funkcji lub procedury Owa_cookie.send Owa_cookie.get_all Owa_cookie.get Owa_cookie.remove Przeznaczenie procedura wysyłająca ciasteczka do komputera klienta procedura czytająca zawartość wszystkich ciasteczek funkcja odpowiadająca za przeczytanie zawartości ciasteczka procedura usuwająca ciasteczko 5 Opis i charakterystyka aplikacji Należy zaznaczyć, że system inteligentnej lingwistycznej bazy danych form językowych był projektowany i powstawał w środowisku rozproszonym tzn. algorytmy implementowane były w systemie z równoległym wprowadzaniem słowników funkcji językowych przez wiele osób. Do realizacji tego celu zaistniała potrzeba wykorzystania globalnego medium transmisji informacji i sieci komunikacyjnych - Internetu. Autorzy musieli zatem zadbać o bezpieczeństwo architektury na wielu płaszczyznach dostępu i zabezpieczeń projektu. Do realizacji wymienionego celu budowy procedur przetwarzania zadań lingwistycznych na podstawie sprecyzowanych algorytmów autorzy zdecydowali się wykorzystać: Kompletne rozwiązanie bazodanowe i analityczne Oracle Application Server OAS (Rys. 4), przeznaczone do szybkiego tworzenia nowej generacji aplikacji ukierunkowanych dla Internetu, w tym środowisko serwera WWW - Apache z implementacją protokołu kryptografii transmisji danych SSL przeznaczonego do zadań komercyjnych w tzw. e-businnessie tzn. zadań dla których stawia się najwyższe wymagania co do bezpieczeństwa. Rozwijający się obecnie język PL/SQL w pakiecie Web Toolkit. PL/SQL jest proceduralnym rozszerzeniem języka SQL, umożliwiającym wykonanie rozkazów warunkowych, pętli itp. w połączeniu z zapytaniami do bazy. Procedury napisane w PL/SQL mogą składać się z bloków, które z kolei mogą posiadać własne lokalne zmienne pętle oraz obsługę błędów w tym mogą generować strony w oparciu o znaczniki HTML. 442

Środowisko Oracle Application Server w internetowej aplikacji inteligentnego systemu lingwistycznego 1. The Oracle HTTP Server receives a PL/SQL Server Page request from a client browser. 2. The Oracle HTTP Server routes the request to the PL/SQL Gateway. 3. The request is forwarded by the PL/SQL Gateway to the Oracle Database. 4. The PL/SQL Gateway prepares the call parameters, and invokes the PL/SQL procedure in the application. 5. The PL/SQL procedure generates an HTML page using data and the PL/SQL Web Toolkit accessed from the database. 6. The response is returned to the PL/SQL Gateway. 7. The Oracle HTTP Server sends the response to the client browser. Rys. 4. Schemat wymiany informacji w architekturze trójwarstwowej [1] Oracle Application Server wspiera internetowe standardy XML oraz HTTP. Wykorzystanie środowiska wydatnie obniży czas potrzebny do uruchomienia aplikacji funkcji komunikacyjnych, czy hurtowni danych form językowych, przy równoczesnym zapewnieniu skalowalności potrzebnej w najbardziej wymagających scenariuszach lingwistycznych. Przykład zawartości tabeli wybranych czasowników z parametrami przedstawiony został na rys. 5. Pozostałe kategorie gramatyczne: rzeczowników, przymiotników, przyimków przedstawione zostały w artykule [2]. Analiza zdań prostych oparta jest na funkcjach, których zasada działania wykorzystuje rozbudowane bloki wyszukiwania podmiotu - na zasadzie śledzenia składni budowy zdania a dokładniej określonego rzeczownika w stosunku do wyznaczonego metapredykatu. Procedury i funkcje przeznaczone do obsługi Inteligentnej Lingwistycznej Bazy Danych przechowywane są w pakietach z wykorzystaniem PL/SQL. Przykładowy pakiet z procedurą wprowadzania danych przedstawiony został na rys. 6. Komputerowy słownik operatorów wykonany został na platformie Oracle 9i Database i zawiera kilka tysięcy elementów funkcji językowych zgromadzonych w postaci tabelarycznej. 443

S. Wiak, P. Drzymała, H. Welfle, M. Dems Rys. 5. Wybrane czasowniki z parametrami przedstawione w środowisku Enterprise Manager Oracle 9i Rys. 6. Przykładowy pakiet zawierający procedurę przechowywaną odpowiedzialną za wprowadzanie danych do analizatora tekstu. Przykład początkowej strony aplikacji obsługującej dla zdań prostych system słownika lingwistycznej bazy danych przedstawiony został na rys. 7. 444

Środowisko Oracle Application Server w internetowej aplikacji inteligentnego systemu lingwistycznego Rys. 7. Początkowa strona aplikacji Inteligentnej lingwistycznej bazy danych 6 Podsumowanie Oracle Application Serwer oraz system Oralce9i Database potrafi sprostać wszystkim wyzwaniom, jakie stawia przed nią rynek, a zwłaszcza rynek rozwiązań biznesowych. Posiada on pełen pakiet narzędzi i usług, które mogą wspierać rozwój firm i pomagać przy zwiększaniu ich rentowności. Oracle 9i to wszechstronny produkt, będący uniwersalnym serwerem danych, zaprojektowany z uwzględnieniem możliwości prowadzenia działalności w Internecie. Jest doskonałym rozwiązaniem dla przedsięwzięć w których stosowane są najnowsze techniki zarządzania danymi. Literatura 1. Oracle9i Application Server Oracle, Using the PL/SQL Gateway, Release 1 (v1.0.2.2), May 2001,Part No. A90099-01. 2. Drzymała P.,Welfle H.,Wiak S., Habrajska G., Łazarow E., Awdiejew A.: Intelligent Linguistic Database Systems. FCCS 2005 Bronisławowo. 3. Adjejew A.: Gramatyka komunikacyjna. Wydawnictwo Naukowe PWN, Warszawa 1999. 4. Habrajska G.: Presupozycja - kondensacja implikatura. Język w komunikacji, t.1, Łódź 2001. 5. Habrajska G.: Kondensacja i skrótowość w komunikacji przez komputer. Słowo w tekście, przekładzie i słowniku, ed. Peter Lang, Europäischer Verlag der Wissenchaften, Sonderdruck 2002. 445