• Nie Znaleziono Wyników

Celem dzisiejszego spotkania jest wprowadzenie w świat baz danych. Wyjaśnione zostaną podstawowe pojęcia.

N/A
N/A
Protected

Academic year: 2022

Share "Celem dzisiejszego spotkania jest wprowadzenie w świat baz danych. Wyjaśnione zostaną podstawowe pojęcia."

Copied!
5
0
0

Pełen tekst

(1)

BAZY DANYCH

Lekcja 2: Ogólnie o bazach danych przygotowała: inż. Lidia Mamet

Celem dzisiejszego spotkania jest wprowadzenie w świat baz danych. Wyjaśnione zostaną podstawowe pojęcia.

W świecie, który znamy spotykamy się z bytami różnego typu. Mogą to być np., książki, produkty w sklepie, jeśli rozważamy rzeczy materialne lub uprawnienia, wiedza, stan konta bankowego, jeśli rozważamy rzeczy niematerialne. Inaczej mówiąc jest to wybrany fragment rzeczywistości, który należy zinformatyzować. Aby to zrobić, analizuje się owe byty (obiekty).

Programista baz danych to osoba, która odwzorowuje obiekty świata rzeczywistego w obiekty abstrakcyjne mające swoją reprezentację w systemie informatycznym.

Dane zaś to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp i które mogą być przetworzone przez komputer.

Baza danych (ang. data base) to inaczej trwały uporządkowany zbiór danych z pewnej grupy tematycznej zorganizowany w taki sposób, by możliwe było ich wyszukiwanie według zadanych kryteriów. Inaczej mówiąc to zbiór informacji (obszaru analizy) będący odwzorowaniem wybranego fragmentu rzeczywistości. W tym momencie dochodzimy do pojęć lokalnej i sieciowej bazy danych.1

Bazy danych możemy podzielić na bazy lokalne i sieciowe.

• Lokalna baza danych (local data base) – to baza danych do której mają dostęp jedynie osoby pracujące na danej stacji roboczej. Przykładem lokalnej bazy danych jest MS Access.

• Sieciowa baza danych to baza danych pracująca w modelu klient-serwer.

Bazy te pracowały w modelu relacyjnym opierającym się na tabelach (relacjach) stanowiących strukturę tego modelu. Tak scharakteryzowane bazy opierały się na języku SQL (Structured Query Language) czyli uniwersalnym języku zapytań stosowanych w systemach

1 I. Nowosad, K. Czarkowski, „Tworzenie baz danych i administrowanie bazami danych”, Nowa Era, 2015.

(2)

relacyjnych baz danych.2 Pracowały one w głównej mierze na tzw. wsadowym przetwarzaniu danych (omówione w dalszej części).

Jednak jak pokazuje historia techniki informacyjnej nadszedł czas, że systemy zarządzające tymi bazami przestały sobie radzić, nawet pomimo wzrastającej mocy obliczeniowej komputerów. Obok baz SQL powstały też byty które w nie wykorzystują składni języka SQL. Noszą one miano NoSQL. Właściwie nazwa ta nie jest zbyt właściwa, gdyż nie kryje się pod nią żadna konkretna technologia. „Początkowo, w 2009r. miała być tylko chwytliwym tagiem na Twitterze dotyczącym spotkań poświęconych otwartym, rozproszonym, nierelacyjnym bazom”.3 Jednak nazwa ta szybko się przyjęła a popularność tych baz wynika między innymi z potrzeby większej skalowalności, potrzebą bezpłatnego oprogramowania.

Przykłady baz NoSql

• Redis

• Cassandra

• MongoDB • Neo4j

Choć bazy relacyjne, przynajmniej w teorii, mogą obsługiwać wiele tysięcy użytkowników naraz to wszystkie te operacje wymagają czasu. Od systemów zarządzania bazami danych wymaga się również spójności, niezawodności oraz skalowalności jak również łatwości w ich konserwacji. Reasumując, różne bazy danych wykorzystuje się do różnych zastosowań. NoSQL jest odpowiedzią, a raczej uzupełnieniem istniejącego modelu baz relacyjnych, wprowadzają nowe funkcjonalności, lecz muszą one istnieć w symbiozie by spełniały stawiane przed nimi zadania.

Bazy SQL i NoSql radzą sobie wtedy, kiedy trzeba zbadać określony zgromadzony zbiór, lecz oprócz nich istnieją dane które napływają w sposób ciągły np. ruch na autostradzie, przepływ pieszych w galeriach, zmieniająca się pogoda itp. To już nie jest jakiś wybrany wycinek rzeczywistości, lecz strumień ciągle napływających informacji. Takie ciągle płynące informacje określa się terminem strumienia danych. Dane, oprócz tego, że napływają w sposób ciągły to jeszcze z różnych źródeł, a zatem należy je badać i analizować w sposób ciągły

2 J. Pokorska, „Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych”, Helion, 2019

3 Pramod J. Sadalage, M. Flower, NoSql Distilled, Addison-Wesley, 2012, ISBN, 978-0-321-82662-6

(3)

i dynamiczny. Tym zajmują się systemy przetwarzania strumieniowego.4 W literaturze można spotkać określenie strumieniowej bazy danych – sformułowanie mocno nietrafione.

Analizę i badanie danych określa się mianem przetwarzania danych.

Nim przejdziemy do dalszej części rozważań należy odpowiedzieć czym jest przetwarzanie danych.

Przetwarzanie danych (PD) jest przekształceniem danych i ich formy poprzez czynności które mają dać wyniki spełniające określone warunki. Inaczej mówiąc jest to proces zmiany danych wejściowych w dane wyjściowe. Oczywiście termin przetwarzania danych to idea o wiele bardziej złożona, lecz na potrzeby tejże pracy będziemy rozpatrywać jego węższe znaczenie tj. przetwarzanie danych masowych. Sam proces przetwarzania danych w tym aspekcie można podzielić na kilka etapów:

ETAP 1 – przygotowanie danych

Na tym etapie ustala się potrzeby użytkownika, inaczej mówiąc co ma być w danych wyjściowych, ustala się również jakie dane wejściowe są potrzebne, by dały potrzebne wyniki.

Określa się niezbędne oprogramowanie i dokumentację. Warto na tym etapie o wspomnieć o różnych punktach widzenia dotyczących przygotowania danych:

Z punktu widzenia infologicznego rozważany jest rodzaj i zakres danych jakie przetwarzanie ma dostarczyć, aspekt metodologiczny dostarcza wiedzy o źródłach, wykorzystywanych narzędziach i metodach; techniczny wskazuje na środki gromadzenia danych, organizacyjny określa harmonogram według którego przetwarzanie się odbędzie. Ostatni to aspekt przestrzenny związany jest z zastosowaniem systemów informacji przestrzennej zawierającej dane o obiektach na pewnym obszarze.

ETAP 2 – gromadzenie danych

Następuje poprzez wprowadzenie określonych danych przez człowieka ręcznie lub z wykorzystaniem maszyn (np. skanerów, kamer) i oprogramowania do bazy danych. Na tym etapie następuje również analiza jakości danych tj. ich poprawności i kompletności, wykrycie ewentualnych błędów merytorycznych z określeniem ich rodzaju oraz źródła.

ETAP 3 – przygotowanie danych do przetwarzania

4 https://codecouple.pl/2016/02/07/strumieniowe-bazy-danych-definicje/

(4)

Następuje obróbka w zakresie ich skracania do niezbędnych w celu określenia danych wyjściowych, jak również sprawdzenie danych oraz ich źródeł oraz ewentualne poprawki.

Ustala się również, jakie jeszcze dane są potrzebne. Dane podlegają też wstępnemu sortowaniu (by przetwarzanie trwało krócej) a także kompresji.

ETAP 4 – zasadnicze przetwarzanie danych

polegające na powtarzaniu takich operacji na danych początkowych, by uzyskać dane końcowe.

Następnie dane te się redaguje i udostępnia użytkownikowi.

ETAP 5 - zakończenie procesu przetwarzania danych wraz z przekazaniem zbiorów do archiwum

Na wszystkich etapach wprowadza się mechanizmy i sposoby automatyzacji w celu usprawnienia prac.

1.1 Podział przetwarzania danych ze względu na różne kryteria

Mówiąc o przetwarzaniu danych można dokonać podziału ze względu na miejsce. Do tychże należy

• przetwarzanie scentralizowane

• przetwarzanie rozproszone

Zarówno jedno jak i drugie rozwiązanie ma swoje wady i zalety. W pierwszym przypadku przetwarzanie odbywa się w centrum przetwarzania danych. Organizacja takiego przetwarzania nie należy do skomplikowanych. Prostszy też jest sposób, w jaki zarządza się zasobami. Z drugiej strony ponieważ dane trzeba zgromadzić i je przetworzyć pojawia się konieczność posiadania dużej mocy obliczeniowej w punkcie.

Przetwarzanie rozproszone to przetwarzanie w modelu klient serwer. Jak sama nazwa wskazuje węzły znajdują się w różnych miejscach. Choć takie przetwarzanie przynosi korzyści w postaci wykorzystania mocy obliczeniowej poszczególnych klientów i nie angażuje jednego centrum, to pojawiają się inne trudności. Np. konieczność zachowania łączności, problemy organizacyjne. Niewątpliwą zaletą takiego rozwiązania jest fakt, że źródło danych może znajdować się bardzo blisko osoby przetwarzającej dane.

Stale rozwijana architektura sprzętowa nie nadąża za rosnącymi potrzebami. Co prawda procesory wielordzeniowe stały się już standardem, sieci są coraz szybsze, lecz w pojedynkę nie są w stanie przetworzyć wielkiej ilości danych a przy tym być szybkie i niezawodne. Tak

(5)

pojawiła się potrzeba przetwarzania równoległego i wszystko wskazuje na to, iż będzie ona stale rozwijana.

Mówiąc o bazach danych można jeszcze spotkać się z pojęciem przetwarzania transakcyjnego. Nazwa transakcja wywodzi się z początków przetwarzania danych, kiedy to operacja wykonywana na bazie danych dotyczyła odpowiadającej jej transakcji biznesowej np.

kupna, sprzedaży. Początkowo transakcja była odpowiednikiem operacji związanej z finansami i mimo, że od tamtej pory bazy danych nie dotyczą jedynie czynności z użyciem środków pieniężnych, nazwa ta pozostała niezmienna. Transakcje mogą być wykonywane przez dużą liczbę użytkowników naraz (np. wielostanowiskowe rejestrowanie sprzedaży), a ich liczba może być naprawdę spora (np. kasy w markecie). Przetwarzanie transakcji odbywa się w czasie rzeczywistym, co z języka angielskiego oznacza Online Transaction Processing – w skrócie OLTP. W zapytaniach we wzorcu OLTP wykorzystuje się niewielką ilość krotek, a ich wyszukiwanie odbywa się na podstawie klucza. Z tego wzorca korzystają najczęściej klienci z aplikacji webowej.

Ze względu na fakt, że bazy danych coraz częściej wykorzystywane są to analityki danych używa się wzorca OLAP (Online Analitic Processing). W takim zapytaniu przeszukiwana jest zazwyczaj duża ilość krotek. Jest on używany głównie przez analityków biznesowych i dostarczają cennych danych zarządom firm. Przykładowe zapytanie analityczne to: w jakim okresie sprzedaje się najwięcej napojów gazowanych? Do zapisu takich danych używa się zazwyczaj strumieniowania zdarzeń.

PYTANIA KONTROLNE

1. Co to jest przetwarzanie danych?

2. Wymień etapy przetwarzania danych 3. Co to jest baza danych?

4. Wymień 3 bazy SQL 5. Wymień 3 bazy NoSql

Cytaty

Powiązane dokumenty

zasady higieny, zasady przechowywania żywności, prawa konsumentów parkowanie samochodu zasady ruchu drogowego,. prawo o opłatach za postój wykupienie recepty prawa

Dotacje celowe otrzymane z budżetu państwa na zadania bieżące z zakresu administracji rządowej zlecone gminom (związkom gmin, związkom powiatowo-gminnym), związane z

• gdy zmiana przynależności zawodnika następuje po upływie 12 miesięcy od wygaśnięcia kontraktu lub deklaracji gry amatora w klubie odstępującym. Z zastrzeżeniem okresu

Lęk wywo- łany przez złego ducha często łączy się z odczuciem obecności czegoś złego.. Osoba zniewolona ma wrażenie, że za nią lub po jej lewej stronie jest jakaś

Ten przykład to ilustracja szerszego zjawiska, jakim jest kurczenie się oferty publicznej ochrony zdrowia i poszerzanie prywatnej.. Jest to

oprocentowania stanowiącego cenę oferty nastąpi w 48 równych miesięcznych ratach, płatnych miesięcznie ostatniego dnia roboczego miesiąca kalendarzowego (a jeżeli ostatni

„Lokalne Inspiracje”. Niniejszy regulamin Konkursu, zwany dalej „Regulaminem”, określa warunki i zasady, na jakich odbywa się Konkurs, w szczególności określa

Jeśli jednak rola UE miała polegać jedynie na aktywizacji pogranicza i na tym się kończyć, to może się tak stać, że pewien stopień aktywizacji i idącej za tym integracji na