Praktyczne porównanie mechanizmów 2PC i 3PC dla rozproszonych baz danych
|
|
- Amalia Adamska
- 6 lat temu
- Przeglądów:
Transkrypt
1 Praktyczne porównanie mechanizmów 2PC i 3PC dla rozproszonych baz danych Małgorzata Sikorska Wydział Inżynierii Mechanicznej i Informatyki Kierunek Informatyka, Rok V msikorska@vp.pl Streszczenie Artykuł przedstawia porównanie podstawowych protokołów niepodzielnego zatwierdzania 2PC oraz 3PC dla rozproszonych baz danych. Odgrywają one zasadniczą rolę w przetwarzaniu transakcji rozproszonych. W celu praktycznego porównania tych protokołów zaprojektowano interfejsy realizujące mechanizmy 2PC i 3PC w oparciu o model przetwarzania transakcyjnego DTP, a następnie zaimplementowano je w jednej z najpopularniejszych architektur rozproszenia wspomagających przetwarzanie transakcyjne architekturze trójwarstwowej. W pracy skupiono się na przedstawieniu idei protokołów niepodzielnego zatwierdzania oraz ich oceny na podstawie kryteriów, takich jak złożoność czasowa oraz złożoność pod względem komunikatów, pozwalających na określenie ich wydajności. 1 Wprowadzenie Przetwarzanie transakcyjne jest jednym z podstawowych elementów funkcjonalności systemów zarządzania bazami danych. Jest ono niezbędne wszędzie tam gdzie aplikacje wymagają jednoczesnego dostępu do danych, współdzielonych pomiędzy wiele aplikacji, celem wykonania na nich operacji bazodanowych, stanowiących koncepcyjnie logiczną całość. Taki spójny logicznie zestaw operacji wykonywanych na bazie danych określany jest terminem transakcja. Najczęściej transakcja obejmuje operacje na jednej bazie danych. W przypadku rozproszonej bazy danych (DDB ang. Distributed Database), transakcja wykorzystuje dane z wielu baz danych tzw. węzłów systemu rozproszonego. Transakcje wykonujące operacje na danych znajdujących się na wielu niezależnych serwerach baz danych, stanowiących logiczna całość, określane są mianem transakcji rozproszonej (globalnej). Natomiast operacje składowe, czyli lokalne części transakcji globalnej wykonywane na poszczególnych węzłach, są nazywane gałęziami transakcji (ang. transaction branch). Zarówno w przypadku systemu scentralizowanego, jak i rozproszonego transakcja powinna odnosić się do danych odtwarzalnych i być z założenia niepodzielna (ang. atomic). W sytuacji, gdy operacje transakcji zostaną poprawnie zakończone, mówimy wtedy, że transakcja zakończyła się powodzeniem i jej skutki mogą zostać zatwierdzone w bazie danych. W pozostałych przypadkach mówimy o niepowodzeniu transakcji i tym samym 1
2 skutki transakcji powinny być wycofane, a stan bazy danych powinien być przywrócony do stanu sprzed rozpoczęcia transakcji. Aby zagwarantować powyższe własności każda transakcja powinna spełniać postulaty zasady ACID (ang. atomictiy, consistency, isolation, durability), zaproponowane przez Haider a i Reutera [3]: Atomowość (ang. atomicity) określa regułę wszystko albo nic, oznaczającą, że zbiór operacji składowych transakcji musi być wykonany w całości albo wcale. Spójność (ang. consistency) transakcja powinna przekształcać system z jednego stanu spójnego w inny spójny stan. Izolacja (ang. isolation) każda transakcja powinna być wykonywana niezależnie od innych działających współbieżnie transakcji, przetwarzanych w tym samym środowisku. Skutki współbieżnego wykonania transakcji powinny być takie same, jak wówczas gdyby wykonywano je w sposób szeregowy. Trwałość (ang. durability) wyniki działania zatwierdzonych transakcji powinny być zachowane w pamięci trwałej. W systemie rozproszonym zagwarantowanie powyższych własności transakcji nie jest zadaniem łatwym, dlatego też wprowadzono specjalne mechanizmy ułatwiające przetwarzanie transakcji rozproszonych zapewniające własności ACID. Są nimi protokoły niepodzielnego zatwierdzania (ang. atomic commitment protocols ACP). 2 Zatwierdzanie rozproszone Protokół niepodzielnego zatwierdzania jest algorytmem wykonywanym w celu niepodzielnego zatwierdzenia transakcji rozproszonej przez współpracujące w tym celu procesy. Każdy proces może oddać dokładnie jeden z dwóch możliwych głosów (ang. votes) Yes lub No, co pozwala na podjęcie wspólnej decyzji: Zatwierdzenie (ang. Commit) lub Zaniechanie (ang. Abort) transakcji. ACP pozwala zadecydować, czy transakcje rozproszoną należy zatwierdzić, czy też nie [1]. Na podjęcie decyzji mają wpływ następujące kwestie: 1. AC1 Wszystkie procesy, które podejmują decyzje, podejmują tą samą decyzje. 2. AC2 Procesy te nie mogą unieważnić swojej decyzji po tym jak już ją podjęły. 3. AC3 Decyzja o zatwierdzeniu może być podjęta tylko wtedy, gdy wszystkie procesy głosowały za zatwierdzeniem transakcji (oddały głos Yes). 4. AC4 Jeżeli wszystkie procesy głosowały na Yes, wtedy decyzją będzie Zatwierdzenie. 5. AC5 Powinno się rozważyć wykonania algorytmu obejmujące różnego rodzaje niepowodzenia takie jak awarie czy utraty komunikatów, do tolerowania których algorytm został zaprojektowany. Jeżeli wszystkie zaistniałe awarie zostaną naprawione i nie występują dostatecznie długo nowe awarie, wszystkie procesy podejmą w końcu decyzje. 2
3 3 Podstawowe protokoły niepodzielnego zatwierdzania Najczęściej stosowanym protokołem niepodzielnego zatwierdzania jest dwufazowy protokół zatwierdzania (ang. two-phase commit protocol), nazywany w skrócie protokołem 2PC [3]. Wykonanie protokołu 2PC rozpoczyna się w momencie rozpoczęcia zatwierdzania transakcji rozproszonej przez proces zwany koordynatorem na zlecenie klienta. Składa się z dwóch faz, w pierwszej fazie koordynator decyduje, kiedy rozpocząć zatwierdzanie transakcji rozproszonej. Jest to tzw. faza przygotowania (ang. prepare), każdy z uczestników transakcji przygotowuje się do lokalnego zatwierdzenia transakcji rozproszonej. Natomiast druga faza stanowi fazę rzeczywistego zatwierdzania (ang. commit) i rozpoczyna się w momencie, gdy każdy z uczestników transakcji rozproszonej wyraził gotowość do jej zatwierdzenia. Cały ten proces jest koordynowany przez zarządcę transakcji (ang. transaction manager), który może działać jako jeden z procesów systemu zarządzania jednej z rozproszonych baz danych lub może być zewnętrznym modułem wbudowanym w serwer aplikacji. Protokół 2PC jest w wielu przypadkach protokołem blokującym, ponieważ w wielu punktach wykonania tego protokołu procesy (są w stanie niepewności) oczekują na komunikaty, które mogą dotrzeć z dużym opóźnieniem lub nigdy, na skutek awarii lub innych okoliczności. W takich przypadkach procesy te mogą być czekać w nieskończoność, przez co są zablokowane. Na wypadek takich ewentualności stosuje się w protokole 2PC mechanizm anulowania zadań po upływie przewidzianego czasu (ang. timeout). Pozwala to uniknąć blokady procesów, gdyż oczekiwanie procesów jest przerywane przez po określonym czasie, po którym proces musi podjąć pewną akcję (ang. timeout action). W przypadku protokołu 3PC mamy do czynienia z dodatkową fazą (pre-commit), w której koordynator, po wyrażeniu gotowości przez każdego z uczestników transakcji do jej zatwierdzenia, wysyła do nich komunikat informujący o przygotowaniu się do zatwierdzenia transakcji i tym samym opuszczają oni stan niepewności. Dopiero po otrzymaniu koordynatora potwierdzenia otrzymania tego komunikatu przez wszystkich uczestników transakcji, następuje jej rzeczywiste zatwierdzenie. Zapewnia to większą niezawodność protokołu i odporność na awarie koordynatora [1]. 4 Projekt i realizacja mechanizmów 2PC i 3PC Istnieje wiele architektur rozproszenia, które wspomagają przetwarzanie transakcyjne. Obecnie stosuje się trójwarstwową architekturę rozproszoną opartą na oprogramowaniu pośredniczącym (ang. middleware), w której poszczególne węzły porozumiewają się za pomocą oprogramowania pośredniczącego, zakładający wspólny protokół komunikacyjny, przezroczysty dla użytkowników. W celu praktycznego porównania mechanizmy 2PC i 3PC zostały zrealizowane w postaci komponentów oprogramowania middleware na serwerze aplikacji, w oparciu o język Java i funkcjonalności sterownika JDBC [12]. Ponieważ technologie oprogramowania komponentowego, tworzą środowisko, które wymaga korzystania z ogólnie przyjętych modeli przetwarzania transakcyjnego, w niniejszej pracy aplikacja przetwarzająca transakcje rozproszone zbudowana została w oparciu o model przetwarzania transakcji rozproszonych standardu X/Open (ang. Distributed Transaction Processing Model DTP) [11]. Specyfikuje on m.in. komponenty, współpracujące ze sobą celem realizacji transakcji rozproszonej program aplikacyjny, za- 3
4 rządca transakcji, zarządcy zasobów. Określa także rodzaj interfejsów, jakie muszą być dostarczone przez system transakcyjny w celu zapewnienia atomowego wykonania transakcji globalnej. Interfejsy pomiędzy komponentami programowymi, a zarządcą transakcji (określony w specyfikacji X/Open jako interfejs TX) oraz pomiędzy zarządca transakcji, a zarządcą zasobów (zwany interfejsem XA). W niniejszej pracy funkcjonalność interfejsów TX i XA zastąpiono omówionym poniżej interfejsami zawartymi w pakietach dtp, transactions oraz tests. Poniżej omówione zostały komponenty programowe udostępniające te interfejsy zgodnie z modelem DTP. Komponent dtp.transactionmanager pełni funkcje zarządcy transakcji, jest kluczowym elementem budowanej architektury. Dostarcza on przede wszystkim interfejsów niezbędnych do tworzenia transakcji, przypisania jej identyfikatora, rozpoczęcia i kontroli protokołów niepodzielnego zatwierdzania. TID begintransaction() metoda pozwalająca na rozpoczęcie transakcji rozproszonej oraz zwrócenie wynikowego identyfikatora transakcji. boolean committransaction(transaction t) metoda wykonująca operację zatwierdzenia transakcji rozproszonej t. W tym celu realizuje niepodzielny protokół zatwierdzania ACP. Zwraca wartość TRUE, gdy transakcja globalna została zatwierdzona, w przeciwnym wypadku zwraca FALSE. void rollbacktransaction(transaction t) metoda wykonująca operacje zaniechania transakcji. void joinresourcemanager(resourcemanager participant) dodanie nowego uczestnika (zarządcy zasobów) transakcji rozproszonej (tzw. pozyskiwanie zasobów). Pozwala na zapamiętanie w spisie uczestników identyfikatora serwera pełniącego rolę zarządcy zasobów, który zarządza zasobami wykorzystywanymi w danej transakcji globalnej t. Komponent dtp.resorcemanager, pełni rolę zarządcy zasobów, który realizuje przydzieloną mu gałąź transakcji rozproszonej, bierze udział w protokole 2PC (3PC) celem niepodzielnego zatwierdzenia wszystkich gałęzi transakcji globalnej. Poniżej przestawione są interfejsy pozwalające na uczestnictwo w protokole 2PC (3PC): Boolean Prepare(TID tid) metoda wywoływana w pierwszej fazie protokołu 2PC (3PC). Wszyscy uczestnicy transakcji globalnej są poproszeni przez koordynatora (poprzez wywołane tej metody) o głosowanie za zatwierdzeniem tej transakcji lub jej zaniechaniem. Metoda zwraca głos (ang. vote) uczestnika, czyli TRUE, jeżeli uczestnik głosował za zatwierdzeniem transakcji, w przeciwnym wypadku zwraca FALSE. void Commit(TID tid) metoda zlecająca poszczególnym uczestnikom transakcji (określonej identyfikatorem tid) zatwierdzenie ich lokalnych części tej transakcji. Jest wywoływana w drugiej fazie protokołu 2PC lub odpowiednio w ostatniej fazie protokołu 3PC, tylko w przypadku, gdy wszyscy uczestnicy transakcji głosowali za zatwierdzeniem transakcji globalnej. void Abort(TID tid) metoda zlecająca poszczególnym uczestnikom transakcji (określonej identyfikatorem tid) zaniechanie ich lokalnych części tej transakcji. 4
5 Wywoływana w drugiej fazie protokołu 2PC (3PC), w momencie, gdy chociaż jeden z uczestników głosował za zaniechaniem transakcji lub faza ta nie powiodła się (ang. failed commit). W przypadku protokołu 3PC dodatkowo jest udostępniony interfejs: boolean PreCommit(TID tid) metoda wywoływana w drugiej fazie protokołu 3PC przez koordynatora po wykonaniu metody Prepare(). Jeżeli wszyscy uczestnicy głosowali YES, wysyła do nich komunikat PRE-COMMIT. Jest on informacją dla każdego z uczestników, że pozostali głosowali YES i tym samym opuszcza on stan niepewności. Metoda zwraca potwierdzenie odebrania komunikatu, czyli TRUE, w przeciwnym wypadku zwraca FALSE. Każdy z omówionych wyżej komponentów zapewnia rejestrację przebiegu transakcji rozproszonej w postaci wpisów w pliku rekonstrukcji znajdującego się w pamięci trwałej, co pozwala na przeprowadzenie procesu rekonstrukcji w przypadku awarii serwera. Komponent tests.generator klasa Java udostępniająca interfejs, który realizuje funkcjonalność programu aplikacyjnego (ang. Application Program AP) w modelu DTP. Definiuje on transakcję, określa jej granice oraz uzyskuje dostęp do zasobów, w celu wykonania na nich operacji. 5 Porównanie protokołów 2PC i 3PC W tej części przedstawione zostanie praktyczne porównanie protokołu 2PC z 3PC. Aby dokonać realnej oceny każdego z nich przeprowadzono odpowiednie testy wydajnościowe. W tym celu wyznaczono ich złożoność pod względem komunikatów oraz czasową. Omówione w poprzednim rozdziale protokoły 2PC i 3PC zostały zaimplementowane w celach przetestowania ich wydajności w rzeczywistym środowisku. Przeprowadzone eksperymenty pozwalają oszacować koszty ponoszone przy wykorzystaniu każdego z protokołów w aplikacjach trójwarstwowych (ang. three-tier applications). Obecnie największa wagę przy budowaniu aplikacji internetowych przykłada się do wydajności, co często jest decydującym czynnikiem wpływającym na utrzymaniu starych i pozyskiwaniu nowych klientów np. w systemach CRM. Dlatego też użyteczność protokołów 2PC oraz 3PC została określona na podstawie tego kryterium. Mechanizm 2PC (3PC) został zaimplementowany w technologi J2EE na serwerze aplikacji Apache Jakarta Tomcat na maszynie z zainstalowaną maszyną wirtualną Java (JVM) w wersji W celu przeprowadzenia testów pominięto maszyny klientów oraz implementację interakcji pomiędzy klientem (np. przeglądarka WWW), a użytkownikiem, ponieważ celem niniejszej pracy jest praktyczne porównanie obydwu protokołów, a nie ich pełna implementacja. Rolę komponentu aplikacyjnego pełni komponent JavaBean, który wykonuje operacje na zdalnych bazach danych poprzez oprogramowanie middleware. Działa on na tej samej maszynie, co serwer aplikacji. Funkcję zdalnych baz danych pełnią maszyny z zainstalowanym serwerem baz danych MySQLServer 5.0 oraz PostgreSQL 8.0. Komunikacja z warstwą danych się z nimi za pomocą sterownika JDBC w wersji 2.0. Wszystkie maszyny są fizycznie rozmieszczone w sieci lokalnej połączone siecią Ethernet. W pierwszym eksperymencie dokonano symulacji wymiany komunikatów pomiędzy poszczególnymi procesami, biorącymi udział w protokole niepodzielnego zatwierdzania, 5
6 w celu porównania złożoności pod względem komunikatów protokołu 2PC z 3PC. Zakładamy, że złożoność pod względem komunikatów jest mierzona na podstawie liczby komunikatów użytych w protokole. W przeprowadzonym eksperymencie nie bierzemy pod uwagę długości tych komunikatów, ponieważ są one na tyle krótkie, że mają wpływu na tą złożoność. Przebieg eksperymentu był następujący: wygenerowano zbiór żądań req do koordynatora o zatwierdzenie transakcji rozproszonej. Niech n oznacza liczbę uczestników transakcji rozproszonej, tak więc łączna liczba procesów (z koordynatorem) wynosi (n + 1). Rozpoczęto symulację z parametrem n = 2. Dla każdego późniejszego pojedynczego wywołania procedury testującej wartość parametru została zwiększana o 1. Podczas trwania eksperymentu komunikacja pomiędzy procesami przebiegała w następujący sposób: klient składa żądanie do serwera aplikacji warstwy pośredniej. Następnie oprogramowanie warstwy pośredniej przetwarza to żądanie poprzez wykonanie transakcji na odpowiednim serwerze bazy danych. Rzeczywista manipulacja na zasobach udostępnionych przez rozproszoną bazę danych jest taka sama w obydwu przypadkach. Przy realizacji protokołu niepodzielnego zatwierdzania przez oprogramowanie warstwy pośredniej w przypadku protokołu 3PC wymagana jest większa liczba komunikatów niezbędnych do zatwierdzenia transakcji rozproszonej. Po tym procesie, middleware zawraca wynik wykonania operacji SQL do klienta. Analizując wyniki powyższego eksperymentu można wywnioskować, że w przypadku pojedynczego wykonania protokołu 2PC, w każdej rundzie jego wykonania, wysłane zostaje n komunikatów. Zatem przy braku awarii, protokół używa łącznie 3n komunikatów. Jest to nieduża liczba w porównaniu z protokołem 3PC, w przypadku którego przeprowadzone badania wykazały, że wymaga on łącznie około 5n komunikatów. Eksperyment wykazał, że koszt liczony w komunikatach jest wprost proporcjonalny do 3n dla protokołu 2PC, natomiast dla protokołu 3PC jest on wprost proporcjonalny do 5n. Dla pojedynczego wywołania jest to niewielka różnica, natomiast w przypadku dużej liczby żądań zatwierdzenia kolejnych transakcji rozproszonych wykonywanych na wielu serwerach, staje się ona istotnym parametrem wpływającym na wydajności każdego z protokołów. Celem zmierzenia złożoności czasowej protokołu 2PC i 3PC wyliczona została liczba obiegów wymiany komunikatów (ang. message exchange round) potrzebnych przez działające serwery do podjęcia decyzji w najgorszym przypadku. Przez pojęcie obiegu rozumiemy maksymalny czas potrzebny komunikatowi na dotarcie do miejsca przeznaczenia [1]. W przeprowadzonych eksperymentach uwzględniono również czas potrzebny na przetworzenie komunikatów oraz czas pochłaniany przez dostęp do pamięci trwałej w celu zapisania, bądź odczytania informacji zapisanych w plikach rekonstrukcji. Maksymalna liczba obiegów komunikatów (w protokole 2PC) potrzebna działającym procesom do podjęcia decyzji wynosi trzy obiegi: (1) koordynator rozgłasza komunikat VOTE-REQs, (2) uczestnicy odpowiadają poprzez głosowanie, (3) koordynator rozgłasza decyzję. Ma to miejsce podczas bezawaryjnego wykonania protokołu 2PC, w sytuacji, gdy transakcja globalna zostaje zatwierdzona. Poszczególne czasy opóźnienia dla protokołu 2PC przedstawiono w tabeli 1, gdzie: t t całkowity czas opóźnienia, na który jest sumą opóźnień spowodowanych przez obiegi, dostępy do pamięci trwałej oraz rozgłaszanie komunikatów: t r oznacza czas rozgłaszania komunikatu VOTE-REQs (1); 6
7 t g oznacza czas potrzebny na głosowanie (2). t d czas potrzebny na rozgłoszenie decyzji (3). Tab. 1: Złożoność czasowa protokołu 2PC. n t r t g t d t t Złożoność czasowa protokołu 3PC w przypadku braku awarii sprowadza się od co najwyżej pięciu rund komunikatów: (1) rozgłoszenie VOTE-REQs, (2) dostarczenie głosów, (3) rozprowadzenie PRE-COMMITS, (4) potwierdzenie PRE-COMMIT, (5) rozprowadzenie COMMIT. Również ma to miejsce przy bezwaryjnym wykonaniu protokołu 3PC przy zatwierdzeniu transakcji globalnej. Poszczególne czasy opóźnienia dla protokołu 3PC przedstawiono w tabeli 2, gdzie: t t całkowity czas opóźnienia. t r oznacza czas rozgłaszania komunikatu VOTE-REQs (1); t g oznacza czas potrzebny na głosowanie (2). t p przeprowadzenie dodatkowej fazy pre-commit (3), (4). t d czas potrzebny na rozgłoszenie decyzji (5). Tab. 2: Złożoność czasowa protokołu 3PC. n t r t g t p t d t t Porównując wyniki eksperymentów z tabeli 1 z tabelą 2 łatwo wywnioskować, że każdy dodatkowy obieg komunikatów opóźnia proces zatwierdzania transakcji rozproszonej. W przypadku protokołu 3PC opóźnienie to jest spowodowane przez dwa dodatkowe obiegi komunikatów (3), (4). Im większa liczba wezłów biorących udział w transakcji, tym większy jest koszt wykonania dodatkowych obiegów komunikatów oraz dostępów do pamięci trwałej, co skutkuje znacznym opóźnieniem procesu przetwarzania transakcji. Dodatkowy czas musi zostać poświęcony na zapewnienie niepodzielności zatwierdzania transakcji rozproszonej. W przypadku protkołu 2PC czas ten waha się od 38ms dla n = 1 do 198ms dla n = 5. Dla protokołu 3PC są to 54ms dla n = 1 do 273ms dla n = 5. Jak widać różnica w czasie opóźnienia spowodawanym przez protokół 3PC, w prównaniu z protokołem 2PC, zwiększa się wraz z liczbą uczestników. 7
8 6 Podsumowanie W pracy przedstawione wstępne wyniki porównania protokołu 2PC z 3PC. Przeprowadzone eksperymenty wykazały, że protokół 3PC powoduje większe narzuty na wydajność przetwarzania transakcji rozproszonej niż protokół 2PC. W porównaniu z protokołem 2PC wymaga on większej liczby komunikatów do przeprowadzenia procesu zatwierdzania roszproszonego, która rośnie wraz z liczbą uczestników transakcji. Wraz ze wzrostem liczby komunikatów rośnie również czas potrzebny na ich rozsyłanie i przetworzenie. Nie należy również zapominać o czasie pochłanianym przez dostęp do informacji zapisanych w dziennikach transakcji w pamięci trwałej. Takie przymusowe dostępy w pamięci trwałej są dosyć czasochłonne. Koszty te mogą spowodować, że przetwarzanie zatwierdzania transakcji rozproszonej może przyczynić się do wzrostu czasu przetwarzania całej transakcji. Ponieważ w protokołe 2PC liczba i złożoność komunikatów jest o mniejsza, jego wydajność jest większa. Literatura [1] P.A. Bernstein, V. Hadzilacos, N. Goodman, Concurrency control and recovery in database systems, ADDISON-WESLEY PUBLISHING COMPANY, [2] L. Banachowski, K. Stencel, Bazy danych. Projektowanie aplikacji na serwerze, Wydawnictwo Exit, [3] G.Coulouris, J. Dollimore, T. Kindberg, Systemy rozproszone podstawy i projektowanie, Wydawnictwo Naukowo Techniczne, [4] H. Garcia-Molina, J.D. Ullman, J. Widom, Implementacja systemów baz danych, Wydawnictwo Naukowo Techniczne, [5] R. Elmasri S.B. Navath, Wprowadzenie do systemów baz danych, Helion, [6] S. Allamaraju, Nuts and Bolts of Transaction Processing, [7] M. Stróżańki, Systemy rozproszone Konsekwencje wyboru architektury systemu, [8] M. Wojciechowski, M. Zakrzewicz, Obsługa transakcji rozproszonych w języku Java, [9] S. Frolund, S. R. Guerraoui, Exactly-Once Transactions, HP Software Technology Laboratory,1999. [10] R. Gupta, J. Harista, K. Ramamritham, Revisiting Commit Processing In Distributed Database Systems, University of Utah Mathematics Department Software, [11] Distributed Transaction Processing: The XA Specification, [12] JDBC Technology, 8
Obsługa transakcji rozproszonych Java. Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska
Obsługa transakcji rozproszonych w języku j Java Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska Plan prezentacji Transakcje i ich własności Proste transakcje w JDBC
Bardziej szczegółowoPRZEGLĄD DOSTĘPNYCH IMPLEMENTACJI STANDARDÓW PRZETWARZANIA TRANS- AKCJI ROZPROSZONYCH (DTP) XA ORAZ TX
MAREK IWANIAK WŁODZIMIERZ KHADZHYNOV E-mail: marek.iwaniak@tu.koszalin.pl, hadginov@ie.tu.koszalin.pl Wydział Elektroniki i Informatyki, Politechnika Koszalińska Śniadeckich 2, 75-453 Koszalin PRZEGLĄD
Bardziej szczegółowoPlan wykładu. Przykład. Wprowadzenie BAZY DANYCH. Transakcje Hurtownie danych
Plan wykładu 2 BAZY DANYCH Wykład 5: Transakcje. Hurtownie danych. Transakcje Hurtownie danych Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka Wprowadzenie Przykład Zmiany zachodzące
Bardziej szczegółowoProblemy 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ółowoBazy danych. Dr Henryk Telega. BD 10/11 Wykład 1 1
Bazy danych Dr Henryk Telega BD 10/11 Wykład 1 1 R. Elmasri, S.B. Navathe Wprowadzenie do systemów baz danych, wydanie 1, Helion 2005, seria Kanon Informatyki tłumaczenie wydania 4: R. Elmasri, S.B. Navathe
Bardziej szczegółowoI. 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ółowoPojęcie systemu baz danych
Pojęcie systemu baz danych System baz danych- skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki. Składa się z zasadniczych elementów: 1) Danych 2) Sprzętu 3) Programów 4)
Bardziej szczegółowoBazy danych. Andrzej Łachwa, UJ, /15
Bazy danych Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 12/15 WSPÓŁBIEŻNOŚĆ Serwer bazodanowy nie może obsługiwać klientów sekwencyjnie: wszyscy musieli by czekać
Bardziej szczegółowoZarządzanie transakcjami
Zarządzanie transakcjami Właściwości ACID Przyjmuje się, że transakcje i protokoły zarządzania transakcjami powinny posiadać właściwości ACID: Atomowość (atomicity) każda transakcja stanowi pojedynczą
Bardziej szczegółowoAkademia Techniczno-Humanistyczna w Bielsku-Białej
Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 9 Temat ćwiczenia: Aplikacje klient-serwer. 1. Wstęp teoretyczny.
Bardziej szczegółowoSystemy 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ółowoWprowadzenie. Dariusz Wawrzyniak 1
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak
Bardziej szczegółowoIO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006
IO - Plan testów M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 SPIS TREŚCI 2 Spis treści 1 Historia zmian 3 2 Zakres testów 3 2.1 Integration testing - Testy spójnosci.............. 3 2.2
Bardziej szczegółowoBazy 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ółowoTransakcje. (c) Instytut Informatyki Politechniki Poznańskiej
ransakcje Definicja i własności transakcji, zatwierdzanie i wycofywanie, punkty bezpieczeństwa, spójność, anomalie współbieżnego dostępu do danych, poziomy izolacji transakcji, blokady, zakleszczenie Definicja
Bardziej szczegółowoObs³uga transakcji rozproszonych w jêzyku Java
VII Seminarium PLOUG Warszawa Marzec 2003 Obs³uga transakcji rozproszonych w jêzyku Java Marek Wojciechowski, Maciej Zakrzewicz marek, mzakrz}@cs.put.poznan.pl Politechnika Poznañska, Instytut Informatyki
Bardziej szczegółowoBazy danych w sterowaniu
Bazy danych w sterowaniu systemy transakcyjne sterowanie dostępem współbieżnym Stan spójny bazy danych zgodność z możliwym stanem reprezentowanego fragmentu świata rzeczywistego; spełnione są wszystkie
Bardziej szczegółowoVirtual Grid Resource Management System with Virtualization Technology
Virtual Grid Resource Management System with Virtualization Technology System zarządzania zasobami wirtualnego Gridu z wykorzystaniem technik wirtualizacji Joanna Kosińska Jacek Kosiński Krzysztof Zieliński
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje
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ółowoRozdział 1 Wprowadzenie do baz danych. (c) Instytut Informatyki Politechniki Poznańskiej 1
Rozdział 1 Wprowadzenie do baz danych 1 Model danych 2 Funkcje systemu zarządzania bazą danych Wymagania spójność bazy danych po awarii trwałość danych wielodostęp poufność danych wydajność rozproszenie
Bardziej szczegółowoKopie 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ółowoBAZY DANYCH. Transakcje. opracowanie: Michał Lech
BAZY DANYCH Transakcje opracowanie: Michał Lech Plan wykładu 1. Transakcje - co to jest? 2. Mechanizmy transakcji 3. Reguły ACID 4. Niekorzystne zjawiska 5. Poziomy izolacji 6. Polecenia PostgreSQL transakcji
Bardziej szczegółowoLITERATURA. 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ół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ółowoSystemy rozproszone System rozproszony
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ółowowspółbieżność - zdolność do przetwarzania wielu zadań jednocześnie
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ółowo1 Przetwarzanie transakcyjne Cechy transakcji Rozpoczęcie i zakończenie Punkty bezpieczeństwa... 3
Plan wykładu Spis treści 1 Przetwarzanie transakcyjne 1 1.1 Cechy transakcji................................. 2 1.2 Rozpoczęcie i zakończenie........................... 3 1.3 Punkty bezpieczeństwa.............................
Bardziej szczegółowoPoję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ółowoDokumentacja 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ółowoReferat 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ółowoBazy 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ółowoPlan Testów Systemu SOS
Plan Testów Systemu SOS Marcin Suszczewicz Michał Woźniak Krzysztof Kostałkowicz Piotr Kuśka 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 4 1.1 Cel tego dokumentu................................. 4 1.2
Bardziej szczegółowoMiddleware wprowadzenie października 2010
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak/middleware
Bardziej szczegółowoSpis treści. 1 Wprowadzenie. 1.1 Podstawowe pojęcia. 1 Wprowadzenie Podstawowe pojęcia Sieci komunikacyjne... 3
Spis treści 1 Wprowadzenie 1 1.1 Podstawowe pojęcia............................................ 1 1.2 Sieci komunikacyjne........................................... 3 2 Problemy systemów rozproszonych
Bardziej szczegółowoAutomatyzacja procesów biznesowych Andrzej Sobecki. ESB Enterprise service bus
Automatyzacja procesów biznesowych Andrzej Sobecki ESB Enterprise service bus Plan prezentacji Zdefiniowanie problemu Możliwe rozwiązania Cechy ESB JBI Normalizacja wiadomości w JBI Agile ESB Apache ServiceMix
Bardziej szczegółowoMiddleware wprowadzenie października Dariusz Wawrzyniak (IIPP) 1
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl poznan pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak/middleware
Bardziej szczegółowoZdalne wywołanie procedur. Krzysztof Banaś Systemy rozproszone 1
Zdalne wywołanie procedur Krzysztof Banaś Systemy rozproszone 1 RPC Komunikacja za pomocą gniazd jest wydajna, gdyż korzystamy z funkcji systemowych niewygodna, gdyż musimy wyrażać ją za pomocą jawnego
Bardziej szczegółowoWstę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ółowoBazy danych 6a. Transakcje. P. F. Góra
Bazy danych 6a. Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018 Transakcje Pojedynczy użytkownik ochrona szczególnie wrażliwych fragmentów. Transakcja wykonuje się albo w całości, albo
Bardziej szczegółowoZaawansowane narzędzia programowania rozproszonego
Zaawansowane narzędzia programowania rozproszonego Karol Gołąb karol.golab@tls-technologies.com 28 listopada 2001 1 Streszczenie Omówienie i porównanie popularnych standardów mechanizmów komunikacyjnych:
Bardziej szczegółowoJDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008
JDBC w LoXiMie Interfejs Java Database Connectivity dla systemu LoXiM Adam Michalik 2008 Sterownik JDBC co to jest? Sterownik JDBC to zbiór klas implementujących interfejsy opisane w specyfikacji JDBC
Bardziej szczegółowoWykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Bardziej szczegółowoWrocł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ółowoOverlord - specyfikacja uzupełniająca. Jakub Gołębiowski Adam Kawa Piotr Krewski Tomasz Weksej
Overlord - specyfikacja uzupełniająca Jakub Gołębiowski Adam Kawa Piotr Krewski Tomasz Weksej 25 kwietnia 2006 Spis treści 1 Historia zmian 3 2 Wprowadzenie 3 3 Funkcjonalność 3 3.1 Log.........................................
Bardziej szczegółowoBazy 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ółowo5. Model komunikujących się procesów, komunikaty
Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć
Bardziej szczegółowoDeduplikacja danych. Zarządzanie jakością danych podstawowych
Deduplikacja danych Zarządzanie jakością danych podstawowych normalizacja i standaryzacja adresów standaryzacja i walidacja identyfikatorów podstawowa standaryzacja nazw firm deduplikacja danych Deduplication
Bardziej szczegółowoModel logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL
Podstawy baz danych: Rysunek 1. Tradycyjne systemy danych 1- Obsługa wejścia 2- Przechowywanie danych 3- Funkcje użytkowe 4- Obsługa wyjścia Ewolucja baz danych: Fragment świata rzeczywistego System przetwarzania
Bardziej szczegółowoSystemy 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ółowoProjektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34
Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych
Bardziej szczegółowoSzczegółowy harmonogram rzeczowy realizacji prac systemu B2B
Szczegółowy harmonogram rzeczowy realizacji prac systemu B2B NAZWA ZADANIA ZADANIE CZĄSTKOWE TECHNOLOGIA ILOŚĆ OSÓB ILOŚĆ GODZIN TERMIN REALIZACJI 1 2 4 5 6 7 Zadanie 1 - wersji alfa 1 systemu B2B 3 723
Bardziej szczegółowoBazy 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ółowoSystemy Rozproszone. Zagadnienia do egzaminu.
Systemy Rozproszone. Zagadnienia do egzaminu. 1. Definicje systemu rozproszonego i podstawowe pojęcia związane z takim systemem: węzeł, klient, serwer, peer, zasób, usługa. 2. Główne wyzwania związane
Bardziej szczegółowoSzczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:
Rozdział I Szczegółowy opis przedmiotu umowy Załącznik nr 1 do Umowy Architektura środowisk SharePoint UMWD 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów: a) Środowisko
Bardziej szczegółowoNazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia. Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia
Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia Wydział Matematyki i Informatyki Instytut Informatyki i
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ółowoRozproszone i obiektowe systemy baz danych
Rozproszone i obiektowe systemy baz danych Dr inż. Robert Wójcik Wykład 7. Transakcje i zapytania rozproszone 7.1. Transakcje rozproszone 7.2. Zapytania rozproszone 7.1. Transakcje rozproszone W systemach
Bardziej szczegółowoMaciej Oleksy Zenon Matuszyk
Maciej Oleksy Zenon Matuszyk Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania. Weryfikacja oprogramowania - testowanie zgodności systemu
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2017 APLIKACJE SIECIOWE Definicja Architektura aplikacji sieciowych Programowanie
Bardziej szczegółowoWykład 4: Protokoły TCP/UDP i usługi sieciowe. A. Kisiel,Protokoły TCP/UDP i usługi sieciowe
N, Wykład 4: Protokoły TCP/UDP i usługi sieciowe 1 Adres aplikacji: numer portu Protokoły w. łącza danych (np. Ethernet) oraz w. sieciowej (IP) pozwalają tylko na zaadresowanie komputera (interfejsu sieciowego),
Bardziej szczegółowoBazy danych - ciągłość działania, spójność danych i disaster recovery. Daniel Polek-Pawlak Jarosław Zdebik
Bazy danych - ciągłość działania, spójność danych i disaster recovery Daniel Polek-Pawlak Jarosław Zdebik Plan Prezentacji Wprowadzenie - podstawy. Co oznacza utrata danych dla niedużego sklepu. Czy dostępność
Bardziej szczegółowoK1A_W11, K1A_W18. Egzamin. wykonanie ćwiczenia lab., sprawdzian po zakończeniu ćwiczeń, egzamin, K1A_W11, K1A_W18 KARTA PRZEDMIOTU
(pieczęć wydziału) KARTA PRZEDMIOTU 1. Nazwa przedmiotu: BAZY DANYCH 2. Kod przedmiotu: 3. Karta przedmiotu ważna od roku akademickiego: 2014/2015 4. Forma kształcenia: studia pierwszego stopnia 5. Forma
Bardziej szczegółowoTechnologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski
Technologie dla aplikacji klasy enterprise Wprowadzenie Marek Wojciechowski Co oznacza enterprise-ready? Bezpieczeństwo Skalowalność Stabilność Kompatybilność wstecz Wsparcie Dokumentacja Łatwość integracji
Bardziej szczegółowoKomunikacja i wymiana danych
Budowa i oprogramowanie komputerowych systemów sterowania Wykład 10 Komunikacja i wymiana danych Metody wymiany danych Lokalne Pliki txt, csv, xls, xml Biblioteki LIB / DLL DDE, FastDDE OLE, COM, ActiveX
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ółowoGalileo - encyklopedia internetowa Plan testów
Galileo - encyklopedia internetowa Plan testów Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Matek Sobierajski 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel..........................................
Bardziej szczegółowoWypożyczalnia VIDEO. Technologie obiektowe
Wypożyczalnia VIDEO Jest to program do obsługi wypożyczalni i wypożyczeń klientów. Głównym zadaniem programu jest zarządzanie wypożyczeniami i drukowanie potwierdzenia wypożyczenia oraz naliczenie punktów
Bardziej szczegółowo070 TRANSAKCJE. Prof. dr hab. Marek Wisła
070 TRANSAKCJE Prof. dr hab. Marek Wisła Transakcja - definicja Transakcja jest sekwencją logicznie powiązanych operacji na bazie danych, przeprowadzających bazę danych z jednego stanu spójnego w inny
Bardziej szczegółowoZagadnienia 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ółowoINFORMATYKA Pytania ogólne na egzamin dyplomowy
INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja
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ółowoSposoby 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ół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ółowoSerwery Statefull i Stateless
Serwery Statefull i Stateless Wszystkie serwery aplikacji są określone jako stateless podczas projektowania. Te aplikacje nie przetrzymują stałego połączenia z klientem. Wysyłają one pakiety danych na
Bardziej szczegółowoTypy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone
Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa
Bardziej szczegółowoPrzypadki testowe. Spis treści. Plan testów. From Sęp. Wstęp. 2 Plan testów
Przypadki testowe From Sęp Spis treści 1 Wstęp 2 Plan testów 3 Testy bazy danych 4 Testy serwera 5 Testy aplikacji klienckiej 6 Testy interfejsu webowego 7 Testy integracyjne 8 Testy wydajności 8.1 Baza
Bardziej szczegółowoDLA SEKTORA INFORMATYCZNEGO W POLSCE
DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej
Bardziej szczegółowoRozproszone bazy danych 2
Rozproszone bazy danych 2 Zarządzanie transakcjami rozproszonymi Laboratorium przygotował: Robert Wrembel ZSBD laboratorium 2 (1) 1 Plan laboratorium Transakcja rozproszona - podstawowe cechy Uczestnicy
Bardziej szczegółowoWykłady z przedmiotu Podstawy baz danych Transakcje dr hab. prof. nadzw. Tadeusz Antczak. Transakcje
Transakcje Pojęcie transakcji Pojęcie transakcji stało się centralnym elementem w wielu współczesnych zastosowaniach baz danych. Jest kluczowym pojęciem pozwalającym zrozumieć zarówno kontrolę wielodostępu,
Bardziej szczegółowoCzym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio
Czym jest jpalio? jpalio to unikalna platforma technologiczna pozwalająca na stworzenie szeregu produktów dostosowanych do indywidualnych preferencji klienta. W naszej ofercie znajduje się m.in. system
Bardziej szczegółowoPraca dyplomowa. Program do monitorowania i diagnostyki działania sieci CAN. Temat pracy: Temat Gdańsk Autor: Łukasz Olejarz
Temat Gdańsk 30.06.2006 1 Praca dyplomowa Temat pracy: Program do monitorowania i diagnostyki działania sieci CAN. Autor: Łukasz Olejarz Opiekun: dr inż. M. Porzeziński Recenzent: dr inż. J. Zawalich Gdańsk
Bardziej szczegółowoDokument Detaliczny Projektu
Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej
Bardziej szczegółowoProgram wykładu. zastosowanie w aplikacjach i PL/SQL;
Program wykładu 1 Model relacyjny (10 godz.): podstawowe pojęcia, języki zapytań (algebra relacji, relacyjny rachunek krotek, relacyjny rachunek dziedzin), zależności funkcyjne i postaci normalne (BCNF,
Bardziej szczegółowoReferat pracy dyplomowej
Referat pracy dyplomowej Temat pracy: Projekt i implementacja oprogramowania dla salonu kosmetycznego. Autor: Wojciech Rubiniec Promotor: dr inż. Roman Simiński Kategorie: Oprogramowanie użytkowe Słowa
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition. WebServices. Język XML. Serwer aplikacji GlassFish. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki
Bardziej szczegółowoprzykłady problemów; realizacja dostaw części od producenta do klienta:
Przetwarzanie transakcyjne Transakcja zestaw operacji pod szczególną kontrolą transakcja to sekwencja operacji, która musi zakończyć się sukcesem w całości - w przeciwnym wypadku musi powrócić stan początkowy
Bardziej szczegółowoZapewnienie 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ółowoW grze bierze udział dwóch graczy. Każdy uczestnik rozpoczyna rozgrywkę z sumą
2.4 QuestionGame QuestionGame jest grą z celem zaprojektowaną do gromadzenia pytań zadawanych przez ludzi podczas prób rozpoznawania ras psów. Program ma charakter aplikacji internetowej. W rozgrywcę mogą
Bardziej szczegółowo2010-10-06 ORGANIZACJA ZAJĘĆ BAZY DANYCH PLAN WYKŁADU SCHEMAT SYSTEMU INFORMATYCZNEGO
ORGANIZACJA ZAJĘĆ Wykładowca dr inż. Agnieszka Bołtuć, pokój 304, e-mail: aboltuc@ii.uwb.edu.pl Liczba godzin i forma zajęć: 30 godzin wykładu oraz 30 godzin laboratorium Konsultacje: czwartek 10:15-12:00
Bardziej szczegółowoProjektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie architektury systemu rozproszonego Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Problemy globalizacji Problemy ochrony Projektowanie architektury
Bardziej szczegółowoOpis Architektury Systemu Galileo
Opis Architektury Systemu Galileo Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Marek Sobierajski 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 5 1.1 Cel.......................................... 5 1.2 Zakres........................................
Bardziej szczegółowoZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja
ZPKSoft WDoradca 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja 1. Wstęp ZPKSoft WDoradca jest technologią dostępu przeglądarkowego do zasobów systemu ZPKSoft Doradca.
Bardziej szczegółowoZespół: Agata Chrobak Kornel Jakubczyk Tomek Klukowski Przemek Kosiak. Projekt SZOP Plan testów
Zespół: Agata Chrobak Kornel Jakubczyk Tomek Klukowski Przemek Kosiak Projekt SZOP Plan testów Spis treści 1 Wprowadzenie 3 1.1 Cel.......................................... 3 1.2 Zakres........................................
Bardziej szczegółowoZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia 23.03.2015 r.
ZAPYTANIE OFERTOWE Wrocław, dnia 23.03.2015 r. W związku z realizacją przez Nova Telecom spółka z ograniczoną odpowiedzialnością, projektu pn.: Wdrożenie zintegrowanego systemu klasy B2B, umożliwiającego
Bardziej szczegółowoBazy danych 9. SQL Klucze obce Transakcje
Bazy danych 9. SQL Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Klucze obce Klucze obce powiazanie indeksowanej kolumny jakiejś tabeli z indeksowana kolumna
Bardziej szczegółowoZdalne monitorowanie i zarządzanie urządzeniami sieciowymi
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Infomatyki Stosowanej Piotr Benetkiewicz Nr albumu: 168455 Praca magisterska na kierunku Informatyka
Bardziej szczegółowoRozwiązanie Compuware Data Center - Real User Monitoring
Rozwiązanie Compuware Data Center - Real User Monitoring COMPUWARE DATA CENTER REAL USER MONITORING... 3 2 COMPUWARE DATA CENTER REAL USER MONITORING Sercem narzędzia Compuware Data Center Real User Monitoring
Bardziej szczegółowoSystem Obsługi Wniosków
System Obsługi Wniosków Wersja 2.0 1 System Obsługi Wniosków wersja 2.0 System Obsługi Wniosków to nowoczesne rozwiązanie wspierające proces obsługi wniosków o produkty bankowe. Pozwala na przyjmowanie,
Bardziej szczegółowoUniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.
Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej Wstęp Programowanie w Javie 2 mgr inż. Michał Misiak Agenda Założenia do wykładu Zasady zaliczeń Ramowy program wykładu
Bardziej szczegółowo