Apache Hadoop framework do pisania aplikacji rozproszonych
|
|
- Anatol Przybylski
- 8 lat temu
- Przeglądów:
Transkrypt
1 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. Wśród takich zadań wymienić można analizowanie skomplikowanych danych (na przykład dane z LHC etc...), albo przetwarzanie ogromnych ich ilości (na przykład Google Maps). Z tego powodu rozwijane są narzędzia ułatwiające wykonywanie obliczeń na wielu komputerach jednocześnie. W przypadku tradycyjnych podejść, programista musi samemu rozwiązywać problemy narastające między innymi kiedy więcej niż jeden działający fragment obliczenia chce uzyskać dostęp do zasobu, kiedy potrzebna jest komunikacja między maszynami itp. Google zaproponował własny paradygmat tworzenia aplikacji rozproszonych, Map Reduce [1] Struktura programów napisanych zgodnie z nim, ułatwia rozwiązywanie wielu skomplikowanych problemów współbieżności automatycznie, ułatwiając zadanie programisty. Przedstawione podejście sprawdza się wyjątkowo dobrze w przypadku programowania zadań wymagających przetwarzania dużych ilości danych. Apache Hadoop jest wolną implementacją Map Reduce. Jest wykorzystywany przez wiele dużych firm takich, jak Yahoo, Amazon czy Facebook. Google posiada własną implementację Map Reduce, którą wykorzystuje wewnętrznie. Hadoop składa się z oprogramowania uruchamianego na maszynach przeznaczonych do wykonywania obliczeń i przechowywania danych oraz z zestawu bibliotek
2 Apache Hadoop framework do pisania aplikacji rozproszonych 59 Rys 1 Elementy zadania Map Reduce umożliwiających pisanie zadań. Językiem, w którym Hadoop jest napisany, jest głównie Java. Konsekwencją tego jest dostarczenie największej liczby interfejsów programistycznych dla tego języka. Również najbardziej naturalną metodą tworzenia programów działających pod kontrolą Hadoop, jest dostarczenie odpowiednich klas w Javie. Istnieje możliwość wykorzystania dowolnego innego języka programowania. Czasami możliwe jest również uruchomienie istniejącego programu, jako części zadania Map Reduce, bez ingerencji w jego strukturę wewnętrzną. Podstawy Map Reduce W najprostszym przypadku, przygotowanie zadania dla Map Reduce, sprowadza się do zaimplementowania dwóch funkcji, map oraz reduce. Konieczne jest również zdefiniowanie położenia danych wejściowych oraz miejsca, gdzie mają być składowane wyniki. Zadaniem funkcji map jest wykonanie pewnych obliczeń na przekazanym jej fragmencie danych wejściowych oraz wygenerowanie ciągu par składających się z klucza oraz przypisanej mu wartości. Dane wygenerowane w tym kroku, są agregowane z wykorzystaniem klucza oraz przekazywane do funkcji reduce. Każde wywołanie reduce związane jest z jednym kluczem oraz listą wszystkich odpowiadających mu wartości. Zadanie funkcji reduce polega na wygenerowaniu par stanowiących wynik obliczenia. Są one zapisywane w lokalizacji wskazanej jako wyjściowa. Rysunek 1 pokazuje strukturę dowolnego obliczenia Map Reduce. Dopóki cały opisany proces odbywa się na jednej maszynie, stosowanie infrastruktury związanej z Map Reduce wiąże się głównie ze stratami wydajności. Jeśli jednak dane wejściowe są odpowiednio duże, implementacja Map Reduce (na przykład Hadoop) zadba o to, aby obliczenia zostały automatycznie rozproszone. Rysunek 2 przedstawia schemat wykonania zadania przygotowanego dla Hadoop na wielu maszynach jednocześnie. Na pierwszy rzut oka, rozwiązanie wydaje się dość niewydajne, ponieważ przesyłanie dużych ilości danych za pośrednictwem sieci jest stosunkowo wolnym procesem. Hadoop stara się umieszczać obliczenia na tych samych maszynach, gdzie przechowywane są dane. Jeśli nie jest to możliwe, obliczenia wykonywane są w miejscach, które są bliskie ze względu na szybkość połączenia sieciowego. Klasycznym przykładem zastosowania paradygmatu Map Reduce, opisanym w [1], jest generowanie statystyk słów pojawiających się w tekście przekazanym jako wejście. Funkcja map, odpowiedzialna może być w takim przypadku za podzielenie otrzymanego napisu na wyrazy oraz wygenerowanie par zawierających wyraz jako klucz oraz liczbę 1 jako wartość. W następnym kroku, framework automatycznie pogrupuje pary ze względu na słowa będące kluczami par. Zadaniem funkcji reduce
3 60 Piotr Praczyk Rys 2 Struktura rozproszonego Map Reduce Rys 3 Liczenie statystyk słów w tekście z wykorzystaniem Map Reduce będzie policzenie, ile par zostało przekazanych dla danego słowa, oraz zwrócenie pary składającej się z rozważanego słowa oraz liczby jego wystąpień. Rysunek 3 pokazuje, jak może przebiegać liczenie słów w przykładowym tekście. Implementacje zadań Domyślnym sposobem implementacji zadań dla Hadoop, jest przygotowanie klas Javy, implementujących interfejsy Mapper oraz Reducer odpowiedzialne odpowiednio za etapy map oraz reduce tworzonego zadania. Oba interfejsy wymagają, aby zostały określone typy par pojawiających się na wejściu oraz wyjściu odpowiednich kroków, z tego powodu są zaimplementowane jako interfejsy generyczne pobierające 4 typy jako argumenty. Składnia dla tych interfejsów przedstawiona jest na listingu 1
4 Apache Hadoop framework do pisania aplikacji rozproszonych 61 Mapper<InputKeyType, InputValType, IntermKeyType, IntermValType> Reducer<IntermKeyType, IntermValType, OutputKeyType, OutputValType> Listing 1 Składnia interfejsów wykorzystywanych przy implementacji zadań Map Reduce w Javie Odporność na awarie Hadoop został zaprojektowany, aby możliwe było wykonywanie z jego pomocą obliczeń na zwyczajnych komputerach. Wiąże się to z o wiele większą podatnością na awarie i błędy. Jeden z węzłów wykorzystywanego klastra jest odpowiedzialny za śledzenie obliczeń. Jeśli wykryta zostanie awaria, część zadania jest powtarzana na innej m aszynie. W jaki sposób wspierane są heurystyki dbające o lokalność obliczeń? Aby możliwe było wykonywanie obliczeń w pobliżu danych przeznaczonych do przetworzenia, konieczne jest posiadanie informacji na temat ich lokacji. Stosowanie zwykłego systemu plików, dostarczanego przez system operacyjny nie jest dobrym rozwiązaniem ze względu na wysoki poziom abstrakcji danych. W przypadku systemów unixowych, system stara się ukryć szczegóły dotyczące fizycznego przechowywania danych poprzez utrzymywanie wirtualnego drzewa katalogów. Dzięki temu możliwe jest działanie tych samych programów na różnych zbiorach danych, często przechowywanych w sposób nie rozważany w trakcie pisania aplikacji. Jednocześnie jednak program taka nie jest w stanie odróżnić, czy plik znajduje się na lokalnej maszynie, czy może jest jedynie widoczny za pośrednictwem sieciowego systemu plików a zatem nie jest w stanie określić, jak kosztowne będzie jego odczytanie. Z tego powodu konieczne jest zastosowanie innych rozwiązań. HDFS Domyślną metodą przechowywania danych przez Hadoop jest dedykowany rozproszony system plików, HDFS (Hadoop Distributed File System). Został on zaprojektowany, aby zoptymalizować wykonywanie czynności związanych z Map Reduce, takich jak szybki dostęp do dużych, spójnych obszarów danych, udostępnianie informacji o fizycznym ich położeniu, tworzenie kopii danych na innych maszynach zgodnie z topologią sieci. Aby przyspieszyć powyższe operacje, niektóre standardowe wymagania stawiane przed systemem plików, wymienione w specyfikacji POSIX, nie zostały spełnione. W HDFS wspierany jest model, według którego pliki zapisywane są tylko raz, lecz mogą być odczytywane wielokrotnie. Możliwe jest również dopisywanie danych na końcu istniejących już plików, jednak w obecnej wersji funkcjonalność ta nie jest jeszcze uważana za stabilną. Aby zapewnić całkowitą lokalność danych, te same maszyny powinny być wykorzystywane do obliczeń jak i przechowywania danych.
5 62 Piotr Praczyk Ze względu na to, że zadania Map Reduce, z natury przetwarzają duże ilości danych, system plików HDFS posiada duży rozmiar bloku. Dzięki temu, obciążenie związane z przechowywaniem i uzyskiwaniem metadanych jest o wiele mniejsze niż w przypadku standardowych rozwiązań. konsekwencją takiego podejścia jest jednak to, że HDFS nie nadaje się do przechowywania wielu małych plików [2]. Za każdym razem kiedy plik jest zapisywany, najmniejsza liczba bloków dostarczająca potrzebnej przestrzeni dyskowej, jest alokowana. Jeśli plik nie wykorzystuje pełnego bloku, reszta pozostaje pusta. Uruchamiając zadanie Hadoop, jako parametr można przekazać foldery służące do przechowywania tych danych. Wszystkie operacje na plikach zostaną wykonane automatycznie a program otrzyma na wejściu odpowiednie pary. Istnieje sterownik wykorzystujący bibliotekę Fuse, który pozwala na zmontowanie HDFS w drzewie katalogów. Domyślnym sposobem dostępu do systemu plików jest jednak wywołanie Hadoop z parametrem dfs. Udostępniane operacje są podobne do tych udostępnianych przez powłokę systemową w stosunku do zwykłych sys temów plików. HBase Czasami system plików nie jest najlepszym rozwiązaniem. Może tak się zdarzyć, kiedy na przykład specyfika rozwiązywanego problemu wymaga przechowywania wielu niewielkich porcji danych. HBase jest implementacją rozproszonej bazy danych BigTable, przedstawionej przez Google w [3]. HBase nie jest relacyjną bazą danych, lecz tak zwanym Key-value store. Dane przechowywane są w strukturze przypominającej wielopoziomowy słownik. Kluczami są dowolne ciągi bajtów. Dane są fizycznie przechowywane w kolejności leksykograficznej względem klucza, co pozwala na szybkie wyszukiwanie oraz na pewne optymalizacje przy tworzeniu zadań. Podobnie, jak w przypadku HDFS, HBase została zoptymalizowana pod kątem operacji typowych dla Map Reduce. Zrezygnowano z funkcjonalności, które były kosztowne w przypadku rozproszonych, relacyjnych baz danych. Z tego powodu nie ma możliwości definiowania logicznych powiązań między danymi, takich jak klucze obce. Również obsługa transakcji jest bardzo okrojona i ogranicza się do atomowego wykonywania ciągu operacji dotyczących jednego wiersza. W chwili pisania tego teksu, jedynie API dla języka Java było dostępne. Możliwość implementacji własnych formatów wejściowych Lista możliwych źródeł danych wejściowych oraz sposobów zapisywania wyników nie ogranicza się do opisanych powyżej. Możliwe jest wykorzystanie tradycyjnych systemów plików oraz relacyjnych baz danych, w przypadku których korzyści związane z lokalnością obliczeń zostaną utracone. Istnieje również możliwość implementacji własnych źródeł danych. Zadanie takie sprowadza się do napisania zestawu klas w Javie, implementujących interfejsy InputFormat, RecordReader oraz InputSplit. Dzięki temu możliwa jest współpraca zadań Hadoop z dowolnymi nośnikami, możliwe jest konwertowanie danych w locie a nawet generowanie ich w czasie wykonania.
6 Apache Hadoop framework do pisania aplikacji rozproszonych 63 Sytuacja wygląda podobnie w przypadku sposobów przechowywania wyników. Alternatywne metody implementacji zadań Map Reduce Często implementacja zadań w języku Java nie jest najwygodniejszym rozwiązaniem. Powodem mogą być sytuacje kiedy zamknięta biblioteka programistyczna, niedostępna w Javie, musi zostać wykorzystana. Czasami wygodne mogło by być również wykorzystywanie gotowych programów, jako zadań Map Reduce. Hadoop udostępnia dwa interfejsy pozwalające na wykorzystanie innych języków programowania. Stosowanie ich wiąże się z pewnymi ograniczeniami w stosunku do stosowania natywnej implementacji. W niektórych sytuacjach może być jednak wygodne. Streaming Najbardziej uniwersalnym interfejsem programistycznym jest Hadoop Streaming. Pozwala on na wykorzystanie dowolnego programu w obu krokach wykonywania zadania Map Reduce. Dane wejściowe przekazywane są za pomocą standardowego wejścia. Dane wyjściowe powinny zostać przekazane przez standardowe wyjście. Ponieważ dane składają się z ciągu par klucz, wartość, zdefiniowany jest sposób interpretacji napisów. Każda linia koduje jedną parę. Istnieje możliwość zdefiniowania separatora. W obecnej wersji Hadoop nie wspiera przekazywania danych binarnych przy stosowaniu Streamingu, są jednak plany zaimplementowania tej funkcjonalności w przyszłości. Dzięki opisanemu sposobowi komunikacji z frameworkiem, możliwe jest wykorzystanie istniejących programów jako zadań Hadoop. Możliwe jest również uruchamianie ciągów poleceń powłoki. Pipes Kolejny z dostarczonych interfejsów programistycznych jest dedykowany dla języka C++. Zamiast implementacji klas w Javie, umożliwia on dostarczenie klas C++. Muszą one dziedziczyć po klasach zdefiniowanych w odpowiednim pliku nagłówkowym będącym częścią dystrybucji Hadoop. Rozwiązanie te jest mniej uniwersalne, jednak pozwala na większą kontrolę nad zadaniem. Dzięki zastosowaniu struktur danych języka programowania, łatwy jest dostęp do wewnętrznych struktur opisujących zadanie. Są one mapowane na odpowiednie obiekty C++. Podobnie, jak w przypadku stosowania Streamingu, pojawiają się problemy przy przekazywaniu danych binarnych. Przy zastosowaniu SWIG, możliwe jest stworzenie wrapperów dla wielu języków programowania. Stosowanie zarówno Hadoop Pipes jak i Streamingu, może łączyć się z wykorzystaniem dowolnych formatów wejściowych, wyjściowych oraz innych wtyczek dla Hadoop. Elementy te muszą być jednak zaimplementowane w Javie.
7 64 Piotr Praczyk Projekty związane z Map Reduce Poza HBase, istnieją również inne projekty związane z Hadoop, rozszerzające jego możliwości albo pozwalające na wykonywanie konkretnych rodzajów obliczeń. Kilka przykładów zostało opisanych poniżej. Dumbo Dumbo jest biblioteką języka Python, oraz zestawem narzędzi usprawniających pisanie zadań korzystających z Hadoop Streaming. Wśród dostarczanych udogodnień, warto wymienić automateczne parsowanie wejścia i przekazywanie go do funkcji map i reduce za pomocą odpowiednich struktur danych oraz wsparcie dla przekazywania danych binarnych. Hama Hama jest biblioteką pozwalającą na wykonywanie operacji na dużych macierzach z wykorzystaniem Map Reduce a w szczególności Hadoop. W obecnym stadium rozwoju brakuje jej wiele funkcji, jak liczenia wartości własnych, w związku z czym jest rozwijana w ramach Apache Incubator. Mahout Projekt Mahout ma na celu dostarczenie bibliotek wspomagających uczenie maszynowe, wykorzystujących Hadoop w celu wykonywania obliczeń. Hadoop a Cloud Computing Najbardziej oczywistą metodą uzyskania dostępu do klastra działającego pod kontrolą Hadoop jest własnoręczne skonfigurowanie takiego. Nie jest to jednak jedyna możliwość. Firma Amazon, udostępnia instalację Hadoop w ramach swoich serwisów Cloud Computing [4]. Korzystając ze strony internetowej, możliwe jest uruchomienie dowolnej liczby maszyn mających wykonywać zadania Map Reduce. Opłaty pobierane są od godziny działania instalacji. Dzięki takiemu podejściu, możliwe jest dynamiczne rezerwowanie oraz zwalnianie potrzebnych zasobów co może prowadzić do zmniejszenia kosztów działania instalacji. Niekorzystnym efektem pojawiającym się przy stosowaniu rozwiązania Amazon jest to, że dane trzymane są domyślnie w sieciowym systemie plików S3. W efekcie, rozwiązanie nie korzysta z lokalności obliczeń. Czasami jednak, na przykład kiedy ilość obliczeń jest duża w porównaniu z ilością danych, nie ma to dużego znaczenia. Couldera Firma Cloudera dostarcza komercyjną dystrybucję Hadoop zawierającą dodatkowe narzędzia konfiguracyjne. Oferuje również wsparcie techniczne.
8 Podsumowanie Apache Hadoop framework do pisania aplikacji rozproszonych 65 Map Reduce wydaje się być dobrą alternatywą dla standardowych API umożliwiających pisanie aplikacji rozproszonych. Wiele problemów daje się wyrazić za pomocą tego paradygmatu w bardzo naturalny sposób, czyniąc powstałe programy bardziej czytelnymi. Pomimo stosunkowo wczesnej fazy rozwoju, projekt Hadoop udowodnił już swoją przydatność. Wiele znanych firm wykorzystuje go do przetwarzania danych na wielką skalę. Dzięki przejrzystej strukturze Map Reduce, łatwo jest zacząć pisać własne zadania działające pod kontrolą Hadoop. Implementacja pozwalająca pisać własne wtyczki, jak na przykład formaty wejścia i wyjścia, zwiększa rozdział komponentów programu sprawiając, że podatność na błędy jest o wiele mniejsza. Literatura [1] J. Dean and S. Ghemawat, Mapreduce: simplified data processing on large clusters, Commun. ACM 51 (2008), no. 1, [2] T. White The Small Files Problem. [3] F. Changet al. Bigtable: a distributed storage system for structured data, in OSDI 06: Proceedings of the 7th symposium on Operating systems design and implementation (USENIX Association, Berkeley, CA, USA, 2006), pp [4] Amazon Elastic MapReduce.
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ółowoProjektowanie 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ółowoALGORYTMICZNA 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ółowoArchitektura 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ółowoMap 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ółowoHadoop 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ółowoREFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
Bardziej szczegółowoWprowadzenie 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ółowoTworzenie i obsługa wirtualnego laboratorium komputerowego
Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Michał Ochociński nr albumu: 236401 Praca magisterska na kierunku informatyka stosowana Tworzenie i obsługa wirtualnego
Bardziej szczegółowoRobert Barański, AGH, KMIW Writing TDM and TDMS Files in LabVIEW v1.0
Aby zmniejszyć potrzebę opracowania i utrzymania własnego formatu pliku danych, National Instruments stworzył elastyczne zarządzanie danymi technicznymi (TDM) model danych, który jest standardowo dostępny
Bardziej szczegółowoHurtownie 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ółowoWprowadzenie 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ółowoAnaliza i projektowanie aplikacji Java
Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie
Bardziej szczegółowoOrganizacyjnie. 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ółowoAUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7
AUREA BPM Oracle TECNA Sp. z o.o. Strona 1 z 7 ORACLE DATABASE System zarządzania bazą danych firmy Oracle jest jednym z najlepszych i najpopularniejszych rozwiązań tego typu na rynku. Oracle Database
Bardziej szczegółowoDariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Bardziej szczegółowoSłowa kluczowe jak góry lodowe
Public Słowa kluczowe jak góry lodowe czyli rzecz o bibliotekach testowych Marcin Kowalczyk marcin.kowalczyk@tieto.com Spis treści Dlaczego słowa kluczowe są jak góry lodowe, po co tworzyć własne biblioteki
Bardziej szczegółowo<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>
Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą
Bardziej szczegółowoPodstawowe 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ółowoSystem kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010
System kontroli wersji - wprowadzenie Rzeszów,2 XII 2010 System kontroli wersji System kontroli wersji (ang. version/revision control system) służy do śledzenia zmian głównie w kodzie źródłowym oraz pomocy
Bardziej szczegółowoJeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.
Języki C i C++ to bardzo uniwersalne platformy programistyczne o ogromnych możliwościach. Wykorzystywane są do tworzenia systemów operacyjnych i oprogramowania użytkowego. Dzięki niskiemu poziomowi abstrakcji
Bardziej szczegółowoMiędzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Agnieszka Holka Nr albumu: 187396 Praca magisterska na kierunku Informatyka
Bardziej szczegółowoMapReduce. 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ółowoActiveXperts SMS Messaging Server
ActiveXperts SMS Messaging Server ActiveXperts SMS Messaging Server to oprogramowanie typu framework dedykowane wysyłaniu, odbieraniu oraz przetwarzaniu wiadomości SMS i e-mail, a także tworzeniu własnych
Bardziej szczegółowoTemat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
Bardziej szczegółowoProgramowanie obiektowe zastosowanie języka Java SE
Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z
Bardziej szczegółowoSystem zarządzania firmą specyfikacja techniczna.
System zarządzania firmą specyfikacja techniczna. 1. Zakres funkcjonalności Funkcjonalność aplikacji została podzielona na 3 grupy: Zbiór podstawowych danych dane kontrahentów, typy dokumentów, magazynów,
Bardziej szczegółowoProgramowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
Bardziej szczegółowoInstalacja 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ółowoWykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa
Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Instalacja roli kontrolera domeny, Aby zainstalować rolę kontrolera domeny, należy uruchomić Zarządzenie tym serwerem, po czym wybrać przycisk
Bardziej szczegółowoModelowanie i Programowanie Obiektowe
Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do
Bardziej szczegółowoOSGi Agata Hejmej 4.05.2009
OSGi Agata Hejmej 4.05.2009 Plan prezentacji Co to jest OSGi Jakie problemy rozwiązuje Opis standardu Przykładowa aplikacja Podsumowanie korzyści Co to jest OSGi? Standard, który pozwala na tworzenie wysoce
Bardziej szczegółowoHbase, 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ółowoBig 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ółowoProjektowanie 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ółowoPodstawowe zagadnienia z zakresu baz danych
Podstawowe zagadnienia z zakresu baz danych Jednym z najważniejszych współczesnych zastosowań komputerów we wszelkich dziedzinach życia jest gromadzenie, wyszukiwanie i udostępnianie informacji. Specjalizowane
Bardziej szczegółowoPierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Pierwsze kroki Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Co znaczy
Bardziej szczegółowoDokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy
Dokumentacja techniczna Młodzieżowe Pośrednictwo Pracy Spis Treści 1. Widok ogólny architektury MPP... 3 2. Warstwy systemu... 5 3. Struktura systemu/komponentów... 7 3.1 Aplikacje... 7 3.2 Biblioteki...
Bardziej szczegółowoDni: 2. Partner merytoryczny. Opis: Adresaci szkolenia
Kod szkolenia: Tytuł szkolenia: BIGDATA/STR Strumieniowe przetwarzanie Big Data Dni: 2 Partner merytoryczny Opis: Adresaci szkolenia Szkolenie jest przeznaczone głównie dla programistów i analityków danych,
Bardziej szczegółowoSystem zarządzający grami programistycznymi Meridius
System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu
Bardziej szczegółowoOrganizacyjnie. 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ółowoArchitektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.
Architektura Systemu Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura jest zbiorem decyzji dotyczących: organizacji systemu komputerowego,
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha
Bardziej szczegółowoUMOWY CYWILNOPRAWNE Instalacja, rejestracja i konfiguracja programu
UMOWY CYWILNOPRAWNE Instalacja, rejestracja i konfiguracja programu 1. Wersje i warianty programu Nr wersji programu składa się z trzech liczb oddzielonych kropkami: człon pierwszy oznacza główny nr wersji
Bardziej szczegółowoPrzetwarzanie 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ółowoProcesowa specyfikacja systemów IT
Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office
Bardziej szczegółowoCzym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa
1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko
Bardziej szczegółowoGenerated by Foxit PDF Creator Foxit Software http://www.foxitsoftware.com For evaluation only. System Szablonów
System Szablonów System szablonów System szablonów to biblioteka, która pozwala oddzielić warstwę prezentacji od warstwy logicznej. Aplikacja WWW najpierw pobiera wszystkie dane, przetwarza je i umieszcza
Bardziej szczegółowoDESlock+ szybki start
DESlock+ szybki start Wersja centralnie zarządzana Wersja bez centralnej administracji standalone WAŻNE! Pamiętaj, że jeśli chcesz korzystać z centralnego zarządzania koniecznie zacznij od instalacji serwera
Bardziej szczegółowoang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku
System plików 1. Pojęcie pliku 2. Typy i struktury plików 3. etody dostępu do plików 4. Katalogi 5. Budowa systemu plików Pojęcie pliku (ang( ang. file)! Plik jest abstrakcyjnym obrazem informacji gromadzonej
Bardziej szczegółowoCZĘŚĆ 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ółowoEXSO-CORE - specyfikacja
EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.
Bardziej szczegółowoAnaliza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32
Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:
Bardziej szczegółowoBaza 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ółowoJednym z najważniejszych zagadnień, z którym może się zetknąć twórca
Uwierzytelnianie w PHP 01 Jednym z najważniejszych zagadnień, z którym może się zetknąć twórca stron internetowych, jest identyfikacja i uwierzytelnienie uprzywilejowanego użytkownika. Od zaprojektowania
Bardziej szczegółowoOd uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.
Kod szkolenia: Tytuł szkolenia: PS/LINUX Programowanie systemowe w Linux Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemie Linux, którzy chcą poznać
Bardziej szczegółowoDokumentacja projektu QUAIKE Architektura oprogramowania
Licencjacka Pracownia Oprogramowania Instytut Informatyki Uniwersytetu Wrocławskiego Jakub Kowalski, Andrzej Pilarczyk, Marek Kembrowski, Bartłomiej Gałkowski Dokumentacja projektu QUAIKE Architektura
Bardziej szczegółowoKonspekt pracy inżynierskiej
Konspekt pracy inżynierskiej Wydział Elektryczny Informatyka, Semestr VI Promotor: dr inż. Tomasz Bilski 1. Proponowany tytuł pracy inżynierskiej: Komunikator Gandu na platformę mobilną Android. 2. Cel
Bardziej szczegółowo76.Struktura oprogramowania rozproszonego.
76.Struktura oprogramowania rozproszonego. NajwaŜniejsze aspekty obiektowego programowania rozproszonego to: Współdziałanie (interoperability) modułów programowych na róŝnych maszynach. Wielokrotne wykorzystanie
Bardziej szczegółowoProgramowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści
Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop. 2017 Spis treści O autorach 11 Podziękowania 12 Wprowadzenie 13 CZĘŚĆ I ZACZNIJ PROGRAMOWAĆ JUŻ DZIŚ Godzina 1. Praktyczne
Bardziej szczegółowoedziennik Ustaw Opis architektury
edziennik Ustaw Opis architektury Spis treści 1 Wstęp...3 2 Architektura systemu...3 2.1 Schemat poglądowy rozwiązania...3 2.2 Architektura logiczna...4 2.3 Opis elementów systemu...5 2.3.1 Moduł Udostępniający...5
Bardziej szczegółowoAutomatyczna instalacja oprogramowania.
1 (Pobrane z slow7.pl) Samo zainstalowanie systemu nie nastręcza wielu problemów i z reguły cały proces przebiega szybko i sprawnie. Dłużej czasu zajmuje Nam odszukanie aktualnych sterowników do posiadanych
Bardziej szczegółowoOd programowania wizualnego do tekstowego
Od programowania wizualnego do tekstowego Krzysztof Chechłacz Nowa podstawa programowa z informatyki w świetle reformy oświaty - Konferencja w ramach XII edycji Akademii Technologii Informacyjnej i Komunikacyjnej
Bardziej szczegółowoProgramowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Bardziej szczegółowoTom 6 Opis oprogramowania
Część 4 Narzędzie do wyliczania wielkości oraz wartości parametrów stanu Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 30 maja 2012 Historia dokumentu Nazwa
Bardziej szczegółowoAnalityka danych w środowisku Hadoop. Piotr Czarnas, 27 czerwca 2017
Analityka danych w środowisku Hadoop Piotr Czarnas, 27 czerwca 2017 Hadoop i Business Intelligence - wyzwania 1 Ładowane danych do Hadoop-a jest trudne 2 Niewielu specjalistów dostępnych na rynku Dostęp
Bardziej szczegółowoWykład Ćwiczenia Laboratorium Projekt Seminarium
WYDZIAŁ ELEKTRONIKI KARTA PRZEDMIOTU Nazwa w języku polskim Języki programowania Nazwa w języku angielskim Programming languages Kierunek studiów (jeśli dotyczy): Informatyka - INF Specjalność (jeśli dotyczy):
Bardziej szczegółowoRozwiązanie Compuware dynatrace
Rozwiązanie Compuware dynatrace COMPUWARE DYNATRACE... 3 2 COMPUWARE DYNATRACE Narzędzie Compuware dynatrace oparte jest o unikatową technologię agentową, która pozwala na dogłębną analizę stanu aplikacji
Bardziej szczegółowoJava w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA
Java w 21 dni / Rogers Cadenhead. Gliwice, cop. 2016 Spis treści O autorze 11 Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA Dzień 1. Rozpoczynamy przygodę z Javą 21 Język Java 21 Programowanie obiektowe 24 Obiekty
Bardziej szczegółowoProgramowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz
Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania
Bardziej szczegółowoWYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ
WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ Zamawiający: Wojewódzkie Biuro Urbanistyczne we Wrocławiu ul. Świdnicka 12/16 50-068 Wrocław Wykonawca:
Bardziej szczegółowoOPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA
OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA Projekt to metoda na osiągnięcie celów organizacyjnych. Jest to zbiór powiązanych ze sobą, zmierzających
Bardziej szczegółowoBiorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:
Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie
Bardziej szczegółowoProgramowanie Komponentowe WebAPI
Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,
Bardziej szczegółowoMaciej Piotr Jankowski
Reduced Adder Graph Implementacja algorytmu RAG Maciej Piotr Jankowski 2005.12.22 Maciej Piotr Jankowski 1 Plan prezentacji 1. Wstęp 2. Implementacja 3. Usprawnienia optymalizacyjne 3.1. Tablica ekspansji
Bardziej szczegółowoInformacje 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Środowiska i platformy programistyczne
Środowiska i platformy programistyczne 1 Rys historyczny lata 80-90: efektywność! Cel: zwiększyć efektywność programisty jedno narzędzie: integracja edytor kodu, funkcje programistyczne (kompilacja, łączenie,
Bardziej szczegółowoSystemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi
Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie
Bardziej szczegółowoMetody eksploracji danych w odkrywaniu wiedzy (MED) projekt, dokumentacja końcowa
Metody eksploracji danych w odkrywaniu wiedzy (MED) projekt, dokumentacja końcowa Konrad Miziński 14 stycznia 2015 1 Temat projektu Grupowanie hierarchiczne na podstawie algorytmu k-średnich. 2 Dokumenty
Bardziej szczegółowoHistoria modeli programowania
Języki Programowania na Platformie.NET http://kaims.eti.pg.edu.pl/ goluch/ goluch@eti.pg.edu.pl Maszyny z wbudowanym oprogramowaniem Maszyny z wbudowanym oprogramowaniem automatyczne rozwiązywanie problemu
Bardziej szczegółowoPDM wbudowany w Solid Edge
PDM wbudowany w Solid Edge Firma GM System Integracja Systemów Inżynierskich Sp. z o.o. została założona w 2001 roku. Zajmujemy się dostarczaniem systemów CAD/CAM/CAE/PDM. Jesteśmy jednym z największych
Bardziej szczegółowoTom 6 Opis oprogramowania Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli obmiaru do celów fakturowania
Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 21 maja 2012 Historia dokumentu
Bardziej szczegółowoWprowadzenie do optymalnego wykorzystania MapReduce
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
Bardziej szczegółowoGrzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat
Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych
Bardziej szczegółowoUniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: 209216. Aukcjomat
Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Paweł Parys Nr albumu: 209216 Aukcjomat Praca licencjacka na kierunku INFORMATYKA w zakresie INFORMATYKA Praca wykonana pod kierunkiem
Bardziej szczegółowoSOA Web Services in Java
Wydział Informatyki i Zarządzania Wrocław,16 marca 2009 Plan prezentacji SOA 1 SOA 2 Usługi Przykłady Jak zacząć SOA Wycinek rzeczywistości Problemy zintegrowanych serwisów : Wycinek Rzeczywistości Zacznijmy
Bardziej szczegółowoJęzyk R : kompletny zestaw narzędzi dla analityków danych / Hadley Wickham, Garrett Grolemund. Gliwice, cop Spis treści
Język R : kompletny zestaw narzędzi dla analityków danych / Hadley Wickham, Garrett Grolemund. Gliwice, cop. 2018 Spis treści Wstęp 9 Część I. Przegląd 21 1. Wizualizacja danych za pomocą pakietu ggplot2
Bardziej szczegółowoWykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych
Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część pierwsza Od języka symbolicznego do języka wysokiego poziomu Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót
Bardziej szczegółowoCUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu
CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu inż. Daniel Solarz Wydział Fizyki i Informatyki Stosowanej AGH 1. Cel projektu. Celem projektu było napisanie wtyczki
Bardziej szczegółowoWykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki
Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład V Rzut okiem na języki programowania 1 Kompilacja vs. interpretacja KOMPILACJA Proces, który przetwarza program zapisany w języku programowania,
Bardziej szczegółowoRaport Hurtownie Danych
Raport Hurtownie Danych Algorytm Apriori na indeksie bitmapowym oraz OpenCL Mikołaj Dobski, Mateusz Jarus, Piotr Jessa, Jarosław Szymczak Cel projektu: Implementacja algorytmu Apriori oraz jego optymalizacja.
Bardziej szczegółowoStruktury systemów operacyjnych
Struktury systemów operacyjnych Jan Tuziemski Część slajdów to zmodyfiowane slajdy ze strony os-booi.com copyright Silberschatz, Galvin and Gagne, 2013 Cele wykładu 1. Opis usług dostarczanych przez OS
Bardziej szczegółowoBaza danych sql. 1. Wprowadzenie
Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z edytora graficznego struktury bazy danych, który
Bardziej szczegółowoSzablony funkcji i klas (templates)
Instrukcja laboratoryjna nr 3 Programowanie w języku C 2 (C++ poziom zaawansowany) Szablony funkcji i klas (templates) dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż. Tomasz Kaczmarek Wstęp
Bardziej szczegółowo1. Mapowanie diagramu klas na model relacyjny.
Rafał Drozd 1. Mapowanie diagramu klas na model relacyjny. 1.1 Asocjacje Wpływ na sposób przedstawienia asocjacji w podejściu relacyjnym ma przede wszystkim jej liczność (jeden-do-jednego, jeden-do-wielu,
Bardziej szczegółowojava.util.* :Kolekcje Tomasz Borzyszkowski
java.util.* :Kolekcje Tomasz Borzyszkowski Wstęp Kolekcje w Java dają programiście pewien standardowy sposób radzenia sobie z przetwarzaniem grup obiektów. Implementacja kolekcji w Java składa się z następujących
Bardziej szczegółowoDni: 3. Opis: Adresaci szkolenia
Kod szkolenia: Tytuł szkolenia: H4C04S HP OneView Administration Dni: 3 Opis: Adresaci szkolenia Administratorzy systemów, inżynierowie, konsultanci, którzy projektują i wdrażają rozwiązania HP Cloud za
Bardziej szczegółowoSYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)
(opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie
Bardziej szczegółowo