• Nie Znaleziono Wyników

Możliwości wykorzystania baz danych nosql w systemach informatycznych w transporcie Possibilities of Using NoSQL Databases in Informationof Transport Systems

N/A
N/A
Protected

Academic year: 2021

Share "Możliwości wykorzystania baz danych nosql w systemach informatycznych w transporcie Possibilities of Using NoSQL Databases in Informationof Transport Systems"

Copied!
7
0
0

Pełen tekst

(1)



Andrzej Czerepicki, Andrzej Góralski

Politechnika Warszawska, Wydzia Transportu

MO LIWO CI WYKORZYSTANIA BAZ DANYCH

NoSQL W SYSTEMACH INFORMATYCZNYCH

W TRANSPORCIE

Rkopis dostarczono, kwiecie 2013

Streszczenie: w artykule przestawiono kierunki rozwoju systemów informatycznych w transporcie

zorientowanych na uytkownika kocowego. Wymieniono charakterystyki baz danych zaliczanych do nurtu NoSQL oraz reprezentowane modele danych. Pokazano przykad transformacji modelu relacyjnego do postaci grafowej oraz ide zastosowania grafowej bazy danych do wyszukiwania pocze w systemie komunikacji miejskiej. Zobrazowano ogóln koncepcj systemu informatycznego rozproszonego wykorzystujcego bazy danych NoSQL w poszczególnych moduach.

Sowa kluczowe: bazy danych, transport, systemy informatyczne

1. WSTP

Rozwój wspóczesnych systemów informatycznych w transporcie odbywa si w kierunkach, które mona scharakteryzowa jako decentralizacj oraz globalizacj. Naley tu wymieni migracj systemów scentralizowanych w kierunku aplikacji rozproszonych, coraz wiksz integracj danych pochodzcych ze róde heterogenicznych oraz coraz bardziej aktywny udzia uytkowników kocowych w procesie wymiany danych z systemem. Odpowiednio rosn wymagania stawiane systemom informatycznym w zakresie wydajnej obsugi duej liczby uytkowników, stabilnego wiadczenia obszernej listy usug oraz przetwarzania coraz wikszych zbiorów danych. Wymagania te przekadaj si na bazy danych jako kluczowy element wikszoci systemów informatycznych w transporcie.

Bazy danych NoSQL stanowi dynamicznie rozwijajcy si nurt wspóczesnej technologii komputerowej. Wikszo z nich powstaa w przecigu ostatnich kilku lat i od pocztku bya projektowana z uwzgldnieniem wysokich wymaga co do objtoci przechowywanych danych oraz wydajnoci ich przetwarzania. W aspekcie wymienionych wyej wymaga, zastosowanie baz danych tego typu moe stanowi perspektywiczny kierunek rozwoju wspóczesnych systemów informatycznych w transporcie.

(2)

2. CECHY WSPÓCZESNYCH SYSTEMÓW

INFORMATYCZNYCH W TRANSPORCIE

Systemy informatyczne scentralizowane stosowane w transporcie, wczeniej czy pó niej staj przed wezwaniem do integracji. Wynika to z rosncych oczekiwa uytkowników odnonie funkcjonalnoci takich systemów oraz procesów integracji systemów transportowych w skali midzynarodowej. Przykadem moe suy system informatyczny Deutsche Bahn [4] obejmujcy zasigiem poczenia kolejowe w caej Europie. Migracja systemów informatycznych w kierunku systemów rozproszonych wynika z koniecznoci zapewnienia powszechnego i bezpiecznego dostpu do danych [3]. Od strony technologicznej jest ona wspierana przez rozwój usug sieciowych WebServices, przetwarzanie danych w chmurze (ang. Cloud Computing) oraz wspóczesne rozproszone systemy baz danych.

Rozwój technologiczny w zakresie urzdze mobilnych przyczyni si do powstania aplikacji zorientowanych na uytkownika kocowego, takich jak wbudowane systemy nawigacji, wyszukiwarki pocze komunikacji miejskiej itp. Uytkownik zaczyna odgrywa coraz bardziej aktywn rol nie tylko jako konsument danych, lecz równie jako dostawca informacji zwrotnej. Na przykad, aplikacja do nawigacji samochodowej podczas obliczenia optymalnej trasy przejazdu moe wykorzystywa informacje o biecej sytuacji drogowej (korki, awarie, warunki pogodowe, etc.) udostpnione przez innych uytkowników tego systemu [5]. Z punktu widzenia systemu informatycznego oznacza to istotny wzrost wymaga dotyczcych liczby jednoczenie obsugiwanych uytkowników.

Wikszo istniejcych systemów informatycznych przechowuje dane we wasnym formacie. Integracja systemów wymaga zastosowania narzdzi klasy ETL w celu ekstrakcji, transformacji oraz adowania ujednoliconych danych do systemu kocowego [2]. Wczenie si uytkowników kocowych w proces dostarczania danych wymusza wstpn weryfikacj przykazywanej informacji oraz jej strukturyzacj. Pojawia si problem efektywnego skadowania danych sabo ustrukturyzowanych oraz ich wstpnej obróbki.

Systemy informatyczne w transporcie w celu przechowania oraz przetwarzania informacji wykorzystuj obecnie relacyjne bazy danych. Oparty na formalnym aparacie matematycznym oraz zweryfikowany przez ponad 30 lat intensywnego wykorzystania, relacyjny model danych posiada pewne ograniczenia, zwizane z realizacj praktyczn. Dotyczy to skalowalnoci systemu, zdolnoci do efektywnej obsugi bardzo duej liczby równolegych transakcji oraz moliwoci operowania na danych sabo ustrukturyzowanych. W nastpnym rozdziale zostan przedstawione bazy danych implementujce inne modele danych ni relacyjny, które w okrelonych warunkach mog wyeliminowa wymienione wady nakrelajc tym samym perspektywiczny kierunek rozwoju systemów informatycznych w transporcie.

(3)

3. CHARAKTERYSTYKI BAZ DANYCH NoSQL

Bazy danych NoSQL stanowi grup wspóczesnych, dynamicznie rozwijajcych si systemów przetwarzania danych. Powstae one na potrzeby przetwarzania duych zbiorów danych, dostarczanych na przykad przez uytkowników sieci socjalnych, lub w celu przechowania powiza semantycznych sieci WWW. Wspóln cech baz danych zaliczanych do nurtu NoSQL jest czciowa rezygnacja z zapewnienia waciwoci ACID, zadeklarowana w twierdzeniu CAP [1]. Kosztem tego uzyskuje si zdolno do przechowania, efektywnego przetwarzania oraz partycjonowania bardzo duych zbiorów danych.

Bazy danych realizujce model danych „klucz-warto” (ang. key-value) mona

interpretowa jako tablic haszujc, która przechowuje dane o dowolnej strukturze, adresowane za pomoc klucza [7]. Gówn zalet modelu jest szybko wyszukiwania danych oraz brak narzutów na struktur przechowywanych danych. Pozwala to na budow aplikacji elastycznych, zwaszcza w zakresie przetwarzania danych sabo powizanych. Wad modelu jest wysoki dodatkowy nakad pracy w przypadku realizacji systemów o silnych powizaniach danych, co ogranicza potencjalny zakres ich zastosowania.

Kolumnowe bazy danych implementuj model danych podobny do relacyjnego, lecz

rónicy si sposobem fizycznego przechowania danych. W klasycznej relacyjnej bazie danych rekordy tabeli s przechowywane w pliku danych kolejno jeden po drugim. Kolumnowe bazy danych oferuj moliwo przechowania danych pogrupowanych wedug kolumn. Uatwia to rozmieszczenie tabeli na kilku serwerach, przyspiesza wykonanie zapyta wybierajcych dane z maej liczby kolumn oraz pozwala na stosowanie prostych metod kompresji (np. RLE) dla danych przechowywanych w jednej kolumnie. Rozwizanie to przynosi znaczcy wzrost wydajnoci przy pobieraniu danych [8] . Do wad kolumnowych baz danych zalicza si wolniejsze wstawianie danych oraz nisza efektywno zapyta operujcych na wielu kolumnach.

Grafowe bazy danych jako model danych wykorzystuj grafy skierowane. Dane s

przechowywane w wzach grafu, przy czym baza danych nie narzuca struktury docelowej, pozwalajc na jej elastyczn modyfikacj w trakcie dziaania systemu. Powizania danych s realizowane w postaci krawdzi grafu. Kada krawd czca wierzchoki moe posiada dowoln liczb atrybutów, co pozwala na realizacj zoonych semantycznych zalenoci pomidzy danymi. Gównym atutem grafowych baz danych jest szybko wyszukiwania cieek w grafie: analogiczna struktura zrealizowana w relacyjnej bazie danych wymaga stosowania zoonych zapyta SQL i jest mniej efektywna [6]. Siln stron modelu jest wykorzystanie teorii grafów dostarczajcej rozwizania wielu problemów w postaci gotowych algorytmów. Do wad grafowych baz danych naley zaliczy ograniczony zakres efektywnego stosowania. Chocia teoretycznie kady zbiór danych mona przedstawi w postaci grafu, z punktu widzenia praktycznego nie zawsze jest to opacalne. Relacyjne bazy danych szybciej poradz sobie np. z obliczeniem redniej arytmetycznej wartoci przechowywanych w wybranej kolumnie.

(4)

4. MO LIWO CI WYKORZYSTANIA BAZ DANYCH

NoSQL w SYSTEMACH INFORMATYCZNYCH

w TRANSPORCIE

Kady z omówionych wczeniej modeli baz danych posiada wasne zalety oraz wady, które narzucaj ograniczenia co do zakresu oraz efektywnoci zastosowania w transportowych systemach informatycznych.

Model realizowany przez grafowe bazy danych z powodzeniem moe by zastosowany w takich transportowych systemach informatycznych, w których jedn z podstawowych operacji jest wyznaczanie optymalnej trasy dojazdu. Nale do nich systemy nawigacji, systemy informowania pasaera, etc. Koncepcja organizacji struktury takiego systemu zostanie przedstawiona w kontekcie algorytmu wyznaczania pocze w komunikacji miejskiej. Klasyczny relacyjny model danych skada si w tym przypadku z encji linia, przystanek oraz poczenie (rys. 1).

Rys. 1. Struktura danych modelu relacyjnego

Odpowiednikiem tej struktury w grafowym modelu danych jest struktura przestawiona na rys 2. Wzem grafu jest przystanek. Zbiór atrybutów przystanku stanowi jego nazwa oraz np. wspórzdne GPS. Krawdzie grafu odpowiadaj poczeniom pomidzy przystankami. Kada krawd ma atrybuty numer linii, odlego oraz czas przejazdu (model uproszczony nie uwzgldnia rozkadów jazdy dla kadego z przystanków).

(5)

Rys. 2. Struktura danych modelu grafowego

Wyznaczenie trasy przejazdu w systemie wykorzystujcym relacyjn baz danych wymaga programistycznej implementacji algorytmu wyszukiwania w grafie (np. algorytm Dijkstry) z wykorzystaniem rekurencyjnych zapyta w jzyku SQL. W grafowej bazie danych zadanie wyszukiwania wszystkich pocze z przystanku ܲ do przystanku ܲ mona sformuowa za pomoc pojedynczego zapytania w jzyku Gopher (rys. 3).

 

Rys. 3. Zapytanie grafowej bazy danych zwracajce poczenia pomidzy przystankami Kolumnowe bazy danych ze wzgldu na specyfik struktury wykazuj si wysok wydajnoci odczytu danych oraz moliwoci zastosowania kompresji. Stanowi to przesank do ich wykorzystania w celu zbierania oraz archiwizowania danych przeznaczonych do dalszej analizy analitycznej OLAP, gdy w tym przypadku niska wydajno zapisu danych do hurtowni nie wpywa na dziaanie caego systemu, za kompresja danych pozwala zaoszczdzi miejsce na noniku.

Bazy danych „klucz-warto ” sporód wymienionych kategorii baz danych NoSQL charakteryzuj si zdolnoci do obsugi najwikszej liczby uytkowników oraz szybszego zapisywania danych do bazy. Zastosowanie takiej bazy na wejciu systemu informatycznego pozwoli na wstpn filtracj oraz agregacj danych pozyskiwanych od uytkowników lub z automatyzowanych systemów pomiarów. W przypadku dublujcych si danych tablica haszujca jest odpowiedni struktur do agregowania danych o identycznych wartociach klucza, co rozwizuje problem aktualizacji danych.

(6)

Podsumowujc, zalety kadego rodzaju baz danych NoSQL mona wykorzysta w transportowych systemach informatycznych. Naley jednak zauway , i aden z systemów baz danych NoSQL stosowany pojedynczo nie jest w stanie zapewni wszechstronnej funkcjonalnoci w ujciu caego systemu. Przyczyn jest przede wszystkim brak pewnoci i dane przetwarzane w takim systemie speniaj kryteria integralnoci. Dlatego bazy danych NoSQL naley traktowa przede wszystkim jako narzdzie rozszerzajce moliwoci relacyjnych baz danych w wybranych obszarach zastosowa. Koncepcj moliwej wspópracy baz danych w ramach rozproszonego systemu informatycznego ukazuje rys. 4.

Rys.4. Koncepcja rozproszonego systemu informatycznego transportowego z wykorzystaniem baz danych NoSQL

5. PODSUMOWANIE

Bazy danych NoSQL stanowi dynamicznie rozwijajcy si segment rynku systemów przetwarzania danych. Ze wzgldu na zdolno do przetwarzania duych zbiorów danych zyskay popularno przede wszystkim w systemach rozproszonych zorientowanych na du liczb uytkowników oraz przechowujcych due zbiory danych.

(7)

W artykule przestawiono kierunki rozwoju wspóczesnych systemów informatycznych, wymieniono podstawowe charakterystyki baz danych NoSQL oraz przedstawiono potencjalne obszary ich zastosowa. Na przykadzie transformacji modelu relacyjnego do postaci grafowej zademonstrowano koncepcj zastosowania grafowej bazy danych do wyszukiwania pocze w komunikacji miejskiej. Zobrazowano ogóln koncepcj rozproszonego systemu informatycznego, wykorzystujcego wspóprac relacyjnych baz danych z bazami danych NoSQL.

Rozwój systemów informatycznych w transporcie w kierunku systemów rozproszonych zorientowanych na aktywny udzia uytkownika pozwala prognozowa stopniowe zwikszenie udziau baz danych NoSQL w takich systemach. Naley jednak zauway i specyficzne wady baz danych NoSQL praktycznie wykluczaj ich zastosowanie w obszarach krytycznych takich jak np. systemy zarzdzania kryzysowego lub systemy pobierania opat. Dlatego wykorzystanie baz danych NoSQL naley rozwaa przede wszystkim w kontekcie uzupenienia funkcjonalnoci klasycznych relacyjnych systemów.

Bibliografia

1. Brewer E. Certain Freedom: Thoughts on the CAP Theorem. Proceeding of the XXIX ACM SIGACT-SIGOPS symposium on Principles of distributed computing. ACM, New York, 2010.

2. Czerepicki A., Góralski A. Transformacja heterogenicznych danych w systemach hurtowni danych. „Studia informatyczne” Nr 1(3)/2012, Wysza Szkoa Menederska w Warszawie, Warszawa 2012. 3. Grochowski L.: Rozproszone systemy informatyczne, Dom Wydawniczy Elipsa, Warszawa 2003. 4. http://www.bahn.de ( ródo elektroniczne, sprawdzono 2013.04.15).

5. http://yanosik.pl/android ( ródo elektroniczne, sprawdzono 2013.04.15).

6. Renzo Angles, Claudio Gutierrez. Survey of Graph Database Models. ACM Computing Surveys, vol. 40 Issue 1, February 2008. ACM New York, USA.

7. Skalski D. NoSQL – nierelacyjne systemy baz danych. Software Developer 08/2011, Warszawa, 2012. 8. Stonebraker M., Bear C., Çetintemel U., Cherniack M. One Size Fits All? – Part 2: Benchmarking Results.

3rd Biennial Conference on Innovative Data Systems Research, January 7-10, 2007, Asilomar, California, USA.

POSSIBILITIES OF USING NoSQL DATABASES IN INFORMATION SYSTEMS OF TRANSPORT

Summary: the paper presents trends of evolution of transportation information systems oriented to end-user.

Shows the characteristics of NoSQL databases and their data models. Presents an example of the transformation of the relational model into a graph model in context of search for connections in the public transportation system. Summarizes the general concept of a distributed informatics system using NoSQL databases.

Cytaty

Powiązane dokumenty

O tym, że salda faktycznie zostały zmienione, przekonamy się wyświetlając zawartość tabeli konta za pomocą instrukcji:. SELECT *

Niezależność aplikacji i danych - dane mogą być wprowadzane do bazy bez konieczności modyfikacji korzystających z nich programów czy systemów użytkowych, a z drugiej

We adopt the Amazon Web store data [McAuley et al., 2015], which contains a series of datasets from var- ious domains (e.g., clothing, electronics). To evaluate the effectiveness

Waldemar

Każdy obiekt klasy Ojciec ma wymagane atrybuty pesel, imię i nazwisko oraz atrybut dzieci, którego wartością jest zbiór identyfikatorów obiektów będących dziećmi danego

Model obejmuje dwie struktury danych - typy rekordów - typy kolekcji Każdy rekord może jednocześnie uczestniczyć w wielu powiązaniach rekordów Rekord taki może równocześnie i

Za­ danie tym trudniejsze, że zajęcie się powieścią nowoczesną zazwyczaj zakłada z góry konieczność odpowiedzi na pytanie, co to jest powieść i czym się

Dlatego też, mając św iadom ość wybitnych wartości krajobrazu Kanału Augustow skiego oraz szczególnych wartości zabytku techniki służba konserwatorska oraz sam