Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

„Relacyjne Bazy Danych (Oracle)”

Podobne prezentacje


Prezentacja na temat: "„Relacyjne Bazy Danych (Oracle)”"— Zapis prezentacji:

1 „Relacyjne Bazy Danych (Oracle)”
Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. „Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój Politechniki Łódzkiej - zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych” Prezentacja dystrybuowana jest bezpłatnie 1 Politechnika Łódzka, ul. Żeromskiego 116, Łódź, tel. (042) 1

2 Przestrzenie tabel Przestrzeń tabel jest logiczną strukturą w bazie danych będącą pośrednikiem pomiędzy bazą danych a systemem plików na dysku lokalnym Każdy obiekt utworzony przez użytkownika (tabela, indeks itd..) musi znajdować się w pewnej przestrzeni tabel Reprezentacją przestrzeni tabel na dysku jest plik lub zestaw plików *.dbf Korzystanie z wielu przestrzeni tabel pozwala na uzyskanie fizycznego podziału bazy danych na systemie plików Każda aplikacja może korzystać se swojej przestrzeni tabel, różne przestrzenie tabel mogą być zlokalizowane na różnych dyskach

3 Przestrzenie tabel Przestrzenie tabel mogą mieć postać
Trwałą (Permanent Tablespace)‏ Tymczasową (Temporary Tablespace)‏ Przestrzeń wycofań (Undo Tablespace)‏

4 Trwała przestrzeń tabel
Przestrzeń używana do przechowywania trwałych obiektów (tabele, indeksy)‏ Można utworzyć kilka przestrzeni tabel z różną wielkością bloku CREATE TABLESPACE ts1 DATAFILE '/home/oracle/ts1_1.dbf' SIZE 100M AUTOEXTEND OFF BLOCKSIZE 8192

5 Tymczasowa przestrzeń tabel
Tymczasowa przestrzeń tabel przechowuje dane tylko na okres trwania sesji danego użytkownika Może być wykorzystywana np: w operacjach sortowania dużych tabel, które nie mogą być wykonane w pamięci operacyjnej Tymczasowa przestrzeń tabel nie generuje redo CREATE TEMPORARY TABLESPACE temp2 TEMPFILE '/home/oracle/temp2.dbf' SIZE 50m;

6 Standardowe przestrzenie tabel
System Sysaux Temp Undotbs1 Users

7 Procedury składowe Procedura to program przechowywany w bazie danych Oracle Procedury w bazie danych mogą służyć do wykonywania operacji niedostępnych dla standardowego języka SQL Oracle udostępnia możliwość pisania procedur składowych w wielu językach programowania Najpopularniejszym jest jednak język PL/SQL Procedury przetrzymywane są w segmencie współdzielonym (Shared Pool) jeżeli jest dostępne wystarczająco dużo miejsca

8 Pakiety Pakiety pozwalają na grupowanie niektórych obiektów (procedury, zmienne, kursory) w logiczne komponenty Standardowa instalacja Oracle EE posiada kilkaset pakietów, część z nich posiada procedury przydatne do administracji serwerem, inne pomagają w pisaniu procedur składowych

9 Wyzwalacze Wyzwalacze (Trigger) to procedury uruchamiane przy wykonywaniu określonych czynności Operacje typu DML Część operacji typu DDL Zdarzenia w bazie danych Wyzwalacze złożone uruchamiane przy kilku zdarzeniach

10 Wyzwalacze Najczęściej wykorzystuje się wyzwalacze powiązane z operacjami DML (INSERT, UPDATE, DELETE)‏ Wyzwalacze DML można podzielić na dwie grupy: Wyzwalacze uruchamiane na każdym wierszu Wyzwalacze uruchamiane przy każdym zapytaniu

11 Wyzwalacze Ponadto wyzwalacze DML mogą być uruchamiane na kilka sposobów Przed wykonaniem DML (Before Trigger)‏ Po wykonaniu DML (After Trigger)‏ Zamiast wykonania DML (Instead of Trigger)‏ Do wersji Oracle 11g baza nie gwarantowała kolejności uruchamiania wyzwalaczy W 11g pojawiła się klauzula FOLLOWS pozwalająca na ustalenie kolejności wykonywania

12 Wyzwalacze Pozostałe wyzwalacze mogą być uruchamiane przy wykonywaniu operacji CREATE, ALTER, DROP Logowanie/Wylogowanie użytkownika Uruchamianie/Zatrzymywanie bazy danych Pojawieniu się błędu Przełączaniu się bazy danych na inną (Data Guard)‏

13 Łącza Łącza pozwalają na uzyskanie dostępu do obiektów znajdujących się w innej bazie danych Łącza są jednokierunkowe Typy łącz Łącze stałe – użytkownik i hasło są zdefiniowane na stałe przy definicji łącza Łącze obecnego użytkownika - użytkownik posiada takie samo konto w drugiej bazie danych Korzystanie z łącza SELECT * FROM

14 Perspektywy Perspektywa jest uproszczoną formą przeglądania wyników zapytania, często określana jest mianem tabeli wirtualnej Wynik wykonania kwerendy typu SELECT może być dostępny w formie tabeli dostępnej pod określoną nazwą Użytkownik musi posiadać przywilej systemowy CREATE VIEW Perspektywy przechowywane są w formie tekstowej w słowniku danych (Data Dictionary)‏ Wykonanie zapytania do perspektywy łączy zapytanie oryginalne z zapytaniem definiującym perspektywę create view emp_v as select empno,ename from emp; select * from emp_v;

15 Perspektywy Wykorzystanie perspektyw
Ograniczanie użytkownikom dostępu do niektórych wierszy w tabeli (wykorzystując klauzulę WHERE)‏ Ograniczanie dostępu do niektórych kolumn tabeli (SELECT col1,col2 FROM tabela)‏ Ukrywanie skomplikowanego zapytania (np: łączenia wielu tabel, skomplikowanych klauzuli WHERE) za prostą nazwą perspektywy Udostępnianie aplikacjom danych, które zostały zmienione w oryginalnej tabeli (wykorzystując funkcje), korzystając z tej opcji można np: prezentować dane w wybranym języku – np: data, czas

16 Perspektywy Perspektywy mogą być uaktualniane, INSERT, UPDATE, DELETE
Muszą jednak być spełnione odpowiednie ograniczenia na tabeli macierzystej Perspektywa nie może być zdefiniowana z agregacjami, podzapytaniami, oraz łączeniami W niektórych przypadkach można aktualizować dane w perspektywie korzystającej z łączeń Perspektywy mogą być łączone ze sobą za pomocą zapytań SQL aby utworzyć kolejną perspektywę Można osiągnąć efekty niemożliwe do zrealizowania za pomocą jednego zapytania SQL, np: GROUP BY + JOIN

17 Perspektywy zmaterializowane
Perspektywa, która przechowuje dane zapytania w pamięci masowej Pozwala na uniknięcie wielokrotnego wykonywania skomplikowanych i czasochłonnych zapytań SQL Agregacje na dużych tabelach, COUNT(*), AVG(), SUM(), GROUP BY Łączenie wielu tabel klauzulą JOIN Może być automatycznie aktualizowana

18 Perspektywy zmaterializowane
Może być wykorzystana jako jedna z form replikacji – dane mogą być pobierane z innych baz za pomocą łącz W przypadku awarii bazy źródłowej perspektywa zmaterializowana zawiera dane z ostatniego odświeżenia

19 Perspektywy zmaterializowane
Opcja przepisywania zapytań SQL Zapytanie SQL zostanie zmodyfikowane w taki sposób, aby nie wykonywać określonych operacji, a jedynie pobrać jej wynik z perspektywy zmaterializowanej Warunkiem jest istnienie perspektywy, która zawiera całość lub część zapytania Przepisywanie można włączyć klauzulą ENABLE QUERY REWRITE przy definicji perspektywy zmaterializowanej

20 Perspektywy zmaterializowane
Metody odświeżania perspektyw zmaterializowanych Pełna (Complete) – przebudowanie perspektywy Szybka (Fast) – przebudowanie uwzględniając tylko zmiany Wymuszona (Complete) – przebudowanie zmian, w razie konieczności pełna przebudowa perspektywy zmaterializowanej

21 Perspektywy zmaterializowane
Sposoby odświeżania perspektyw zmaterializowanych Na żądanie (On Demand)‏ BEGIN DBMS_MVIEW.REFRESH('job_avg_sal',null,null,true,false,1,0,0,true) ; END; Po zatwierdzeniu transakcji (On Commit)‏ Odświeżanie perspektywy zmaterializowanej może być zadaniem czasochłonnym Odświeżanie jest częścią procesu zatwierdzania Nigdy (Never)‏ W określonym czasie (Specify)‏

22 Perspektywy zmaterializowane
Odświeżenie szybkie Aby śledzić na bieżąco zmiany w tabeli macierzystej należy utworzyć dziennik perspektywy zmaterializowanej (Materialized View Log)‏ Dziennik zapisuje zmiany w tabeli macierzystej, które mogą być później wykorzystane do odświeżenia szybkiego Procedura DBMS_MVIEW.EXPLAIN_VIEW pomaga sprawdzić możliwości odświeżania szybkiego Procedura wymaga uruchomienia skryptu utlxmv.sql

23 Synonimy Synonimy służą do nadawania innych nazw istniejącym obiektom
Dany obiekt może być dostępny pod kilkoma nazwami, co eliminuje konieczność zmiany schematu bazy w celu dostosowania jej do istniejących aplikacji Synonimy występują w dwóch formach Synonimy prywatne Synonimy publiczne Synonimy mogą odnosić się do obiektów w innej bazie danych

24 Synonimy prywatne Synonim utworzony na potrzeby jednego użytkownika
Może on jednak decydować (o ile ma do tego prawa) aby inni użytkownicy mogli z niego korzystać Użytkownik musi posiadać przywilej systemowy CREATE SYNONYM create synonym emp3 for emp; select * from emp3;

25 Synonimy publiczne Do synonimu publicznego mają dostęp wszyscy użytkownicy bazy danych Właścicielem synonimu publicznego automatycznie staje się specjalna grupa PUBLIC Użytkownik musi posiadać przywilej systemowy CREATE PUBLIC SYNONYM CREATE PUBLIC SYNONYM pracownicy FOR scott.emp; SELECT * FROM pracownicy;

26 „Relacyjne Bazy Danych (Oracle)”
Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. „Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój Politechniki Łódzkiej - zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych” Prezentacja dystrybuowana jest bezpłatnie 26 Politechnika Łódzka, ul. Żeromskiego 116, Łódź, tel. (042) 26


Pobierz ppt "„Relacyjne Bazy Danych (Oracle)”"

Podobne prezentacje


Reklamy Google