1 / 23

Rozdział 14: Struktury danych

Rozdział 14: Struktury danych. (c) 2000, Instytut Informatyki Politechniki Poznańskiej. Organizacja przestrzeni danych.

varuna
Download Presentation

Rozdział 14: Struktury danych

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Rozdział 14: Struktury danych (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  2. Organizacja przestrzeni danych • struktury logiczne - przestrzenie tabel (ang. tablespaces), schematy, obiekty (relacje, indeksy, klastry, klastry haszowe (ang. hash cluster), perspektywy, sekwencery, synonimy, moduły PL/SQL); • struktury pośrednie - odzworowujące struktury logiczne w fizyczne; bloki, rozszerzenia (ang. extents), segmenty; • struktury fizyczne - zależne od własności systemu operacyjnego (systemy plikowe, urządzenia surowe (ang. raw devices)), trzy kategorie struktur: pliki danych, dzienniki (ang. redo log), pliki kontrolne; (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  3. Organizacja przestrzeni danych (cd.) baza danych przestrzeń tabel system przestrzeń tabel dane plik 1 plik 2 plik 3 (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  4. Przestrzenie tabel • przeznaczenie: • zarządzanie przestrzenią dyskową, • określanie limitów zasobów dla użytkowników (ang. quota), • zarządzanie dostępnością danych, stany: online i offline, • wykonywanie częściowej kopii bezpieczeństwa (ang. backup) lub częściowego odtwarzanie (ang. recovery), • przestrzeń tabel SYSTEM; • powiększanie przestrzeni tabel: ALTER TABLESPACE system ADD DATAFILE 'data3.ora' SIZE 10M • powiększanie bazy danych: CREATE TABLESPACE kadry DATAFILE 'data4.ora' SIZE 4M (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  5. Manipulowanie przestrzeniami tabel • tworzenie przestrzeni tabel CREATE TABLESPACE nazwa DATAFILE ’ plik’ SIZE int [K|M] AUTOEXTEND OFF ON NEXT int [K|M] MAXSIZE UNLIMITED int [K|M] DEFAULT STORAGE opis składowania TEMPORARY • usunięcie przestrzeni tabel DROP TABLESPACE nazwa INCLUDING CONTENTS CASCADE CONSTRAINTS (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  6. Manipulowanie przestrzeniami tabel , • dodanie pliku, zmiana domyślnego składowania ALTER TABLESPACE nazwa ADD DATAFILE ’ plik’ SIZE int [K|M] AUTOEXTEND OFF ON NEXT int [K|M] MAXSIZE UNLIMITED int [K|M] DEFAULT STORAGE opis składowania • włączanie i wyłączanie przestrzeni tabel ALTER TABLESPACE nazwa ONLINE OFFLINE NORMAL IMMEDIATE TEMPORARY (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  7. Schematy • schematy - zbiorniki opisów obiektów (opisy relacji, perspektyw, synonimów, etc.); posiadają rozłączne przestrzenie identyfikatorów obiektów schemat kowalski schemat nowak tabela pracownicy tabela pracownicy tabela zespoly synonim płace • tworzenie schematu CREATE USER malinowski IDENTIFIED BY alfa13 (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  8. Obiekty • relacje, • perspektywy, • sekwencery, • synonimy, • indeksy - B* - drzewa, bitmapowe, • klastry, • klastry haszowe (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  9. Indeksy Matysiak Morzy Stefanowski Czyżak Grzybowski Biały Błażewicz Grzybowski Jezierski Matysiak Mizgajski Stefanowski Wożniak Morzy Pawlak Czyżak Frankowski dane (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  10. DROP INDEX nazwa Manipulacje indeksami • tworzenie indeksów , CREATE INDEX nazwa ON tabela ( atrybut ) UNIQUE CLUSTER klaster • usuwanie indeksów (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  11. Klastry • klastry - grupa relacji współdzieląca te same dane, alternatywny sposób składowanie relacji tabela pracownicy klaster zesp_prac 120 Jezierski 10 130 Matysiak 10 220 Słowiński 11 140 Koszlajda 10 330 Czyżak 11 440 Stefanowski 11 ................................... 10 BD Piotrowo 120 Jezierski 130 Matysiak 140 Koszlajda 11 KSWD Piotrowo3b 220 Słowiński 330 Czyżak 440 Stefanowski ................................... tabela zespoły 10 BD Piotrowo3a 11 KSWD Piotrowo3b .................................... (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  12. Klastry haszowe • klastry haszowe - grupa relacji współdzieląca te same dane, dodatkowo dostęp przez funkcję haszową klaster zesp_prac 10 BD Piotrowo 120 Jezierski 130 Matysiak 140 Koszlajda 11 KSWD Piotrowo3b 220 Słowiński 330 Czyżak 440 Stefanowski ................................... funkcja haszowa fm=0 blok 0 id_zesp=10 fm(id_zesp)= id_zesp mod 10 blok 1 (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  13. , , DROP CLUSTER nazwa_klastra INCLUDING TABLES Manipulowanie klastrami • tworzenie klastrów CREATE CLUSTER nazwa ( atrybyt typ ) INDEX HASHKEYS integer • przypisanie tabeli do klastra CREATE TABLE nazwa_tabeli. . . CLUSTER nazwa_klastra ( atrybut ) • usuwanie klastra CASCADE CONSTRAINTS (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  14. Struktury pośrednie • blok danych - najmniejsza jednostka dyskowa używana przez bazę danych, odpowiada określonej liczbie bajtów; • rozszerzenie - ciągły zbiór bloków danych, przydzielany jednorazowo przez system dla danych pojedynczego obiektu; • segment - zbiór rozszerzeń przydzielony obiektowi; segment danych, segment indeksów, segment wycofania transakcji (ang. rollback segment), segment tymczasowy. (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  15. 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB 2KB Struktury pośrednie (cd.) segment 80 KB rozszerzenie 64KB rozszerzenie 16 KB bloki bazy danych (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  16. Zarządzanie blokami danych PCTUSED=40% brak wypełniania PCTFREE=10% wypełnianie 100-PCTFREE=90% 0% PCTUSED=40% 100% CREATE TABLE nazwa_tabeli. . . PCTFREE integer PCTUSED integer (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  17. Zarządzanie rozszerzeniami • INITIAL = 100 • NEXT = 10 • PCTINCREASE = 20 pierwsze rozszerzenie drugie rozszerzenie trzeci rozszerzenie 100KB 10KB 12KB segment (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  18. Opis składowania STORAGE( INITIAL int [K|M] ) NEXT int [K|M] OPTIMAL int [K|M] MINEXTENTS int MAXEXTENTS int PCTINCREASE int FREELIST int (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  19. Segmenty • segmenty danych - przechowują dane użytkowe tablic oraz klastrów; • segmenty indeksów - przechowują indeksy; • segmenty tymczasowe - zawierają dane tymczasowe, np. wyniki pośrednie zapytań; • segmenty wycofania - zawierają dane zmodyfikowane przez aktywne transakcje; służą do: • zagwarantowania spójności odczytu dla transakcji typu read-only, • wycofywania transakcji, • do odtworzenie systemu po awarii; • jedyne segmenty jawnie tworzone przez administratora bazy (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  20. CREATE ROLLBACK SEGMENT nazwa DROP ROLLBACK SEGMENT nazwa Manipulowanie segmentami wycofania • tworzenie segmentu wycofania (parametr ROLLBACK_SEGMENT) TABLESPACE przestrzeń tabel STORAGE opis składowania OPTIMAL NULL int [K|M] • usuwanie segmentu wycofania (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  21. ALTER ROLLBACK SEGMENT nazwa Manipulowanie segmentami wycofania • modyfikacja segmentu wycofania TABLESPACE przestrzeń tabel STORAGE opis składowania OPTIMAL NULL TO int [K|M] ONLINE OFFLINE SHRINK TO int [K|M] (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  22. Struktury fizyczne • pliki danych - zawierają wszystkie dane użytkowe bazy danych, jeden plik może należeć tylko do jednej bazy danych, • dzienniki (ang. redo log) - przechowują wszystkie zmiany zachodzące w bazie danych, informacja niezbędna do odtworzenia stanu spójnego po awarii; • pliki kontrolne - przechowują informacje o fizycznej strukturze bazy danych, przykładowo: • nazwa bazy danych, • nazwy i lokalizacje plików danych oraz dzienników, • etykietę czasową utworzenia bazy danych. (c) 2000, Instytut Informatyki Politechniki Poznańskiej

  23. Tworzenie bazy danych CREATE DATABASE nazwa , LOGFILE ’ plik’ SIZE int [K|M] GROUP int REUSE DATAFILE ’ plik’ SIZE int [K|M] REUSE AUTOEXTEND... ARCHIVELOG NOARCHIVELOG CHARACTER SET zestaw_znaków CONTROLFILE REUSE (c) 2000, Instytut Informatyki Politechniki Poznańskiej

More Related