Architektura chmur i wirtualizacja. Wykład 6 Dane w chmurze

Wielkość: px
Rozpocząć pokaz od strony:

Download "Architektura chmur i wirtualizacja. Wykład 6 Dane w chmurze"

Transkrypt

1 Architektura chmur i wirtualizacja Wykład 6 Dane w chmurze

2 Zawartość Bazy NoSQL Skalowalne bazy relacyjne Chmurowe systemy plików Powiązane algorytmy 2

3 Dane w chmurze

4 Architektura równoległych baz danych D. DeWitt and J. Gray: Parallel Database Systems: The Future of High Performance Database Processing, CACM 36(6),

5 Skalowalne bazy Aspekty skalowalności baz danych: Dużo (małych) transakcji, Dużo kopii danych, Duże zużycie procesora dla pojedynczego zapytania, Skrajnie duże zbiory danych dla jednego zapytania. Replikacja danych: Przenoszenie danych do miejsc, gdzie są potrzebne, Zarządzana replikacja dla zapewnienie dostępności i niezawodności. 5

6 Dlaczego chmury? Aplikacje zarządzające danymi są potencjalnymi kandydatami do wdrożenia w chmurze Przemysł bazy przedsiębiorstw charakteryzują się wysokimi kosztami, zarówno sprzętu jaki i oprogramowania, Środowisko akademickie zarządzanie, przetwarzanie i współdzielenie masowo produkowanych danych w chmurze. 6

7 Dlaczego chmury? Wiele niezwykle skutecznych aplikacji chmurowych (cloud killer apps) polega na intensywnym przetwarzaniu danych (data- intensive): Przetwarzanie wsadowe z map/reduce, OLTP (Online Transaction Processing) w zautomatyzowanych aplikacjach biznesowych, OLAP (Offline Analytical Processing) w eksploracji danych (data mining) lub uczeniu maszynowym (machine learning). 7

8 Charakterystyka chmur Dane są przechowywane na niezaufanych hostach Istnieje ryzyko dotyczące prywatności i bezpieczeństwa przechowywania danych na niezaufanym hoście, Szczególnie wrażliwe dane mogą być pominięte w analizie lub uczynione anonimowymi. Współdzielenie i umożliwianie dostępu jest częstym celem używania chmur dla naukowych zbiorów danych. Data Management in the Cloud: Limitations and Opportunities, IEEE,

9 Charakterystyka chmur Dane są replikowane, często na przestrzeni olbrzymich odległości geograficznych Ciężko utrzymać gwarancje ACID (atomicity, consistency, isolation, durability) w obecności replikacji na olbrzymią skalę, Pełne gwarancje ACID zazwyczaj nie są wymagana w aplikacjach analitycznych. Data Management in the Cloud: Limitations and Opportunities, IEEE,

10 Charakterystyka chmur Wirtualizacja dużych kolekcji danych stanowi wyzwanie Ładowanie zajmuje więcej czasu niż uruchamianie VM, Koszty składowania kontra koszty pasma, Replikacja online kontra replikacja offline. Data Management in the Cloud: Limitations and Opportunities, IEEE,

11 Wyzwania Ustępstwa (trade- off) funkcjonalność na rzecz kosztów operacyjnych Ograniczony interfejs, minimalistyczny język zapytać, ograniczone gwarancje spójności, Większy ciężar programistyczny dla deweloperów, Umożliwienie przewidywalnych usług i SLA (service level agreements). The Claremont Report on Database Research,

12 Wyzwania Zarządzalność Ograniczony udział ludzki, duża wariancja obciążenia i różnorodność współdzielonych infrastruktur, Potrzeba samo- zarządzających i adaptacyjnych technik bazodanowych. The Claremont Report on Database Research,

13 Wyzwania Skalowalność Dzisiejsze bazy SQLowe nie skalują się do tysięcy węzłów wdrażanych w kontekście chmury, Ciężko obsługiwać zwielokrotnione rozproszone aktualizacje tego samego zbioru danych, Ze względów pojemności (magazynowanie, pasmo sieciowe, itp.) ciężko replikować olbrzymie zbiory danych z zapewnieniem dostępności Magazynowanie różne techniki implementacji transakcyjności, różna semantyka, lub jedno i drugie, Przetwarzanie zapytań i optymalizacja wymagane ograniczenia przestrzeni planów lub samego wyszukiwania, Programowalność wyrażanie programów w chmurze. The Claremont Report on Database Research,

14 Wyzwania Prywatność i bezpieczeństwo danych Ochrona przed innymi użytkownikami i dostawcami chmur, Pokusy dla dostawców i klientów. The Claremont Report on Database Research,

15 Wyzwania Nowe aplikacje: mieszanki (mashups) interesujących zbiorów danych Używają usług z przygotowanym dużymi zbiorami danych, notowaniami giełdowymi, wynikami przeszukiwania sieci, danymi naukowymi, Zbiory danych pochodzą z prywatnych lub publicznych domen, Mogą stać się początkiem federacyjnych architektur chmurowych. The Claremont Report on Database Research,

16 Skalowalne składy danych

17 Przegląd Nowe systemy pojawiły się w celu sprostania wymaganiom zarządzania danymi w chmurze Składy NoSQL, Skalowalne bazy SQL. Skalowanie poziome (horizontal scaling) Shared nothing, Replikowanie i partycjonowanie danych na tysiącach serwerów, Dystrybucja obciążenia prostej operacji na tysiące serwerów. Proste operacje to: Wyszukiwania po kluczu (key lookups), Odczyty i zapisy na jednym lub małej liczbie rekordów, Brak złożonych zapytań lub złączeń. 17

18 Sharding, partycjonowanie poziome i pionowe Partycjonowanie poziomie (horizontal partitioning) Partycjonowanie pionowe (vertical paritioning) SQL Azure Federation Introduction, azure- federation- ndash- introduction.aspx 18

19 Sharding, partycjonowanie poziome i pionowe Partycjonowanie poziome dzieli jedną lub więcej tabel względem rekordu, zazwyczaj w ramach pojedynczej instancji schematu lub serwera bazy danych Może oferować korzyść z redukcji wielkości indeksu (i dlatego kosztu wyszukiwania) pod warunkiem, że istnieje jakiś oczywisty, solidny i jawny sposób identyfikacji, w jaki ten konkretny rekord może być znaleziony bez potrzeby wcześniejszego przeszukiwania indeksu Klasyczny przykład tabele z klientami dla każdej litery, gdzie nazwa klienta wskazuje od razu, gdzie dany rekord znaleźć. Wikipedia, 19

20 Sharding, partycjonowanie poziome i pionowe Sharding idzie znacznie dalej partycjonuje problematyczne tabele w ten sam sposób, ale potencjalnie pomiędzy wieloma instancjami schematu Oczywistą zaletą jest to, że obciążenia wyszukiwania dla dużej spartycjonowanej tabeli może być rozłożone pomiędzy wiele serwerów (logicznych lub fizycznych), nie tylko wiele indeksów na jednym logicznym serwerze, Rozdzielanie odłamków (shards) pomiędzy liczne izolowane instancje wymaga więcej niż partycjonowania poziomego. Zakładane zyski wydajności zostałyby utracone, jeżeli odpytywanie bazy wymagałoby odpytania każdej instancji tylko w celu pobrania prostej tabeli. Dlatego sharding rozdziela wielkie spartycjonowane tabele pomiędzy serwery, podczas gdy mniejsze tabele są replikowane jako kompletne jednostki. Wikipedia, 20

21 Sharding, partycjonowanie poziome i pionowe To także dlatego sharding jest związany z architekturą shared nothing po rozbiciu każdy shard może istnieć w całkowicie oddzielnym logicznym schemacie, instancji, fizycznym serwerze, centrum danych, czy kontynencie. Nie ma potrzeby zachowywania współdzielonego dostępu (spomiędzy shardów) to innych niespartycjonowanych tabel na innych shardach Czyni to replikację pomiędzy wieloma serwerami łatwą, w przeciwieństwie do prostego partycjonowania poziomego, Jest to także wygodne w przypadku rozproszenia aplikacji na skalę globalną, gdzie łącza komunikacyjne pomiędzy centrami danych stanowiłyby wąskie gardło. Wikipedia, 21

22 Sharding, partycjonowanie poziome i pionowe Istnieje także wymaganie dotyczące mechanizmu powiadamiania i replikacji pomiędzy instancjami schematu, aby niespartycjonowane tabele pozostały zsynchronizowane tak blisko, jak aplikacja tego wymaga Stanowi to złożony wybór w odłamkowej (sharded) architekturze, Stosowane podejścia sięgają od ustawiania danych tylko do odczytu (aktualizacje są rzadkie i batchowane) po dynamicznie replikowane tabele (kosztem ograniczenia pewnych korzyści z rozproszenia i shardingu), przez wiele opcji pośrednich. Wikipedia, 22

23 Sharding, partycjonowanie poziome i pionowe 5 ways to boost performance of your Rails applications, ways- to- boost- performance- of- your- rails- applications/ 23

24 Definicja NoSQL Zgodna definicja nie istnieje: not only SQL, not SQL/relational, 24

25 Definicja NoSQL Sześć cech kluczowych: Zdolność poziomego skalowania prostych operacji poprzez wiele serwerów, Zdolność replikacji i dystrybucji (partycjonowania) danych na wiele serwerów, Proste wołania poziomu interfejsu lub protokołu (w przeciwieństwie do wiązania SQL), Słabszy model współbieżności niż w transakcjach ACID większości systemów relacyjnych, Wydajne wykorzystanie rozproszonych indeksów i RAM dla magazynowania danych, Zdolność dynamicznego dodawania nowych atrybutów do rekordów (brak schematu). 25

26 Relacyjny model danych Dane przechowywane w relacjach (tabelach) krotek (rzędów, rekordów) skalarnych wartości Krotka (tuple) rząd w tabeli relacyjnej, gdzie nazwy i typy atrybutów są zdefiniowane w schemacie, a wartości są skalarne, Zapytania wyrażone względem dowolnych (kombinacji) atrybutów, Indeksy zdefiniowane względem dowolnych (kombinacji) atrybutów. 26

27 NoSQLowe modele danych Dokumentowy (document) obsługuje zarówno wartości skalarne, jak i zagnieżdżone dokumenty a atrybuty są dynamicznie definiowane dla każdego dokumentu. Rodzina kolumn (column family, key- value) grupuje pary klucz- wartość (kolumny) w rodziny aby je partycjonować i replikować. Jedna rodzina kolumn przypomina dokument, do której mogą być dodawane nowe (zagnieżdżone, listowe) atrybuty. Obiektowy (object) analogiczny do obiektów w językach programowania, ale bez metod proceduralnych, 27

28 Model klucz- wartość Składowanie danych Wartości (dane) są przechowywane w oparciu o klucze zdefiniowane przez programistę, System jest agnostyczny względem struktury (semantyki) wartości. Zapytania wyrażone względem kluczy. Indeksy główne są definiowane na kluczach wspieranych przez system, indeksy pomocnicze na wartościach lub częściach wartości. Interfejs: put(key, value) get(key): value 28

29 Model dokumentowy Składowanie danych Dokumenty (dane) są przechowywane w oparciu o klucze zdefiniowane przez programistę, System jest świadomy (dowolnej) struktury dokumentu, Obsługa list, wskaźników i zagnieżdżonych dokumentów. Zapytania wyrażone względem kluczy (lub atrybutu, jeżeli istnieje indeks). Obsługa indeksów opartych na kluczach i indeksów wtórnych. Interfejs: set(key, document) get(key): document set(key, name, value) get(key, name): value 29

30 Model rodziny kolumn Składowanie danych Trójki <name, value, timestamp> (tzw. kolumny) są przechowywane w oparciu o rodzinę kolumn i klucz. Rodzina kolumn przypomina dokument. System jest świadomy (dowolnej) struktury rodziny kolumn, System używa informacji rodziny kolumn dla replikacji i rozproszenia danych. Zapytania wyrażone w oparciu o klucz i rodzinę kolumn. Zazwyczaj wspierane są indeksy wtórna dna rodzinie kolumn. Interfejs: define(family) insert(family, key, columns) get(family, key): columns 30

31 Model grafowy (graph) Składowanie danych Dane są przechowywane w oparciu o węzły i (typowane) łuki. Zarówno węzły jak i łuki mogą przyjmować (dowolne) atrybuty. Zapytania wyrażone w oparciu o identyfikatory systemowe (jeżeli nie ma indeksów). Obsługiwane są indeksy pomocnicze dla węzłów i łuków. Pobieranie węzłów w oparciu o atrybuty i łuki po typie, węźle początkowym i/lub końcowym. Interfejs: create: id get(id) connect(id1, id2): id addattribute(id, name, value) getattribute(id, name): value 31

32 Model tablicowy (array) Zagnieżdżone wielowymiarowe tablice Komórki mogą być krotkami lub innymi tablicami, Mogą mieć wymiary niecałkowite. Dodatkowy wymiar historii na aktualizowalnych tablicach. Postrzępione (ragged) tablice pozwalają każdemu rzędowi lub kolumnie mieć inną długość. Wspiera wiele typów wartości zerowych (null) Komórki tablicy mogą być puste (empty), Definiowalne przez użytkownika podejście do wartości specjalnych. 32

33 Model obiektowy Składowanie danych Typowane obiekty języka programowania (plus obiekty referencyjne), Atrybuty mogą być kolekcjami, Baza jest świadoma typu (schematu) obiektów. Obiekty są pobierane za pomocą zapytań lub trawersowania od korzeni. Wyspecjalizowane indeksy mogą być wyrażone w oparciu o schemat. Interfejs: set(object) get(query): object 33

34 Skalowalna spójność i modele transakcyjne

35 Twierdzenie Brewera Brewer s conjecture Trzy właściwości, które są pożądane i oczekiwane od rzeczywistych systemów współdzielących dane: C spójność danych (data consistency), A dostępność (availability), P tolerancje na partycję sieci (tolerance of network partition). Na warsztatach PODC 2000 (Portland) Eric Brewer przedstawił przypuszczenie (conjecture), że tylko dwie z tych trzech właściwości mogą być spełnione przez system w dowolnym momencie. Przypuszczenie zostało sformalizowane i potwierdzone przez Setha Gilberta i Nancy Lynch z MIT w roku Obecnie jest znane jako twierdzenie CAP (CAP Theorem). 35

36 Spójność danych Systemy bazodanowe zazwyczaj implementują transakcje ACID: Atomowość (atomicity) wszystko albo nic, Spójność (consistency) transakcje nigdy nie widzą ani nie tworzą niespójnych danych, Izolacja (isolation) transakcje nie są świadome współbieżnych transakcji, Trwałość (durability) stan transakcji jest trwały po jej zatwierdzeniu (commit). 36

37 Spójność danych Jest użyteczna w zautomatyzowanych aplikacjach biznesowych. Bankowości z końcem transakcji suma pieniędzy na obydwu rachunkach jest taka sama jak przed transakcją, Aukcjach online ostatni licytujący wygrywa aukcję, Istnieją aplikacje, które mogą poradzić sobie z luźniejszymi gwarancjami spójności i okresami niespójności. 37

38 Dostępność Od usług oczekuje się wysokiej dostępności: Każde żądanie powinno uzyskać odpowiedź, Rzeczywiste problemy mogą pojawić się, kiedy usługa przestaje działać. Realistyczny cel: Usługa powinna być dostępna tak samo jak sieć, w której działa, Jeżeli dowolna usługa w danej sieci jest dostępna, rozważana usługa także powinna być dostępna. 38

39 Tolerancja na partycjonowanie Usługa powinna nadal działać zgodnie z oczekiwaniami Jeżeli jakiś węzeł ulega awarii, Jeżeli jakieś łącza komunikacyjne zawodzą. Jedną z pożądanych właściwości tolerancji na błędy (fault tolerance) jest elastyczność względem partycjonowania sieci na wiele komponentów. W cloud computing awarie węzła i komunikacji nie są wyjątkiem, ale codziennymi zdarzeniami. 39

40 Problemy z CAP Asymetria właściwości CAP: C jest ogólną właściwością systemu, A jest właściwością systemu jedynie w przypadku partycji. Nie istnieją trzy różne wybory: W praktyce CA i CP są nieodróżnialne, ponieważ A jest poświęcane jedynie w przypadku partycji. Używane jako wymówka, aby nie martwić się o spójność Dostępność jest naprawdę dla mnie ważna, więc CAP mówi, że będę musiał zrezygnować ze spójności. Daniel Abadi, Yale University 40

41 Inny problem do naprawienia Poza dostępnością w przypadku partycji, istnieją inne koszty spójności. Narzut synchronizacji schematów. Opóźnienia (latency) Jeżeli obciążenie może zostać spartycjonowane geograficznie, opóźnienia nie są takie złe, W przeciwnym wypadku, nie ma sposobu uniknięcia przynajmniej jednego dookólnego komunikatu. Daniel Abadi, Yale University 41

42 Wspólne rozwiązanie problemów PACELC W przypadku partycji (P), czy system wybiera dostępność (A), czy spójność (C)? W przeciwnym wypadku (Else), czy system wybiera opóźnienia (Latency) czy spójność (C)? PA/EL Dynamo, SimpleDB, Cassandra, Riptano, CouchDB, Cloudant. PC/EC Systemy zgodne z ACID. PA/EC GenieDB. PC/EL Istnienie jest dyskusyjne. Daniel Abadi, Yale University 42

43 Przypadek P*/EC Zwiększony nacisk na poziomo skalowalne transakcyjne systemy bazodanowe: Cloud computing, Aplikacje rozproszone, Chęć wdrażania aplikacji na tanim niewyspecjalizowanym sprzęcie. Ogromna większość obecnie dostępnych systemów skalowalnych poziomo reprezentuje P*/EL: Rozwijane przez inżynierów w Google, Facebook, Yahoo, Amazon, itp. Ci inżynierowe mogą poradzić sobie z ograniczoną spójnością, ale jest to naprawdę trudne, poza tym musie istnieć też opcja na reszty użytkowników. Ponadto: Rozproszona kontrola współbieżności i protokołów zatwierdzających jest kosztowna, Gdy spójność zanika, zazwyczaj za raz potem ginie też atomowość NoSQL. Daniel Abadi, Yale University 43

44 Problem do przezwyciężenia Wysoka dostępność jest krytyczna, replikacja jest celem pierwszej kategorii. Dzisiejsze systemy najpierw działają, potem się replikują Komplikacja semantyki wysyłania zapytań odczytujących do replik, Potrzeba potwierdzania od replik przed zatwierdzeniem (zwiększone opóźnienia) jeżeli chcemy mieć trwałość i wysoką dostępność. Trwające transakcje muszą być porzucone w momencie błędu głównej (master) bazy. Chcemy systemu, który najpierw się replikuje, później działa. Rozproszona kontrola współbieżności i zatwierdzanie są kosztowne, chcemy pozbyć się obydwu. Daniel Abadi, Yale University 44

45 Kluczowa idea Zamiast osłabiania ACID wzmocnijmy je. Wyzwania: Gwarantowanie równoważności względem pewnej seryjnej kolejności czyni replikację trudną, Przeprowadzenie tego samego zbioru transakcji na dwóch różnych replikach może spowodować ich rozbieżność. Zabronienie każdego niedeterministycznego zachowania. Zabronienie porzuceń (aborts) spowodowanych przez DBMS: Zabronienie zakleszczania (deadlock), Rozproszone zatwierdzanie jest znacznie prostsze, kiedy nie ma porzuceń. Daniel Abadi, Yale University 45

46 Konsekwencje determinizmu Repliki dają to samo wyjście, zakładając jednakowe wejście Ułatwia do aktywną replikację. Wystarczy logować jedynie początkowe wejście, stan awarii może zostać zrekonstruowany na podstawie tego logu (albo z repliki). Aktywne rozproszone transakcje nie są porzucane aż do momentu awarii węzła: Silna redukcja (lub eliminacja) kosztów rozproszonego zatwierdzania, Nie ma potrzeby martwienia się o węzły ulegające awarii podczas protokołu zatwierdzania, Nie ma potrzeby martwienia się o efekty transakcji i zapisywanie jej na dysku przed zapewnieniem jej zatwierdzenia, Wystarczy jeden komunikat z dowolnego węzła, które może deterministycznie porzucić transakcję, Ten komunikat może zostać wysłany w środku transakcji, kiedy tylko wie, że nastąpi zatwierdzanie. Daniel Abadi, Yale University 46

47 Silna i słaba spójność Silna spójność Po zatwierdzeniu aktualizacji, każdy kolejny dostęp będzie zwracał zaktualizowaną wartość. Słaba spójność System nie gwarantuje, że kolejne dostępny będą zwracały zaktualizowaną wartość, Może istnieć potrzeba spełnienia pewnych warunków zanim zaktualizowana wartość będzie zwrócona, Okno niespójności czas pomiędzy aktualizacją i punktem czasu, kiedy każdy dostęp ma zagwarantowane zwrócenie zaktualizowanej wartości. Eventual Consistency by W. Vogels,

48 Spójność ostateczna (eventual) Specyficzna forma słabej spójności. Jeżeli nie ma nowych aktualizacji, w końcu wszystkie dostępy będą zwracać zaktualizowaną wartość. Przy braku błędów, maksymalny rozmiar okna niespójności może być określony w oparciu o: Opóźnienia komunikacyjne, Obciążenie systemu, Liczbę replik, To nie jest nowy pomysł: DNS używa spójności ostatecznej podczas aktualizacji, RDBMS używa spójności ostatecznej dla komunikacji asynchronicznej lub kopii zapasowych. Eventual Consistency by W. Vogels,

49 Modele spójności ostatecznej Spójność przyczynowa (causal consistency) Jeżeli A zakomunikował B, że zaktualizował wartość, to kolejny dostęp od B zwróci zaktualizowaną wartość, a zapis nadpisze wcześniejszy zapis. Dostęp z C, który nie ma przyczynowego związku z A podlega normalnym regułom spójności ostatecznej. Spójność czytania swoich zasobów (read- your- writes consistency) Przypadek specjalny modelu spójności przyczynowej, Po zaktualizowanie wartości, proces będzie zawsze odczytywać zaktualizowaną wartość i nigdy nie zobaczy starczej wartości. Eventual Consistency by W. Vogels,

50 Modele spójności ostatecznej Spójność sesji (session consistency) Praktyczny przypadek spójności czytania swoich zasobów, Dane są dostępowane w sesji, gdzie istnieje gwarancja czytania swoich zasobów, Gwarancja nie rozciąga się między sesjami. Monotoniczna spójność odczytu (monotonic read consistency) Jeżeli proces widział określoną wartość, każdy kolejny dostęp nigdy nie zwróci poprzedniej wartości. Monotoniczna spójność zapisu (monotonic write consistency) System gwarantuje serializację zapisów jednego procesu, Systemy, które nie gwarantują tego poziomu zapisu są trudne w oprogramowaniu. Eventual Consistency by W. Vogels,

51 Modele spójności ostatecznej Właściwości mogą być łączone Np. monotoniczne odczyty plus spójność sesji, Np. monotoniczne odczyty plus czytanie własnych zapisów, Możliwa spora liczba scenariuszy, zależna od tego, czy aplikacja może sobie poradzić z konsekwencjami. Eventual Consistency by W. Vogels,

52 Konfiguracje Definicje: N liczba węzłów przechowujących replikę, W liczba replik, które muszą potwierdzić operację zapisu, R liczba replik, które są dostępowane dla operacji zapisu. Eventual Consistency by W. Vogels,

53 Konfiguracje W+R > N Np. replikacja synchroniczna (N=2, W=2, and R=1), Zbiory zapisów i odczytów zawsze się nakładają, Silna spójność może zostać zagwarantowana poprzez protokoły kworum (quorum protocols), Ryzyko zmniejszenia dostępności w podstawowym protokole kworum operacje nie powodzą się, jeżeli odpowie mniej niż wymagana liczba węzłów, co może być spowodowane awarią węzła. W+R = N Np. replikacja asynchroniczna (N=2, W=1, and R=1), Nie można zagwarantować silnej spójności. Eventual Consistency by W. Vogels,

54 Konfiguracje R=1, W=N Zoptymalizowane dla odczytu pojedynczy odczyt zwróci wartość, Operacje zapisu dotyczą wszystkich węzłów i są zagrożone niepowodzeniem. R=N, W=1 Zoptymalizowane dla zapisu operacje zapisu dotyczą wyłącznie jednego węzła i opierają się na leniwej (epidemicznej) technice uaktualniania pozostałych replik, Operacje odczytu dotyczą wszystkich węzłów i zwracają najnowszą wartość, Nie ma gwarancji trwałości w przypadku awarii. W < (N+1)/2 ryzyko konfliktów zapisów. W+R <= N Słaba/ostateczna spójność. Eventual Consistency by W. Vogels,

55 Base Basically Available, Soft state, Eventually Consistent Spójność jest ostatecznie osiągana, konflikty muszą być rozwiązane w pewnym momencie Naprawa odczytów, Naprawa zapisów, Naprawa asynchroniczna. Rozwiązywanie konfliktu jest zazwyczaj oparte na globalnym (częściowym) szeregowaniu operacji, co deterministycznie gwarantuje, że wszystkie repliki rozwiązują konflikty w ten sam sposób. Określone przez klienta timestampy, Zegary wektorowe. 55

56 Zegary wektorowe Generują częściowe szeregowanie zdarzeń w systemie rozproszonym i wykrywają zakłócenia przyczynowości. Zegar wektorowy systemu z n procesami jest wektorem n logicznych zegarów (jeden zegar na proces). Komunikaty zawierają stan logicznego zegara procesu wysyłającego, Lokalna kopia najmniejszych możliwych wartości globalnego zegara wektorowego jest utrzymywana w każdym procesie. Algorytm zegara wektorowego został opracowany niezależnie przez Colin Fidge a i Friedemann Matterna w

57 Reguły aktualizacji zagara Wszystkie zegary są inicjalizowane na zero. Proces inkrementuje swój własny zegar logiczny w wektorze o jeden za każdym razem kiedy: Doświadcza zdarzenia wewnętrznego, Proces przygotowuje się do wysłania komunikatu, Proces otrzymuje komunikat. wektorowego Za każdym razem, kiedy proces wysyła komunikat, przesyła cały zegar wektorowy wraz z wysyłanym komunikatem. Za każdym razem, kiedy proces otrzymuje komunikat, aktualizuje każdy element w sowim wektorze biorąc maksimum wartości we własnym zegarze wektorowym i wartości z wektora w otrzymanym komunikacie. 57

58 Przykład zegara wektorowego Wikipedia, 58

59 Chmurowe systemy plików: Google File System (GFS)

60 Założenia projektowe System jest zbudowany z wielu niedrogich powszechnie dostępnych komponentów Awarie komponentów zdarzają się rutynowo, Monitoruje się, żeby wykrywać awarie, znosić je i się naprawiać. System przechowuje ogromną liczbę dużych plików Kilka milionów plików, zazwyczaj 100 MB lub większych, Wielogigabajtowe pliki są całkiem powszechne i muszą być sprawnie zarządzane, Małe pliki także są obsługiwane, ale system nie jest dla nich zoptymalizowany. Obciążenie systemu Duże odczyty strumieniowe kolejne odczyty z jednego klienta odczytują przyległe obszary, zazwyczaj 1 MB i więcej, Małe dowolne (random) odczyty zazwyczaj kilka kb w dowolnym offsecie, Duże sekwencyjne zapisy dowiązywanie danych do plików; operacja podobna do strumieniowych odczytów; małe przypadkowe zapisy są także obsługiwane, ale niewydajnie. 60

61 Założenia projektowe Wsparcie dla równoczesnych dowiązań do tego samego pliku Wydajna implementacja, Dobrze zdefiniowana semantyka, Przypadek użycia: Kolejki producent- konsument lub wielodrogowe scalanie z setkami procesów równolegle dowiązujących do pliku, Atomowość z minimalnym narzutem synchronizacji jest kluczowa, Plik może być odczytywany późnej lub jednocześnie. Zachowanie wysokiego pasma jest ważniejsze od niewielkich opóźnień. 61

62 Decyzje projektowe interfejs GFS nie implementuje standardowego API jak POSIX. Obsługuje zwykłe operacje na plikach: Utwórz/usuń, Otwórz/zamknij, Odczytaj/zapisz. Wspiera dodatkowe operacje: Snapshot niskim kosztem tworzy kopię pliku lub drzewa katalogów używając kopiowania przy zapisie, record append pozwala wielu klientom dowiązywać dane do tego samego pliku równocześnie, jednocześnie gwarantując atomowość każdego indywidualnego dowiązania klienta. 62

63 Decyzje projektowe architektura Klaster GFS: Pojedynczy master i wiele chunkserverów, Dostępowany przez wiele klientów, Komponenty to zazwyczaj powszechnie dostępne maszyny linuksowe, Procesy serwera GFS działają w trybie użytkownika. Kawałki (chunks): Pliki są podzielone na równe kawałki, Identyfikowane przez globalnie unikatowe 64- bitowe uchwyty (handles) przypisywane przez mastera, Kawałki są replikowane dla zwiększenia niezawodności, zazwyczaj czynnik replikacji wynosi 3. 63

64 Decyzje projektowe architektura Wiele chunkserverów: Przechowują kawałki na dysku lokalnym jako pliki linuksowe, Przyjmują i obsługują żądania danych, Brak specjalnego cache owania opiera się na linuksowym cache u bufora. Pojedynczy master upraszcza ogólny projekt: Umożliwia bardziej skomplikowane rozmieszczanie kawałków i replikację, zachowując pojedynczy punkt niepowodzenia, Utrzymuje metadane systemu plików przestrzeń nazw, informacje kontroli dostępu, mapowanie plik- kawałek, bieżącą lokalizację kawałka. Wykonuje czynności zarządcze dzierżawy kawałków, garbage collection, osierocone kawałki, migrację kawałków. heart beats okresowe komunikaty wysyłane do chunkserverów do wydawania instrukcji lub pobierania stanu, Nie przyjmuje ani nie akceptuje żądań danych. 64

65 Decyzje projektowe architektura The Google File System by S. Ghemawat, H. Gobioff, and S.- T. Leung,

66 Jeden z kluczowych parametrów: Ustawiona duża wartość, tj. 64 MB, Dla uniknięcia fragmentacji chunkservery używają leniwej alokacji przestrzeni, tzn. pliki są rozszerzane tylko w miarę potrzeby. Zalety: Redukcja interakcji między klientem a masterem, Redukcja narzutu sieciowego przez użycie trwałego połączenia TCP dla wielu operacji na jednym kawałku, Redukcja wielkości metadanych przechowywanych na masterze. Wady: Decyzje projektowe wielkość kawałka Małe pliki składają się z nielicznych kawałków, Ryzyko hot spotów zwiększony czynnik replikacji dla małych plików. 66

67 Decyzje projektowe metadane Wszystkie metadane są trzymane w głównej pamięci mastera: Przestrzenie nazw pliku i kawałka tabela wyszukiwania (lookup table) z kompresją prefiksów, Mapowanie plik- kawałek, Lokalizacja replik kawałka nie przechowywana, ale odpytywana z chunkserverów. Dziennik operacji: Przechowywany na lokalnym dysku mastera i replikowany na zdalne maszyny, Używany do przywracania mastera w przypadku awarii. Dyskusja: Rozmiar głównej pamięci mastera ogranicza liczbę możliwych plików, Master utrzymuje poniżej 65 bajtów na kawałek. 67

68 Decyzje projektowe model spójności Rozluźniony model spójności: Przystosowany do wysoko- rozproszonych aplikacji Google, Prosty i wydajny w implementacji. Mutacje przestrzeni nazw pliku są atomowe: Obsługiwane wyłącznie przez mastera, Blokowanie przestrzeni nazw gwarantuje atomowość i poprawność, Dziennik operacji mastera definiuje globalną całkowita kolejność operacji. Stan regionu pliku po mutacji danych: Spójny wszystkie klienty zawsze widzą te same dane, bez względu ma replikę, z której je odczytały, Określony spójny plus wszystkie klienty widzą całą mutację danych, Nieokreślony ale spójny wynik współbieżnej skutecznej mutacji wszystkie klienty widzą te same dane, ale może nie odzwierciedlać jednej lub więcej mutacji, Niespójny wynik nieudanej mutacji. 68

69 Decyzje projektowe model Mutacja zapisu danych spójności Dane są zapisywane w zależnym od aplikacji offsecie pliku. Mutacja dowiązywanie rekordu danych Dane (rekord) są dowiązywane atomowo co najmniej raz, nawet w obecności konkurencyjnych mutacji, GFS wybiera offset i zwraca go klientowi, GFS może wstawić padding lub duplikaty rekordów pomiędzy. Zapis Dowiązywanie rekordu Szeregowy sukces Określony Określony przeplatany z niespójnym Konkurencyjny sukces Spójny ale nieokreślony Porażka Niespójny 69

70 Decyzje projektowe model współbieżności Implikacje dla aplikacji: Opieranie się na dowiązywaniu zamiast na nadpisywaniu, Checkpointing, Sumy kontrolne poziomu aplikacji, Samo- walidacja zapisu, samo- identyfikacja rekordów. Typowe przypadki użycia (lub hakowanie rozluźnionej spójności ): Zapis generuje plik od początku do końca i następnie atomowo zmienia jego nazwę na nazwę trwałą, pod którą można do niego uzyskać dostęp, Zapisywacz wstawia okresowe checkpointy, odczytywacze czytają tylko do checkpointu, Wiele zapisywaczy równocześnie dowiązuje do pliku w celu scalenia wyników, odczytywacz pomija sporadyczny padding i powtórzenia używając sum kontrolnych. 70

71 Operacje zapis plików Klient master (1, 2) Chunkserver z dzierżawą kawałka Chunkservery z replikami Klient chunkservery Przesłanie danych do chunkserverów (3) Zapisanie danych do głównej repliki (4) Główna wtórna Przekazanie (forward) żądania zapisu (5) Wtórna główna Status operacji (6) Główna klient Status operacji (7) The Google File System by S. Ghemawat, H. Gobioff, and S.- T. Leung,

Hbase, Hive i BigSQL

Hbase, Hive i BigSQL Hbase, Hive i BigSQL str. 1 Agenda 1. NOSQL a HBase 2. Architektura HBase 3. Demo HBase 4. Po co Hive? 5. Apache Hive 6. Demo hive 7. BigSQL 1 HBase Jest to rozproszona trwała posortowana wielowymiarowa

Bardziej szczegółowo

Hurtownie danych wykład 5

Hurtownie danych wykład 5 Hurtownie danych wykład 5 dr Sebastian Zając SGH Warszawa 7 lutego 2017 1 Współbieżność i integracja Niezgodność impedancji 2 bazy danych Współbieżność i integracja Niezgodność impedancji Bazy relacyjne

Bardziej szczegółowo

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Jerzy Brzeziński, Anna Kobusińska, Dariusz Wawrzyniak Instytut Informatyki Politechnika Poznańska Plan prezentacji 1 Architektura

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

Od czego zacząć przy budowaniu środowisk wysokiej dostępności?

Od czego zacząć przy budowaniu środowisk wysokiej dostępności? Budowanie środowisk wysokiej dostępności w oparciu o nową wersję IDS 11 Artur Wroński IBM Information Management Technical Team Leader artur.wronski@pl.ibm.com Od czego zacząć przy budowaniu środowisk

Bardziej szczegółowo

Pojęcie bazy danych. Funkcje i możliwości.

Pojęcie bazy danych. Funkcje i możliwości. Pojęcie bazy danych. Funkcje i możliwości. Pojęcie bazy danych Baza danych to: zbiór informacji zapisanych według ściśle określonych reguł, w strukturach odpowiadających założonemu modelowi danych, zbiór

Bardziej szczegółowo

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium

Bardziej szczegółowo

Seminarium Bazy Danych I. BigTable. Piotr Świgoń Uniwersytet Warszawski

Seminarium Bazy Danych I. BigTable. Piotr Świgoń Uniwersytet Warszawski Seminarium Bazy Danych I BigTable Piotr Świgoń Uniwersytet Warszawski Rzędy wielkości Miliardy URL'i i linków, wiele wersji stron Setki milionów użytkowników Tysiące zapytań na sekundę 2.7 3.3 GB rozmiar

Bardziej szczegółowo

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy

Bardziej szczegółowo

Leonard G. Lobel Eric D. Boyd. Azure SQL Database Krok po kroku. Microsoft. Przekład: Marek Włodarz. APN Promise, Warszawa 2014

Leonard G. Lobel Eric D. Boyd. Azure SQL Database Krok po kroku. Microsoft. Przekład: Marek Włodarz. APN Promise, Warszawa 2014 Leonard G. Lobel Eric D. Boyd Microsoft TM Azure SQL Database Krok po kroku Przekład: Marek Włodarz APN Promise, Warszawa 2014 Spis treści Wprowadzenie........................................................

Bardziej szczegółowo

Zapewnienie wysokiej dostępności baz danych. Marcin Szeliga MVP SQL Server MCT

Zapewnienie wysokiej dostępności baz danych. Marcin Szeliga MVP SQL Server MCT Zapewnienie wysokiej dostępności baz Marcin Szeliga MVP SQL Server MCT Agenda Techniki zapewniania wysokiej dostępności baz Zasada działania mirroringu baz Wdrożenie mirroringu Planowanie Konfiguracja

Bardziej szczegółowo

Rozproszone bazy danych. Robert A. Kłopotek Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW

Rozproszone bazy danych. Robert A. Kłopotek Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW Rozproszone bazy danych Robert A. Kłopotek r.klopotek@uksw.edu.pl Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW Scentralizowana baza danych Dane są przechowywane w jednym węźle sieci Można

Bardziej szczegółowo

SZKOLENIE: Administrator baz danych. Cel szkolenia

SZKOLENIE: Administrator baz danych. Cel szkolenia SZKOLENIE: Administrator baz danych. Cel szkolenia Kurs Administrator baz danych skierowany jest przede wszystkim do osób zamierzających rozwijać umiejętności w zakresie administrowania bazami danych.

Bardziej szczegółowo

Przykłady DFS z lotu ptaka :) NFS AFS Coda GoogleFS ZFS

Przykłady DFS z lotu ptaka :) NFS AFS Coda GoogleFS ZFS Przykłady DFS z lotu ptaka :) NFS AFS Coda GoogleFS ZFS NFS Network File System sieciowy system plików Stworzony przez Sun Microsystems Dostępny dla, m.in.: Unix, Windows, OS/2, Mac OS Pracuje w środowisku

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy

Bardziej szczegółowo

Systemy GIS Tworzenie zapytań w bazach danych

Systemy GIS Tworzenie zapytań w bazach danych Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE

Bardziej szczegółowo

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych. Dr inż. Paweł Kasprowski Plan wykładu Bazy danych Architektura systemów zarządzania bazami danych Realizacja zapytań algebra relacji Wielodostęp do danych - transakcje Dr inż. Paweł Kasprowski pawel@kasprowski.pl Aplkacja przechowująca

Bardziej szczegółowo

Bazy danych NoSQL. Szymon Francuzik szymon.francuzik@cs.put.poznan.pl. Poznań, 29.10.2012

Bazy danych NoSQL. Szymon Francuzik szymon.francuzik@cs.put.poznan.pl. Poznań, 29.10.2012 Bazy danych NoSQL Szymon Francuzik szymon.francuzik@cs.put.poznan.pl Poznań, 29.10.2012 Szymon Francuzik szymon.francuzik@cs.put.poznan.pl Bazy () danych NoSQL Poznań, 29.10.2012 1 / 45 Plan prezentacji

Bardziej szczegółowo

Big Data to skalowalność i prostota obsługi wielkich ilości danych!

Big Data to skalowalność i prostota obsługi wielkich ilości danych! Obsługa aplikacji, które operują na ogromnych zbiorach danych, czyli na przykład portali społecznościowych, przekracza możliwości zwykłych relacyjnych baz. Praca ze złożonymi zbiorami danych wymaga architektury

Bardziej szczegółowo

Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK

Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK Paweł Lenkiewicz Polsko Japońska Wyższa Szkoła Technik Komputerowych Plan prezentacji PJWSTK

Bardziej szczegółowo

Replikacje. dr inż. Dziwiński Piotr Katedra Inżynierii Komputerowej. Kontakt:

Replikacje. dr inż. Dziwiński Piotr Katedra Inżynierii Komputerowej. Kontakt: dr inż. Dziwiński Piotr Katedra Inżynierii Komputerowej Kontakt: piotr.dziwinski@kik.pcz.pl Replikacje 2 1 Podstawowe pojęcia Strategie replikacji Agenci replikacji Typy replikacji Modele replikacji Narzędzia

Bardziej szczegółowo

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych Plan wykładu Bazy danych Cechy rozproszonej bazy danych Implementacja rozproszonej bazy Wykład 15: Rozproszone bazy danych Małgorzata Krętowska, Agnieszka Oniśko Wydział Informatyki PB Bazy danych (studia

Bardziej szczegółowo

Wstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego. Przetwarzanie współbieżne, równoległe i rozproszone

Wstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego. Przetwarzanie współbieżne, równoległe i rozproszone Wstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego 1 Historia i pojęcia wstępne Przetwarzanie współbieżne realizacja wielu programów (procesów) w taki sposób, że ich

Bardziej szczegółowo

Architektura rozproszonych magazynów danych

Architektura rozproszonych magazynów danych Big data Big data, large data cloud. Rozwiązania nastawione na zastosowanie w wielkoskalowych serwisach, np. webowych. Stosowane przez Google, Facebook, itd. Architektura rozproszonych magazynów danych

Bardziej szczegółowo

Architektura i mechanizmy systemu

Architektura i mechanizmy systemu Architektura i mechanizmy systemu Warsztaty Usługa powszechnej archiwizacji Michał Jankowski, PCSS Maciej Brzeźniak, PCSS Plan prezentacji Podstawowe wymagania użytkowników - cel => Funkcjonalnośd i cechy

Bardziej szczegółowo

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych Spis treści Wprowadzenie... ix Organizacja ksiąŝki... ix Od czego zacząć?... x Konwencje przyjęte w ksiąŝce... x Wymagania systemowe... xi Przykłady kodu... xii Konfiguracja SQL Server 2005 Express Edition...

Bardziej szczegółowo

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 Utrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 1. Relacyjne

Bardziej szczegółowo

Administracja bazami danych

Administracja bazami danych Administracja bazami danych dr inż. Grzegorz Michalski Na podstawie wykładów dra inż. Juliusza Mikody Klient tekstowy mysql Program mysql jest prostym programem uruchamianym w konsoli shell do obsługi

Bardziej szczegółowo

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Modelowanie hierarchicznych struktur w relacyjnych bazach danych Modelowanie hierarchicznych struktur w relacyjnych bazach danych Wiktor Warmus (wiktorwarmus@gmail.com) Kamil Witecki (kamil@witecki.net.pl) 5 maja 2010 Motywacje Teoria relacyjnych baz danych Do czego

Bardziej szczegółowo

1 Instalowanie i uaktualnianie serwera SQL Server 2005... 1

1 Instalowanie i uaktualnianie serwera SQL Server 2005... 1 Spis treści Przedmowa... ix Podziękowania... x Wstęp... xiii Historia serii Inside Microsoft SQL Server... xiii 1 Instalowanie i uaktualnianie serwera SQL Server 2005... 1 Wymagania SQL Server 2005...

Bardziej szczegółowo

16MB - 2GB 2MB - 128MB

16MB - 2GB 2MB - 128MB FAT Wprowadzenie Historia FAT jest jednym z najstarszych spośród obecnie jeszcze używanych systemów plików. Pierwsza wersja (FAT12) powstała w 1980 roku. Wraz z wzrostem rozmiaru dysków i nowymi wymaganiami

Bardziej szczegółowo

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

Oracle11g: Wprowadzenie do SQL Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom

Bardziej szczegółowo

Big Data i 5V Nowe wyzwania w świecie danych Krzysztof Goczyła

Big Data i 5V Nowe wyzwania w świecie danych Krzysztof Goczyła Big Data i 5V Nowe wyzwania w świecie danych Krzysztof Goczyła Wydział Elektroniki, Telekomunikacji i Informatyki Politechnika Gdańska kris@eti.pg.gda.pl Sopot, 10.09.2014 1 O czym będzie? Co to jest Big

Bardziej szczegółowo

Przetwarzanie danych z wykorzystaniem technologii NoSQL na przykładzie serwisu Serp24

Przetwarzanie danych z wykorzystaniem technologii NoSQL na przykładzie serwisu Serp24 Przetwarzanie danych z wykorzystaniem technologii NoSQL na przykładzie serwisu Serp24 Agenda Serp24 NoSQL Integracja z CMS Drupal Przetwarzanie danych Podsumowanie Serp24 Darmowe narzędzie Ułatwia planowanie

Bardziej szczegółowo

Systemy GIS Systemy baz danych

Systemy GIS Systemy baz danych Systemy GIS Systemy baz danych Wykład nr 5 System baz danych Skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki Użytkownik ma do dyspozycji narzędzia do wykonywania różnych

Bardziej szczegółowo

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15 T-SQL dla każdego / Alison Balter. Gliwice, cop. 2016 Spis treści O autorce 11 Dedykacja 12 Podziękowania 12 Wstęp 15 Godzina 1. Bazy danych podstawowe informacje 17 Czym jest baza danych? 17 Czym jest

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Wstęp do problematyki baz danych Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS w. I Jesień 2014 1 / 17 Plan wykładu 1 Bazy danych 1 Motywacja

Bardziej szczegółowo

Hurtownie danych. Przetwarzanie zapytań. http://zajecia.jakubw.pl/hur ZAPYTANIA NA ZAPLECZU

Hurtownie danych. Przetwarzanie zapytań. http://zajecia.jakubw.pl/hur ZAPYTANIA NA ZAPLECZU Hurtownie danych Przetwarzanie zapytań. Jakub Wróblewski jakubw@pjwstk.edu.pl http://zajecia.jakubw.pl/hur ZAPYTANIA NA ZAPLECZU Magazyny danych operacyjnych, źródła Centralna hurtownia danych Hurtownie

Bardziej szczegółowo

Podstawy teoretyczne baz danych. Recovery Transakcyjne odtwarzanie bazy danych po awarii

Podstawy teoretyczne baz danych. Recovery Transakcyjne odtwarzanie bazy danych po awarii Podstawy teoretyczne baz danych Recovery Transakcyjne odtwarzanie bazy danych po awarii Cel odtwarzania Podstawowym celem mechanizmów transakcyjnego odtwarzania bazy danych po awarii jest odtworzenie spójnego

Bardziej szczegółowo

Nieustanny rozwój. Tomasz Leśniewski tomasz.lesniewski@netart.pl

Nieustanny rozwój. Tomasz Leśniewski tomasz.lesniewski@netart.pl Nieustanny rozwój Tomasz Leśniewski tomasz.lesniewski@netart.pl Poczta w chmurze? Czy nazwa.pl ma pocztę w chmurze? Biorąc pod uwagę poniższe kryteria, tak: Dla końcowego użytkownika dostępna jest pełnowartościowa

Bardziej szczegółowo

Microsoft SQL Server Podstawy T-SQL

Microsoft SQL Server Podstawy T-SQL Itzik Ben-Gan Microsoft SQL Server Podstawy T-SQL 2012 przełożył Leszek Biolik APN Promise, Warszawa 2012 Spis treści Przedmowa.... xiii Wprowadzenie... xv Podziękowania... xix 1 Podstawy zapytań i programowania

Bardziej szczegółowo

Projektowanie warstwy danych

Projektowanie warstwy danych Jarosław Kuchta Internetowych Projektowanie warstwy danych qhta@eti.pg.gda.pl J.Kuchta@eti.pg.gda.pl Zagadnienia Sposoby zapisu danych zewnętrznych Odwzorowanie dziedziny problemu w dziedzinę danych Normalizacja

Bardziej szczegółowo

BAZY DANYCH. NIERELACYJNE BAZY DANYCH NoSQL I ASOCJACYJNE STRUKTURY DANYCH. Adrian Horzyk. Akademia Górniczo-Hutnicza

BAZY DANYCH. NIERELACYJNE BAZY DANYCH NoSQL I ASOCJACYJNE STRUKTURY DANYCH. Adrian Horzyk. Akademia Górniczo-Hutnicza BAZY DANYCH NIERELACYJNE BAZY DANYCH NoSQL I ASOCJACYJNE STRUKTURY DANYCH Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki

Bardziej szczegółowo

Baza danych. Baza danych to:

Baza danych. Baza danych to: Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego

Bardziej szczegółowo

Zarządzanie rolami jakie może pełnić serwer System prosi o wybór roli jaklą ma spełniać serwer.

Zarządzanie rolami jakie może pełnić serwer System prosi o wybór roli jaklą ma spełniać serwer. Zarządzanie rolami jakie może pełnić serwer System prosi o wybór roli jaklą ma spełniać serwer. Możemy dodawać lub usuwać poszczególne role. Można to zrobić później uruchamiając START Zarządzanie tym serwerem

Bardziej szczegółowo

Tworzenie aplikacji bazodanowych

Tworzenie aplikacji bazodanowych Tworzenie aplikacji bazodanowych wykład Joanna Kołodziejczyk 2016 Joanna Kołodziejczyk Tworzenie aplikacji bazodanowych 2016 1 / 36 Klasyfikacja baz danych Plan wykładu 1 Klasyfikacja baz danych 2 Architektura

Bardziej szczegółowo

Bazy danych - wykład wstępny

Bazy danych - wykład wstępny Bazy danych - wykład wstępny Wykład: baza danych, modele, hierarchiczny, sieciowy, relacyjny, obiektowy, schemat logiczny, tabela, kwerenda, SQL, rekord, krotka, pole, atrybut, klucz podstawowy, relacja,

Bardziej szczegółowo

Wrocławska Wyższa Szkoła Informatyki Stosowanej. Bazy danych. Dr hab. inż. Krzysztof Pieczarka. Email: krzysztof.pieczarka@gmail.

Wrocławska Wyższa Szkoła Informatyki Stosowanej. Bazy danych. Dr hab. inż. Krzysztof Pieczarka. Email: krzysztof.pieczarka@gmail. Wrocławska Wyższa Szkoła Informatyki Stosowanej Bazy danych Dr hab. inż. Krzysztof Pieczarka Email: krzysztof.pieczarka@gmail.com Literatura: Connoly T., Begg C., Systemy baz danych Praktyczne metody projektowania,

Bardziej szczegółowo

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Usługi analityczne budowa kostki analitycznej Część pierwsza. Usługi analityczne budowa kostki analitycznej Część pierwsza. Wprowadzenie W wielu dziedzinach działalności człowieka analiza zebranych danych jest jednym z najważniejszych mechanizmów podejmowania decyzji.

Bardziej szczegółowo

Internetowe bazy danych

Internetowe bazy danych Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 3 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Typy tabel MySQL domyślny MyISAM inne możliwe:

Bardziej szczegółowo

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, 2016 Spis treści Wprowadzenie Podziękowania xiii xvii 1 Podstawy zapytań i programowania T-SQL 1 Podstawy

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne

Bardziej szczegółowo

Fizyczna struktura bazy danych w SQL Serwerze

Fizyczna struktura bazy danych w SQL Serwerze Sposób przechowywania danych na dysku twardym komputera ma zasadnicze znaczenie dla wydajności całej bazy i jest powodem tworzenia między innymi indeksów. Fizyczna struktura bazy danych w SQL Serwerze

Bardziej szczegółowo

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Krzysztof Kadowski. PL-E3579, PL-EA0312, Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. 77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele

Bardziej szczegółowo

Jarosław Kuchta. Administrowanie Systemami Komputerowymi. System plików

Jarosław Kuchta. Administrowanie Systemami Komputerowymi. System plików Jarosław Kuchta System plików Partycja a wolumin Partycja część dysku podstawowego (fizycznego) Wolumin część dysku dynamicznego (wirtualnego) System plików 2 Rodzaje dysków Dyski podstawowe partycjonowane

Bardziej szczegółowo

Spis treści. Część I Wprowadzenie do pakietu oprogramowania Analysis Services

Spis treści. Część I Wprowadzenie do pakietu oprogramowania Analysis Services Spis treści Wstęp... ix Odkąd najlepiej rozpocząć lekturę?... ix Informacja dotycząca towarzyszącej ksiąŝce płyty CD-ROM... xi Wymagania systemowe... xi Instalowanie i uŝywanie plików przykładowych...

Bardziej szczegółowo

Księgarnia PWN: Kevin Kenan - Kryptografia w bazach danych. Spis treści. Podziękowania O autorze Wprowadzenie... 15

Księgarnia PWN: Kevin Kenan - Kryptografia w bazach danych. Spis treści. Podziękowania O autorze Wprowadzenie... 15 Księgarnia PWN: Kevin Kenan - Kryptografia w bazach danych Spis treści Podziękowania... 11 O autorze... 13 Wprowadzenie... 15 CZĘŚĆ I. Bezpieczeństwo baz danych... 19 Rozdział 1. Problematyka bezpieczeństwa

Bardziej szczegółowo

Bazy danych Wykład zerowy. P. F. Góra

Bazy danych Wykład zerowy. P. F. Góra Bazy danych Wykład zerowy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Patron? Św. Izydor z Sewilli (VI wiek), biskup, patron Internetu (sic!), stworzył pierwszy katalog Copyright c 2011-12 P.

Bardziej szczegółowo

Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny?

Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny? Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA Dlaczego DNS jest tak ważny? DNS - System Nazw Domenowych to globalnie rozmieszczona usługa Internetowa. Zapewnia tłumaczenie nazw domen

Bardziej szczegółowo

Projektowanie struktury danych

Projektowanie struktury danych Jarosław aw Kuchta Rozproszonych Projektowanie qhta@eti.pg.gda.pl J.Kuchta@eti.pg.gda.pl Zagadnienia Sposoby zapisu danych zewnętrznych Odwzorowanie dziedziny problemu w dziedzinę danych Normalizacja relacyjnej

Bardziej szczegółowo

Projektowanie i implementacja infrastruktury serwerów

Projektowanie i implementacja infrastruktury serwerów Steve Suehring Egzamin 70-413 Projektowanie i implementacja infrastruktury serwerów Przekład: Leszek Biolik APN Promise, Warszawa 2013 Spis treści Wstęp....ix 1 Planowanie i instalacja infrastruktury serwera....

Bardziej szczegółowo

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH 1 ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH WFAiS UJ, Informatyka Stosowana II stopień studiów 2 Map-Reduce system Single-node architektura 3 Przykład Googla 4 10 miliardów stron internetowych Średnia

Bardziej szczegółowo

Cryptobox Aplikacja do synchronizacji danych użytkownika w systemie KMD2

Cryptobox Aplikacja do synchronizacji danych użytkownika w systemie KMD2 Cryptobox Aplikacja do synchronizacji danych użytkownika w systemie KMD2 Instrukcja obsługi 1 Spis treści 1. Opis aplikacji... 3 2. Kompatybilność... 4 3. Uruchomienie i konfiguracja... 5 Opis głównego

Bardziej szczegółowo

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

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod

Bardziej szczegółowo

Przesyłania danych przez protokół TCP/IP

Przesyłania danych przez protokół TCP/IP Przesyłania danych przez protokół TCP/IP PAKIETY Protokół TCP/IP transmituje dane przez sieć, dzieląc je na mniejsze porcje, zwane pakietami. Pakiety są często określane różnymi terminami, w zależności

Bardziej szczegółowo

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania Plan wykładu Bazy danych Wykład 10: Fizyczna organizacja danych w bazie danych Model logiczny i model fizyczny Mechanizmy składowania plików Moduł zarządzania miejscem na dysku i moduł zarządzania buforami

Bardziej szczegółowo

Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski. Poznań, 30.09.2015

Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski. Poznań, 30.09.2015 Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski Poznań, 30.09.2015 Plan Geneza Architektura Cechy Instalacja Standard SQL Transakcje i współbieżność Indeksy Administracja Splice Machince vs.

Bardziej szczegółowo

LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki )

LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki ) LITERATURA C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki ) H. Garcia Molina, Jeffrey D. Ullman, Jennifer Widom; Systemy baz danych. Kompletny podręcznik

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

Bardziej szczegółowo

dziennik Instrukcja obsługi

dziennik Instrukcja obsługi Ham Radio Deluxe dziennik Instrukcja obsługi Wg. Simon Brown, HB9DRV Tłumaczenie SP4JEU grudzień 22, 2008 Zawartość 3 Wprowadzenie 5 Po co... 5 Główne cechy... 5 baza danych 7 ODBC... 7 Który produkt

Bardziej szczegółowo

Hurtownie danych. Wstęp. Architektura hurtowni danych. http://zajecia.jakubw.pl/hur CO TO JEST HURTOWNIA DANYCH

Hurtownie danych. Wstęp. Architektura hurtowni danych. http://zajecia.jakubw.pl/hur CO TO JEST HURTOWNIA DANYCH Wstęp. Architektura hurtowni. Jakub Wróblewski jakubw@pjwstk.edu.pl http://zajecia.jakubw.pl/hur CO TO JEST HURTOWNIA DANYCH B. Inmon, 1996: Hurtownia to zbiór zintegrowanych, nieulotnych, ukierunkowanych

Bardziej szczegółowo

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 4 Budowa prostych formularzy, stany sesji, tworzenie przycisków Plan Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 2 Formularz i jego typy Tworzenie formularza

Bardziej szczegółowo

Program szkolenia: Microsoft SQL Server 2012/2014 Databases, przygotowującego do egzaminu

Program szkolenia: Microsoft SQL Server 2012/2014 Databases, przygotowującego do egzaminu Program szkolenia: Microsoft SQL Server 2012/2014 Databases, przygotowującego do egzaminu 70-462 Prowadzący: dr Paweł Wiechbroth 1. Instalacja i konfiguracja Planowanie instalacji Ocena wymagao dotyczących

Bardziej szczegółowo

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne Jarosław Kuchta Internetowe Usługi Informacyjne Komponenty IIS HTTP.SYS serwer HTTP zarządzanie połączeniami TCP/IP buforowanie odpowiedzi obsługa QoS (Quality of Service) obsługa plików dziennika IIS

Bardziej szczegółowo

CouchDB. Michał Nowikowski

CouchDB. Michał Nowikowski CouchDB Michał Nowikowski Agenda Wprowadzenie do CouchDB Mój przypadek Wyniki i wnioski Dokumenty CouchDB Format JSON Pary nazwa wartość Możliwe tablice i struktury Załączniki Brak limitów na liczbę i

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych widok ankiety w przeglądarce Rozpoczniemy od zaprojektowania bazy danych w programie SYBASE/PowerDesigner umieszczamy

Bardziej szczegółowo

*Grafomania z. Neo4j. Praktyczne wprowadzenie do grafowej bazy danych.

*Grafomania z. Neo4j. Praktyczne wprowadzenie do grafowej bazy danych. *Grafomania z Neo4j Praktyczne wprowadzenie do grafowej bazy danych. Jak zamodelować relacyjną bazę danych reprezentującą następujący fragment rzeczywistości: Serwis WWW opisuje pracowników różnych firm

Bardziej szczegółowo

Kopie bezpieczeństwa NAPRAWA BAZ DANYCH

Kopie bezpieczeństwa NAPRAWA BAZ DANYCH Kopie bezpieczeństwa NAPRAWA BAZ DANYCH Sprawdzanie spójności bazy danych Jednym z podstawowych działań administratora jest zapewnienie bezpieczeństwa danych przez tworzenie ich kopii. Przed wykonaniem

Bardziej szczegółowo

DB2 with BLU acceleration rozwiązanie in-memory szybsze niż pamięć operacyjna&

DB2 with BLU acceleration rozwiązanie in-memory szybsze niż pamięć operacyjna& DB2 with BLU acceleration rozwiązanie in-memory szybsze niż pamięć operacyjna& Artur Wroński" Priorytety rozwoju technologii Big Data& Analiza większych zbiorów danych, szybciej& Łatwość użycia& Wsparcie

Bardziej szczegółowo

Searching for SNPs with cloud computing

Searching for SNPs with cloud computing Ben Langmead, Michael C Schatz, Jimmy Lin, Mihai Pop and Steven L Salzberg Genome Biology November 20, 2009 April 7, 2010 Problem Cel Problem Bardzo dużo krótkich odczytów mapujemy na genom referencyjny

Bardziej szczegółowo

Hurtownie danych w praktyce

Hurtownie danych w praktyce Hurtownie danych w praktyce Fakty i mity Dr inż. Maciej Kiewra Parę słów o mnie... 8 lat pracy zawodowej z hurtowniami danych Projekty realizowane w kraju i zagranicą Certyfikaty Microsoft z Business Intelligence

Bardziej szczegółowo

Wątek - definicja. Wykorzystanie kilku rdzeni procesora jednocześnie Zrównoleglenie obliczeń Jednoczesna obsługa ekranu i procesu obliczeniowego

Wątek - definicja. Wykorzystanie kilku rdzeni procesora jednocześnie Zrównoleglenie obliczeń Jednoczesna obsługa ekranu i procesu obliczeniowego Wątki Wątek - definicja Ciąg instrukcji (podprogram) który może być wykonywane współbieżnie (równolegle) z innymi programami, Wątki działają w ramach tego samego procesu Współdzielą dane (mogą operować

Bardziej szczegółowo

Adam Cankudis IFP UAM

Adam Cankudis IFP UAM W s t ę p d o r e l a c y j n y c h b a z d a n y c h Adam Cankudis IFP UAM B i b l i o g r a f i a T. Morzy i in., Bazy danych, [w:] Studia Informatyczne, Pierwszy stopie ń, http://wazniak.mimuw.edu.pl/

Bardziej szczegółowo

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy

Bardziej szczegółowo

Struktura dysku. Dyski podstawowe i dynamiczne

Struktura dysku. Dyski podstawowe i dynamiczne Struktura dysku Dyski podstawowe i dynamiczne System Windows 2000 oferuje dwa rodzaje konfiguracji dysków: dysk podstawowy i dysk dynamiczny. Dysk podstawowy przypomina struktury dyskowe stosowane w systemie

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy

Bardziej szczegółowo

Instrukcja konfiguracji funkcji skanowania

Instrukcja konfiguracji funkcji skanowania Instrukcja konfiguracji funkcji skanowania WorkCentre M123/M128 WorkCentre Pro 123/128 701P42171_PL 2004. Wszystkie prawa zastrzeżone. Rozpowszechnianie bez zezwolenia przedstawionych materiałów i informacji

Bardziej szczegółowo

SAS Access to Hadoop, SAS Data Loader for Hadoop Integracja środowisk SAS i Hadoop. Piotr Borowik

SAS Access to Hadoop, SAS Data Loader for Hadoop Integracja środowisk SAS i Hadoop. Piotr Borowik SAS Access to Hadoop, SAS Data Loader for Hadoop Integracja środowisk SAS i Hadoop Piotr Borowik Wyzwania związane z Big Data Top Hurdles with Big data Source: Gartner (Sep 2014), Big Data Investment Grows

Bardziej szczegółowo

Referat pracy dyplomowej

Referat pracy dyplomowej Referat pracy dyplomowej Temat pracy: Wdrożenie intranetowej platformy zapewniającej organizację danych w dużej firmie na bazie oprogramowania Microsoft SharePoint Autor: Bartosz Lipiec Promotor: dr inż.

Bardziej szczegółowo

Wykład XII. optymalizacja w relacyjnych bazach danych

Wykład XII. optymalizacja w relacyjnych bazach danych Optymalizacja wyznaczenie spośród dopuszczalnych rozwiązań danego problemu, rozwiązania najlepszego ze względu na przyjęte kryterium jakości ( np. koszt, zysk, niezawodność ) optymalizacja w relacyjnych

Bardziej szczegółowo

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

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152 Wstęp...xv 1 Rozpoczynamy...1 Co to jest ASP.NET?...3 W jaki sposób ASP.NET pasuje do.net Framework...4 Co to jest.net Framework?...4 Czym są Active Server Pages (ASP)?...5 Ustawienia dla ASP.NET...7 Systemy

Bardziej szczegółowo

2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego

2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego 2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego produktu. 23 czerwca 2014 Spis treści 3 Spis treści...5

Bardziej szczegółowo

I. Techniki wielowersyjne sterowania współbieżnością

I. Techniki wielowersyjne sterowania współbieżnością I. Techniki wielowersyjne sterowania współbieżnością Techniki wielowersyjne multiversion concurrency control. Technika wielowersyjna oparta na znacznikach czasu Dla każdej wersji X i elementu X przechowywane

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2016/2017 Wykład nr 7 (11.01.2017) Rok akademicki 2016/2017, Wykład

Bardziej szczegółowo

OPIS PRZEDMIOTU ZAMÓWIENIA

OPIS PRZEDMIOTU ZAMÓWIENIA Załącznik nr 1 OPIS PRZEDMIOTU ZAMÓWIENIA Licencja Microsoft Windows SQL Server Standard 2012 (nie OEM) lub w pełni równoważny oraz licencja umożliwiająca dostęp do Microsoft Windows SQL Server Standard

Bardziej szczegółowo

Implementowanie zaawansowanej infrastruktury serwerowej Windows Server 2012 R2

Implementowanie zaawansowanej infrastruktury serwerowej Windows Server 2012 R2 Steve Suehring Egzamin 70-414 Implementowanie zaawansowanej infrastruktury serwerowej Windows Server 2012 R2 Przekład: Leszek Biolik APN Promise, Warszawa 2014 Spis treści Wstęp................................................................

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego

Bardziej szczegółowo