MongoDB w zastosowaniu w serwisach społecznościowych

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

Download "MongoDB w zastosowaniu w serwisach społecznościowych"

Transkrypt

1 Autor: Gdańsk Michał Giergielewicz MongoDB w zastosowaniu w serwisach społecznościowych Poniższe sprawozdanie ma na celu przekazanie informacji na temat systemu bazodanowego MongoDB, i tego, jaką daję przewagę nad tradycyjną bazą danych wykorzystywaną w internetowych serwisach społecznościowych czyli MySQL. Sprawozdanie zawiera: 1. Przedstawienie wymagań dotyczących baz danych w tradycyjnym podejściu do portali internetowych czyli tzw. WEB Przedstawienie wymagań dotyczących baz danych w podejściu społecznościowym czyli WEB Przybliżenie cech systemów nierelacyjnych na podstawie MongoDB 4. Prezentacja możliwych zastosowań MongoDB 5. Omówienie zalet MongoDB na przykładzie wybranych funkcjonalności społecznościowych 6. Podsumowanie wyników wydajnościowych przeprowadzonych w środowisku produkcyjnym serwisów Gratka Technologie Celem sprawozdania jest przekazanie podstawowej wiedzy na temat nierelacyjnych baz danych, uświadomienie konieczności rozwoju środowisk bazodanowych w internetowych portalach społecznościowych, tak aby sprostać zmieniającym się wymaganiom i zaprezentowanie nowego podejścia do sposobu przechowywania i prezentowania informacji w portalach internetowych. Wymagania wobec baz danych w portalach internetowych w podejściu tradycyjnym. MySQL jest najpopularniejszym obecnie systemem baz danych wykorzystywanym w środowiskach portali internetowych. Jest to relacyjna baza danych spełniająca wymogi wydajnościowe i pojemnościowe nawet dla dużych serwisów. W czasach tzw. WEB1.0 czyli wtedy, gdy użytkownicy witryn internetowych byli biernymi oglądaczami prezentowanych treści, a jedyną formą interakcji była funkcjonalność forum internetowego, baza MySQL była więcej niż wystarczającym narzędziem. Jeśli założymy, że nawet duży portal internetowy o charakterze kontentowym 1 (wp.pl, 1 Portal kontentowy (ang. Content treść, zawartość), to portal o charakterze informacyjnym, który publikuje artykuły, wiadomości i zawartość multimedialną mającą na celu informowanie użytkowników. 1

2 onet.pl itp) posiada nie więcej niż kilkuset redaktorów tworzących treść serwisu, to przekłada się to na nie więcej niż kilka-kilkanaście tysięcy zapisów do bazy MySQL na dobę. Przy tym założeniu baza MySQL jest idealnym narzędziem ponieważ jej siła najbardziej się uwidacznia przy dużej dysproporcji między poziomem zapisu a odczytu (dokładnie mało zapisów, dużo odczytów). Nawet bardzo duża pula odczytów w takim serwisie może zostać skutecznie rozłożona na slave'y 2 w replikacji MySQL. Jeśli uruchomimy replikację na jednej maszynie typu master, to bez najmniejszego problemu obsłuży ona cały ruch zapisujący dane od redaktorów i prześle go na dowolną praktycznie ilość slave'ów, a duża pula odczytów rozłoży się poprzez loadbalancing na kilka slave'ów. W takim systemie jest możliwe obsłużenie naprawdę bardzo dużego ruchu przy rozsądnych nakładach sprzętowych. Wymagania wobec baz danych w portalach internetowych w podejściu społecznościowym Tak zwane WEB2.0 całkowicie odmieniło rzeczywistość 'sprzętową' w portalach internetowych. Wokół witryn zaczęły tworzyć się społeczności przyciągane możliwościami aktywnego tworzenia treści serwisu, wymiany myśli, poglądów, współpracy i integracji ludzi. W Web2.0 przeważa tzw. User Generated Content, co przekłada się oczywiście na kwestie przechowywania i serwowania informacji z poziomu baz danych. W serwisach społecznościowych nie ma kilkuset redaktorów tylko kilka tysięcy lub nawet kilka milionów! Facebook czy naszaklasa to sztandarowe przykłady bardzo dużych portali społecznościowych i na ich podstawie można przeanalizować jakim wymaganiom musi sprostać baza danych. Ogromny wzrost zapisów i modyfikacji w bazie danych spowodowany jest tym, że każdy dotychczasowy bierny odbiorca treści, stał się aktywnym twórcą. Taki wzrost zapisów jest czymś do czego MySQL po prostu nie został stworzony, zapis do bazy, zwłaszcza modyfikacja rekordu powoduje zablokowanie całej tabeli, co powoduje opóźnienia w odczytach i rosnące kolejki 'selectów' czekających na odblokowanie tabeli. Jeśli zapisów jest dużo, blokady powodują ogromny wzrost obciążenia i w rezultacie zawieszenie procesu MySQLd. Oczywiście w MySQL są techniki i narzędzia które mogą w pewnym stopniu ograniczyć ten problem lecz w praktyce bardzo szybko dochodzi do wysycenia systemu i jedynym rozwiązaniem jest ucieczka w sprzęt czyli rozbudowa farmy serwerów MySQL. Oczywiście takie rozwiązanie jest bardzo kosztowne i w praktyce nieopłacalne. Na szczęście istnieje inne rozwiązanie. 2 Slave (ang. niewolnik, to w znaczeniu podległy) część systemu bazodanowego (najczęściej osobna maszyna) udostępniająca dane tylko do odczytu. Jeden system bazodanowy może utrzymywać kilka takich systemów rozkładając w ten sposób obciążenie zapytaniami pobierającymi dane na kilka fizycznych maszyn. 2

3 Przybliżenie cech systemów nierelacyjnych na bazie MongoDB MongoDB to tak zwana nierelacyjna baza danych pracująca w modelu 'Document Oriented'. Idea stojąca za Mongo jest następująca: Systemy relacyjne takie jak MySQL, Oracle czy Mssql są bardzo rozbudowane, mają ogromne możliwości lecz często okupione jest to niższą wydajnością i skomplikowaną obsługą. Z drugiej strony systemy typu 'key-value' takie jak Mamcache, Redis, czy Voldemort są wyjątkowo proste w budowie i oferują stosunkowo niewiele funkcji (w uogólnieniu to tablice hashowe, czasem rozbudowane o proste mechanizmy wyszukiwania czy agregacji i bardziej rozbudowane funkcje wydajnościowe takie jak klastrowanie, możliwość pracy w systemach rozproszonych z wysoką odpornością na awarie) lecz ich zaletą jest ogromna wręcz prędkość działania i niezawodność. MongoDB spina te dwa podejścia starając się przejąć to co najlepsze z systemów relacyjnych czyli funkcje wyszukiwania, sortowania, agregacji a z systemów key-value szybkość działania i dużą odporność na awarie. W efekcie MongoDB zapewnia doskonałe lekarstwo na problemy które przyniosło Web2.0. Posiada możliwość definiowania kolekcji (tabel) i dokumentów (krotek), lecz ponieważ jest bazą typu schemeless 3 nie ma potrzeby definiowania struktury tych obiektów, więc każdy z nich może zawierać inne pola np. jeśli weźmiemy pod uwagę kolekcję użytkowników, to jeden dokument może zawierać pola 'imie', 'nazwisko', ' ' a drugi 'imie', 'login', 'status' oba dokumenty mogą leżeć we wspólnej kolekcji. W każdym przypadku pola niezdefiniowane są niejawnie definiowane jako puste. Jedynym wymogiem jest istnienie unikalnego klucza głównego dla każdego dokumentu wewnątrz jednej kolekcji o co zresztą dba samo Mongo. Takie podejście jest intuicyjne i proste w implementacji a dodatkowo oszczędza miejsce (nie ma potrzeby rezerwacji miejsca na pola które mają puste wartości, i łatwo wprowadzać zmiany do danych przechowywanych w kolekcji nie ma potrzeby redefiniowania struktury jak w wypadku baz relacyjnych) Kolekcje można przeszukiwać pod kątem istnienia dokumentów spełniających określone kryteria (np. Pole płeć ma wartość k lub imie zaczyna się na Mich ), w tej chwili nie ma jeszcze możliwości przeszukiwania pełnotekstowego ale istnieją znane obejścia tego problemu a developerzy Mongo pracują nad natywną obsługą tej funkcji. Otrzymane wyniki można dowolnie sortować, ograniczać i agregować. Mongo pozwala też na zakładanie indeksów, które działają analogicznie do tych w MySQL. Dodatkowo Mongo zapewnia 3 Schemeless (ang. bez struktury) tu system bazodanowy niewymagający definiowania struktur ( jak w bazach relacyjnych poprzez DDL SQL). Dane zapisywane są w postaci dokumentów najczęściej w formie pseudo obiektowej (w wypadku MongoDB jest do format Json) 3

4 atomowość operacji na poziomie dokumentu i nie wymaga blokady kolekcji podczas dodawania danych bądź ich aktualizacji. Tylko usuwanie danych i zakładanie indeksów wymaga założenia blokady dla wątków odczytujących. Mongo oferuje też bardzo rozbudowane funkcje replikacji, sharding 4 i posiada wbudowane mechanizmy failover'a 5, potrafi też pracować w środowiskach rozproszonych. Jest więc odporne na awarie pojedynczego węzła systemu. Podstawową różnicą między MongoDB a systemami relacyjnymi jest brak możliwości wykonywania złączeń między kolekcjami mówiąc prosto MongoDB nie ma JOIN'ów, nie ma relacji. Ważnym ograniczeniem jest też brak transakcyjności dlatego też Mongo nie jest polecane dla systemów finansowo-księgowych, płatniczych czy bankowych. Należy zaznaczyć że MongoDB nie wypracowało jakiegoś odkrywczego podejścia do wyszukiwania czy wstawiania danych. Większość stosowanych mechanizmów jest znana i wykorzystywana od dawna również w bazach relacyjnych (np. indeksy oparte są na zwykłych drzewach B-Tree). To czemu MongoDB zawdzięcza swoją szybkość to głównie składowa dwóch rzeczy. Po pierwsze wszystkie dane trzymane są w pamięci operacyjnej i dopiero stamtąd zapisywane na dysk, po drugie język zapytań rozbudowany został o komendy umożliwiające operacje atomowe (jednoczesne zapytania modyfikujące i pobierające dane są dopuszczalne i nie blokują kolekcji). Nawet te dwie niewielkie modyfikacje powodują znaczący przyrost wydajności. Dodajmy do tego funkcjonalność kolekcji wbudowanej (embed), która po części zastępuje referencje używane w bazach relacyjnych, wykorzystanie zalet formalnej specyfikacji DBRef umożliwiającej łączenie obiektów z różnych kolekcji między sobą (co przyspiesza wyszukiwanie i łączenie wyników z różnych kolekcji) czy wbudowanie w MongoDB możliwości tworzenia struktur drzewa (nested tree, parent-child). To tylko przykładowe możliwości MongoDB a każde z nich daje przyrost prędkości. I właśnie to jest siłą tego systemu wykorzystuje on znane technologie, tak aby uzyskać wysoką wydajność dla bardzo konkretnych zastosowań. MongoDB nie sprawdzi się jako hurtownia danych nie jest do tego stworzony i większość jego zalet nie będzie miała w takim przypadku zastosowania. Jeśli jednak użyjemy tego systemu do zastosowań real-time (takich jak portale internetowe), wychodzi na jaw jego siła. 4 Sharding (ang. łuska) system pracy baz danych umożliwiający przechowywanie jednego logicznego obiektu na kilku fizycznych maszynach. 5 Failover (ang. obejście zawieszenia) tu w znaczeniu systemu do zabezpieczenia na wypadek awarii, tak aby zachować dostępność usługi. 4

5 Prezentacja możliwych zastosowań MongoDB MongoDB jest w stanie w całości przejąć obowiązki MySQL, jednak najlepszą drogą dla już istniejących portali jest ewolucyjne podejście i implementacja Mongo tam gdzie można najlepiej wykorzystać jego możliwości. Pierwszym z takich miejsc jest tak zwana druga warstwa cache'owania (secondcache). Najczęściej stosowanym systemem cache'owania w portalach internetowych jest Memcache jest to system który nie wspiera mechanizmów replikacji i failovera, więc w wypadku uszkodzenia maszyny, nie ma możliwości zapewnienia ciągłości dostępu do cache'a. W takim środowisku stawiamy MongoDB jako drugą warstwę. Systemy odpowiedzialne za odczyt danych z bazy i ich zapis do cache'a modyfikuje się o dodatkową funkcję która podczas zapisu danych zapisuje je dodatkowo do Mongo a przy odczycie w razie braku odpowiedzi z Memcache, próbuje uzyskać dane z Mongo. Samo MongoDB w takim systemie pracuje w systemie failoverowym (tzw. Replikacja Master- Master, jedna maszyna jest online, druga pracująca jako slave jest w trybie oczekiwania, w razie awarii pierwszej maszyny, druga przejmuje jej obowiązki i staje się masterem, a pierwsza po usunięciu usterki samoczynnie przełącza się w tryb slave'a i przyjmuje zreplikowane dane), co zapewnia bardzo duży stopień bezpieczeństwa i uodparnia sytem cache'owania na awarię jednego z podsystemów. Drugim etapem integracji MongoDB z portalem jest tak zwany LazyCache czyli izolacja warstwy prezentacji od warstwy danych. W tym systemie dochodzi kolejna maszyna Mongo pełniąca rolę kolejki. Systemy dostępu do danych zostają zmodyfikowane w taki sposób, że każde zapytanie odczytujące dane z bazy jest zapisywane w kolejce wraz z informacją o czasie cache'owania tych danych. Samego odczytu z bazy dokonuje mechanizm kolejki, wykonując zapamiętane zapytania w zadanym odstępie czasu. Pobrane dane są w wstępnie przetworzonej formie zapisywane do Mongo pełniącego funkcję secondcache'u. Dopiero stąd dane zapisywane się do Memcache'a (mechanizm mongo pozwala na zapamiętywanie całych list obiektów jak i pojedynczych obiektów co umożliwia aktualizację w Memcache'u danych w sposób w jaki do tej pory nie można tego było wykonać np. w razie aktualizacji obiektu o id 15 mongo może zaktualizować ten obiekt w Memcache'u jak również wszystkie listy które zawierają kopie tego obiektu sam Memcache tego nie potrafi). Sam Memcache nigdy nie wygasza danych które zapamiętał, tak więc nawet w wypadku uszkodzenia mechanizmu kolejki, serwis zawsze będzie miał dostęp do danych. Nie będą może one tak aktualne jak by mogły być, jednak sam fakt, że zawieszenie się bazy danych, lub mechanizmu kolejki nie będzie powodowało awarii serwisu jest ogromnym krokiem naprzód. Dodatkową zaletą jest fakt, że można zarządzać obciążeniem bazy danych modyfikując prędkością kolejki i np. przyspieszać bądź 5

6 spowalniać proces aktualizowania się danych w serwisie, i to nie tylko na poziomie całego portalu ale, przy zastosowaniu odpowiednio zaprojektowanych paneli z dostępem do danych kolejki, na poziomie pojedynczego zapytania. Zaprezentowanie zalet Mongo na przykładzie wybranych funkcjonalności portali społecznościowych MongoDB charakteryzuje się ogromną szybkością i pojemnością. Wszystkie dane przechowywane są w pamięci RAM i dopiero z stamtąd zapisywane na dysk. Powoduje to, że taka baza jest wymarzonym narzędziem dla wielu funkcjonalności społecznościowych. Funkcje takie jak ściana lub tablica, znajomi, chmura tagów, opierają się zasadniczo na jednej podstawowej zasadzie. To co pisze jedna osoba widoczne jest u wielu osób a dodatkowo nie można tu stosować mechanizmów cache'owania, ponieważ użytkownicy społecznościowi oczekują natychmiastowej reakcji na ich akcje (jeżeli piszę coś na ścianie mojego znajomego, on powinien to zobaczyć w tym samym momencie, jeżeli piszę coś na swojej ścianie, to wszyscy moi znajomi muszą zobaczyć to od razu!). Taki system z konieczności musi mieć możliwość ogarnąć ogromne ilości jednoczesnych zapisów z jednoczesnymi odczytami. W wypadku nawet niewielkich społeczności (wiadomosci24.pl) gdzie liczba użytkowników jest stosunkowo niewielka (20000) wymagałoby to od bazy MySQL wydajności na poziomie przekraczającym możliwości pojedynczego serwera, a pozostał by i tak problem blokad tabel na czas zapisu. W mongodb nie ma takiego problemu, zapisy nie blokują odczytów i są wykonywane na pamięci RAM. Odczyty są dość proste i nie ma konieczności stosowania relacji, założone indeksy są wyjątkowo trafne, operują bowiem na stałych parametrach (wyszukiwanie zawsze po id_uzytkownika, sortowanie zawsze po dacie wpisu, funkcjonalności takie jak ściana nie posiadają innych funkcji). W takiej sytuacji MongoDB jest wprost wymarzonym systemem, jakby został zaprojektowany właśnie w tym celu. Podsumowanie wyników wydajnościowych przeprowadzonych w środowisku produkcyjnym serwisów Gratka Technologie Podczas testowania MongoDB dział Rozwoju Gratka Technologie przeprowadził testy wydajnościowe na MySQL, Memcache i Mongo w środowisku analogicznym do produkcyjnego. Przeprowadzono dwa testy. Test pierwszy zakładał operacje na bazie użytkowników. Test przeprowadzono przy identycznych warunkach wejściowych dla baz MySQL i MongoDB i Memcache. Ilość danych w bazach:

7 rekordów. Pobranie użytkownika po ID memcache 1.12 ms mongo 0.51 ms MySQL 8.34 ms Odpytanie o nieistniejące ID: memcache 0.65 ms mongo 0.45 ms MySQL 9.35 ms Drugi test zakładał przeszukiwanie bazy ogłoszeń działu nieruchomości w serwisie dom.gratka.pl. Baza zawierała 1mln rekordów a wyszukiwanie odbywało się po kilku polach z sortowaniem i limitem + count. Test przeprowadzono dla MySQL i MongoDB. MySQL: ~5s MongoDB: ~0.34s Wyniki mówią same za siebie. Dziękuję za uwagę Michał Giergielewicz. 7

MongoDB w zastosowaniu w serwisach społecznościowych

MongoDB w zastosowaniu w serwisach społecznościowych MongoDB w zastosowaniu w serwisach społecznościowych Poniższe sprawozdanie ma na celu przekazanie informacji na temat systemu bazodanowego MongoDB i jego przewagach nad tradycyjną bazą danych wykorzystywaną

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

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

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Galileo - encyklopedia internetowa Plan testów

Galileo - 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ół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

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski BAZY DANYCH wprowadzenie Opracował: dr inż. Piotr Suchomski Prowadzący Katedra Systemów Multimedialnych dr inż. Piotr Suchomski (e-mail: pietka@sound.eti.pg.gda.pl) (pok. 730) dr inż. Andrzej Leśnicki

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

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

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

Wprowadzenie do baz danych

Wprowadzenie do baz danych Wprowadzenie do baz danych Bazy danych stanowią obecnie jedno z ważniejszych zastosowań komputerów. Podstawowe zalety komputerowej bazy to przede wszystkim szybkość przetwarzania danych, ilość dostępnych

Bardziej szczegółowo

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

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

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

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

Bardziej szczegółowo

Wyszukiwanie w czasie rzeczywistym sposób na zwiększenie widoczności zasobów bibliotek cyfrowych w wyszukiwarkach internetowych Karolina Żernicka

Wyszukiwanie w czasie rzeczywistym sposób na zwiększenie widoczności zasobów bibliotek cyfrowych w wyszukiwarkach internetowych Karolina Żernicka Wyszukiwanie w czasie rzeczywistym sposób na zwiększenie widoczności zasobów bibliotek cyfrowych w wyszukiwarkach internetowych Karolina Żernicka Instytut Informacji Naukowej i Bibliologii Uniwersytet

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

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

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Bazy danych Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Wszechnica Poranna Trzy tematy: 1. Bazy danych - jak je ugryźć? 2. Język SQL podstawy zapytań. 3. Mechanizmy wewnętrzne baz danych czyli co

Bardziej szczegółowo

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

Bazy danych - wykład wstępny

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

Bardziej szczegółowo

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0 ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu ECDL/ICDL Użytkowanie baz danych. Sylabus opisuje zakres wiedzy

Bardziej szczegółowo

Liczba godzin 1,2 Organizacja zajęć Omówienie programu nauczania 2. Tematyka zajęć

Liczba godzin 1,2 Organizacja zajęć Omówienie programu nauczania 2. Tematyka zajęć rzedmiot : Systemy operacyjne Rok szkolny : 015/016 Klasa : 3 INF godz. x 30 tyg.= 60 godz. Zawód : technik informatyk; symbol 35103 rowadzący : Jacek Herbut Henryk Kuczmierczyk Numer lekcji Dział Tematyka

Bardziej szczegółowo

Wykład XII. optymalizacja w relacyjnych bazach danych

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

Bardziej szczegółowo

RELACYJNE BAZY DANYCH

RELACYJNE BAZY DANYCH RELACYJNE BAZY DANYCH Aleksander Łuczyk Bielsko-Biała, 15 kwiecień 2015 r. Ludzie używają baz danych każdego dnia. Książka telefoniczna, zbiór wizytówek przypiętych nad biurkiem, encyklopedia czy chociażby

Bardziej szczegółowo

Import danych z plików Excel. (pracownicy, limity urlopowe i inne)

Import danych z plików Excel. (pracownicy, limity urlopowe i inne) Import danych z plików Excel (pracownicy, limity urlopowe i inne) 1. Wstęp BeeOffice umożliwia import z plików Excel kilku rodzajów danych, najczęściej wykorzystywanych podczas tworzenia nowego systemu

Bardziej szczegółowo

z przedmiotu: Techniki Informatyczne Stanisław Flaga (stanislaw.flaga@agh.edu.pl)

z przedmiotu: Techniki Informatyczne Stanisław Flaga (stanislaw.flaga@agh.edu.pl) mysql relacyjna baza danych wstęp Materiały pomocnicze do laboratorium z przedmiotu: Techniki Informatyczne Stanisław Flaga () Wydział Inżynierii Mechanicznej i Robotyki Katedra Automatyzacji Procesów

Bardziej szczegółowo

Ogólne informacje o Systemie Archiwizacji ZEUS

Ogólne informacje o Systemie Archiwizacji ZEUS Ogólne informacje o Systemie Archiwizacji ZEUS System Archiwizacji ZEUS przeznaczony jest do opracowywania zasobów archiwalnych. Oprogramowanie powstało w wyniku wielomiesięcznej analizy potrzeb jednego

Bardziej szczegółowo

Co to są relacyjne bazy danych?

Co to są relacyjne bazy danych? Co to są relacyjne bazy danych? Co to są relacyjne bazy danych? O Są to zbiory danych pogrupowane w tabele o strukturze: kolejne kolumny określają kolejne porcje informacji potrzebne dla każdego wystąpienia,

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d. TECHNOLOGIE BAZ DANYCH WYKŁAD 1 Wprowadzenie do baz danych. Normalizacja. (Wybrane materiały) Dr inż. E. Busłowska Definicja bazy danych Uporządkowany zbiór informacji, posiadający własną strukturę i wartość.

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

Opisy efektów kształcenia dla modułu

Opisy efektów kształcenia dla modułu Karta modułu - Bazy Danych II 1 / 5 Nazwa modułu: Bazy Danych II Rocznik: 2012/2013 Kod: BIT-2-105-s Punkty ECTS: 4 Wydział: Geologii, Geofizyki i Ochrony Środowiska Poziom studiów: Studia II stopnia Specjalność:

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

Pytania SO Oprogramowanie Biurowe. Pytania: Egzamin Zawodowy

Pytania SO Oprogramowanie Biurowe. Pytania: Egzamin Zawodowy Pytania SO Oprogramowanie Biurowe Pytania: Egzamin Zawodowy Pytania SO Oprogramowanie Biurowe (1) Gdzie w edytorze tekstu wprowadza się informację lub ciąg znaków, który ma pojawić się na wszystkich stronach

Bardziej szczegółowo

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

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

Bardziej szczegółowo

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia.

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia. Diagram wdrożenia Zaprojektowana przez nas aplikacja bazuje na architekturze client-server. W tej architekturze w komunikacji aplikacji klienckiej z bazą danych pośredniczy serwer aplikacji, który udostępnia

Bardziej szczegółowo

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

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

Bardziej szczegółowo

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

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

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38 Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych

Bardziej szczegółowo

Alicja Marszałek Różne rodzaje baz danych

Alicja Marszałek Różne rodzaje baz danych Alicja Marszałek Różne rodzaje baz danych Rodzaje baz danych Bazy danych można podzielić wg struktur organizacji danych, których używają. Można podzielić je na: Bazy proste Bazy złożone Bazy proste Bazy

Bardziej szczegółowo

Aktualizacja baz danych systemu qs-stat

Aktualizacja baz danych systemu qs-stat Aktualizacja baz danych systemu qs-stat Copyright 2003 Q-DAS GmbH Eisleber Str. 2 D - 69469 Weinheim Tel.: ++49/6201/3941-0 Fax: ++49/6201/3941-24 E-Mail: q-das@q-das.de Internet: http://www.q-das.de Hotline:

Bardziej szczegółowo

Deduplikacja danych. Zarządzanie jakością danych podstawowych

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

Porównanie systemów zarządzania relacyjnymi bazami danych

Porównanie systemów zarządzania relacyjnymi bazami danych Jarosław Gołębiowski 12615 08-07-2013 Porównanie systemów zarządzania relacyjnymi bazami danych Podstawowa terminologia związana z tematem systemów zarządzania bazami danych Baza danych jest to zbiór danych

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

PROJEKT WYZWANIE. MEDtube to innowacyjny portal wymiany wiedzy dla lekarzy wykorzystujący techniki multimedialne.

PROJEKT WYZWANIE. MEDtube to innowacyjny portal wymiany wiedzy dla lekarzy wykorzystujący techniki multimedialne. C A S E STUDY PROJEKT WYZWANIE MEDtube to innowacyjny portal wymiany wiedzy dla lekarzy wykorzystujący techniki multimedialne. MEDtube stał się największą w Internecie biblioteką profesjonalnych filmów

Bardziej szczegółowo

QUERY język zapytań do tworzenia raportów w AS/400

QUERY język zapytań do tworzenia raportów w AS/400 QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora

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

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

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

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

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

TOPWEB SPSall Budowanie portalu intranetowego

TOPWEB SPSall Budowanie portalu intranetowego TOPWEB SPSall Budowanie portalu intranetowego Przeznaczenie szkolenia Szkolenie dla osób chcących: Profesjonalnie budować intranetowy portal w oparciu o aplikację Microsoft SharePoint 2013. Sprawnie posługiwać

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

Baza danych. Baza danych to:

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

Bardziej szczegółowo

Indeksowanie full text search w chmurze

Indeksowanie full text search w chmurze Prezentacja przygotowana dla: 5. Konferencja MIC w Poznaniu, 16.06.20111 Lucene.NET Indeksowanie full text search w chmurze K2 i Windows Azure dlaczego dla nas to możliwe? 1. Mamy unikalne połącznie kompetencji

Bardziej szczegółowo

SSI Katalog. Program do katalogowania zawartości dysków. Dariusz Kalinowski

SSI Katalog. Program do katalogowania zawartości dysków. Dariusz Kalinowski 1.) Wymagania sprzętowe: SSI Katalog Program do katalogowania zawartości dysków Dariusz Kalinowski - System operacyjny: Windows 2000 lub Windows xp - Procesor minimum Pentium 1Ghz - Pamięć RAM minimum

Bardziej szczegółowo

Skalowalne aplikacje internetowe wysokiej dostępności

Skalowalne aplikacje internetowe wysokiej dostępności Skalowalne aplikacje internetowe wysokiej dostępności Dariusz Dwornikowski 22.05.2010 Plan wykładu Dariusz Dwornikowski Skalowalne aplikacje internetowe wysokiej dostępności [1/37] Skalowalność, Niezawodność

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Bazy danych Database Kierunek: Rodzaj przedmiotu: obieralny Rodzaj zajęć: wykład, laboratorium Matematyka Poziom kwalifikacji: I stopnia Liczba godzin/tydzień: 2W, 2L Semestr: III Liczba

Bardziej szczegółowo

Specyfikacja Wymagań. System Obsługi Zgłoszeń Serwisowych Polfa Warszawa S.A. Załącznik nr 1

Specyfikacja Wymagań. System Obsługi Zgłoszeń Serwisowych Polfa Warszawa S.A. Załącznik nr 1 Specyfikacja Wymagań System Obsługi Zgłoszeń Serwisowych Polfa Warszawa S.A. Załącznik nr 1 1. Wymagania sprzętowe i środowiskowe 1.1. Wymagania podstawowe Nowy system ma być dostępny dla wszystkich pracowników

Bardziej szczegółowo

Podzadanie AI 1/2D. Wdrażanie BDFBO. Dokumentacja powdrożeniowa BDFBO. Rezultat AI 13. Wersja finalna. Wykonawcy

Podzadanie AI 1/2D. Wdrażanie BDFBO. Dokumentacja powdrożeniowa BDFBO. Rezultat AI 13. Wersja finalna. Wykonawcy Podprojekt 3. Wykorzystanie technologii informatycznych do sprawnego zarządzania wiedzą i procesami dotyczącymi zasobów ludzkich branży okrętowej oraz do skutecznego i wydajnego zarządzania pracą Partnerstwa

Bardziej szczegółowo

Klient Medousa sp. z o.o. (Grupa Digital Avenue S.A.) Branża IT serwis społecznościowy. Okres realizacji Stale od początków istnienia Fotosik.

Klient Medousa sp. z o.o. (Grupa Digital Avenue S.A.) Branża IT serwis społecznościowy. Okres realizacji Stale od początków istnienia Fotosik. Klient Medousa sp. z o.o. (Grupa Digital Avenue S.A.) Branża IT serwis społecznościowy Okres realizacji Stale od początków istnienia Fotosik.pl Rodzaj usługi Zarządzanie serwerami, doradztwo przy tworzeniu

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE

Web frameworks do budowy aplikacji zgodnych z J2EE Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym

Bardziej szczegółowo

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ Systemy baz danych 1. 2 Wstęp do baz danych 2. 2 Relacyjny model baz danych. 3. 2 Normalizacja baz danych. 4. 2 Cechy

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

Systemy GIS Systemy baz danych

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

Bardziej szczegółowo

OPIS PRZEDMIOTU ZAMÓWIENIA

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

Bardziej szczegółowo

Baza danych. Modele danych

Baza danych. Modele danych Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych

Bardziej szczegółowo

Biuletyn techniczny. CDN OPT!MA 8.5 Wskazówki dotyczące instalacji programu. Copyright 2006 COMARCH SA

Biuletyn techniczny. CDN OPT!MA 8.5 Wskazówki dotyczące instalacji programu. Copyright 2006 COMARCH SA Biuletyn techniczny CDN OPT!MA 8.5 Wskazówki dotyczące instalacji programu Copyright 2006 COMARCH SA Spis treści 1 SPIS TREŚCI...2 2 DRIVER ODBC POWODUJĄCY BŁĄD PRZY WYKONYWANIU WYDRUKÓW REPORT WRITER

Bardziej szczegółowo

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

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

Bardziej szczegółowo

Encje w Drupalu. Tworzenie własnych encji i ich wpływ na poprawę wydajności

Encje w Drupalu. Tworzenie własnych encji i ich wpływ na poprawę wydajności Encje w Drupalu Tworzenie własnych encji i ich wpływ na poprawę wydajności DrupalCamp Wrocław 2015 Grzegorz Bartman https://twitter.com/grzegorzbartman O mnie Grzegorz Bartman http://twitter.com/grzegorzbartman

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

2012-01-16 PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

2012-01-16 PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew 0-0-6 PLAN WYKŁADU Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew BAZY DANYCH Wykład 9 dr inż. Agnieszka Bołtuć INDEKSY - DEFINICJE Indeksy to pomocnicze struktury

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

KatMPBSoft marekbilski@katmpbsoft.pl - 1 -

KatMPBSoft marekbilski@katmpbsoft.pl - 1 - Przedstawiona dokumentacja UML jest ściśle chroniona prawami autorskimi. Jej celem jest jedynie pokazanie w jaki sposób firma KatMPBSoft, takie dokumentacje przygotowuje. Dokumentacja UML nie może być

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

Temat : SBQL 1 obiektowy język zapytań.

Temat : SBQL 1 obiektowy język zapytań. Laboratorium Języki i środowiska przetwarzania danych rozproszonych Temat : SBQL 1 obiektowy język zapytań. Historia zmian Data Wersja Autor Opis zmian 23.4.2012 1.0 Tomasz Kowalski Utworzenie dokumentu

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

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

Bardziej szczegółowo

Pojęcie systemu informacyjnego i informatycznego

Pojęcie systemu informacyjnego i informatycznego BAZY DANYCH Pojęcie systemu informacyjnego i informatycznego DANE wszelkie liczby, fakty, pojęcia zarejestrowane w celu uzyskania wiedzy o realnym świecie. INFORMACJA - znaczenie przypisywane danym. SYSTEM

Bardziej szczegółowo

BIBLIOTEKA CYFROWA JAKO KONTENER TREŚCI DLA PORTALI INTERNETOWYCH. DLIBRA & DRUPAL DWA SYSTEMY, JEDNA WITRYNA.

BIBLIOTEKA CYFROWA JAKO KONTENER TREŚCI DLA PORTALI INTERNETOWYCH. DLIBRA & DRUPAL DWA SYSTEMY, JEDNA WITRYNA. BIBLIOTEKA CYFROWA JAKO KONTENER TREŚCI DLA PORTALI INTERNETOWYCH. DLIBRA & DRUPAL DWA SYSTEMY, JEDNA WITRYNA. Michał Kwiatkowski Piotr Grzybowski Poznańskie Centrum Superkomputerowo-Sieciowe II Konferencja

Bardziej szczegółowo

5.4. Tworzymy formularze

5.4. Tworzymy formularze 5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania

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

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie. Wydział Geologii, Geofizyki i Ochrony Środowiska. Bazy danych 2

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie. Wydział Geologii, Geofizyki i Ochrony Środowiska. Bazy danych 2 AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie Wydział Geologii, Geofizyki i Ochrony Środowiska Wydajnośd w bazach danych Grzegorz Surdyka Informatyka Stosowana Kraków, 9 Spis treści. Wstęp...

Bardziej szczegółowo

MySQL. Æwiczenia praktyczne

MySQL. Æwiczenia praktyczne IDZ DO PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG MySQL. Æwiczenia praktyczne Autor: Marek Nowakowski ISBN: 83-7197-884-7 Format: B5, stron: 114 TWÓJ KOSZYK DODAJ

Bardziej szczegółowo

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody Obiektowy PHP Czym jest obiekt? W programowaniu obiektem można nazwać każdy abstrakcyjny byt, który programista utworzy w pamięci komputera. Jeszcze bardziej upraszczając to zagadnienie, można powiedzieć,

Bardziej szczegółowo

Standard określania klasy systemu informatycznego resortu finansów

Standard określania klasy systemu informatycznego resortu finansów Dane dokumentu Nazwa Projektu: Kontrakt Konsolidacja i Centralizacja Systemów Celnych i Podatkowych Studium Projektowe Konsolidacji i Centralizacji Systemów Celnych i Podatkowych (SPKiCSCP) Numer wersji

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

Algorytmy i. Wykład 5: Drzewa. Dr inż. Paweł Kasprowski

Algorytmy i. Wykład 5: Drzewa. Dr inż. Paweł Kasprowski Algorytmy i struktury danych Wykład 5: Drzewa Dr inż. Paweł Kasprowski pawel@kasprowski.pl Drzewa Struktury przechowywania danych podobne do list ale z innymi zasadami wskazywania następników Szczególny

Bardziej szczegółowo

PROGRAMY NARZĘDZIOWE DOKUMENT

PROGRAMY NARZĘDZIOWE DOKUMENT DOKUMENT KARTOTEKA OPISOWO GRAFICZNA OBIEKTÓW EWMAPY Program DOKUMENT umożliwia założenie kartoteki opisowo-graficznej dla dowolnego obiektu EWMAPY. Polega to na związaniu z określonym identyfikatorem

Bardziej szczegółowo

6. Bezpieczeństwo przy współpracy z bazami danych

6. Bezpieczeństwo przy współpracy z bazami danych 6. Bezpieczeństwo przy współpracy z bazami danych 6.1. Idea ataku SQL injection Atak znany jako SQL injection jest możliwy wtedy, gdy użytkownik ma bezpośredni wpływ na postać zapytania wysyłanego do bazy

Bardziej szczegółowo

Tworzenie bazy danych w środowisku OpenOffice.org Base tabela, formularz, kwerenda, raport

Tworzenie bazy danych w środowisku OpenOffice.org Base tabela, formularz, kwerenda, raport Tworzenie bazy danych w środowisku OpenOffice.org Base tabela, formularz, kwerenda, raport W programie OpenOffice.org Base można uzyskać dostęp do danych zapisanych w plikach baz danych o różnych formatach.

Bardziej szczegółowo

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi AE/ZP-27-16/14 Załącznik B Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi Wykonywanie kopii zapasowych Oprogramowanie do archiwizacji musi współpracować z infrastrukturą

Bardziej szczegółowo

Wstęp. Modele rejestrowania zdarzeń systemu

Wstęp. Modele rejestrowania zdarzeń systemu Wstęp Każdy system komputerowy, niezależnie od systemu operacyjnego posiada mechanizm rejestrujący zdarzenia systemowe. Mechanizmy takie odgrywają kluczową rolę w pracy administratora takiego systemu komputerowego.

Bardziej szczegółowo

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1 Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski Bazy danych ITA-101 Wersja 1 Warszawa, wrzesień 2009 Wprowadzenie Informacje o kursie Opis kursu We współczesnej informatyce coraz większą

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: ADMINISTROWANIE INTERNETOWYMI SERWERAMI BAZ DANYCH Kierunek: Informatyka Rodzaj przedmiotu: moduł specjalności obowiązkowy: Programowanie aplikacji internetowych Rodzaj zajęć: wykład,

Bardziej szczegółowo

Bezpieczeństwo dla wszystkich środowisk wirtualnych

Bezpieczeństwo dla wszystkich środowisk wirtualnych Bezpieczeństwo dla wszystkich środowisk wirtualnych SECURITY FOR VIRTUAL AND CLOUD ENVIRONMENTS Ochrona czy wydajność? Liczba maszyn wirtualnych wyprzedziła fizyczne już 2009 roku. Dzisiaj ponad połowa

Bardziej szczegółowo

NoSQL & relax with CouchDB

NoSQL & relax with CouchDB NoSQL & relax with PyWaw #23 8 kwiecień 2013 Agenda 1 NoSQL - nierelacyjne systemy baz danych Wprowadzenie do NoSQL Rodzaje i porównanie baz NoSQL Polyglot persistence 2 Projekt w CERN wykorzystujacy 3

Bardziej szczegółowo