Haszowanie (adresowanie rozpraszające, mieszające)
|
|
- Jacek Jasiński
- 7 lat temu
- Przeglądów:
Transkrypt
1 Haszowanie (adresowanie rozpraszające, mieszające) Tadeusz Pankowski H. Garcia-Molina, J.D. Ullman, J. Widom, Implementacja systemów baz danych, WNT, Warszawa, Haszowanie W adresowaniu haszującym wyróżniamy następujące elementy: funkcja haszująca (hash function), h, której argumentem jest wartość x nazywana kluczem haszowanym (hash key); x jest wartością pewnego pola lub grupy pól w rekordach określonego typu; h(x) jest liczbą całkowitą z przedziału [, B ], gdzie B jest liczbą kubełków (ang. buckets), tj. pozycji w pewnej przestrzeni adresowej; przez kubełek rozumiemy zbiór rekordów, dla których funkcja haszująca przyjmuje tę samą wartość (funkcja ta dla różnych rekordów i dla różnych kluczy haszujących może zwracać tę samą wartość) Haszowanie, T. Pankowski Haszowanie, T. Pankowski Haszowanie pośrednie i bezpośrednie Haszowanie pośrednie Kubełek może być implementowany na wiele sposobów: wartość funkcji haszującej jest traktowana jako pozycja w pewnej tablicy haszowej, która zawiera wskaźniki na początek listy bloków rekordów przyporządkowanych do danego kubełka (hashowanie pośrednie); wartość funkcji haszującej wskazuje bezpośrednio pierwszy blok rekordów przyporządkowanych do danego kubełka (hashowanie bezpośrednie); x h(x) k B r,, r n r,, r n * Ogólny schemat haszowania pośredniego: tablica haszowa identyfikuje kubełki i zawiera wskaźniki na listy bloków rekordów o jednakowej wartości funkcji haszującej Haszowanie, T. Pankowski Haszowanie, T. Pankowski 4
2 x Haszowanie bezpośrednie h(x) B Funkcja haszująca wskazuje na pierwszy blok rekordów. Rekordy nadmiarowe umieszczane są w blokach przepełnień. Haszowanie jako metoda indeksowania Zauważmy, że jeśli w blokach pamiętane są nie całe rekordy (krotki), ale adresy rekordów (wskaźniki do rekordów pamiętanych w plikach), to haszowanie, podobnie jak na przykład indeksy o strukturze B-drzewa, może być traktowane jako metoda szybkiego dostępu do tych rekordów. Wówczas celowe jest współistnienie wiele ścieżek dostępu (adresowań haszujących), a których każda organizowana jest dla innych atrybutów (kluczy) wyszukiwania. Haszowanie, T. Pankowski 5 Haszowanie, T. Pankowski 6 Haszowanie operacja dołączania Haszowanie operacja usuwania INSERT: h(a) = h(b) = h(c) = h(d) = h(e) = d a c b e Pamięć haszowana. Blok mieści rekordy. Rekordy nadmiarowe umieszczane są w blokach nadmiarów (przepełnień). Delete: e f c a b c e f g d być może g do góry d Haszowanie, T. Pankowski 7 Haszowanie, T. Pankowski 8
3 Funkcja haszująca przykład klucz = x x x n n-bajtowy ciąg znaków B liczba kubełków h:= x + x +.. x n (suma kodów znaków) adres := h mod B, (liczba od do B-) Ta funkcja może być niedobra Patrz: Knuth Vol. przegląd funkcji haszujących. Dobra funkcja haszująca: równomiernie rozprasza wartości kluczy na wszystkie kubełki niski koszt obliczenia wartości Haszowanie, T. Pankowski 9 Haszowanie, T. Pankowski Rozmieszczanie rekordów w kubełkach Czy rekordy posortowane wg klucza? Tak, jeśli czas CPU jest parametrem krytycznym i operacje Insert/Delete niezbyt częste Reguła efektywności Współczynnik wykorzystania pamięci między 5% a 8% Wsp.wykorzystania = faktyczna liczba kluczy maksymalna liczba kluczy Jeśli < 5%, marnowanie pamięci Jeśli > 8%, częste przepełnienia zależy od jakości funkcji haszującej i od liczby kluczy na blok Haszowanie, T. Pankowski Haszowanie, T. Pankowski
4 Jak radzić sobie ze wzrostem liczby kluczy? Haszowanie dynamiczne Przepełnienia i ich reorganizacja Haszowanie dynamiczne Rozszerzalne (Extensible) Liniowe (Linear) Haszowanie, T. Pankowski 4 Haszowanie rozszerzalne Różnica względem statycznych tablic haszowych:. Istnieje poziom pośredni zawierający tablicę haszową kubełków, tj. wskaźników na bloki reprezentujące kubełki (pierwsze bloki tych kubełków).. Tablica haszowa może się zwiększać. Jej długość jest zawsze potęgą liczby. Przy zwiększaniu tablica podwaja swoją długość.. Nie muszą istnieć bloki danych dla każdego kubełka; niektóre kubełki mogą wskazywać na ten sam blok, jeśli blok ten może pomieścić rekordy należące teoretycznie do różnych kubełków. 4. Funkcja haszująca oblicza dla każdego klucza ciąg b bitów (np. b=). Jednak na danym kroku haszowania wykorzystywana jest mniejsza liczba bitów, tj. i bitów początkowych ciągu. Oznacza to, że tablica haszowa kubełków zawiera wówczas i pozycji. Haszowanie rozszerzalne Wykorzystanie pierwszych i spośród b bitów tworzonych przez funkcję haszującą h(k) b wybieramy i zwiększa się w czasie. Haszowanie, T. Pankowski 5 Haszowanie, T. Pankowski 6
5 Haszowanie rozszerzalne Dołączanie przy haszowaniu rozszerzalnym powstanie przepełnienia i = Adres bloku dla kluczy zaczynających się na Wskazuje ile bitów jest branych pod uwagę i =. Wymagane jest utworzenie dodatkowego kubełka.. Konieczne staje się powiększenie (podwojenie) wielkości tablicy haszowej.. Przyjmujemy i =. b=4, i= Tablica haszowa ma tylko dwie pozycje. Pierwsza wskazuje na kubełek rekordów, dla których pierwszy bit wartości funkcji haszującej h(x) jest, a druga dla których pierwszy bit jest równy. Z każdym kubełkiem związana jest liczba i wskazująca liczbę rozróżnialnych bitów Haszowanie, T. Pankowski 7 Insert Haszowanie, T. Pankowski 8 Dołączanie przy przy haszowaniu rozszerzalnym rozwiązanie problemu przepełnienia i = i= Insert Nowa tablica haszowa Zawartość dwóch kubełków ( i ) umieszczona jest w jednym bloku Haszowanie, T. Pankowski 9 Dołączanie przy przy haszowaniu rozszerzalnym tworzenie nowego bloku dla kubełka i = Insert: Dołączenie wymaga utworzenia nowego bloku dla kubełka i rehaszowania dotychczasowego bloku. Nie ma potrzeby zmiany tablicy haszowej.
6 Przykład c.d. i = i = Haszowanie rozszerzalne usuwanie Bez łączenia bloków Łączenie bloków i skracanie tablicy haszowej (Procedura odwrotna do insert) Insert: Haszowanie, T. Pankowski Przykład Deletion : Prześledzić odwrotne działanie względem Insert! + Haszowanie rozszerzalne podsumowanie Obsługuje pliki o wzrastających rozmiarach -przy małym marnowaniu pamięci - bez potrzeby pełnej reorganizacji - - Pośredni dostęp (Mała wada, gdy tablica haszowa w pamięci) Podwajający się rozmiar tablicy haszowej (Tabela haszowa może nie mieścić się w pamięci) Haszowanie, T. Pankowski Haszowanie, T. Pankowski 4
7 Haszowanie liniowe Inny schemat haszowania dynamicznego Dwie cechy: (a) Wykorzystuje i ostatnich bitów wartości funkcji haszującej (b) Rozmiar pliku wzrasta liniowo wzrost b i Haszowanie liniowe zasady. Liczba bloków n jest tak dobierana, by średnia liczba rekordów na blok wynosiła ok. 8% pojemności bloku.. Dopuszczalne są bloki przepełnień, jednak ich średnia liczba na blok jest dużo mniejsza od.. Liczba bitów do identyfikowania bloków wynosi log n, gdzie n jest liczbą bloków. Bity te są brane z prawej (niższej) strony ciągu bitów tworzonych przez funkcję haszującą. 4. Przypuśćmy, że rekord o kluczu K ma być umieszczony w bloku a a a i, tzn. ciąg a a a i ciągiem ostatnich i bitów wartości h(k). Niech m= a a a i będzie liczbą całkowitą (numerem bloku). Jeśli m<n, to blok m istnieje i umieszczamy w nim rekord. Jeśli n m < i-, to blok m nie istnieje. Wówczas rekord umieszczamy w bloku o numerze m- i-, tzn. o numerze odpowiadającym ciągowi a a i. Haszowanie, T. Pankowski 5 Haszowanie, T. Pankowski 6 Przykład: i = bit, n = bloki, r = rekordy Przykład: i = bit, n = bloki, r = rekordy (c.d.) m = (max zajęty blok) h(k) zwraca 4 bity n/r.6 wymaganie na współczynnik wypełnienia (naruszenie warunku wymusza zwiększenie n) Insert Przyjmujemy: n=, r=4, ¾=.75! i = log = -dołączamy nowy blok, - rozdzielamy blok na i - blok nie zmienia się, ma numer pozostaje w, gdyż jest to numer powstały przez zastąpienie zerem pierwszej cyfry w (!)?? Narusza to warunek: n/r.6 r=4 /4 =.5 i = bity, n = bloki, r = 4 rekordy
8 Przykład: i = bity, n = bloki, r = 4 rekordy Insert: Przykład: i = bity, n = bloki, r = 4 rekordy Insert: n=, r=5, n/r=.6, nie musimy tworzyć nowego bloku! dopuszczalny łańcuch przepełnień! Przykład: i = bity, n = bloki, r = 5 rekordów Przykład: i = bity, n = bloki, r = 6 rekordów Insert: brak bloku rekord kierujemy do umieszczamy go w bloku przepełnień? n=, r=6, n/r=.5 <.6, Tworzymy nowy blok Rozdzielamy rekordy z
9 Przykład: i = bity, n = 4 bloki, r = 6 rekordów Dalszy wzrost rozmiaru pliku i =... n=4, r=6, n/r=.66 m = (max blok) Haszowanie, T. Pankowski 4 Kiedy powiększać pulę bloków? Pamiętać współczynnik: m liczba bloków = Jeśli U > wart.progowej, wówczas powiększ m (i być może też i) r liczba rekordów = U Haszowanie liniowe Podsumowanie Może obsługiwać duże pliki -z małą stratą pamięci -bez pełnej reorganizacji Nie ma pośredniego poziomu, jak w przypadku haszowania rozszerzanego Ciągle istnieją łańcuchy bloków przepełnień Haszowanie, T. Pankowski 5 Haszowanie, T. Pankowski 6
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
Algorytmy i struktury danych. Wykład 4 Tablice nieporządkowane i uporządkowane
Algorytmy i struktury danych Wykład 4 Tablice nieporządkowane i uporządkowane Tablice uporządkowane Szukanie binarne Szukanie interpolacyjne Tablice uporządkowane Szukanie binarne O(log N) Szukanie interpolacyjne
Tablice z haszowaniem
Tablice z haszowaniem - efektywna metoda reprezentacji słowników (zbiorów dynamicznych, na których zdefiniowane są operacje Insert, Search i Delete) - jest uogólnieniem zwykłej tablicy - przyspiesza operacje
Tablice z haszowaniem
Tablice z haszowaniem - efektywna metoda reprezentacji słowników (zbiorów dynamicznych, na których zdefiniowane są operacje Insert, Search i Delete) - jest uogólnieniem zwykłej tablicy - przyspiesza operacje
Haszowanie. dr inż. Urszula Gałązka
Haszowanie dr inż. Urszula Gałązka Problem Potrzebujemy struktury do Wstawiania usuwania wyszukiwania Liczb, napisów, rekordów w Bazach danych, sieciach komputerowych, innych Rozwiązanie Tablice z haszowaniem
Algorytmy i struktury danych. Wykład 6 Tablice rozproszone cz. 2
Algorytmy i struktury danych Wykład 6 Tablice rozproszone cz. 2 Na poprzednim wykładzie Wiele problemów wymaga dynamicznych zbiorów danych, na których można wykonywać operacje: wstawiania (Insert) szukania
wykład Organizacja plików Opracował: dr inż. Janusz DUDCZYK
wykład Organizacja plików Opracował: dr inż. Janusz DUDCZYK 1 2 3 Pamięć zewnętrzna Pamięć zewnętrzna organizacja plikowa. Pamięć operacyjna organizacja blokowa. 4 Bufory bazy danych. STRUKTURA PROSTA
Podstawy Informatyki. Metody dostępu do danych
Podstawy Informatyki c.d. alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Bazy danych Struktury danych Średni czas odszukania rekordu Drzewa binarne w pamięci dyskowej 2 Sformułowanie
Zazwyczaj rozmiar bloku jest większy od rozmiaru rekordu, tak więc. ich efektywna lokalizacja kiedy tylko zachodzi taka potrzeba.
Proces fizycznego projektowania bazy danych sprowadza się do wyboru określonych technik organizacji danych, najbardziej odpowiednich dla danych aplikacji. Pojęcia podstawowe: Dane są przechowywane na dysku
PLAN WYKŁADU BAZY DANYCH HIERARCHIA MECHANIZMÓW SKŁADOWANIA PRZECHOWYWANIA BAZ DANYCH
PLAN WYKŁADU Składowanie danych Podstawowe struktury plikowe Organizacja plików BAZY DANYCH Wykład 8 dr inż. Agnieszka Bołtuć HIERARCHIA MECHANIZMÓW SKŁADOWANIA Podstawowy mechanizm składowania pamięć
System plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Przydział ciągły (ang. contiguous allocation) cały plik zajmuje ciąg kolejnych bloków Przydział listowy (łańcuchowy, ang. linked
System plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Plan wykładu Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka
System plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka spójności
Bazy danych. Andrzej Łachwa, UJ, /15
Bazy danych Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 15/15 PYTANIA NA EGZAMIN LICENCJACKI 84. B drzewa definicja, algorytm wyszukiwania w B drzewie. Zob. Elmasri:
ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku
System plików 1. Pojęcie pliku 2. Typy i struktury plików 3. etody dostępu do plików 4. Katalogi 5. Budowa systemu plików Pojęcie pliku (ang( ang. file)! Plik jest abstrakcyjnym obrazem informacji gromadzonej
Definicja pliku kratowego
Pliki kratowe Definicja pliku kratowego Plik kratowy (ang grid file) jest strukturą wspierająca realizację zapytań wielowymiarowych Uporządkowanie rekordów, zawierających dane wielowymiarowe w pliku kratowym,
Wykład 4. Tablice z haszowaniem
Wykład 4 Tablice z haszowaniem 1 Wprowadzenie Tablice z adresowaniem bezpośrednim Tablice z haszowaniem: Adresowanie otwarte Haszowanie łańcuchowe Funkcje haszujące (mieszające) Haszowanie uniwersalne
sprowadza się od razu kilka stron!
Bazy danych Strona 1 Struktura fizyczna 29 stycznia 2010 10:29 Model fizyczny bazy danych jest oparty na pojęciu pliku i rekordu. Plikskłada się z rekordów w tym samym formacie. Format rekordujest listą
Techniki wyszukiwania danych haszowanie
Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Techniki wyszukiwania danych haszowanie 1 Cel
< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >
Typy indeksów Indeks jest zakładany na atrybucie relacji atrybucie indeksowym (ang. indexing field). Indeks zawiera wartości atrybutu indeksowego wraz ze wskaźnikami do wszystkich bloków dyskowych zawierających
PODSTAWY BAZ DANYCH Wykład 6 4. Metody Implementacji Baz Danych
PODSTAWY BAZ DANYCH Wykład 6 4. Metody Implementacji Baz Danych 2005/2006 Wykład "Podstawy baz danych" 1 Statyczny model pamiętania bazy danych 1. Dane przechowywane są w pamięci zewnętrznej podzielonej
Algorytmy i Struktury Danych, 9. ćwiczenia
Algorytmy i Struktury Danych, 9. ćwiczenia 206-2-09 Plan zajęć usuwanie z B-drzew join i split na 2-3-4 drzewach drzepce adresowanie otwarte w haszowaniu z analizą 2 B-drzewa definicja każdy węzeł ma następujące
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
Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania
Plan wykładu Bazy danych Wykład 10: Fizyczna organizacja danych w bazie danych Model logiczny i model fizyczny Mechanizmy składowania plików Moduł zarządzania miejscem na dysku i moduł zarządzania buforami
Plan wykładu. Klucz wyszukiwania. Pojęcie indeksu BAZY DANYCH. Pojęcie indeksu - rodzaje indeksów Metody implementacji indeksów.
Plan wykładu 2 BAZY DANYCH Wykład 4: Indeksy. Pojęcie indeksu - rodzaje indeksów Metody implementacji indeksów struktury statyczne struktury dynamiczne Małgorzata Krętowska Wydział Informatyki PB Pojęcie
Tabela wewnętrzna - definicja
ABAP/4 Tabela wewnętrzna - definicja Temporalna tabela przechowywana w pamięci operacyjnej serwera aplikacji Tworzona, wypełniana i modyfikowana jest przez program podczas jego wykonywania i usuwana, gdy
struktury danych dla operacji słownikowych
struktury danych dla operacji słownikowych tablica nieuporządkowana tablica uporządkowana lista dowiązaniowa drzewo poszukiwań binarnych drzewa zrównoważone z tablice haszowaniem tablice z haszowaniem
Rozszerzalne kody operacji (przykład)
Tryby adresowania natychmiastowy (ang. immediate) bezpośredni (ang. direct) pośredni (ang. indirect) rejestrowy (ang. register) rejestrowy pośredni (ang. register indirect) z przesunieciem (indeksowanie)
Cel normalizacji. Tadeusz Pankowski
Plan Normalizacja Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski 1. Cel normalizacji. 2. Klucze schematów relacyjnych atrybuty kluczowe i niekluczowe. 3. 2PN druga postać normalna. 4. 3PN trzecia
Lista, Stos, Kolejka, Tablica Asocjacyjna
Lista, Stos, Kolejka, Tablica Asocjacyjna Listy Lista zbiór elementów tego samego typu może dynamicznie zmieniać rozmiar, pozwala na dostęp do poszczególnych elementów Typowo dwie implementacje: tablicowa,
Architektura komputerów
Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz
Algorytmy i złożoności Wykład 5. Haszowanie (hashowanie, mieszanie)
Algorytmy i złożoności Wykład 5. Haszowanie (hashowanie, mieszanie) Wprowadzenie Haszowanie jest to pewna technika rozwiązywania ogólnego problemu słownika. Przez problem słownika rozumiemy tutaj takie
Zad. 1. Systemy Baz Danych przykładowe zadania egzaminacyjne
Zad. 1 Narysuj schemat związków encji dla przedstawionej poniżej rzeczywistości. Oznacz unikalne identyfikatory encji. Dla każdego związku zaznacz jego opcjonalność/obowiązkowość oraz stopień i nazwę związku.
Normalizacja. Pojęcie klucza. Cel normalizacji
Plan Normalizacja Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski 1. Cel normalizacji. 2. Klucze schematów relacyjnych atrybuty kluczowe i niekluczowe. 3. 2PN druga postać normalna. 4. 3PN trzecia
Technologia informacyjna
Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,
Bazy danych - BD. Indeksy. Wykład przygotował: Robert Wrembel. BD wykład 7 (1)
Indeksy Wykład przygotował: Robert Wrembel BD wykład 7 (1) 1 Plan wykładu Problematyka indeksowania Podział indeksów i ich charakterystyka indeks podstawowy, zgrupowany, wtórny indeks rzadki, gęsty Indeks
Bazy danych - BD. Organizacja plików. Wykład przygotował: Robert Wrembel. BD wykład 5 (1)
Organizacja plików Wykład przygotował: Robert Wrembel BD wykład 5 (1) 1 Plan wykładu Struktura przechowywania danych i organizacja rekordów w blokach Rodzaje organizacji plików pliki nieuporządkowane pliki
Przykładowe B+ drzewo
Przykładowe B+ drzewo 3 8 1 3 7 8 12 Jak obliczyć rząd indeksu p Dane: rozmiar klucza V, rozmiar wskaźnika do bloku P, rozmiar bloku B, liczba rekordów w indeksowanym pliku danych r i liczba bloków pliku
Zarządzanie pamięcią operacyjną
SOE Systemy Operacyjne Wykład 7 Zarządzanie pamięcią operacyjną dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Hierarchia pamięci czas dostępu Rejestry Pamięć podręczna koszt
Podstawy Informatyki Metody dostępu do danych
Podstawy Informatyki Metody dostępu do danych alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Wprowadzenie Czym zajmuje się informatyka 2 Wprowadzenie Podstawowe problemy baz danych Struktury
2 Kryptografia: algorytmy symetryczne
1 Kryptografia: wstęp Wyróżniamy algorytmy: Kodowanie i kompresja Streszczenie Wieczorowe Studia Licencjackie Wykład 14, 12.06.2007 symetryczne: ten sam klucz jest stosowany do szyfrowania i deszyfrowania;
System plików przykłady. implementacji
Dariusz Wawrzyniak Plan wykładu CP/M MS DOS ISO 9660 UNIX NTFS System plików (2) 1 Przykłady systemu plików (1) CP/M katalog zawiera blok kontrolny pliku (FCB), identyfikujący 16 jednostek alokacji (zawierający
Algorytmy i struktury danych. wykład 9
Plan wykładu:. Algorytmy numeryczne. Funkcja skrótu jest to funkcja H, która dla do dowolnej informacji m przyporządkowuje niespecyficzną wartość h, mającą cechy pseudolosowe. Cechy: skróty są zazwyczaj
2017/2018 WGGiOS AGH. LibreOffice Base
1. Baza danych LibreOffice Base Jest to zbiór danych zapisanych zgodnie z określonymi regułami. W węższym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjętymi dla danego programu komputerowego,
Sprawozdanie z zajęć laboratoryjnych: Technologie sieciowe 1
Łukasz Przywarty 171018 Data utworzenia: 10.04.2010r. Prowadzący: dr inż. Marcin Markowski Sprawozdanie z zajęć laboratoryjnych: Technologie sieciowe 1 Temat: Zadanie domowe, rozdział 6 - Adresowanie sieci
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
System plików przykłady implementacji
System plików przykłady implementacji Dariusz Wawrzyniak CP/M MS DOS ISO 9660 UNIX NTFS Plan wykładu System plików (2) Przykłady implementacji systemu plików (1) Przykłady implementacji systemu plików
dr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2016/2017 Wykład nr 7 (11.01.2017) Rok akademicki 2016/2017, Wykład
WPROWADZENIE DO BAZ DANYCH
WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z
PRZESTRZENNE BAZY DANYCH WYKŁAD 2
PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie
Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9,
1 Kody Tunstalla Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9, 14.04.2005 Inne podejście: słowa kodowe mają ustaloną długość, lecz mogą kodować ciągi liter z alfabetu wejściowego o różnej
Krzysztof Kadowski. PL-E3579, PL-EA0312,
Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza
Indeksy. Schematyczne ujęcie organizacji pamięci i wymiany danych systemu pamiętania.
Indeksy Statyczny model pamiętania bazy danych Bazy danych są fizycznie przechowywane jako pliki rekordów, które zazwyczaj są składowane na twardych dyskach. Dane przechowywane są w pamięci zewnętrznej,
Indeksy. Wprowadzenie. Indeksy jednopoziomowe indeks podstawowy indeks zgrupowany indeks wtórny. Indeksy wielopoziomowe
1 Plan rozdziału 2 Indeksy Indeksy jednopoziomowe indeks podstawowy indeks zgrupowany indeks wtórny Indeksy wielopoziomowe Indeksy typu B-drzewo B-drzewo B+ drzewo B* drzewo Wprowadzenie 3 Indeks podstawowy
Algorytmy i struktury danych Sortowanie IS/IO, WIMiIP
Algorytmy i struktury danych Sortowanie IS/IO, WIMiIP Danuta Szeliga AGH Kraków Spis treści I 1 Wstęp 2 Metody proste 3 Szybkie metody sortowania 4 Algorytmy hybrydowe Sortowanie hybrydowe Sortowanie introspektywne
Adresowanie. W trybie natychmiastowym pole adresowe zawiera bezpośrednio operand czyli daną dla rozkazu.
W trybie natychmiastowym pole adresowe zawiera bezpośrednio operand czyli daną dla rozkazu. Wada: rozmiar argumentu ograniczony do rozmiaru pola adresowego Adresowanie bezpośrednie jest najbardziej podstawowym
Normalizacja baz danych
Normalizacja baz danych Definicja 1 1 Normalizacja to proces organizowania danych w bazie danych. Obejmuje to tworzenie tabel i ustanawianie relacji między tymi tabelami zgodnie z regułami zaprojektowanymi
Bazy danych wykład ósmy Indeksy
Bazy danych wykład ósmy Indeksy Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy Wyszyńskiego, danych wykład Warszawa) ósmy Indeksy
Teoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 8a: Relacyjny model danych http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2009/tpi-2009 Prof. dr hab. Elżbieta Richter-Wąs 1 Relacyjny model danych Jednym z najważniejszych
Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania
Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia
EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew
1. ( pkt) Dany jest algorytm, który dla dowolnej liczby naturalnej n, powinien wyznaczyd sumę kolejnych liczb naturalnych mniejszych od n. Wynik algorytmu jest zapisany w zmiennej suma. Algorytm i=1; suma=0;
Indeksowanie w bazach danych
w bazach Katedra Informatyki Stosowanej AGH 5grudnia2013 Outline 1 2 3 4 Czym jest indeks? Indeks to struktura, która ma przyspieszyć wyszukiwanie. Indeks definiowany jest dla atrybutów, które nazywamy
Architektura komputerów
Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna
Kompresja danych Streszczenie Studia Dzienne Wykład 10,
1 Kwantyzacja wektorowa Kompresja danych Streszczenie Studia Dzienne Wykład 10, 28.04.2006 Kwantyzacja wektorowa: dane dzielone na bloki (wektory), każdy blok kwantyzowany jako jeden element danych. Ogólny
Teoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 8a Relacyjny model danych 21.11.2008 Relacyjny model danych Jednym z najważniejszych zastosowań komputerów jest przechowywanie i przetwarzanie informacji. Relacyjny
System plików. dr inż. Krzysztof Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski
System plików dr inż. Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Wstęp System plików System plików jest tym komponentem systemu operacyjnego,
Bazy danych. Plan wykładu. Metody organizacji pliku rekordów. Pojcie indeksu. Wykład 11: Indeksy. Pojcie indeksu - rodzaje indeksów
Plan wykładu Bazy Wykład 11: Indeksy Pojcie indeksu - rodzaje indeksów Metody implementacji indeksów struktury statyczne struktury dynamiczne Małgorzata Krtowska Katedra Oprogramowania e-mail: mmac@ii.pb.bialystok.pl
Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1
Bazy danych wprowadzenie teoretyczne Piotr Prekurat 1 Baza danych Jest to zbiór danych lub jakichkolwiek innych materiałów i elementów zgromadzonych według określonej systematyki lub metody. Zatem jest
Zadanie projektowe nr 1
Zadanie projektowe nr 1 Badanie efektywności operacji dodawania (wstawiania), usuwania oraz wyszukiwania elementów w podstawowych strukturach danych Należy zaimplementować oraz dokonać pomiaru czasu działania
WyŜsza Szkoła Zarządzania Ochroną Pracy MS EXCEL CZ.2
- 1 - MS EXCEL CZ.2 FUNKCJE Program Excel zawiera ok. 200 funkcji, będących predefiniowanymi formułami, słuŝącymi do wykonywania określonych obliczeń. KaŜda funkcja składa się z nazwy funkcji, która określa
Podstawy programowania 2. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 2 Podstawy programowania 2 Temat: Zmienne dynamiczne tablica wskaźników i stos dynamiczny Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1 Tablice wskaźników Tablice
Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]
Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową
Transformacja modelu pojęciowego. do logicznego
Transformacja modelu pojęciowego do logicznego Plan wykładu 1. Modelowanie logiczne 2. Transformacja modelu pojęciowego do logicznego Transformacja własności Transformacja związków Transformacja hierarchii
Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne
Algorytmy i struktury danych Drzewa: BST, kopce Letnie Warsztaty Matematyczno-Informatyczne Drzewa: BST, kopce Definicja drzewa Drzewo (ang. tree) to nieskierowany, acykliczny, spójny graf. Drzewo może
Fizyczna organizacja danych w bazie danych
Fizyczna organizacja danych w bazie danych PJWSTK, SZB, Lech Banachowski Spis treści 1. Model fizyczny bazy danych 2. Zarządzanie miejscem na dysku 3. Zarządzanie buforami (w RAM) 4. Organizacja zapisu
1.1. Pozycyjne systemy liczbowe
1.1. Pozycyjne systemy liczbowe Systemami liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Dla dowolnego
Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości
Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład 13 1 Kody liniowe - kodowanie w oparciu o macierz parzystości Przykład Różne macierze parzystości dla kodu powtórzeniowego. Co wiemy z algebry
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. zadania
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. zadania 1. Zmodyfikuj strukturę relacji PROJEKTY, dodając do niej definicje następujących ograniczeń integralnościowych (użyj kilku poleceń):
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
Bazy danych TERMINOLOGIA
Bazy danych TERMINOLOGIA Dane Dane są wartościami przechowywanymi w bazie danych. Dane są statyczne w tym sensie, że zachowują swój stan aż do zmodyfikowania ich ręcznie lub przez jakiś automatyczny proces.
Pamięć. Jan Tuziemski Źródło części materiałów: os-book.com
Pamięć Jan Tuziemski Źródło części materiałów: os-book.com Cele wykładu Przedstawienie sposobów organizacji pamięci komputera Przedstawienie technik zarządzania pamięcią Podstawy Przed uruchomieniem program
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Stany równoważne Stany p i q są równoważne,
WSTĘP DO INFORMATYKI. Struktury liniowe
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk Struktury liniowe www.agh.edu.pl STRUKTURY LINIOWE SEKWENCJE Struktury
Teoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 6a: Model danych oparty na zbiorach http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2010/tpi-2010 Prof. dr hab. Elżbieta Richter-Wąs 1 Model danych oparty na zbiorach
Microsoft Access materiały pomocnicze do ćwiczeń cz. 1
Microsoft Access materiały pomocnicze do ćwiczeń cz. 1 I. Tworzenie bazy danych za pomocą kreatora Celem ćwiczenia jest utworzenie przykładowej bazy danych firmy TEST, zawierającej informacje o pracownikach
Bazy danych 11. Algorytmy złaczeń. P. F. Góra
Bazy danych 11. Algorytmy złaczeń P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2009 Typy złaczeń SELECT... FROM T 1 JOIN T 2 ON T 1.k p =T 2.k q JOIN T 3 ON T 2.k r =T 3.k s WHERE...; SELECT... FROM
Fizyczna struktura bazy danych w SQL Serwerze
Sposób przechowywania danych na dysku twardym komputera ma zasadnicze znaczenie dla wydajności całej bazy i jest powodem tworzenia między innymi indeksów. Fizyczna struktura bazy danych w SQL Serwerze
Wykład 7 Abstrakcyjne typy danych słownik (lista symboli)
Wykład 7 Abstrakcyjne typy danych słownik (lista symboli) Definicja słownika: Słownik (tablica lub lista symboli) to struktura danych zawierająca elementy z kluczami, która pozwala na przeprowadzanie dwóch
Programowanie na poziomie sprzętu. Tryb chroniony cz. 1
Tryb chroniony cz. 1 Moduł zarządzania pamięcią w trybie chronionym (z ang. PM - Protected Mode) procesorów IA-32 udostępnia: - segmentację, - stronicowanie. Segmentacja mechanizm umożliwiający odizolowanie
Arytmetyka liczb binarnych
Wartość dwójkowej liczby stałoprzecinkowej Wartość dziesiętna stałoprzecinkowej liczby binarnej Arytmetyka liczb binarnych b n-1...b 1 b 0,b -1 b -2...b -m = b n-1 2 n-1 +... + b 1 2 1 + b 0 2 0 + b -1
Kolumna Zeszyt Komórka Wiersz Tabela arkusza Zakładki arkuszy
1 Podstawowym przeznaczeniem arkusza kalkulacyjnego jest najczęściej opracowanie danych liczbowych i prezentowanie ich formie graficznej. Ale formuła arkusza kalkulacyjnego jest na tyle elastyczna, że
OPRACOWANIE: SŁAWOMIR APANOWICZ
PROJEKTOWANIE RELACYJNEJ BAZY DANYCH OPRACOWANIE: SŁAWOMIR APANOWICZ 1. Ogólne informacje o projektowaniu bazy danych Przystępując do projektowania bazy danych należy określić jej cel oraz zadania, jakie
PODSTAWY BAZ DANYCH. 7. Metody Implementacji Baz Danych. 2009/ Notatki do wykładu "Podstawy baz danych" 1
PODSTAWY BAZ DANYCH 7. Metody Implementacji Baz Danych 2009/2010 - Notatki do wykładu "Podstawy baz danych" 1 Przechowywanie danych w bazie 1. Dane przechowywane są w pamięci zewnętrznej podzielonej logicznie
Złożoność obliczeniowa zadania, zestaw 2
Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze
dr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki
Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,
1 Kwantyzacja skalarna Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11, 10.05.005 Kwantyzacja polega na reprezentowaniu dużego zbioru wartości (być może nieskończonego) za pomocą wartości
Sortowanie. Bartman Jacek Algorytmy i struktury
Sortowanie Bartman Jacek jbartman@univ.rzeszow.pl Algorytmy i struktury danych Sortowanie przez proste wstawianie przykład 41 56 17 39 88 24 03 72 41 56 17 39 88 24 03 72 17 41 56 39 88 24 03 72 17 39
Systemy OLAP II. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska
Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Technologie Wytwarzania Oprogramowania Semestr letni 2006/07 Plan wykładu Systemy baz
BAZY DANYCH. Microsoft Access. Adrian Horzyk OPTYMALIZACJA BAZY DANYCH I TWORZENIE INDEKSÓW. Akademia Górniczo-Hutnicza
BAZY DANYCH Microsoft Access OPTYMALIZACJA BAZY DANYCH I TWORZENIE INDEKSÓW Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki