Grafowa baza danych. Joanna Kącka, Paweł Barszcz, Marcin Lewandowski Krystian Lieber, Jakub Pawłot Michał Staroń, Maciej Szawłowski

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

Download "Grafowa baza danych. Joanna Kącka, Paweł Barszcz, Marcin Lewandowski Krystian Lieber, Jakub Pawłot Michał Staroń, Maciej Szawłowski"

Transkrypt

1 Grafowa baza danych Joanna Kącka, Paweł Barszcz, Marcin Lewandowski Krystian Lieber, Jakub Pawłot Michał Staroń, Maciej Szawłowski 27 marca 2012

2 ii

3 Spis treści Wstęp 1 1 Grafowe bazy danych Dlaczego grafowe bazy danych są interesujące? Co wyróżnia GBD? Struktura danych Szukanie informacji w GBD Wydajność Kiedy użyć GBD? Neo4j Wymagania i wdrożenie Metody operowania na bazie Wsparcie dla języków oraz szkieletów aplikacji Licencjonowanie i ceny Dodatkowe funkcjonalności Instalacja i konfiguracja Neo4j Instalacja i konfiguracja Neo4j Przykładowy kod programu Wady i zalety Neo4j Zalety Neo4j Wady Neo4j Aspekt wydajności Neo4j Przykłady innych grafowych baz danych Cechy charakterystyczne wybranych rozwiązań Porównanie rozwiązań Bibliografia 29 A Dokumentacja z zarządzania projektem 31 A.1 Przebieg prac A.2 Odbyte spotkania projektowe A.3 Przydzielone role B Wykorzystane narzędzia 33 B.1 Repozytorium plików B.2 Edycja dokumentacji iii

4 iv

5 Wstęp Niniejszy dokument został utworzony w ramach pierwszego etapu projektu grafowej bazy danych na przedmiot Rozproszone Systemy Operacyjne (RSO), prowadzonym w semestrze letnim 2012 na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej (WEiTI PW) przez dra inż. Tomasza Jordana Kruka. Dokument ten ma na celu przybliżenie tematu rozproszonych baz danych. Największy nacisk położony został na zagadnienia związane z Neo4J jako najpopularniejszym i najlepiej przygotowanym rozwiązaniem. Przedstawiono tutaj zarówno jego zasadę działania, jak i wynikające z tego wady i zalety. Dla porównania opisano także kilka innych przykładów rozproszonych baz danych. 1

6 2

7 Rozdział 1 Grafowe bazy danych Krystian Lieber 1.1 Dlaczego grafowe bazy danych są interesujące? Grafowe bazy danych są jednym z przedstawicieli dynamicznie rozwijającej się grupy określanej jako NoSQL (ang. Not Only SQL nie tylko SQL). Określenie NoSQL powstało w odpowiedzi na dynamiczny rozwój nierelacyjnych, rozproszonych baz danych, często niezapewniających ACID 1. Głównym powodem rosnącego zainteresowania bazami nierelacyjnymi jest rosnąca ilość danych i wątpliwość czy tradycyjne bazy relacyjne będą wstanie ją wydajnie przetwarzać. Kluczową zaletą grafowych baz danych jest przechowywanie danych w przyjaznej formie, dobrze odwzorowującej rzeczywistość. Umieszczanie wielu danych, takich jak powiązania w społeczności czy sieci dróg można umieścić w bazie relacyjnej, jednak nie jest to rozwiązanie naturalne i powoduje problemy na późniejszych etapach. 1.2 Co wyróżnia GBD? Dane tworzące graf można zapisać na wiele różnych sposobów. W szczególności w RBD można zapisać krawędzie jako tabelę łączącą obiekty w relacji wiele-do-wielu. Czy jest to grafowa baza danych? Oczywiście nie. Co zatem sprawia, że bazę danych nazywamy grafową? W grafowej bazie danych graf jest natywną metodą przechowywania informacji. Często określa się, iż GBD to taka, która zapewnia sąsiedztwo wolne od indeksów. Intuicyjnie chodzi o to, iż w GBD informacja o sąsiadach wierzchołka jest przechowywana lokalnie, natomiast w RBD następowałoby odwołanie do indeksu, który wskazywałby sąsiedztwo. 1 ACID zbiór właściwości gwarantujących poprawne przetwarzanie transakcji w bazach danych, atomicity atomowość, consistency spójność, isolation izolacja, durability trwałość 3

8 4 ROZDZIAŁ 1. GRAFOWE BAZY DANYCH Zatem w przypadku GBD czas przeszukiwania sąsiedztwa zależy jedynie od ilości sąsiadów wierzchołka, tak w RBD od ilości wszystkich krawędzi. 1.3 Struktura danych W teorii graf G(V,E) składa się ze zbioru wierzchołków V i zbioru krawędzi E. Wyróżniamy grafy niezorientowane, zorientowane. Przykładem struktury rzeczywistej reprezentowanej przy pomocy grafu nieorientowanego może być znajomości na portalu społecznościowym, a zorientowanej np. subskrypcje w portalu społecznościowym. Graf mieszany składa się z trzech zbiorów: zbioru wierzchołków V, zbioru krawędzi nieskierowanych E i zbioru krawędzi skierowanych A, pozwala zatem na reprezentacje dwóch poprzednich przykładów w jednej strukturze, pod warunkiem, że między dwoma wierzchołkami występuje jedna krawędź. Graf, w którym może wystąpić więcej niż jedna krawędź między wierzchołkami nazywamy multigrafem. Zatem dobrze będzie jeśli do reprezentacji danych użyty zostanie multigraf mieszany, wtedy obie informacje będzie można przechowywać obok siebie. Dla ułatwienia każdą krawędź niezorientowaną przedstawimy jako 2 krawędzie zorientowane. Każdy węzeł może reprezentować obiekt innego typu. Każda krawędź może reprezentować inny związek. Jeśli dodamy do tego możliwość przechowywania właściwości w krawędziach otrzymamy graf właściwości, który intuicyjnie jest rozszerzeniem grafu ważonego o możliwość definiowania wielu wag o różnych nazwach. Właściwości grafu: krawędzie skierowane, krawędzie związki (różne), wierzchołki obiekty (różne), krawędzie i wierzchołki mają właściwości, właściwości pary klucz/wartość. Większość grafowych baz danych korzysta z grafów właściwości, niektóre korzystają z nadgrafów. Główną różnicą jest możliwość by krawędź wskazywała na więcej niż jeden wierzchołek. 1.4 Szukanie informacji w GBD Zapytanie do GBD jest związane z przeszukaniem grafu. Bardzo istotne, szczególnie w odniesieniu do skalowalności, jest lokalność przesukiwania. W przeciwieństwie do RBD nie wyszukiwanie nie jest globalne, jest jedynie przejściem grafu od wskazanego wierzchołka. Zatem kosztowne złaczenie tabel jest realizowane w postaci prostego przejścia między wierzchołkami.

9 1.5. WYDAJNOŚĆ 5 Dzięki odpowiednim technologią takim jak interfejs Blueprints możliwe jest pisanie zapytań w jeden prosty sposób dla wielu rodzajów GBD. Inne technologie wspierające zapytania do GBD to GraphQL, SPARQL, GQL. Blueprints są dla GDB odpowiednikiem JDBC. Na Blueprints operują Gremlin, Pipes i Rexster. 1.5 Wydajność W celu pokazania wydajności grafowych baz danych często przytacza się przykład testu dla sieci społecznościowej. Test 2 przeprowadzono przy użyciu neo4j w 2009 roku. Stworzono strukturę sieci społecznościowej w której każda osoba miała 50 znajomych. Dla 1000 osób wygenerowanie listy znajomych dla każdej osoby zajęło: RBD 2000ms, GBD 2 ms. By pokazać skalowalność zwiększono ilość osób do ponad miliona, czas zapytania do GBD nadal wynosił 2ms. Kolejny test 3 dla dużych grafów przeprowadzono przy użyciu miliona wierzchołków i 4 milionów krawędzi. Przewaga neo4j nad MySQL rośnie wraz ze wzrostem głębokości przeszukiwania. Co szczególnie ciekawe dla głębokości 5 MySQL nie był wstanie ukończyć testu w trakcie 2h, podczas gdy neo4j uporał się z zadaniem w 14 minut. 1.6 Kiedy użyć GBD? 1. Kiedy nie jest potrzebna analiza globalna danych. 2. Kiedy graf jest naturalną metodą przedstawienia danych. 3. Kiedy problem jest lokalny w większej strukturze danych. Przykłady: 1. Lokalne wyszukiwanie kto jest znajomym Jana? 2. Lokalne rekomendacje co kupowały osoby które kupowały daną pralkę? 3. Brakujący znajomi kto ze znajomych znajomych Jana nie jest jego znajomym? 4. Szukanie eksperta dla tagów pytania znajdź, kto stworzył odpowiedzi na pytania o tych samych tagach

10 6 ROZDZIAŁ 1. GRAFOWE BAZY DANYCH

11 Rozdział 2 Neo4j Maciej Szawłowski Neo4j jest jedną z najpopularniejszych grafowych baz danych. Stworzona przez firmę Neo Technology ze Szwecji jest jedynym tak zaawansowanym projektem Open Source o tej tematyce. Rozwiązanie zalicza się do metod NOSQL czyli różni się od relacyjnych baz danych (RBD) w kilku aspektach: nie używa SQL jako języka wykonywania zapytań, nie wymagają ustalonego schematu danych (dane mogą być bardzo zróżnicowane), mogą nie wspierać całkowicie zasad ACID 1, dobrze skaluje się horyzontalnie 2. Neo4j została zaimplementowana w Javie, co czyni ten język naturalnym kandydatem do implementacji całej aplikacji. Poniżej przedstawione zostaną możliwości współpracy z innymi językami programowania. 2.1 Wymagania i wdrożenie Bazy Neo4j można użyć na dwa sposoby jako nieodłączna część aplikacji 3 korzystająca z bibliotek umożliwiających manipulację na danych, lub jako oddzielny proces komunikujący się przez protokół HTTP. Twórcy zapewniają, że biblioteki bazy wbudowanej w aplikację zajmuje ok. 750kB. Biblioteki te istnieją tylko dla języków Java i Python inne języki muszą zadowolić się samodzielną bazą oraz REST API i związanymi z nim językami przechodzenia grafu np. Gremlin czy Cypher. Wymagania Neo4j przedstawiono w tablicy A atomicity atomowość, C consistency spójność, I isolation izolacja, D durability trwałość 2 Skalowanie horyzontalne oznacza łatwe zwiększanie możliwości poprzez dodawanie do infrastruktury kolejnych maszyn 3 ang. embedded 7

12 8 ROZDZIAŁ 2. NEO4J Minimum Rekomendowane CPU Intel 486 Intel Core i7 Pamięć RAM 1GB 4-8GB Dysk SCSI, EIDE SSD + SATA System plików ext3 ext4, ZFS Oprogramowanie Java 1.6+, Linux, Windows XP, Mac OS X Tablica 2.1: Przykładowe wymagania Neo4j podane na stronie producenta. 2.2 Metody operowania na bazie Neo4j jest bazą typu NOSQL czyli nie udostępnia metod języka SQL do pobierania, edycji, tworzenia czy usuwania 4. Użytkownik (czy też programista, administrator) ma do dyspozycji kilka różnych narzędzi do operacji na zgromadzonych danych Traversal API Neo4j udostępnia natywne API zawierające klasy oraz metody umożliwiające programistyczne poruszanie się po grafie [12]. Za jego pomocą można zdefiniować metodę szukania, np. w głąb lub wszerz. Oprócz tego można wyspecyfikować warunek stopu, np. poprzez zdefiniowane wcześniej enumaracje lub podać funkcję która oceni czy warunek został już spełniony. W podobny sposób można opisać warunki dotyczące poszukiwanej struktury, czy też jakie węzły ze znalezionej puli zwrócić REST REST 5 jest bazą dla wszelkich integracji z innymi językami. Udostępnia on pewien wzorzec adresów URL oraz ich argumentów które pozwalają na poruszanie się po przestrzeni węzłów i zależności. Warto zwrócić uwagę na pewną interesującą właściwość tego API. Operacje CRUD są trywialne: polegają na wysłaniu żądania HTTP POST pod odpowiedni adres. Ciekawiej (z punktu widzenia potencjalnego napastnika) rozwiązany jest problem przechodzenia grafu. Twórcy ostrzegają, że używanie tego API wymaga dodatkowego zabezpieczenia serwera przed niepowołanym dostępem, ponieważ zapytania wywołują dynamicznie tworzony kod Groovy [10]. Nie zmienia to faktu, że dostęp poprzez HTTP czyni z Neo4j bardzo uniwersalne rozwiązanie - język aplikacji działającej na bazie jest w tym wypadku właściwie dowolny Cypher Cypher [7] jest językiem stworzonym przez Neo Technologies jako zastępstwo SQL w ich bazie danych. W przeciwieństwie do Traversal API czy Gremlina jest językiem deklaratywnym czyli skupia się na opisie problemu, a nie na sposobie jego rozwiązania. Twórcy starali 4 tzw. operacje CRUD create, read, update, delete 5 ang. Representational State Transfer

13 2.3. WSPARCIE DLA JĘZYKÓW ORAZ SZKIELETÓW APLIKACJI 9 się stworzyć język który będzie maksymalnie czytelny, to znaczy, żeby stworzony kod nie wymagał dodatkowych komentarzy dotyczących swojego działania. Wyrażenie może składać się z czterech części: START, MATCH, WHERE, RETURN inspirowanych strukturą języka SQL. START opisuje węzeł z którego będziemy startować podczas szukania. MATCH przedstawia wzorzec wg. którego szukane będą pasujące węzły. WHERE jest warunkiem który musi być spełniony, aby wyszukane wzorce mogły stać się częścią wyniku. RETURN opisuje które węzły z zakwalifikowanych struktur powinny zostać zwrócone w wyniku. Warto zauważyć, że Cypher został stworzony niedawno, więc możliwe jest, że w najbliższym czasie nastąpią zmiany w składni. Z tego powodu istnieje również polecenie CY- PHER które wskazuje którą wersję parsera języka należy użyć. Oprócz tego, język został stworzony do przeszukiwania grafu, nie udostępnia on metod do dodawania, modyfikacji ani usuwania węzłów ani krawędzi. Wspomniana wcześniej deklaratywność rozwiązuje problem dotyczący bezpieczeństwa podczas przechodzenia grafu, dlatego jest to polecana przez twórców metoda Gremlin Gremlin [8] jest językiem przechodzenia grafu 6 opartym na Groovy. Pozwala na tworzenie skryptów opisujących metodę wg. której należy przejść strukturę aby uzyskać wynik. Możliwości Gremlina można uzyskać używając wtyczki Neo4j Gremlin. Typowe użycie polega na przesłaniu pod odpowiedni adres żądania HTTP POST z parametrem script oraz skryptem w formie zakodowanej procentowo 7 lub jako JSON Wsparcie dla języków oraz szkieletów aplikacji 9 Neo4j udostępnia REST API. Z tego powodu wybór języka czy frameworku jest właściwie dowolny. Wyżej (sekcja 2.1) opisane zostały dwa podejścia wykorzystania bazy w aplikacji. Z tego powodu wymienione zostanie wsparcie poprzez biblioteki, wtyczki umożliwiające na użycie wbudowanej bazy danych. 6 ang. Graph Traversal Language 7 ang. percent encoded metoda kodowania znaków specjalnych w parametrach żądań HTTP. Więcej na 8 ang. Javascript Object Notation 9 ang. framework

14 10 ROZDZIAŁ 2. NEO4J Java Jednym z najpopularniejszych szkieletów aplikacji w Javie jest Spring. Zapewnia on programiście łatwy dostęp do szeregu funkcjonalności takich jak: wsparcie aplikacji internetowych, dostęp do różnorodnych baz danych, moduły zarządzania prawami dostępu czy kompatybilność z rozwiązaniami chmurowymi. Istnieje projekt open-source Spring Data mający na celu integrację technologii bazodanowych. Niedawno dodane zostały również rozwiązania typu NOSQL jak MongoDB czy Blob 10 oraz Neo4j. Rozwiązanie stworzone dzięki współpracy twórców Neo4j oraz Spring pozwala na wykorzystanie wszystkich możliwości bazy. Oczywiści istnieje wiele innych frameworków napisanych w Javie, więc użycie Neo4j (chociaż pewnie nie tak wygodne jak w Springu) powinno być możliwe. Python Zastosowanie Pythona jako głównego języka aplikacji sprowadza się do użycia JPype. Jest to projekt mający na celu stworzenie dostępu aplikacjom Pythona do bibliotek klas napisanych w Javie. Aby ułatwić cały proces, stworzone zostało specjalne API przeznaczone do tego celu. Można je zobaczyć pod adresem: milestone/python-embedded.html. Ruby Użycie Ruby w projektach z wbudowaną bazą Neo4j polega na wykorzystaniu wersji języka używającej wirtualną maszynę Javy - JRuby. Dzięki temu - podobnie jak w Pythone - uzyskujemy dostęp do wszystkich klas Javy. Groovy Groovy jest językiem rozszerzającym w pewnym stopniu i w całości kompatybilnym z Javą. Z tego powodu, wykorzystanie Neo4j w obydwu technologiach jest identyczne. Warto zwrócić uwagę na framework Grails, który posiada wtyczkę ułatwiającą pracę z bazą. Oprócz tego oparty jest na Springu, więc jakość rozwiązania jest stale podwyższana. 2.4 Licencjonowanie i ceny Licencjonowanie, funkcjonalności oraz ceny przedstawione są w tablicy Dodatkowe funkcjonalności Wersja Enterprise posiada kilka dodatkowych funkcjonalności, które zostały przedstawione poniżej. 10 Przykładem może być Simple Storage Services (S3) Amazona.

15 2.5. DODATKOWE FUNKCJONALNOŚCI 11 Neo4j Community Advanced Enterprise Licensing License Open source Commercial Commercial (GPLv3) and AGPL and AGPL Can be used with closed source software Yes, except Yes, with Yes, with OEM commercial license commercial license Functionality Neo4j high performance graph database Yes Yes Yes Batch inserter for bulk uploads Yes Yes Yes Shell for console access Yes Yes Yes Graph algorithm package Yes Yes Yes Native language bindings (Ruby, Yes Yes Yes Python, Scala, Clojure, Groovy) Web frameworks integration Yes Yes Yes (Spring Framework, Grails, Rails, Django, PHP and more) Neo4j Server Yes Yes Yes Operations and Monitoring SNMP & JMX monitoring Yes Yes Neo4j Web Management console Basic Full Enterprise High load & high availability Online backup of running instance Yes Online failover to warm spare Yes Read slave replication Yes Read/write slave replication Yes High availability with master failover Yes Support & Services Support hours 5x10 7x24 Response time 24h 1h Communication channel Phone Technical alerts Yes Yes Quarterly service packs Yes Yes Annual Subscription Free USD 6000 or USD 24,000 EUR 6000 or EUR 24,000 Tablica 2.2: Licencje, funkcje oraz ceny Neo4j. Źródło: products/price-list/.

16 12 ROZDZIAŁ 2. NEO4J High Availability Opcja High Availability [9] jest trybem pracy rozproszonej. Funkcjonalność ta przynosi dwie główne korzyści: zapewnia replikację danych, dzięki czemu odporność bazy na awarię sprzętu wzrasta, zwiększa możliwości skalowalności - więcej instancji bazy pozwala na większą ilość odczytów w tym samym momencie. Neo4j HA działa w układzie master-slave. Na początku pracy przy pomocy serwisu ZooKeeper wybierany jest master. Podczas każdej operacji zapisu, blokowany jest master oraz instancja bazy na której wykonano operację. Zmiany stanu nie są propagowane od razu, dlatego efekt zapisu może być widoczny na innych maszynach dopiero po jakimś czasie. W przypadku gdyby master miał awarię, ZooKeeper przeprowadzi wybór kolejnego. Odświeżanie danych na węzłach podrzędnych zachodzi cyklicznie co określony czas. Można jednak skonfigurować węzły tak, aby synchronizacja następowała tylko podczas zapisu na tym węźle Backup Podobnie jak w przypadku High Availability funkcja kopii zapasowej [5] jest dostępna jedynie w najwyższej wersji Neo4j. Istnieją dwa rodzaje kopii: 1. Pełna pełna kopia polega na sklonowaniu całej bazy w trakcie jej działania. Nie są wykorzystywane żadne blokady - w trakcie procesu baza jest w pełni funkcjonalna. Oznacza to, że jej stan może zmienić się podczas tworzenia kopii. Dlatego zaraz po zakończeniu procesu, odtwarzane zostają z dziennika wszystkie operacje które zostały przeoczone w trakcie klonowania. 2. Przyrostowa kopia przyrostowa polega na odtworzeniu wszystkich operacji, które nastąpiły między dwoma punktami w czasie. Dzięki temu proces ten trwa dużo krócej niż tworzenie pełnej kopii. Należy pamiętać, że aby zrobić kopię przyrostową, wymagany jest pełny obraz bazy. Przywracanie bazy danych jest trywialnie proste: wystarczy zastąpić folder z bazą, folderem powstałym w procesie tworzenia kopii. 11 Co dzieje się zawsze, ponieważ jest wymuszone protokołem komunikacyjnym.

17 Rozdział 3 Instalacja i konfiguracja Neo4j Michał Staroń 3.1 Instalacja i konfiguracja Neo4j Neo4j może być uruchomione jako integralna część tworzonej aplikacji, oddzielny serwer danych lub też rozmieszczone na wielu maszynach fizycznych lub wirtualnych w trybie High Availability Instalacja serwera Neo4j Neo4j może zostać zainstalowane jako usługa systemowa lub jako program użytkowy. Aby zainstalować Neo4j ściągamy odpowiednią wersję ze strony Następnie rozpakowujemy zawartość archiwum do wybranego katalogu. Aby uruchomić serwer bazy danych uruchamiamy: na Linux/MacOS:./bin/neo4j start na Windows:.\bin\Neo4j.bat start Aby uruchomić serwer Neo4j jako usługę systemową w systemie Windows: 1. Otwieramy Wiersz Poleceń jako Administrator. 2. Uruchamiamy w katalogu, gdzie są wypakowane pliki:.\bin\neo4j.bat install Neo4j jako integralna część aplikacji Neo4j może zostać załączone do kodu aplikacji poprzez dołączenie odpowiednich bibliotek Java. W czasie pisania programu odwołujemy się do API GraphDatabaseService 1. Aby 1 13

18 14 ROZDZIAŁ 3. INSTALACJA I KONFIGURACJA NEO4J wykorzystać tryb wysokiej dostępności zamiast EmbeddedGraphDatabase 2 używamy HighlyAvailableGraphDatabase Tryb pracy rozproszonej Tylko wersja Neo4j Enterprise wspiera tryp pracy rozproszonej. W poniższej tabeli zostały przedstawione parametry konfiguracji trybu pracy rozproszonej: Nazwa Parametru Wartość Przykładowa wartość Wymagany? ha.server_id integer >= 0 1 tak ha.server (wykrywany automatycznie) my-domain.com:6001 nie domena i port, gdy działa jako master ha.coordinators oddzielone przecinkiem localhost:2181, tak połączenia z localhost:2182, coordinator localhost:2183 ha.pull_interval czas (w sekundach) 30 nie pomiędzy kolejnymi odpytywaiami pomiędzy master i slave ha.slave_coordinator_ tworzy element slave, brak nie update_mode który nigdy nie stanie się master ha.read_timeout jak długo slave będzie 20 nie czekał na odpowiedź master (domyślnie 20) ha.lock_read_timeout jak długo blokada 40 nie przejęcia slave a będzie aktywna (domyślnie wartość ha.read_timeout) ha.zk_session_timeout czas trwania sesji instancji w ZooKeeper 30 nie Przykładowa konfiguracja Neo4j High Availability Po ściągnięciu i rozpakowaniu wersji enterprise edytujemy plik./conf/coord.cfg przypisując odpowiedni clientport i wpisując kolejno zakresy portów oraz adresy IP maszyn na których działa Coordinator. Plik ten bedzie identyczny dla trzech maszyn

19 3.1. INSTALACJA I KONFIGURACJA NEO4J 15 #./ conf / coord. cfg... server.1= :2888:3888 server.2= :2889:3889 server.3= :2890: clientport =2181 Następnie tworzymy plik myid zawierający unikalny numer <id> zgdony z numerami użytymi wcześniej w server.<id>. Umieszczamy go w folderze./data/coordinator/. echo '1' >./ data / coordinator / myid Możemy uruchomić usługi Coordinator na każdej z maszyn:./ bin / neo4j - coordinator start W pliku./conf/neo4j.properties wpisujemy adresy i porty usług Coordinator oraz przypisujemy odpowiednie numery id serwerom: #./ conf / neo4j. properties # unique server id for this graph d ata ba se # can not be neg ati ve id and must be unique ha. server_id = 1 # ip and port for this i nst anc e to bind to ha. server = localhost :6001 # connection information to the coordinator cluster client ports ha. coordinators = :2181, :2181, :2181 W pliku./conf/neo4j-server.properties aktywujemy tryb HA i jeśli uruchamiamy kilka usług Coordinator na tej samej maszynie odpowiednio modyfikujemy port: #./ conf / neo4j - server. properties... # http port ( for all data, administrative, and UI access ) org. neo4j. server. webserver. port = # Allowed values : # HA - High Availability # SINGLE - Single mode, default. # To run in High Availability mode, configure the coord. cfg file, and the # neo4j. properties config file, then uncomment this line : org. neo4j. server. database. mode = HA Uruchamiamy wszystkie instancje serwera Neo4j:./ bin / neo4j start

20 16 ROZDZIAŁ 3. INSTALACJA I KONFIGURACJA NEO4J Po uruchomieniu powinniśmy móc dostać się do wszystkich serwerów i sprawdzić status poprzez interfejs (domyślny:7474)]/webadmin/. 3.2 Przykładowy kod programu Pierwszym elementem jest dołączenie bibliotek jar Neo4j do projektu z folderu./lib/. Aby stworzyć lub otworzyć bazę danych tworzymy instancję EmbeddedGraphDatabase 4. graphdb = new EmbeddedGraphDatabase ( DB_PATH ); Aby zatrzymać działanie bazy Neo4j wywołujemy: graphdb. shutdown () ; Hello World Typy relacji tworzone są z wykorzystaniem struktury enum. W tym przykładzie potrzebujemy tylko jednej wartości. private static enum RelTypes implements RelationshipType { KNOWS } Deklarujemy niezbędne zmienne: GraphDatabaseService graphdb ; Node firstnode ; Node secondnode ; Relationship relationship ; Kolejny krok to uruchomienie serwera bazy danych. DB_PATH to ścieżka do bazy danych - jeśli nie istnieje plik zostanie on utworzony. graphdb = new EmbeddedGraphDatabase ( DB_PATH ); Tworzymy graf składający się z dwóch węzłów połączonych jedną relacją oraz przypisanych im właściwości. firstnode = graphdb. createnode () ; firstnode. setproperty ( " message ", " Hello, " ); secondnode = graphdb. createnode () ; secondnode. setproperty ( " message ", " World!" ); relationship = firstnode. createrelationshipto ( secondnode, RelTypes. KNOWS ); relationship. setproperty ( " message ", " brave Neo4j " ); Nasz graf wygląda tak, jak przedstawiono na rysunku 3.2. Usuwamy dane z bazy: 4 EmbeddedGraphDatabase.html

21 3.2. PRZYKŁADOWY KOD PROGRAMU 17 Rysunek 3.1: Interfejs zarządzania i monitorowania Neo4j.

22 18 ROZDZIAŁ 3. INSTALACJA I KONFIGURACJA NEO4J firstnode. getsinglerelationship ( RelTypes. KNOWS, Direction. OUTGOING ). delete () ; firstnode. delete () ; secondnode. delete () ; Zamykamy bazę danych: graphdb. shutdown () ;

23 3.2. PRZYKŁADOWY KOD PROGRAMU 19 Rysunek 3.2: Schemat grafu "Hello World"

24 20 ROZDZIAŁ 3. INSTALACJA I KONFIGURACJA NEO4J

25 Rozdział 4 Wady i zalety Neo4j Marcin Lewandowski Neo4j, jako grafowa baza danych typu NoSQL, jest przeznaczona pod pewną klasę zastosowań. Implikuje to posiadanie pewnych zalet w przypadku zastosowań zgodnych z przeznaczeniem Neo4j oraz wad, gdy narzędzie używane jest jako konwencjonalna baza danych. Neo4j jest zaprojektowane do przechowywania i manipulowania danych grafowych i pół-strukturalnych (ang. semi-structured) i sprawdza się znacznie lepiej w takich rozwiązaniach od relacyjnych baz danych. Analogicznie, w sytuacjach przeciwnych prym wiodą rozwiązania relacyjne. 4.1 Zalety Neo4j Do wyraźnych, charakterystycznych atutów rozwiązania Neo4j należą: 1. Wydajność Neo4j zostało stworzone z myślą o wydajności. Rzeczywiście, opisywane rozwiązanie pozwala uzyskać nawet kilkudziesięciokrotny wzrost wydajności w porównaniu z analogicznymi problemami rozwiązywanymi za pomocą relacyjnych baz danych. Ponieważ wydajność można mierzyć na wiele sposobów, szczegółowy opis wydajności znajduje się w podrozdziale Skalowalność to drugi paradygmat wykorzystany przy tworzeniu Neo4j. Rozwiązanie pozwala na przechowywanie ponad 100 milionów elementów (węzłów, atrybutów oraz związków) na jednej maszynie i wciąż sprawne nimi zarządzanie [13]. 3. Transakcje ACID pełna tranzakcyjność, wspiera JTA/JTS, XA, 2PC, wykrywa zakleszczenia [6]. 4. Łatwa i wydajna reprezentacja pół-strukturalnych danych, sieci i grafów Neo4j jest stworzony do przechowywania danych pół-strukturalnych (odpowiadających tabeli z wieloma kolumnami atrybutowymi, które nie są wypełniane w większości krotek) [13]. 21

26 22 ROZDZIAŁ 4. WADY I ZALETY NEO4J 5. Łatwe modyfikowanie struktury ponieważ Neo4j nie używa statycznych tabel z krotkami, lecz cała struktura danych jest w formie łatwo modyfikowalnego grafu [13]. 6. Rozwiązanie dyskowe (ang. disk-base) przeznaczone do przechowywania struktur na dyskach twardych. Zoptymalizowane pod względem wydajności i skalowalności na tychże dyskach. Wsparcie SSD [4]. 7. Brak potrzeby obiektowo-relacyjnego mapowania (ang. Object-relational mapping) w przeciwieństwie do relacyjnych baz danych, nie są konieczne odpowiednie mechanizmy do konwersji niekompatybilnych danych zawartych w tabelach do obiektów. 8. Lekkość (ang. light-weight) rozwiązania Neo4j jest rozwiązaniem małym i lekkim. Jako komponent Java (pojedynczy plik nieprzekraczający 1MB [4]), nie potrzebuje dodatkowych platform uruchomieniowych, a mimo to zapewnia wydajność na skalę serwerową [1]. 9. Solidność (ang. robust) - Neo4j jest obecnie dojrzałą technologią. Było używane przez lata w wymagających środowiskach działających bez przerwy [13]. 10. Wolne oprogramowanie (ang. open source) Neo4j w wersji Community jest dostępne na licencji GPLv3, natomiast wersje Advanced oraz Enterprise są dostępne na licencji AGPLv3 lub komercyjnej [11]. 4.2 Wady Neo4j Neo4j ma również swoje wady z których część jest związana z przyjętymi założeniami rozwiązania: 1. Bezpieczeństwo [1] Neo4j nie posiada wbudowanych rozwiązań zabezpieczających. Zakłada, że jest uruchomione w zaufanym środowisku. 2. Brak wsparcia dla wielu użytkowników [1] obsługa wielu użytkowników musi być realizowana na poziomie aplikacyjnym. 3. Gorsza wydajność dla strukturalnych danych - Neo4j, jako rozwiązanie grafowe, źle się spisuje dla danych, które dobrze są opisywane w relacyjnych bazach danych[13]. Szczegóły opisane są w podrozdziale Gorsza wydajność dla danych liczbowych i dat Neo4j używa Lucene, które jest zoptymalizowane do indeksowania danych tekstowych [1]. 5. Niepopularność grafowego podejścia ze względu na wielką popularność relacyjnych baz danych, każde rozwiązanie grafowej bazy danych (w tym Neo4j) wymaga od użytkowników nauki nie tylko nowych narzędzi, ale i odmiennego podejścia do przechowywania i zarządzania danymi. Jednocześnie, w porównaniu ze społecznością

27 4.3. ASPEKT WYDAJNOŚCI NEO4J 23 związaną z relacyjnymi bazami danych, użytkownicy Neo4j mają mniejsze wsparcie od użytkowników tejże bazy danych [13]. 6. Brak alternatywnych implementacji [13, 2] wprawdzie to nie wada sama w sobie, lecz brak innych implementacji wystawia Neo4j na ryzyko zastoju i braku rozwijania. 7. Brak wyzwalaczy (ang. trigger) Planowane jest ich wprowadzenie w przyszłości [4]. 8. Niedoskonałe narzędzia do zarządzania danymi zwłaszcza w porównaniu z relacyjnymi bazami danych, narzędzia do zarządzania Neo4j mają mniejsze możliwości [13, 2]. 4.3 Aspekt wydajności Neo4j Nie powinno być zaskoczeniem, iż każde dedykowane rozwiązanie jest dobre w tym, do czego zostało przewidziane. Nie inaczej jest i w tym przypadku. Zarówno relacyjne jak i graficzne bazy danych spełniają dobrze swoją funkcję. W szczególności Neo4j, jako dedykowane narzędzie do tworzenia i zarządzania grafowymi bazami danych, pozwala uzyskać wydajność większą o rzędy wielkości w porównaniu do relacyjnych baz danych. Materiały wprowadzające do Neo4j [2] zachwalają to rozwiązanie pokazując niezwykle optymistyczne wybrane wyniki ukazane w tablicy 4.1. Testy na danych grafowych [3] pokazują wyższą wydajność rozwiązania Neo4j. Podsumowując zawartość opisywanych testów, przejrzenie struktury grafu oraz zwrócenie około 350 milionów wierzchołków zajęło rozwiązaniu Neo4j niecałe 15 minut. Baza danych My- SQL nie ukończyła analogicznego zadania nawet po upływie dwóch godzin. W innym teście [13] na komputerze z procesorem Core 2 Duo 2.4GHz oraz 8GB pamięci RAM (z czego 2GB przypisane maszynie JVM dla Neo4j) przejście po ponad relacjach zajmuje mniej niż 10 sekund. Trzeba jednak mieć na uwadze, że powyższe testy były wykonywane na danych trzymanych w postaci grafów. Można podejrzewać, że same wyniki były dobrane tak, aby pokazywać zalety Neo4j, ale nie ujawniać wad. Bazy relacyjne nie są przystosowane do tego typu reprezentacji, gdyż wymagają kosztownych złączeń swoich tabel. Nieco bardziej ogólne testy (jednak również na danych w postaci grafu) są ukazane w innym dokumencie [1] porównującym rozwiązanie MySQL z Neo4j. Po pierwsze, w przypadku przechowywania w bazie danych elementów o typach liczbowych (integer) oraz Baza danych Liczba węzłów Czas zapytania Relacyjna ms Neo4j ms Neo4j ms Tablica 4.1: Porównanie czasów zapytań w bazach danych.

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

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

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

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

Bardziej szczegółowo

dziennik Instrukcja obsługi

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

Bardziej szczegółowo

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Dotacje na innowacje. Inwestujemy w waszą przyszłość. PROJEKT TECHNICZNY Implementacja Systemu B2B w firmie Lancelot i w przedsiębiorstwach partnerskich Przygotowane dla: Przygotowane przez: Lancelot Marek Cieśla Grzegorz Witkowski Constant Improvement Szkolenia

Bardziej szczegółowo

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Typy 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ółowo

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Temat: 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ółowo

Instrukcja instalacji i obsługi programu Szpieg 3

Instrukcja instalacji i obsługi programu Szpieg 3 COMPUTER SERVICE CENTER 43-300 Bielsko-Biała ul. Cieszyńska 52 tel. +48 (33) 819 35 86, 819 35 87, 601 550 625 Instrukcja instalacji i obsługi programu Szpieg 3 wersja 0.0.2 123 SERWIS Sp. z o. o. ul.

Bardziej szczegółowo

ActiveXperts SMS Messaging Server

ActiveXperts 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ółowo

Administracja bazami danych

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

Bardziej szczegółowo

2011-11-04. Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management Studio. Microsoft Access Oracle Sybase DB2 MySQL

2011-11-04. Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management Studio. Microsoft Access Oracle Sybase DB2 MySQL Instalacja, konfiguracja Dr inŝ. Dziwiński Piotr Katedra InŜynierii Komputerowej Kontakt: piotr.dziwinski@kik.pcz.pl 2 Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykł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ółowo

Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres

Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres Artur Kozubski Software Development GigaCon Warszawa 2008 Plan Historia projektu Firebird Architektura serwera Administracja

Bardziej szczegółowo

Załącznik 1 instrukcje instalacji

Załącznik 1 instrukcje instalacji Załącznik 1 instrukcje instalacji W poniższym załączniku przedstawione zostaną instrukcje instalacji programów wykorzystanych w trakcie tworzenia aplikacji. Poniższa lista przedstawia spis zamieszczonych

Bardziej szczegółowo

Szpieg 2.0 Instrukcja użytkownika

Szpieg 2.0 Instrukcja użytkownika Szpieg 2.0 Instrukcja użytkownika Spis treści: Wstęp: 1. Informacje o programie 2. Wymagania techniczne Ustawienia: 3. Połączenie z bazą danych 4. Konfiguracja email 5. Administracja Funkcje programu:

Bardziej szczegółowo

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

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

Bardziej szczegółowo

SZKOLENIE: Administrator baz danych. Cel szkolenia

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

Bardziej szczegółowo

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja wielokrotna)

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja wielokrotna) IBM SPSS Statistics Wersja 22 Linux - Instrukcja instalacji (licencja wielokrotna) Spis treści Instrukcja instalacji.......... 1 Wymagania systemowe........... 1 Instalowanie produktu............ 1 Praca

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk Nip 848-172-84-22 ZAPYTANIE OFERTOWE Firma DOMSET Marcin Brochacki zwraca się z prośbą o przesłanie oferty cenowej

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Najczęściej stosowanym systemem obiegu dokumentów elektronicznych jest poczta elektroniczna. Dokumenty przesyłamy sobie jako załączniki do listów.

Najczęściej stosowanym systemem obiegu dokumentów elektronicznych jest poczta elektroniczna. Dokumenty przesyłamy sobie jako załączniki do listów. 1 2 Najczęściej stosowanym systemem obiegu dokumentów elektronicznych jest poczta elektroniczna. Dokumenty przesyłamy sobie jako załączniki do listów. Jednak taka praktyka powoduje problemy w sytuacji,

Bardziej szczegółowo

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

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

Bardziej szczegółowo

VinCent Administrator

VinCent Administrator VinCent Administrator Moduł Zarządzania podatnikami Krótka instrukcja obsługi ver. 1.01 Zielona Góra, grudzień 2005 1. Przeznaczenie programu Program VinCent Administrator przeznaczony jest dla administratorów

Bardziej szczegółowo

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

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

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Instrukcja instalacji i konfiguracji bazy danych SQL SERVER 2008 EXPRESS R2. Instrukcja tworzenia bazy danych dla programu AUTOSAT 3. wersja 0.0.

Instrukcja instalacji i konfiguracji bazy danych SQL SERVER 2008 EXPRESS R2. Instrukcja tworzenia bazy danych dla programu AUTOSAT 3. wersja 0.0. Instrukcja instalacji i konfiguracji bazy danych SQL SERVER 2008 EXPRESS R2 Instrukcja tworzenia bazy danych dla programu AUTOSAT 3 wersja 0.0.4 2z12 1. Wymagania systemowe. Przed rozpoczęciem instalacji

Bardziej szczegółowo

Zespól Szkół Ponadgimnazjalnych Nr 17 im. Jana Nowaka - Jeziorańskiego Al. Politechniki 37 Windows Serwer 2003 Instalacja

Zespól Szkół Ponadgimnazjalnych Nr 17 im. Jana Nowaka - Jeziorańskiego Al. Politechniki 37 Windows Serwer 2003 Instalacja 7 Windows Serwer 2003 Instalacja Łódź, styczeń 2012r. SPIS TREŚCI Strona Wstęp... 3 INSTALOWANIE SYSTEMU WINDOWS SERWER 2003 Przygotowanie instalacji serwera..4 1.1. Minimalne wymagania sprzętowe......4

Bardziej szczegółowo

Referat pracy dyplomowej

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

Bardziej szczegółowo

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z

Bardziej szczegółowo

Dysk 20GB przestrzeni Ajax Ajax 1.0 Baza danych MS SQL 2005 lub 2008 Express Java Java 6 run time Microsoft Silverlight 3.

Dysk 20GB przestrzeni Ajax Ajax 1.0 Baza danych MS SQL 2005 lub 2008 Express Java Java 6 run time Microsoft Silverlight 3. Systemy do kompleksowej administracji środowiskiem IT : Symantec Management Platform Solutions - rozwiązanie ułatwiające zarządzanie zasobami informatycznym Głównym zadaniem podlegającym kompetencji działu

Bardziej szczegółowo

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja autoryzowanego użytkownika)

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja autoryzowanego użytkownika) IBM SPSS Statistics Wersja 22 Linux - Instrukcja instalacji (licencja autoryzowanego użytkownika) Spis treści Instrukcja instalacji.......... 1 Wymagania systemowe........... 1 Kod autoryzacji.............

Bardziej szczegółowo

egroupware czy phpgroupware jest też mniej stabilny.

egroupware czy phpgroupware jest też mniej stabilny. Opengroupware to projekt udostępniający kompletny serwer aplikacji oparty na systemie Linux. Dostępny na licencji GNU GPL, strona domowa: http://www.opengroupware.org/ Jego cechy to wysoka stabilność,

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Wprowadzenie do projektu QualitySpy

Wprowadzenie do projektu QualitySpy Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować

Bardziej szczegółowo

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans. GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans

Bardziej szczegółowo

Zarządzaj projektami efektywnie i na wysokim poziomie. Enovatio Projects SYSTEM ZARZĄDZANIA PROJEKTAMI

Zarządzaj projektami efektywnie i na wysokim poziomie. Enovatio Projects SYSTEM ZARZĄDZANIA PROJEKTAMI Sprawne zarządzanie projektami Tworzenie planów projektów Zwiększenie efektywności współpracy Kontrolowanie i zarządzanie zasobami jak również pracownikami Generowanie raportów Zarządzaj projektami efektywnie

Bardziej szczegółowo

Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows

Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows Spis treści Rozdział 1. Przegląd......... 1 Wstęp................. 1 Wdrażanie technologii Data Access........ 1 Źródła danych

Bardziej szczegółowo

Jednolite zarządzanie użytkownikami systemów Windows i Linux

Jednolite zarządzanie użytkownikami systemów Windows i Linux Uniwersytet Mikołaja Kopernika Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Paweł Gliwiński Nr albumu: 168470 Praca magisterska na kierunku Informatyka Jednolite

Bardziej szczegółowo

Problemy techniczne SQL Server

Problemy techniczne SQL Server Problemy techniczne SQL Server Jak utworzyć i odtworzyć kopię zapasową za pomocą narzędzi serwera SQL? Tworzenie i odtwarzanie kopii zapasowych baz danych programów Kadry Optivum, Płace Optivum, MOL Optivum,

Bardziej szczegółowo

Przypisywanie bibliotek w architekturze SAS

Przypisywanie bibliotek w architekturze SAS SAS Institute TECHNICAL SUPPORT Przypisywanie bibliotek w architekturze SAS Platforma SAS pozwala na zdefiniowanie wspólnych zasobów w metadanych oraz ustalanie praw dostępu dla użytkowników i grup. Ze

Bardziej szczegółowo

REFERAT O PRACY DYPLOMOWEJ

REFERAT O PRACY DYPLOMOWEJ REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja mobilnego systemu wspomagającego organizowanie zespołowej aktywności fizycznej Autor: Krzysztof Salamon W dzisiejszych czasach życie ludzi

Bardziej szczegółowo

Załącznik nr 2. Przewodnik instalacyjny systemu e-broker Technologiczny v.1.0. Część 4 - Narzędzia informatyczne przeznaczone dla ośrodków innowacji

Załącznik nr 2. Przewodnik instalacyjny systemu e-broker Technologiczny v.1.0. Część 4 - Narzędzia informatyczne przeznaczone dla ośrodków innowacji Załącznik nr 2 Przewodnik instalacyjny systemu e-broker Technologiczny v.1.0 Część 4 - Narzędzia informatyczne przeznaczone dla ośrodków innowacji Produkt finalny projektu innowacyjnego testującego pn.:

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:

Bardziej szczegółowo

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym 1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle

Bardziej szczegółowo

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7 I Wprowadzenie (wersja 0906) Kurs OPC S7 Spis treści Dzień 1 I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami automatyki I-6 Cechy podejścia dedykowanego

Bardziej szczegółowo

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8. WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8. Gdy już posiadamy serwer i zainstalowany na nim system Windows XP, 7 lub 8 postawienie na nim serwera stron WWW jest bardzo proste. Wystarczy

Bardziej szczegółowo

Systemy 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 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ółowo

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania. Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania. Założenia projektowe systemu NETDOC. część 1: założenia ogólne i funkcjonalność rdzenia systemu Założenia ogólne Celem projektu jest

Bardziej szczegółowo

BACKUP BAZ DANYCH MS SQL

BACKUP BAZ DANYCH MS SQL BACKUP BAZ DANYCH MS SQL SPIS TREŚCI Informacje ogólne... 2 Tworzenie projektu... 2 Krok 1: Informacje Podstawowe... 2 Krok 2: Dane... 3 Krok 3: Planowanie... 4 Krok 4: Zaawansowane... 5 Przywracanie baz

Bardziej szczegółowo

SZKOLENIE TWORZENIE SYSTEMÓW

SZKOLENIE TWORZENIE SYSTEMÓW SZKOLENIE TWORZENIE SYSTEMÓW INFORMATYCZNYCH Z UŻYCIEM GROOVY I GRAILS KOD: JGR Strona 1 1 Opis Platforma Java EE to zbiór zaawansowanych narzędzi umożliwiających tworzenie systemów korporacyjnych. Jest

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Co to jest NODE.JS? Nowoczesne środowisko programistyczne

Co to jest NODE.JS? Nowoczesne środowisko programistyczne Node.js Co to jest NODE.JS? Nowoczesne środowisko programistyczne Środowisko programistyczne w sensie zestawu gotowych klas i metod których można używać do przygotowania własnych skalowalnych i wydajnych

Bardziej szczegółowo

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Wykonać Ć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ółowo

Tworzenie i obsługa wirtualnego laboratorium komputerowego

Tworzenie 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ółowo

Część I Rozpoczęcie pracy z usługami Reporting Services

Część I Rozpoczęcie pracy z usługami Reporting Services Spis treści Podziękowania... xi Wprowadzenie... xiii Część I Rozpoczęcie pracy z usługami Reporting Services 1 Wprowadzenie do usług Reporting Services... 3 Platforma raportowania... 3 Cykl życia raportu...

Bardziej szczegółowo

Hbase, Hive i BigSQL

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

Bardziej szczegółowo

IBM SPSS Statistics dla systemu Linux Instrukcje instalacji (licencja sieciowa)

IBM SPSS Statistics dla systemu Linux Instrukcje instalacji (licencja sieciowa) IBM SPSS Statistics dla systemu Linux Instrukcje instalacji (licencja sieciowa) Przedstawione poniżej instrukcje dotyczą instalowania IBM SPSS Statistics wersji 20 przy użyciu licencja sieciowa. Ten dokument

Bardziej szczegółowo

Bazy danych 2. Wykład 1

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

Bardziej szczegółowo

Koncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source

Koncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source Koncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source Dr inż. Michał Bednarczyk Uniwersytet Warmińsko-Mazurski w Olsztynie Wydział Geodezji i Gospodarki Przestrzennej Katedra Geodezji

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania

Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania Michał Socha, Wojciech Górka Integracja danych Prosty export/import Integracja 1:1 łączenie baz danych

Bardziej szczegółowo

Serwery LDAP w środowisku produktów w Oracle

Serwery LDAP w środowisku produktów w Oracle Serwery LDAP w środowisku produktów w Oracle 1 Mariusz Przybyszewski Uwierzytelnianie i autoryzacja Uwierzytelnienie to proces potwierdzania tożsamości, np. przez: Użytkownik/hasło certyfikat SSL inne

Bardziej szczegółowo

Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o

Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa

Bardziej szczegółowo

DOKUMENTACJA ADMINISTRATORA SYSTEMU INFORMATYCZNEGO POLSKI FADN

DOKUMENTACJA ADMINISTRATORA SYSTEMU INFORMATYCZNEGO POLSKI FADN Instytut Ekonomiki Rolnictwa i Gospodarki Żywnościowej - Państwowy Instytut Badawczy ul. Świętokrzyska 20 00 950 Warszawa 1 Skr. pocztowa 984 tel./faks: (48 22) 826 93 22, (48 22) 826 61 58 email: rachrol@fadn.pl

Bardziej szczegółowo

W dalszej części dokumentu przedstawiamy skrócony opis kluczowych funkcji systemu. Niniejszy dokument nie zawiera opisu technicznego systemu.

W dalszej części dokumentu przedstawiamy skrócony opis kluczowych funkcji systemu. Niniejszy dokument nie zawiera opisu technicznego systemu. 1. Informacje Podstawowe Mediamanager 2.1 jest systemem wspierającym zarządzanie dokumentami elektronicznymi. Podstawowymi funkcjami realizowanymi przez oprogramowanie jest przetrzymywanie, zarządzanie

Bardziej szczegółowo

Grzegorz 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 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ółowo

Zasady współpracy programu Doradca Handlowy z Symfonią

Zasady współpracy programu Doradca Handlowy z Symfonią Zasady współpracy Doradcy Handlowego z Symfonią 1 S U P L E M E N T Zasady współpracy programu Doradca Handlowy z Symfonią Konfiguracja połączenia Symfonia Doradca Handlowy Symfonia forte Finanse i Księgowość

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Instalacja aplikacji

Instalacja aplikacji 1 Instalacja aplikacji SERTUM... 2 1.1 Pobranie programu z Internetu... 2 1.2 Instalacja programu... 2 1.3 Logowanie... 3 2 Instalacja aplikacji RaportNet... 4 2.1 Pobranie programu z Internetu... 4 2.2

Bardziej szczegółowo

Tekla Structures 20 Instalacja

Tekla Structures 20 Instalacja Tekla Structures 20 Instalacja Plan prezentacji: - Wymagania sprzętowe - Instalacja TS20.0 - Instalacja środowisk - Instalacja i konfiguracja bibliotek CS - Struktura katalogów - Flexnet serwer licencyjny

Bardziej szczegółowo

Zadanie nr 4.5: Oprogramowanie bazodanowe. Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia

Zadanie nr 4.5: Oprogramowanie bazodanowe. Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia Zadanie nr 4.5: Oprogramowanie bazodanowe Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia Zakres przedmiotu zamówienia obejmuje dostarczenie, wdrożenie oraz konfigurację

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Wstęp... ix. 1 Omówienie systemu Microsoft Windows Small Business Server 2008... 1

Wstęp... ix. 1 Omówienie systemu Microsoft Windows Small Business Server 2008... 1 Spis treści Wstęp... ix 1 Omówienie systemu Microsoft Windows Small Business Server 2008... 1 Składniki systemu Windows SBS 2008... 1 Windows Server 2008 Standard... 2 Exchange Server 2007 Standard...

Bardziej szczegółowo

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk Nip 848-172-84-22 ZAPYTANIE OFERTOWE Firma DOMSET Marcin Brochacki zwraca się z prośbą o przesłanie oferty cenowej

Bardziej szczegółowo

Windows Serwer 2008 R2. Moduł 8. Mechanizmy kopii zapasowych

Windows Serwer 2008 R2. Moduł 8. Mechanizmy kopii zapasowych Windows Serwer 2008 R2 Moduł 8. Mechanizmy kopii zapasowych Co nowego w narzędziu Kopia zapasowa? 1. Większa elastyczność w zakresie możliwości wykonywania kopii zapasowych 2. Automatyczne zarządzanie

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Sposób funkcjonowania

Sposób funkcjonowania Stratus Avance został zaprojektowany w sposób, który w przypadku wystąpienia awarii ma zminimalizować czas przestoju i zapobiec utracie danych. Jednocześnie rozwiązanie ma być tanie i łatwe w zarządzaniu.

Bardziej szczegółowo

Programowanie obiektowe

Programowanie 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ółowo

Migracja do PostgreSQL za pomocą narzędzi Enterprise DB

Migracja do PostgreSQL za pomocą narzędzi Enterprise DB Migracja do PostgreSQL za pomocą narzędzi Enterprise DB Przemysław Deć Konsultant IT Linux Polska Sp. z o.o. Cele prezentacji Czym jest Enterprise DB Korzyści migracji do opensource`owej bazy danych Kompatybilność

Bardziej szczegółowo

Monitorowanie i zarządzanie urządzeniami sieciowymi przy pomocy narzędzi Net-SNMP

Monitorowanie i zarządzanie urządzeniami sieciowymi przy pomocy narzędzi Net-SNMP Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Szymon Klimuk Nr albumu: 187408 Praca magisterska na kierunku Informatyka Monitorowanie

Bardziej szczegółowo

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c Wymagania edukacyjne w technikum ADMINISTROWANIE BAZAMI DANYCH kl. 4c Lp. 1 2 4 5 Temat Zasady dotyczące zarządzania projektem podczas prac związanych z tworzeniem bazy oraz cykl życiowy bazy Modele tworzenia

Bardziej szczegółowo

Komunikacja i wymiana danych

Komunikacja 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ółowo

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer? Kadry Optivum, Płace Optivum Jak przenieść dane na nowy komputer? Aby kontynuować pracę z programem Kadry Optivum lub Płace Optivum (lub z obydwoma programami pracującymi na wspólnej bazie danych) na nowym

Bardziej szczegółowo

INFORMATYKA Pytania ogólne na egzamin dyplomowy

INFORMATYKA 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ółowo

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

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

Bardziej szczegółowo

Co to jest GASTRONOMIA?

Co to jest GASTRONOMIA? Co to jest GASTRONOMIA? Program Gastronomia to w pełni zintegrowana aplikacja, która znajduje zastosowanie w obsłudze punktu sprzedaży produktów gastronomicznych i może być dostosowana do indywidualnych

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT 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ółowo

Bazy danych. Dr inż. Paweł Kasprowski

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

Bardziej szczegółowo

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl Instrukcja do panelu administracyjnego do zarządzania kontem FTP WebAs www.poczta.greenlemon.pl Opracowanie: Agencja Mediów Interaktywnych GREEN LEMON Spis treści 1.Wstęp 2.Konfiguracja 3.Konto FTP 4.Domeny

Bardziej szczegółowo

SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH. info@prointegra.com.pl tel: +48 (032) 730 00 42

SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH. info@prointegra.com.pl tel: +48 (032) 730 00 42 SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH info@prointegra.com.pl tel: +48 (032) 730 00 42 1. WPROWADZENIE... 3 2. KORZYŚCI BIZNESOWE... 4 3. OPIS FUNKCJONALNY VILM... 4 KLUCZOWE FUNKCJE

Bardziej szczegółowo

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

I. Informacje ogólne. Jednym z takich systemów jest Mambo. MAMBO (CMS) I. Informacje ogólne CMS, Content Management System ("system zarządzania treścią") jest to jedna lub zestaw aplikacji internetowych pozwalających na łatwe utworzenie oraz późniejszą aktualizację

Bardziej szczegółowo

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja Instytut Telekomunikacji Wydział Elektroniki i Technik Informacyjnych Politechnika Warszawska, marzec 2015 Wprowadzenie Ćwiczenie jest wykonywane

Bardziej szczegółowo

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań, 04.03.2010

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań, 04.03.2010 Bezpieczeństwo interoperacyjnego hostingu Gerard Frankowski, Zespół Bezpieczeństwa PCSS 4. Konferencja MIC Nowoczesne technologie bliżej nas Poznań, 04.03.2010 1 Agenda Wprowadzenie Zespół Bezpieczeństwa

Bardziej szczegółowo

OFFICE 365 + ADFS - POŁĄCZENIE KORZYŚCI ROZWIĄZAŃ CHMUROWYCH I CENTRALNEGO ZARZĄDZANIA

OFFICE 365 + ADFS - POŁĄCZENIE KORZYŚCI ROZWIĄZAŃ CHMUROWYCH I CENTRALNEGO ZARZĄDZANIA Marta Grum, Administrator Systemów Microsoft w Grupie Unity OFFICE 365 + ADFS - POŁĄCZENIE KORZYŚCI ROZWIĄZAŃ CHMUROWYCH I CENTRALNEGO ZARZĄDZANIA Usługa Office365 jest niezbędnym pakietem narzędzi wykorzystywanych

Bardziej szczegółowo

JDBC 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 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ółowo

Program szkolenia KURS SPD i PD Administrator szkolnej pracowni internetowej Kurs MD1 Kurs MD2 Kurs MD3 (dla szkół ponadgimnazjalnych)

Program szkolenia KURS SPD i PD Administrator szkolnej pracowni internetowej Kurs MD1 Kurs MD2 Kurs MD3 (dla szkół ponadgimnazjalnych) Miejsce prowadzenia szkolenia Program szkolenia KURS SPD i PD Administrator pracowni internetowej Kurs MD1 Kurs MD2 Kurs MD3 (dla szkół ponadgimnazjalnych) Pracownie komputerowe znajdujące się w wyznaczonych

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5 Wdrożenie modułu płatności eservice dla systemu Zen Cart 1.3.9 1.5 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo