Wprowadzenie do optymalnego wykorzystania MapReduce

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

Download "Wprowadzenie do optymalnego wykorzystania MapReduce"

Transkrypt

1 Eugenia Busłowska 1, Łukasz Juźwiuk 2 Politechnika Białostocka, Wydział Informatyki, Katedra Systemów Informacyjnych i Sieci Komputerowych. Wprowadzenie do optymalnego wykorzystania MapReduce 1. Wstęp We współczesnym świecie systemy informatyczne generują coraz większe ilości cyfrowej informacji. Są to dane tworzone przez człowieka, ale również i maszyny takie jak urządzenia pomiarowe czy instalacje naukowe. Roczny przyrost danych w wielu firmach oraz instytucjach nieraz przekracza 1 petabajt (PB) danych. Problem zarządzania nieprzeciętnie dużą ilością danych dotyczy również logistyki. Zastosowanie elektronicznych baz danych do przechowywania informacji spowodowało możliwość przechowywania niewyobrażalnych ich ilości. Przepływ informacji wymaga ciągłego udzielania odpowiedzi na zadawane pytania do danych, co z kolei powoduje konieczność przetworzenia zapytań. Przyśpieszenie wykonania zapytań w standardowym podejściu wymusza, utworzenie odpowiednich indeksów, które uporządkowują dane według narzuconych kryteriów powodując szybkie przeszukiwanie zgromadzonych dokumentów. Im więcej danych tym dłuższy czas ich pobierania. Przykładowo, czas pobrania 1 tetabajt (TB) danych łączem 8 Mbit to około 11 i pół dnia. Czas ten nie jest obecnie akceptowalny, dlatego w celu przetwarzania tak dużych ilości danych w relatywnie krótkim i możliwie najmniejszym nakładem pracy korporacja Google opracowała i opublikowała w roku 2004 abstrakt na temat paradygmatu MapReduce. [1] 2. Idea MapReduce Podstawnym założeniem paradygmatu MapReduce jest podział problemu na dwa główne etapy nazywane mapowaniem i redukcją. W praktyce przy bardziej złożonych problemach często zachodzi potrzeba łączenia tych etapów w tak zwane łańcuchy. Najkrótszy łańcuch może składać się z jednego mapera. Przy tworzeniu łańcuchów należy pamiętać, że każdy etap redukcji musi być poprzedzony przynajmniej jednym etapem mapowania. Przykładowym łańcuchem może być praca MapReduce zbudowana z np.: [Map1 Map2 Reduce1 Map3]. Praca składa się ze wstępnego przetwarzania Map1, późnego przetwarzania Map2, właściwej redukcji Reduce1 oraz końcowego przetwarzania w Map3. Jeżeli problemu nie udało się zrealizować za pomocą łączenia etapów pozostaje jeszcze mniej wydajne, lecz dające większe możliwości łączenie prac MapReduce. Rozbicie na dwie prace wcześniejszego przykładu mogłoby wyglądać następująco: [Map1] [Map2 Reduce1 Map2]. Potrzeba rozbicia na dwie prace może zajść wtedy, gdy dane otrzymane w pierwszej pracy muszą zostać rozdystrybuowane do wszystkich niezbędnych węzłów przed przystąpieniem do przetwarzania danych przez Map2. [1] 3. Dane i ich transfer Dane w klastrze opartym o paradygmat MapReduce w zdecydowanej większości znajdują się w rozproszonym systemie plików. Niniejszy system plików został opisany w innym abstrakcie przedstawionym w roku 2003 przez firmę Google na temat Google File System (GFS). Rozproszony system plików w połączeniu z MapReduce pozawala na przetwarzanie danych w miejscu ich przechowywania. Dzięki temu rozwiązaniu nie ma potrzeby transferu informacji z maszyn magazynujących dane o małej mocy obliczeniowej do potężnych 1 ebuslowska@pb.edu.pl 2 lukjuz@gmail.com 3870

2 serwerów. Zamiast przesyłać dane (nieraz kilka terabajtów lub więcej) wysyłany jest program MapReduce o rozmiarach kilku kilobajtów. Zyskiwany jest cenny czas potrzebny na transfer. Ta oraz kilka innych, pominiętych tutaj cech powoduje, że MapReduce wraz z DFS (Distributed File System) pozwala na osiągnięcie liniowej skalowalności klastra obliczeniowego. Dobrą praktyką jest stosowanie typów binarnych w celu ograniczenia rozmiarów danych. Dla zrównoważenia oraz przyśpieszenia replikacji w rozproszonym systemie plików stosuje się sekwencjonowanie z użyciem znaczników, co wprowadza nieznaczną nadmiarowość w zależności od długości sekwencji. Przykładowym typem binarnym plików może być SequenceFile powszechnie wykorzystywany przez platformę Hadoop. [2] Rys. 1. Podgląd wykonania. Źródło: Yahoo Możliwa jest również automatyczna kompresja danych z wykorzystaniem różnych algorytmów. Kompresję w MapReduce stosuje się na trzech typach danych: wejściowych(1), pośrednich(2) i wyjściowych(3) widocznych na Rys

3 Rys. 2. Kompresja danych w MapReduce. Źródło: Yahoo, Hadoop Summit 2013 Aby porównać wydajności przy kompresji bierze się pod uwagę niezbędny czas na kompresję i dekompresje danych w stosunku do zyskanego rozmiaru. Kodeki kompresujące dzieli się na dwie główne grupy; o dużej szybkości oraz o dużym współczynniku kompresji. Na Rys 3. przedstawiono porównanie wydajności dla różnych kodeków przy kompresji tekstu z artykułów zamieszczonych na portalu Wikipedia. Ze względu na swoje cechy stosuje się różne kodeki na różnych etapach pracy MapReduce. 3872

4 Rys. 3. Porównanie wydajności kompresji na korpusie tekstów z Wikipedii. Źródło: Yahoo, Hadoop Summit Mapper Mapowanie polega na pobraniu danych ze źródła przy użyciu czytnika rekordów oraz ewentualnym przefiltrowaniu ze względu na zadane kryteria, projekcji jak również przetworzeniu. Etap ten jest ściśle równoległy. Oznacza to, że każdy wiersz danych podany do mapera jest traktowany, jako oddzielna informacja niemająca wpływu na odczyt pozostałych. Każda instancja mapera tworzy listę danych wyjściowych w postaci list<k1,v1>, gdzie K1 jest kluczem, a V1 wartością. Na kolejnym etapie zwanym shuffle zawartość wszystkich list domyślnie zostaje posortowana w celu możliwie równomiernego rozłożenia danych przeznaczonych dla reduktorów. Powinno dążyć się do realizacji problemu z wykorzystaniem jedynie maperów. Zaletą takiego rozwiązania jest uniknięcie czasochłonnego równoległego sortowania danych wyjściowych oraz ich późniejszego przesłania do reduktorów. [3] Na tym etapie spotyka się dwa główne problemy. Pierwszym z nich jest pytanie jak równomiernie podzielić dane wejściowe, aby wszystkie mapery zakończyły pracę w możliwie najmniejszym odstępie czasowym. Jest to ważne gdyż nadmierne obciążenie zaledwie jednego z maperów opóźnia przejście do kolejnego etapu w łańcuchu MapReduce. Drugim problemem jest redundancja danych wyjściowych z mapera. Pamiętając o równoległości mapera wysoce niewydajne jest dbanie na tym etapie o niepowtarzanie się rekordów w list<k1,v1>. Jednak z pomocą przychodzi Combiner, który zostanie opisany w jednej z kolejnych części artykułu. 5. Partitioner i Shuffle Partycjoner odpowiedzialny jest za logiczny podział danych wyjściowych z mapera. Podejmuje on decyzję, do którego reduktora powinien trafić dany rekord ze względu na zadaną cechę. W platformie Hadoop domyślnie używany jest HaszPartitioner, który przydziela dane do reduktorów ze względu na hash klucza. W 3873

5 większości przypadków w celu równomiernego rozłożenia obciążenia reduktorów zachodzi potrzeba napisania własnego partycjonera wraz z porównywaczem (comparator). Otrzymujemy wtedy optymalny mechanizm podziału danych pośrednich ze względu np. na żądaną cechę a nie hash. Shuffle zazwyczaj jest najbardziej kosztownym etapem pracy MapReduce. Dlatego jest bardzo ważne, aby danych wyjściowych z mapera było możliwie najmniej. Ważne jest również, aby miały one jak najmniejszy rozmiar ze względu na to, że odbywa się M R transferów danych pomiędzy węzłami, gdzie M jest liczbą obiektów mapujących, a R liczbą obiektów redukujących. [4] 6. Reducer oraz Combiner Reduktor w odróżnieniu do mapera z założenia jest ściśle sekwencyjny. Oznacza to, że wynik tego etapu jest określony przez całą populację danych wejściowych o określonej cesze. Skutkiem takiego podejścia jest niemożność rozpoczęcia redukcji przed zakończeniem poprzedzającego etapu mapowania. Na tym etapie najważniejszym zadaniem stawianym przed programistą jest stworzenie jak najlepszego algorytmu realizującego dany problemu. W dużych klastrach MapReduce mających liniową skalowalność, może być znacznie bardziej opłacalna optymalizacja kodu aniżeli dokupienie dodatkowych serwerów. Dlatego zaleca się ciągłą pracę nad możliwym jak największym obniżeniem złożoności obliczeniowej użytych algorytmów bądź ich zastąpienie. [5] Jeżeli w danych pośrednich stwierdzono duży stopień redundancji kluczy zaleca się użycie combinera. Combiner umożliwia wykonanie reduktora na danych z węzła mapującego przed przekazaniem ich do partycjonera. Ograniczamy wtedy ilość danych pośrednich przesyłanych pomiędzy węzłami klastra oraz przyśpieszamy fazę redukcji realizując cząstkowe obliczenia. [5] Rys. 3. Zastosowanie combinera. Źródło: Yahoo 3874

6 Streszczenie Artykuł ma na celu przedstawienie krytycznych punktów w MapReduce prowadzących do utraty lub zysku w wydajności. Jest to wstęp do dokładniejszej analizy poszczególnych faz wykonania występujących w większości implementacji z wykorzystaniem tegoż paradygmatu. Poruszane są ogólne zagadnienia związane z danymi, mapowaniem, redukcją, partycjonowaniem oraz kilka innych. Introduction to the optimal use of MapReduce Abstract Purpose of the paper is to create simple overview of critical points for performance in MapReduce. This is introduction to more detailed analysis of execution phases being part of the most issues implemented using said paradigm. Discussed are general issues related to data, mapping, reduction, partitioning and several others. Key words: MapReduce, Hadoop, Big data 7. Literatura [1] J. Dean, S. Ghemawat: MapReduce: Simplified Data Processing on Large Clusters, OSDI 04: Sixth Symposium on Operating System Design and Implementation, San Francisco, CA, 2004, mapreduce.html. [2] Ch. Lam: Hadoop in Action, Manning, [3] A. Holmes: Hadoop in Practice, Manning, [4] G. Kamat, S. Singh: Compression Options in Hadoop A Tale of Tradeoffs, Hadoop Summit, 2013, slideshare.net/hadoop_summit/kamat-singh-june27425pmroom210cv2. [5] M. Bhandarkar: Practical Problem Solving with Hadoop and Pig, Middleware, 2009, hadoop/practical-problem-solving-with-apache-hadoop-pig. 3875

MapReduce. Janina Mincer-Daszkiewicz Systemy rozproszone. MSUI, II rok

MapReduce. Janina Mincer-Daszkiewicz Systemy rozproszone. MSUI, II rok MapReduce Janina Mincer-Daszkiewicz Systemy rozproszone MSUI, II rok Materiały i rysunki zaczerpnięto z następujących źródeł 1. Jeffrey Dean,Sanjay Ghemawat, MapReduce: Simplified Data Processing on Large

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

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

Apache Hadoop framework do pisania aplikacji rozproszonych

Apache Hadoop framework do pisania aplikacji rozproszonych Apache Hadoop framework do pisania aplikacji rozproszonych Piotr Praczyk Wprowadzenie Istnieje wiele rodzajów obliczeń, których wykonywanie na pojedynczej maszynie, nawet najpotężniejszej, jest zbyt czasochłonne.

Bardziej szczegółowo

Wprowadzenie do Hurtowni Danych

Wprowadzenie do Hurtowni Danych Wprowadzenie do Hurtowni Danych BIG DATA Definicja Big Data Big Data definiowane jest jako składowanie zbiorów danych o tak dużej złożoności i ilości danych, że jest to niemożliwe przy zastosowaniu podejścia

Bardziej szczegółowo

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2013/14 Znajdowanie maksimum w zbiorze

Bardziej szczegółowo

Projektowanie rozwiązań Big Data z wykorzystaniem Apache Hadoop & Family

Projektowanie rozwiązań Big Data z wykorzystaniem Apache Hadoop & Family Kod szkolenia: Tytuł szkolenia: HADOOP Projektowanie rozwiązań Big Data z wykorzystaniem Apache Hadoop & Family Dni: 5 Opis: Adresaci szkolenia: Szkolenie jest adresowane do programistów, architektów oraz

Bardziej szczegółowo

SQL SERVER 2012 i nie tylko:

SQL SERVER 2012 i nie tylko: SQL SERVER 2012 i nie tylko: Wstęp do planów zapytań Cezary Ołtuszyk coltuszyk.wordpress.com Kilka słów o mnie Starszy Administrator Baz Danych w firmie BEST S.A. (Bazy danych > 1TB) Konsultant z zakresu

Bardziej szczegółowo

CZĘŚĆ I. WARSTWA PRZETWARZANIA WSADOWEGO

CZĘŚĆ I. WARSTWA PRZETWARZANIA WSADOWEGO Spis treści Przedmowa Podziękowania O książce Rozdział 1. Nowy paradygmat dla Big Data 1.1. Zawartość książki 1.2. Skalowanie tradycyjnej bazy danych 1.2.1. Skalowanie za pomocą kolejki 1.2.2. Skalowanie

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

Wprowadzenie do Apache Spark. Jakub Toczek

Wprowadzenie do Apache Spark. Jakub Toczek Wprowadzenie do Apache Spark Jakub Toczek Epoka informacyjna MapReduce MapReduce Apache Hadoop narodziny w 2006 roku z Apache Nutch open source składa się z systemu plików HDFS i silnika MapReduce napisany

Bardziej szczegółowo

Przetwarzanie i analizowanie dużych ilości danych

Przetwarzanie i analizowanie dużych ilości danych BUSŁOWSKA Eugenia 1 WIKTORZAK Aneta Anna 2 Przetwarzanie i analizowanie dużych ilości danych WSTĘP Ilość danych codziennie generowanych w zastraszającym tempie wzrasta. W roku 2012 wytworzono 2 zetabajty

Bardziej szczegółowo

Hadoop i Spark. Mariusz Rafało

Hadoop i Spark. Mariusz Rafało Hadoop i Spark Mariusz Rafało mrafalo@sgh.waw.pl http://mariuszrafalo.pl WPROWADZENIE DO EKOSYSTEMU APACHE HADOOP Czym jest Hadoop Platforma służąca przetwarzaniu rozproszonemu dużych zbiorów danych. Jest

Bardziej szczegółowo

Algorytmy sortujące i wyszukujące

Algorytmy sortujące i wyszukujące Algorytmy sortujące i wyszukujące Zadaniem algorytmów sortujących jest ułożenie elementów danego zbioru w ściśle określonej kolejności. Najczęściej wykorzystywany jest porządek numeryczny lub leksykograficzny.

Bardziej szczegółowo

Map Reduce Wprowadzenie do Apache Hadoop

Map Reduce Wprowadzenie do Apache Hadoop Map Reduce Wprowadzenie do Apache Hadoop 8 maja 2014 Opis pliku z zadaniami Wszystkie zadania na zajęciach będą przekazywane w postaci plików PDF sformatowanych jak ten. Będą się na nie składały różne

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

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

Organizacyjnie. Prowadzący: dr Mariusz Rafało   (hasło: BIG) Big Data Organizacyjnie Prowadzący: dr Mariusz Rafało mrafalo@sgh.waw.pl http://mariuszrafalo.pl (hasło: BIG) Automatyzacja Automatyzacja przetwarzania: Apache NiFi Źródło: nifi.apache.org 4 Automatyzacja

Bardziej szczegółowo

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012 Projektowanie algorytmów równoległych Zbigniew Koza Wrocław 2012 Spis reści Zadniowo-kanałowy (task-channel) model algorytmów równoległych Projektowanie algorytmów równoległych metodą PACM Task-channel

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

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2014/15 Znajdowanie maksimum w zbiorze

Bardziej szczegółowo

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

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015 Analiza efektywności przetwarzania współbieżnego Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015 Źródła kosztów przetwarzania współbieżnego interakcje między procesami

Bardziej szczegółowo

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

Organizacyjnie. Prowadzący: dr Mariusz Rafało   (hasło: BIG) Big Data Organizacyjnie Prowadzący: dr Mariusz Rafało mrafalo@sgh.waw.pl http://mariuszrafalo.pl (hasło: BIG) Data Camp Architektura Data Lake Repozytorium służące składowaniu i przetwarzaniu danych o

Bardziej szczegółowo

HADOOP Dariusz Ż bik

HADOOP Dariusz Ż bik Dariusz Żbik DLACZEGO? Przetwarzanie dużych zbiorów danych Przykład wyszukiwanie w zbiorze 100TB 1 węzeł @ 40MB/s -> 30 dni MTBF ~ 3 lata 1000 węzłów @ 40MB/s -> 44 minuty MTBF ~ 1 dzień Potrzebny framework

Bardziej szczegółowo

Analiza ilościowa w przetwarzaniu równoległym

Analiza ilościowa w przetwarzaniu równoległym Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1 Analiza ilościowa w przetwarzaniu równoległym 10. Analiza ilościowa w przetwarzaniu równoległym...2 10.1 Kryteria efektywności przetwarzania równoległego...2

Bardziej szczegółowo

Tabela wewnętrzna - definicja

Tabela wewnętrzna - definicja ABAP/4 Tabela wewnętrzna - definicja Temporalna tabela przechowywana w pamięci operacyjnej serwera aplikacji Tworzona, wypełniana i modyfikowana jest przez program podczas jego wykonywania i usuwana, gdy

Bardziej szczegółowo

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

Organizacyjnie. Prowadzący: dr Mariusz Rafało   (hasło: BIG) Big Data Organizacyjnie Prowadzący: dr Mariusz Rafało mrafalo@sgh.waw.pl http://mariuszrafalo.pl (hasło: BIG) Zaliczenie: Praca na zajęciach Egzamin Projekt/esej zaliczeniowy Plan zajęć # TEMATYKA ZAJĘĆ

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

Analiza efektywności przetwarzania współbieżnego

Analiza efektywności przetwarzania współbieżnego Analiza efektywności przetwarzania współbieżnego Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak 1/4/2013 Analiza efektywności 1 Źródła kosztów przetwarzania współbieżnego interakcje

Bardziej szczegółowo

Numeryczna algebra liniowa

Numeryczna algebra liniowa Numeryczna algebra liniowa Numeryczna algebra liniowa obejmuje szereg algorytmów dotyczących wektorów i macierzy, takich jak podstawowe operacje na wektorach i macierzach, a także rozwiązywanie układów

Bardziej szczegółowo

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

Za pierwszy niebanalny algorytm uważa się algorytm Euklidesa wyszukiwanie NWD dwóch liczb (400 a 300 rok przed narodzeniem Chrystusa). Algorytmy definicja, cechy, złożoność. Algorytmy napotykamy wszędzie, gdziekolwiek się zwrócimy. Rządzą one wieloma codziennymi czynnościami, jak np. wymiana przedziurawionej dętki, montowanie szafy z

Bardziej szczegółowo

Haszowanie (adresowanie rozpraszające, mieszające)

Haszowanie (adresowanie rozpraszające, mieszające) Haszowanie (adresowanie rozpraszające, mieszające) Tadeusz Pankowski H. Garcia-Molina, J.D. Ullman, J. Widom, Implementacja systemów baz danych, WNT, Warszawa, Haszowanie W adresowaniu haszującym wyróżniamy

Bardziej szczegółowo

Sposoby klastrowania aplikacji webowych w oparciu o rozwiązania OpenSource. Piotr Klimek. piko@piko.homelinux.net

Sposoby klastrowania aplikacji webowych w oparciu o rozwiązania OpenSource. Piotr Klimek. piko@piko.homelinux.net Sposoby klastrowania aplikacji webowych w oparciu o rozwiązania OpenSource Piotr Klimek piko@piko.homelinux.net Agenda Wstęp Po co to wszystko? Warstwa WWW Warstwa SQL Warstwa zasobów dyskowych Podsumowanie

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

Programowanie współbieżne Wykład 2. Iwona Kochańska

Programowanie współbieżne Wykład 2. Iwona Kochańska Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas

Bardziej szczegółowo

Systemy OLAP II. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Systemy OLAP II. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Technologie Wytwarzania Oprogramowania Semestr letni 2006/07 Plan wykładu Systemy baz

Bardziej szczegółowo

Przetwarzanie subskrypcji jest ustawione jako usługa systemowa i uruchamia się automatycznie w określonych odstępach czasowych.

Przetwarzanie subskrypcji jest ustawione jako usługa systemowa i uruchamia się automatycznie w określonych odstępach czasowych. Subskrypcje PESEL Przetwarzanie subskrypcji jest ustawione jako usługa systemowa i uruchamia się automatycznie w określonych odstępach czasowych. Główne funkcje Subskrypcji PESEL Wyróżniono następujące

Bardziej szczegółowo

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie Więcej o sprawności algorytmów Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie Załóżmy, że możemy wykonać dane zadanie przy użyciu dwóch algorytmów: jednego o złożoności czasowej

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

Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych

Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2018/19 Problem: znajdowanie

Bardziej szczegółowo

"Zapisane w genach, czyli Python a tajemnice naszego genomu."

Zapisane w genach, czyli Python a tajemnice naszego genomu. "Zapisane w genach, czyli Python a tajemnice naszego genomu." Dr Kaja Milanowska Instytut Biologii Molekularnej i Biotechnologii UAM VitaInSilica sp. z o.o. Warszawa, 9 lutego 2015 Dane biomedyczne 1)

Bardziej szczegółowo

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania, Przetwarzanie równoległe PROJEKT OMP i CUDA Temat projektu dotyczy analizy efektywności przetwarzania równoległego realizowanego przy użyciu komputera równoległego z procesorem wielordzeniowym z pamięcią

Bardziej szczegółowo

Podstawy Informatyki. Metody dostępu do danych

Podstawy Informatyki. Metody dostępu do danych Podstawy Informatyki c.d. alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Bazy danych Struktury danych Średni czas odszukania rekordu Drzewa binarne w pamięci dyskowej 2 Sformułowanie

Bardziej szczegółowo

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

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ (INT) Inżynieria internetowa 1. Tryby komunikacji między procesami w standardzie Message Passing Interface 2. HTML DOM i XHTML cel i charakterystyka 3. Asynchroniczna komunikacja serwerem HTTP w technologii

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

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

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Skalowalność obliczeń równoległych Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Skalowalność Przy rozważaniu wydajności przetwarzania (obliczeń, komunikacji itp.) często pojawia się pojęcie skalowalności

Bardziej szczegółowo

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych Systemy wbudowane Wykład 11: Metody kosyntezy systemów wbudowanych Uproszczone metody kosyntezy Założenia: Jeden procesor o znanych parametrach Znane parametry akceleratora sprzętowego Vulcan Początkowo

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

Przygotuj się na e-fakturowanie. Przewodnik po implementacji dla dostawców

Przygotuj się na e-fakturowanie. Przewodnik po implementacji dla dostawców Przygotuj się na e-fakturowanie Przewodnik po implementacji dla dostawców Spis treści Witamy w Tungsten Network! 3 Przed rozpoczęciem 4 1 Odbieranie plików 5 2 Wypełnianie arkusza 6 3 Tworzenie faktury

Bardziej szczegółowo

Zastosowanie symulacji komputerowej do badania właściwości hydraulicznych sieci wodociągowej

Zastosowanie symulacji komputerowej do badania właściwości hydraulicznych sieci wodociągowej Zastosowanie symulacji komputerowej do badania właściwości hydraulicznych sieci wodociągowej prof. dr hab. inż. Andrzej J. OSIADACZ Politechnika Warszawska Wydział Inżynierii Środowiska dr hab. inż. Maciej

Bardziej szczegółowo

Opis wdrożenia Platformy Technologicznej epodreczniki.pl na zasobach Poznańskiego Centrum Superkomputerowo-Sieciowego

Opis wdrożenia Platformy Technologicznej epodreczniki.pl na zasobach Poznańskiego Centrum Superkomputerowo-Sieciowego Opis wdrożenia Platformy Technologicznej epodreczniki.pl na zasobach Poznańskiego Centrum Superkomputerowo-Sieciowego w ramach realizacji umowy pomostowej nr 427/PCSS/2016 Poznań, 21 lutego 2017 r. 1 Spis

Bardziej szczegółowo

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010 Algorytmy równoległe Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka Znajdowanie maksimum w zbiorze n liczb węzły - maksimum liczb głębokość = 3 praca = 4++ = 7 (operacji) n - liczność

Bardziej szczegółowo

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

Algorytmy i struktury danych. Wykład 4 Tablice nieporządkowane i uporządkowane Algorytmy i struktury danych Wykład 4 Tablice nieporządkowane i uporządkowane Tablice uporządkowane Szukanie binarne Szukanie interpolacyjne Tablice uporządkowane Szukanie binarne O(log N) Szukanie interpolacyjne

Bardziej szczegółowo

Równoległe algorytmy sortowania. Krzysztof Banaś Obliczenia równoległe 1

Równoległe algorytmy sortowania. Krzysztof Banaś Obliczenia równoległe 1 Równoległe algorytmy sortowania Krzysztof Banaś Obliczenia równoległe 1 Algorytmy sortowania Algorytmy sortowania dzielą się na wewnętrzne (bez użycia pamięci dyskowej) zewnętrzne (dla danych nie mieszczących

Bardziej szczegółowo

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski : idea Indeksowanie: Drzewo decyzyjne, przeszukiwania binarnego: F = {5, 7, 10, 12, 13, 15, 17, 30, 34, 35, 37, 40, 45, 50, 60} 30 12 40 7 15 35 50 Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski

Bardziej szczegółowo

Przetwarzanie Rozproszone i Równoległe

Przetwarzanie Rozproszone i Równoległe WYDZIAŁ INŻYNIERII ELEKTRYCZNEJ I KOMPUTEROWEJ KATEDRA AUTOMATYKI I TECHNIK INFORMACYJNYCH Przetwarzanie Rozproszone i Równoległe www.pk.edu.pl/~zk/prir_hp.html Wykładowca: dr inż. Zbigniew Kokosiński

Bardziej szczegółowo

Apache Hadoop. Wolna implementacja GFS, MapReduce oraz Big Table. Michał Jaszczyk

Apache Hadoop. Wolna implementacja GFS, MapReduce oraz Big Table. Michał Jaszczyk Co to jest Hadoop? Trochę historii Wolna implementacja GFS, oraz Big Table Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Seminarium Systemów Rozproszonych 6 listopada 2008 Co to jest

Bardziej szczegółowo

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

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/ kuszner/arir/ 2005/06

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

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

Kodowanie Huffmana. Platforma programistyczna.net; materiały do laboratorium 2014/15 Marcin Wilczewski

Kodowanie Huffmana. Platforma programistyczna.net; materiały do laboratorium 2014/15 Marcin Wilczewski Kodowanie Huffmana Platforma programistyczna.net; materiały do laboratorium 24/5 Marcin Wilczewski Algorytm Huffmana (David Huffman, 952) Algorytm Huffmana jest popularnym algorytmem generującym optymalny

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

Programowanie komputerów

Programowanie komputerów Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych

Bardziej szczegółowo

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy 1 Wprowadzenie do informatyki i użytkowania komputerów Kodowanie informacji System komputerowy Kodowanie informacji 2 Co to jest? bit, bajt, kod ASCII. Jak działa system komputerowy? Co to jest? pamięć

Bardziej szczegółowo

Projektowanie rozwiązań Big Data z wykorzystaniem Apache Hadoop & Family

Projektowanie rozwiązań Big Data z wykorzystaniem Apache Hadoop & Family Kod szkolenia: Tytuł szkolenia: HADOOP Projektowanie rozwiązań Big Data z wykorzystaniem Apache Hadoop & Family Dni: 5 Partner merytoryczny Opis: Adresaci szkolenia: Szkolenie jest adresowane do programistów,

Bardziej szczegółowo

Opis modułu pl.id w programie Komornik SQL-VAT

Opis modułu pl.id w programie Komornik SQL-VAT Opis modułu pl.id w programie Komornik SQL-VAT Nazwa: KSQLVAT.INS.PL.ID.002 Data: 02.01.2017 Wersja: 1.2.0 Cel: Opis działania funkcjonalności pl.id 2016 Currenda Sp. z o.o. Spis treści 1. Opis... 3 2.

Bardziej szczegółowo

Badanie struktury sieci WWW

Badanie struktury sieci WWW Eksploracja zasobów internetowych Wykład 1 Badanie struktury sieci WWW mgr inż. Maciej Kopczyński Białystok 214 Rys historyczny Idea sieci Web stworzona została w 1989 przez Tima BernersaLee z CERN jako

Bardziej szczegółowo

Laboratorium Chmur obliczeniowych. Paweł Świątek, Łukasz Falas, Patryk Schauer, Radosław Adamkiewicz

Laboratorium Chmur obliczeniowych. Paweł Świątek, Łukasz Falas, Patryk Schauer, Radosław Adamkiewicz Laboratorium Chmur obliczeniowych Paweł Świątek, Łukasz Falas, Patryk Schauer, Radosław Adamkiewicz Agenda SANTOS Lab laboratorium badawcze Zagadnienia badawcze Infrastruktura SANTOS Lab Zasoby laboratorium

Bardziej szczegółowo

Podpis elektroniczny dla firm jako bezpieczna usługa w chmurze. mgr inż. Artur Grygoruk

Podpis elektroniczny dla firm jako bezpieczna usługa w chmurze. mgr inż. Artur Grygoruk Podpis elektroniczny dla firm jako bezpieczna usługa w chmurze mgr inż. Artur Grygoruk Czy wyobrażamy sobie świat bez podpisu? Co podpis wnosi do naszego życia? Cisco Systems 1/15 Podpis elektroniczny

Bardziej szczegółowo

Projektowanie systemów za pomocą języków wysokiego poziomu ESL

Projektowanie systemów za pomocą języków wysokiego poziomu ESL Akademia Górniczo Hutnicza im. Stanisława Staszica w Krakowie Wydział IET Katedra Elektroniki Projektowanie systemów za pomocą języków wysokiego poziomu ESL Ćwiczenie 2 Implementacja funkcji Hash z użyciem

Bardziej szczegółowo

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu. Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową..

Bardziej szczegółowo

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

Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na Techniki indeksowania w eksploracji danych Maciej Zakrzewicz Instytut Informatyki Politechnika Poznańska Plan prezentacji Zastosowania indeksów w systemach baz danych Wprowadzenie do metod eksploracji

Bardziej szczegółowo

Algorytmy i Struktury Danych

Algorytmy i Struktury Danych POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI i TECHNIK INFORMACYJNYCH Algorytmy i Struktury Danych www.pk.edu.pl/~zk/aisd_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 12: Wstęp

Bardziej szczegółowo

WPROWADZENIE DO BAZ DANYCH

WPROWADZENIE DO BAZ DANYCH WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z

Bardziej szczegółowo

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1 Metodologia programowania równoległego Przykłady podziałów zadania na podzadania: Podział ze względu na funkcje (functional

Bardziej szczegółowo

Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna

Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna 1. Wstęp Wprowadzenie do PKI Infrastruktura klucza publicznego (ang. PKI - Public Key Infrastructure) to termin dzisiaj powszechnie spotykany. Pod tym pojęciem kryje się standard X.509 opracowany przez

Bardziej szczegółowo

Przykładowe B+ drzewo

Przykładowe B+ drzewo Przykładowe B+ drzewo 3 8 1 3 7 8 12 Jak obliczyć rząd indeksu p Dane: rozmiar klucza V, rozmiar wskaźnika do bloku P, rozmiar bloku B, liczba rekordów w indeksowanym pliku danych r i liczba bloków pliku

Bardziej szczegółowo

Projektowanie i implementacja wysokowydajnych aplikacji w języku

Projektowanie i implementacja wysokowydajnych aplikacji w języku Program szkolenia: Projektowanie i implementacja wysokowydajnych aplikacji w języku PHP Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Projektowanie i implementacja wysokowydajnych

Bardziej szczegółowo

Jarosław Kuchta Projektowanie Aplikacji Internetowych. Projektowanie warstwy danych

Jarosław Kuchta Projektowanie Aplikacji Internetowych. Projektowanie warstwy danych Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie warstwy danych Zagadnienia Sposoby zapisu danych zewnętrznych Odwzorowanie dziedziny problemu w dziedzinę danych Normalizacja relacyjnej

Bardziej szczegółowo

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

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Wydajność systemów a organizacja pamięci Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Motywacja - memory wall Krzysztof Banaś, Obliczenia wysokiej wydajności. 2 Organizacja pamięci Organizacja pamięci:

Bardziej szczegółowo

Zapytanie ofertowe nr 03/05/2014. Zakup licencji na oprogramowanie do wirtualizacji Działanie POIG 8.2

Zapytanie ofertowe nr 03/05/2014. Zakup licencji na oprogramowanie do wirtualizacji Działanie POIG 8.2 nr 03/05/2014 Zakup licencji na oprogramowanie do wirtualizacji Działanie POIG 8.2 Warszawa, 5 maja 2014 Veriti sp. z o.o. ul. Koszycka 8 01-446 Warszawa Tel/Faks : +48 22 100 62 42 e-mail: biuro@veriti.pl

Bardziej szczegółowo

Struktura drzewa w MySQL. Michał Tyszczenko

Struktura drzewa w MySQL. Michał Tyszczenko Struktura drzewa w MySQL Michał Tyszczenko W informatyce drzewa są strukturami danych reprezentującymi drzewa matematyczne. W naturalny sposób reprezentują hierarchię danych toteż głównie do tego celu

Bardziej szczegółowo

Algorytm genetyczny (genetic algorithm)-

Algorytm genetyczny (genetic algorithm)- Optymalizacja W praktyce inżynierskiej często zachodzi potrzeba znalezienia parametrów, dla których system/urządzenie będzie działać w sposób optymalny. Klasyczne podejście do optymalizacji: sformułowanie

Bardziej szczegółowo

Relacyjny model baz danych, model związków encji, normalizacje

Relacyjny model baz danych, model związków encji, normalizacje Relacyjny model baz danych, model związków encji, normalizacje Wyklad 3 mgr inż. Maciej Lasota mgr inż. Karol Wieczorek Politechnika Świętokrzyska Katedra Informatyki Kielce, 2009 Definicje Operacje na

Bardziej szczegółowo

BMC Control-M Wybrane przypadki zastosowania

BMC Control-M Wybrane przypadki zastosowania Piotr Orlański Mariusz Gajewski CompFort Meridian Polska & BMC Software BMC Control-M Wybrane przypadki zastosowania Warszawa, 11 czerwca 2015 DISASTER RECOVERY Środowisko bankowe Problem: Zorganizowanie

Bardziej szczegółowo

Technologia informacyjna

Technologia informacyjna Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,

Bardziej szczegółowo

Bezpieczne miasto. koncepcja i rozwiązania w projekcie Mayday Euro 2012

Bezpieczne miasto. koncepcja i rozwiązania w projekcie Mayday Euro 2012 Bezpieczne miasto koncepcja i rozwiązania w projekcie Mayday Euro 2012 II Konferencja i3: internet - infrastruktury - innowacje Wrocław, 1-3 grudnia 2010 Rafał Knopa Rafal.Knopa@eti.pg.gda.pl Plan prezentacji

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

Jeszcze o algorytmach

Jeszcze o algorytmach Jeszcze o algorytmach Przykłady różnych, podstawowych algorytmów 11.01.2018 M. Rad Plan Powtórka Znajdowanie najmniejszego elementu Segregowanie Poszukiwanie przez połowienie Wstawianie Inne algorytmy

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna

Bardziej szczegółowo

Wprowadzenie do baz danych

Wprowadzenie do baz danych Wprowadzenie do baz danych Dr inż. Szczepan Paszkiel szczepanpaszkiel@o2.pl Katedra Inżynierii Biomedycznej Politechnika Opolska Wprowadzenie DBMS Database Managment System, System za pomocą którego można

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

Strona tytułowa, zgodnie z wymaganiami zamieszczonymi na stronie www uczelni. Wzór strony dostępny jest w dzienniku wirtualnym - 1 -

Strona tytułowa, zgodnie z wymaganiami zamieszczonymi na stronie www uczelni. Wzór strony dostępny jest w dzienniku wirtualnym - 1 - Strona tytułowa, zgodnie z wymaganiami zamieszczonymi na stronie www uczelni. Wzór strony dostępny jest w dzienniku wirtualnym - 1 - Spis treści 1 Wstęp... 3 1.1 Cel pracy... 3 1.2 Układ pracy... 4 2 Podstawy

Bardziej szczegółowo

Ataki na RSA. Andrzej Chmielowiec. Centrum Modelowania Matematycznego Sigma. Ataki na RSA p. 1

Ataki na RSA. Andrzej Chmielowiec. Centrum Modelowania Matematycznego Sigma. Ataki na RSA p. 1 Ataki na RSA Andrzej Chmielowiec andrzej.chmielowiec@cmmsigma.eu Centrum Modelowania Matematycznego Sigma Ataki na RSA p. 1 Plan prezentacji Wprowadzenie Ataki algebraiczne Ataki z kanałem pobocznym Podsumowanie

Bardziej szczegółowo

Projekt Fstorage. www.fstorage.pl. Łukasz Podkalicki Bartosz Kropiewnicki

Projekt Fstorage. www.fstorage.pl. Łukasz Podkalicki Bartosz Kropiewnicki Projekt Fstorage www.fstorage.pl Łukasz Podkalicki Bartosz Kropiewnicki Konspekt 1. Problemy związane ze składowaniem plików 2. Dostępne darmowe technologie 3. Opis najczęściej stosowanej technologii 4.

Bardziej szczegółowo

Java Collections Framework

Java Collections Framework Java Collections Framework Co to jest Java Collections Framework JCF Zunifikowana architektura do reprezentacji i manipulacji kolekcjami danych. Składa się z: Interfejsów Definuje abstrakcyjne typy możliwych

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Algorytm 1. Termin algorytm jest używany w informatyce

Bardziej szczegółowo