Zastosowanie strumieniowych baz danych

Podobne dokumenty
strumieniowym przetwarzaniu danych

Strumieniowe bazy danych

Strumieniowe bazy danych. Piotr i Paweł

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Hurtownie danych. Przetwarzanie zapytań. ZAPYTANIA NA ZAPLECZU

Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16

Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015

Symulacyjne metody wyceny opcji amerykańskich

Wykład XII. optymalizacja w relacyjnych bazach danych

Analiza efektywności przetwarzania współbieżnego

Strumieniowe bazy danych

Analiza ilościowa w przetwarzaniu równoległym

Transformacja wiedzy w budowie i eksploatacji maszyn

PODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu "Podstawy baz danych"

KARTA KURSU. (do zastosowania w roku akademickim 2015/16) Kod Punktacja ECTS* 3. Dr hab. Tadeusz Sozański

Alicja Marszałek Różne rodzaje baz danych

Podstawy Informatyki Systemy sterowane przepływem argumentów

Statystyki: miary opisujące rozkład! np. : średnia, frakcja (procent), odchylenie standardowe, wariancja, mediana itd.

Stanisław Cichocki Natalia Nehrebecka. Wykład 7

Rozkłady statystyk z próby

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Systemy GIS Tworzenie zapytań w bazach danych

INFORMATYKA W SELEKCJI

Monte Carlo, bootstrap, jacknife

Statystyki: miary opisujące rozkład! np. : średnia, frakcja (procent), odchylenie standardowe, wariancja, mediana itd.

Oracle11g: Wprowadzenie do SQL

Poziom przedmiotu: II stopnia. Liczba godzin/tydzień: 2W E, 2L PRZEWODNIK PO PRZEDMIOCIE

TEORETYCZNE PODSTAWY INFORMATYKI

Wprowadzenie do obrotu CO 2 na RIF

Zalew danych skąd się biorą dane? są generowane przez banki, ubezpieczalnie, sieci handlowe, dane eksperymentalne, Web, tekst, e_handel

Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek

STATYSTYKA MATEMATYCZNA WYKŁAD 4. Testowanie hipotez Estymacja parametrów

Podstawy OpenCL część 2

Plan wykładu. Wstęp. Charakterystyka DSMS. Przetwarzanie zapytań w DSMS. Otwarte problemy badawcze

komputery? Andrzej Skowron, Hung Son Nguyen Instytut Matematyki, Wydział MIM, UW

Zaawansowane Systemy Baz Danych

Indeksowanie w bazach danych

Teoretyczne podstawy informatyki

dr inż. Olga Siedlecka-Lamch 14 listopada 2011 roku Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Eksploracja danych

Zasady notowania kontraktów na Uprawnienia do emisji CO2 na RIF

Zapytania z ograniczeniem czasowym w Oracle

METODY STATYSTYCZNE W BIOLOGII

Teoretyczne podstawy informatyki

Szybkość instynktu i rozsądek rozumu$

Customer Attribution Models. czyli o wykorzystaniu machine learning w domu mediowym.

Jeśli X jest przestrzenią o nieskończonej liczbie elementów:

Algorytmy i struktury danych. Wykład 4 Tablice nieporządkowane i uporządkowane

HURTOWNIE DANYCH I BUSINESS INTELLIGENCE

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

STATYSTYKA MATEMATYCZNA

Zapytania, złączenia, optymalizacja zapytań, planowanie zapytań, optymalizacja indeksów.

Wykład 4. Plan: 1. Aproksymacja rozkładu dwumianowego rozkładem normalnym. 2. Rozkłady próbkowe. 3. Centralne twierdzenie graniczne

Sterowanie wielkością zamówienia w Excelu - cz. 3

WYZNACZANIE NIEPEWNOŚCI POMIARU METODAMI SYMULACYJNYMI

22-24 września, Gdynia

znalezienia elementu w zbiorze, gdy w nim jest; dołączenia nowego elementu w odpowiednie miejsce, aby zbiór pozostał nadal uporządkowany.

Synteza i eksploracja danych sekwencyjnych

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory

Giełda. Podstawy inwestowania SPIS TREŚCI

Opcje na akcje Zasady obrotu

Lean Six Sigma poziom Green Belt

Za pierwszy niebanalny algorytm uważa się algorytm Euklidesa wyszukiwanie NWD dwóch liczb (400 a 300 rok przed narodzeniem Chrystusa).

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

PDF created with FinePrint pdffactory Pro trial version

Wymiarowanie oprogramowania z perspektywy podwykonawcy

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Analiza fundamentalna oraz techniczna na rynku kapitałowym Fundamental and Technical Analysis on Capital Market

STATYSTYKA MATEMATYCZNA

IBM Streams MATERIAŁY DYDAKTYCZNE I SZKOLENIOWE NA STUDIA PODYPLOMOWE ORAZ NA SZKOLENIA DYSTRYBUOWANE SĄ BEZPŁATNIE

EGZAMIN MATURALNY W ROKU SZKOLNYM 2017/2018 INFORMATYKA

WYKŁAD 10. kodem pierwotnym krzywej jest ciąg par współrzędnych x, y kolejnych punktów krzywej: (x 1, y 1 ), (x 2, y 2 ),...

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

Laboratorium 5: Tablice. Wyszukiwanie binarne

Grupowe zakupy usług transportowych praktyczna redukcja kosztów transportu

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Microsoft SQL Server Podstawy T-SQL

Organizacyjnie. Prowadzący: dr Mariusz Rafało (hasło: BIG)

ROZPORZĄDZENIE MINISTRA GOSPODARKI 1) z dnia 23 października 2007 r.

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL

Bazy danych wykład dwunasty. dwunasty Wykonywanie i optymalizacja zapytań SQL 1 / 36

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania

Technologia informacyjna (IT - Information Technology) dziedzina wiedzy obejmująca:

Podstawy statystyki matematycznej w programie R

Administracja i programowanie pod Microsoft SQL Server 2000

Podstawy opracowania wyników pomiarów z elementami analizy niepewności statystycznych

Wstęp do relacyjnych baz danych. Jan Bartoszek

Monitoring procesów z wykorzystaniem systemu ADONIS. Krok po kroku

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Modele finansowania działalności operacyjnej przedsiębiorstw górniczych. Praca zbiorowa pod redakcją Mariana Turka

Optymalizacja zapytań. Proces przetwarzania i obliczania wyniku zapytania (wyrażenia algebry relacji) w SZBD

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Matematyczne Podstawy Informatyki

WYDZIAŁ BUDOWNICTWA LĄDOWEGO I WODNEGO

Transkrypt:

Zastosowanie strumieniowych baz danych Krzysztof Gogól

Agenda 1 Dlaczego strumieniowe bazy danych? 2 Prototypowe DSMS 3 Otwarte problemy 4 DSMS czyli okna 5 Przykłady zastosowania 18.05.09 Page 2 Ernst & Young

Agenda 1 Dlaczego strumieniowe bazy danych? 2 Prototypowe DSMS 3 Otwarte problemy 4 DSMS czyli okna 5 Przykłady zastosowania 18.05.09 Page 3 Ernst & Young

Dlaczego strumieniowe bazy danych? Definicja Bazy danych, przetwarzające ciągle i gwałtownie napływające informacje, przyjęto określać terminem strumieniowych baz danych. Wysoko poziomowy podział: 5. Transakcyjne strumienie danych 6. Pomiarowe strumienie danych 18.05.09 Page 4 Ernst & Young

Dlaczego strumieniowe bazy danych? Przykładowe case study System czujników raportujących natężenie ruchu na autostradzie Zbierane informacje: Identyfikator samochodu i jego prędkość Id autostrady i odcinka, na którym znajduję się samochód Przykładowe zastosowanie: A. Pomiar średniej prędkości samochodów na odcinku autostrady => informowanie nadjeżdżających kierowców o natężeniu ruchu B. Wykrywanie wypadków (nagłe zatrzymanie samochodu) C. Zarządzania sygnalizacją świetlną 18.05.09 Page 5 Ernst & Young

Dlaczego strumieniowe bazy danych? Dla większość problemów z dziedziny data miningu zostały opracowane efektywne algorytmy. Ich łatwe przeniesienie do stream miningu nie jest niestety możliwe. O niezwykłości problemów stream miningu decydują: Brak możliwości wielokrotnego przeglądania zawartości bazy danych (no multiple passes). Zmienność danych w czasie (Temporal locality). Rozproszenie strumieni danych 18.05.09 Page 6 Ernst & Young

Dlaczego strumieniowe bazy danych? Tradycyjne DBMS a aplikacje strumieniowe: Jedno wykonanie (one time) vs ciągłość trwania kwerend Czas Zmienność danych Zawodność danych Automatyczna reakcja 18.05.09 Page 7 Ernst & Young

Dlaczego strumieniowe bazy danych? Strumieniowe modele danych i języki zapytań Timestamp Implicit timestamp (numer porządkowy nadawany przez system zarządzający bazą danych) Explicit timestamp (własność informacji, często związana z rzeczywistym czasem) Okna fizyczne (oparte na czasie) logiczne (oparte na rozmiarze danych) landmark (ustalony jest jeden koniec przedziału) sliding (przesuwają się końce przedziału, nie zmienia się rozmiar okna) 18.05.09 Page 8 Ernst & Young

Dlaczego strumieniowe bazy danych? Przykładowe case study System czujników raportujących natężenie ruchu na autostradzie SELECT exp_way, dir, seg, AVG(speed) FROM CarSegStr [RANGE 5 MINUTES] GROUP BY exp_way, dir, seg 18.05.09 Page 9 Ernst & Young

Dlaczego strumieniowe bazy danych? Ograniczenia implementacyjne operacje bezstanowe operacje nie blokujące działanie w czasie rzeczywistym Przykładowe metryki oceny jakości DSMS: Czas odpowiedzi Dokładność Skalowalność 18.05.09 Page 10 Ernst & Young

Agenda 1 Dlaczego strumieniowe bazy danych? 2 Prototypowe DSMS 3 Otwarte problemy 4 DSMS czyli okna 5 Przykłady zastosowania 18.05.09 Page 11 Ernst & Young

Prototypowe DSMS 1. Aurora 2. COUGAR 3. Gigascope 4. Hancock 5. NiagaraCQ 6. StatStream 7. STREAM 8. TelegraphCQ 9. Tapestry 18.05.09 Page 12 Ernst & Young

Agenda 1 Dlaczego strumieniowe bazy danych? 2 Prototypowe DSMS 3 Otwarte problemy 4 DSMS czyli okna 5 Przykłady zastosowania 18.05.09 Page 13 Ernst & Young

Otwarte problemy 1. Data Stream Clustering Bardzo znany problem w data miningu. Przeniesienie algorytmów do stream miningu jest trudne ze względu na ogranicznie one pass. Ciekawe efekty uzyskuje zmodyfikowany algorytm k średnich 2. Data Stream Classification Główny problem stanowi ograniczenie temporal locality. Nie jest możliwe wykorzystanie algorytmów z data miningu. 3. Frequent Pattern Mining Możliwe dwa podjeścia do problemu: ograniczenie badania do przesuwającego się okna badanie całego strumienia 18.05.09 Page 14 Ernst & Young

Otwarte problemy 4. Change Detection in Data Streams Problem podobny do wyszukiwania wzorca w strumieniu. Algorytmy wykrywające zmiany są szeroko stosowane w pomiarowych strumieniach danych 5. Stream Cube Analysis of Multi dimensional Streams Konieczność redukcji (agregacji) do mniejszej liczby wymiarów. Wykonywanie funkcji agregujących. 6. Loadshedding in Data Streams DSMS nie ma wpływu na natężenie informacji przesyłanych strumieniami. Nawet w przypadku nagłego zwiększenia obciążenia system musi wykonywać kwerendy w zadanym czasie. 18.05.09 Page 15 Ernst & Young

Otwarte problemy 7. Sliding Window Computation in Data Streams Bardzo często w obliczeniach większą wagę mają nowsze dane. Starsze często nie ulegają już zmianie. Fakty te mogą zostać wykorzystane w algorytmach opierających się na przesuwających oknach. 8. Synopsis Construction in Data Streams Wykorzystanie specjalnych struktur danych do przyspieszenia obliczeń (często przybliżonych). 9. Join Processing in Data Streams Join jest fundamentalnym operatorem w bazach danych. Konieczne może być wykonywanie złączeń w ramach jednego strumienia lub połączenie kilku strumieni. 18.05.09 Page 16 Ernst & Young Zastosowanie strumieniowych baz danych

Otwarte problemy 10. Indexing Data Streams Próby stworzenia systemu indeksowania, który w efektywny sposób przyspieszy działanie pewnych kwerend, funkcji agregujących, etc. 11. Dimensionality Reduction and Forecasting in Data Streams Poszukiwanie korelacji pomiędzy strumieniami oraz próby przewidzenia dalszego zachowania się strumienia. 12. Distributed Mining of Data Streams Problemy optymalizacji kosztów komunikacji, pamięci, informacji przechowywanych w węzłach 13. Stream Mining in Sensor Networks Przetwarzanie ogromnych ilości informacji (przy ograniczonej pamięci, mocy obliczeniowej, etc) 18.05.09 Page 17 Ernst & Young Zastosowanie strumieniowych baz danych

Agenda 1 Dlaczego strumieniowe bazy danych? 2 Prototypowe DSMS 3 Otwarte problemy 4 DSMS czyli okna 5 Przykłady zastosowania 18.05.09 Page 18 Ernst & Young

DSMS czyli okna THE SLIDING WINDOW MODEL Motywacja: Nowsze dane mają większą wagę od starszych danych Założenia: Dane przypływają w sposób ciągły Każda informacja traci ważność po N jednostkach czasu Dla wykonywanych obliczeń istotne jest N ostatnich informacji Cel: Opracowanie algorytmów do wykonywania obliczeń statystycznych na danych wykorzystującego pamięć podliniową i okno rozmiaru N 18.05.09 Page 19 Ernst & Young Zastosowanie strumieniowych baz danych

ROAD MAP Problem 1 (BASICCOUNTING) Dany jest strumień danych, składający się z 0 i 1. Podawać w każdej chwili liczbę 1 w ostatnich N elementach. Problem 2 (SUM) Dany jest strumień danych, składających się z nieujemnych liczb naturalnych z zakresu [0,, R]. Podawać w każdej chwili sumę ostatnich N elementów. Wykorzystywana metoda: Eksponencjalnych Histogramów (EH) 18.05.09 Page 20 Ernst & Young Zastosowanie strumieniowych baz danych

BASICCOUNTING Trywialne rozwiązanie problemu (złożoność O(N)) jest rozwiązaniem optymalnym. Dopuszczenie przybliżonych rozwiązań: Algorytmy aproksymacyjne działają w czasie O(log^ N /E) Gdzie E jest dopuszczalnym błędem O(log^ N /E) jest również dolnym ograniczeniem złożoności pamięciowej algorytmów aproksymacyjnych dla BasicCounting. Dopuszczalność rozwiązań przybliżonych dla strumieniowych baz danych: Badanie ruchu w Internecie Szacowanie pamięci potrzebnej do wykonania operacji join 18.05.09 Page 21 Ernst & Young Zastosowanie strumieniowych baz danych

DSMS czyli okna Rozwiązanie aproksymacyjne problemu BasicCounting: 1. Rozwiązanie intuicyjne Losowe próbkowanie = > Słaba dokładność 2. Rozwiązanie oparte na podziale okna na mniejsze cześci Podział na k równych części => Duże różnice w liczbie w 1 w poszczególnych częściach => Słaba dokładność Inny podział (metoda EH) 18.05.09 Page 22 Ernst & Young Zastosowanie strumieniowych baz danych

DSMS czyli okna Oznaczenia: Upływ czasu Timestamp: 8 7 6 5.... 1 Czas przybycia: 42 43 44 45.... 49 50.... Elementy:.... 1 1 1 0 0 0 1 0 1.... Okno z aktywnymi elementami Przyszłe elementy Cześć z timestamp 2 i rozmiaru 2 oznacza dwie najbliższe 1s jedynki U nas jedynki z chwil 2s i 6s Chwila obecna 18.05.09 Page 23 Ernst & Young

DSMS czyli okna Algorytm (Insert) 2. Kiedy przybywa nowy element, policz nowe czasy życia. Jeśli czas życia ostatniej części przekracza N, usuń i zaktualizuj licznik LAST, zawierający rozmiar ostatniej części, oraz licznik TOTAL, zawierający łączną liczbę części okna. 3. Jeśli nowym elementem jest 0, nie rób nic więcej. W przeciwnym przypadku, utwórz nową część o rozmiarze 1 i zwiększ licznik TOTAL. 4. Przejrzyj listę części w kolejności rosnących rozmiarów. Jeśli jest k/2 + 2 części tego samego rozmiaru (k + 2 dla rozmiaru 1), scal dwie ostatnie części w jedną dwukrotnie większą. Uaktualnij licznik LAST, o ile jest to konieczne. k = [ 1/E ] 18.05.09 Page 24 Ernst & Young

DSMS czyli okna Przykład Załóżmy, że k/2 = 1 Za każdym razem nowym elementem jest 1 32, 32, 16, 8, 8, 4, 4, 2, 1, 1 32, 32, 16, 8, 8, 4, 4, 2, 1, 1, 1 (przybywa 1) 32, 32, 16, 8, 8, 4, 4, 2, 1, 1, 1, 1 (przybywa 1) 32, 32, 16, 8, 8, 4, 4, 2, 2, 1, 1 (scalamy 1) 32, 32, 16, 8, 8, 4, 4, 2, 2, 1, 1, 1 (przybywa 1) 32, 32, 16, 8, 8, 4, 4, 2, 2, 1, 1, 1, 1 (przybywa 1) 32, 32, 16, 8, 8, 4, 4, 2, 2, 2, 1, 1 (scalamy 1) 32, 32, 16, 8, 8, 4, 4, 4, 2, 1, 1 (scalamy 2) 32, 32, 16, 8, 8, 8, 4, 2, 1, 1 (scalamy 4) 32, 32, 16, 16, 4, 2, 1, 1 (scalamy 8) 18.05.09 Page 25 Ernst & Young

DSMS czyli okna Co z innymi algorytmami randomizowanymi: algorytmy Las Vegas, algorytmy Monte Carlo? Dla jakich funkcji można stosować metodę HR? Skąd nazwa metody? 18.05.09 Page 26 Ernst & Young

Agenda 1 Dlaczego strumieniowe bazy danych? 2 Prototypowe DSMS 3 Otwarte problemy 4 DSMS czyli okna 5 Przykłady zastosowania 18.05.09 Page 27 Ernst & Young

Gdzie można wykorzystać strumieniowe bazy danych? Umiejętności dopotąd są jeszcze próżnym wynalazkiem, może czczym tylko rozumu wywodem, albo próżniactwa zabawą, dopokąd nie są zastosowane do użytku narodów. I uczeni potąd nie odpowiadają swemu powołaniu, swemu w towarzystwach ludzkich przeznaczeniu, dopokąd ich umiejętność nie nadaje fabrykom i rękodziełom oświecenia, ułatwienia kierunku postępu. Stanisław Staszic (1755 1826) 18.05.09 Page 28 Ernst & Young

Przykład biznesowego zastosowania Giełda Papierów Wartościowych w Warszawie Potencjalne zadania: Obliczanie kursu Przewidywanie kursu Obliczanie funkcji statystycznych Testowanie hipotezy o zwiększeniu efektywności obliczeń (w oparciu o metody statystyki matematycznej) Próba zdefiniowania uniwersalnego współczynnika określającego konieczność zastąpienia relacyjnej bazy danych strumieniową 18.05.09 Page 29 Ernst & Young

Przykład biznesowego zastosowania A dokładniej: 1. Wyznaczanie kursu równowagi 2. Wyznaczanie kursu jednolitego Algorytm 1 średnia ważona Algorytm 2 w zależności od kursu odniesienia Algorytm 3 w zależności od liczby niezrealizowanych zleceń 3. Obliczanie wartości indeksów giełdowych 4. Algorytmy klastrowania vs podział na indeksy 4. Wycena instrumentów pochodnych (opcji) 18.05.09 Page 30 Ernst & Young

Dziękuje za uwagę!