Główne funkcje DBMS
Główne funkcje DBMS

Wideo: Główne funkcje DBMS

Wideo: Główne funkcje DBMS
Wideo: WYSOKA CENA = OGROMNE MOŻLIWOŚCI? | Test, recenzja zegarka sportowego Garmin Fenix 6 PRO 2024, Może
Anonim

Nowoczesne systemy zarządzania bazami danych są używane w wielu lokalizacjach, ale nie każdy wie, czym one są i jak można wykorzystać funkcje DBMS. Takie narzędzia mają ogromną ilość możliwości, dlatego aby w pełni z nich korzystać, należy zrozumieć, co potrafią i jak bardzo są przydatne dla użytkownika.

Zarządzanie danymi

Przede wszystkim funkcje DBMS obejmują przetwarzanie informacji w pamięci zewnętrznej, a funkcja ta ma zapewnić podstawowe struktury VI, które są potrzebne nie tylko do przechowywania informacji zawartych bezpośrednio w bazie danych, ale także do wykonywania różnych zadań serwisowych, takich jak uzyskiwanie przyspieszonego dostępu do dowolnych plików w różnych przypadkach. W niektórych modyfikacjach aktywnie wykorzystywane są możliwości różnych systemów plików, podczas gdy inne zapewniają pracę nawet na poziomie zewnętrznych urządzeń pamięci. Ale w tym przypadku warto zauważyć, że w funkcji wysoko rozwiniętego DBMS użytkownik i tak nie jest informowany, czy jest używany jakiś system, a jeśli tak, to w jaki sposób są zorganizowane pliki. W szczególności system utrzymuje własną kolejność nazewnictwa dla obiektów zawartych w bazie danych.

podrzędne funkcje
podrzędne funkcje

Zarządzanie buforem RAM

W zdecydowanej większości przypadków zwyczajowo używa się funkcji DBMS w dość dużych bazach danych, a rozmiar ten jest przynajmniej często znacznie większy niż dostępna pamięć RAM. Oczywiście, jeśli w przypadku dostępu do każdego elementu danych przeprowadzana jest wymiana z pamięcią zewnętrzną, szybkość tej ostatniej będzie odpowiadała szybkości samego systemu, dlatego praktycznie jedyną opcją na jej faktyczne zwiększenie jest buforowanie informacje w pamięci RAM. Co więcej, nawet jeśli system operacyjny wykonuje buforowanie w całym systemie, na przykład z UNIX, to nie wystarczy, aby zapewnić DBMS cel i podstawowe funkcje, ponieważ ma znacznie większą ilość danych o korzystnych właściwościach buforowania dla każdego konkretna część używanej bazy danych. Dzięki temu zaawansowane systemy posiadają własny zestaw buforów, a także unikalną dyscyplinę ich wymiany.

Warto zauważyć, że istnieje osobny kierunek systemów sterowania, skupiony na ciągłej obecności całej bazy danych w pamięci RAM. Kierunek ten opiera się na założeniu, że w niedalekiej przyszłości ilość pamięci RAM w komputerach będzie mogła się rozrosnąć na tyle, że nie będą się już martwić o jakiekolwiek buforowanie, a podstawowe funkcje tego typu DBMS przydadzą się tutaj. W chwili obecnej wszystkie te prace pozostają na etapie testów.

Zarządzanie transakcjami

Transakcja to sekwencja operacji na używanej bazie danych, którą system zarządzania uważa zapojedyncza całość. Jeśli transakcja zostanie całkowicie pomyślnie wykonana, system naprawi zmiany, które wprowadził w pamięci zewnętrznej lub żadna z tych zmian nie wpłynie na stan bazy danych. Ta operacja jest wymagana w celu utrzymania logicznej integralności używanej bazy danych. Warto zaznaczyć, że utrzymanie prawidłowego przebiegu mechanizmu transakcji jest warunkiem koniecznym nawet przy korzystaniu z SZBD jednego użytkownika, którego cel i funkcje znacznie różnią się od innych typów systemów.

główne funkcje subd
główne funkcje subd

Właściwość, że każda transakcja rozpoczyna się tylko wtedy, gdy baza danych jest w spójnym stanie i pozostawia ją w tym samym stanie po zakończeniu procedury, czyni ją niezwykle wygodną w użyciu jako jednostki aktywności dotyczącej bazy danych. Przy odpowiednim zarządzaniu przez system kontroli jednocześnie wykonywanymi transakcjami, każdy użytkownik z osobna w zasadzie może poczuć się częścią całości. Jest to jednak do pewnego stopnia wyidealizowana reprezentacja, ponieważ w wielu sytuacjach, gdy pracujący ludzie nadal będą odczuwać obecność swoich kolegów, jeśli korzystają z systemu wieloużytkownikowego, ale w rzeczywistości zapewnia to również sama koncepcja DBMS. Cechy systemu DBMS typu wielu użytkowników wiążą również takie koncepcje, jak plan wykonania szeregowego i serializacja, z zarządzaniem transakcjami.

Co one oznaczają?

Serializacja jednocześnie wykonywanych transakcji przewiduje zbudowanie specjalnego planu ich pracy, w którymcałkowity efekt uzyskanej mieszaniny jest równoważny wynikowi uzyskanemu dzięki ich sekwencyjnemu wykonaniu.

Plan wykonania seryjnego to specyficzna struktura działań, która prowadzi do serializacji. Oczywiście, jeśli systemowi uda się zapewnić prawdziwie seryjną realizację mieszanki transakcji, to dla każdego użytkownika, który inicjuje transakcję, obecność innych będzie zupełnie niezauważalna, poza tym, że będzie działał nieco wolniej w porównaniu do pojedynczego użytkownika tryb.

liczba podstawowych funkcji podrzędnych
liczba podstawowych funkcji podrzędnych

Istnieje kilka podstawowych algorytmów serializacji. W systemach scentralizowanych najpopularniejsze obecnie algorytmy opierają się na przechwytywaniu synchronizacji różnych obiektów bazy danych. W przypadku wykorzystania dowolnych algorytmów serializacji przewidziana jest możliwość wystąpienia konfliktów między dwiema lub większą liczbą transakcji na dostępie do określonych obiektów bazy danych. W takiej sytuacji do obsługi tej procedury konieczne jest wykonanie rollbacku, czyli wyeliminowanie wszelkich zmian dokonanych w bazie danych poprzez jeden lub więcej procesów. To tylko jedna z sytuacji, w których dana osoba czuje obecność innych w systemie wielu użytkowników.

Dziennik

Jednym z głównych wymagań dla nowoczesnych systemów jest zapewnienie niezawodności przechowywania informacji w pamięci zewnętrznej. W szczególności zapewnia to, że główne funkcje DBMS obejmują możliwość przywrócenia ostatnio uzgodnionegostan bazy danych po wystąpieniu jakiejkolwiek awarii oprogramowania lub sprzętu. W zdecydowanej większości przypadków zwyczajowo rozważa się dwie opcje awarii sprzętu:

  • soft, co można zinterpretować jako nieoczekiwane wyłączenie komputera (najczęstszym przypadkiem jest awaria zasilania);
  • twarde, które charakteryzują się częściową lub całkowitą utratą danych przechowywanych na nośnikach zewnętrznych.

Przykłady awarii oprogramowania obejmują awarię systemu podczas próby użycia jakiejś funkcji, która nie jest częścią głównych funkcji DBMS lub awarię jakiegoś narzędzia użytkownika, w wyniku którego dana transakcja nie została zakończona. Pierwszą sytuację można uznać za szczególny rodzaj miękkiej awarii, podczas gdy druga wymaga odzyskania pojedynczej transakcji.

podrzędny cel i główne funkcje
podrzędny cel i główne funkcje

Oczywiście w każdym przypadku, aby normalnie przywrócić bazę danych, musisz mieć pewną ilość dodatkowych informacji. Innymi słowy, dla normalnego zachowania niezawodności przechowywania danych w bazie danych konieczne jest zapewnienie redundancji przechowywania informacji, a część danych wykorzystywana podczas odzyskiwania musi być szczególnie starannie strzeżona. Najpopularniejszą metodą utrzymywania tych nadmiarowych danych jest rejestrowanie zmian.

Co to jest i jak jest używane?

Dziennik jest specjalną częścią bazy danych, dostępktóry nie jest zawarty w liczbie funkcji DBMS i jest obsługiwany bardzo ostrożnie. W niektórych sytuacjach zapewnia nawet obsługę dwóch kopii dziennika jednocześnie, znajdujących się na różnych nośnikach fizycznych. Repozytoria te otrzymują informacje o wszelkich zmianach zachodzących w głównej części bazy danych, a w różnych systemach zarządzania zmiany mogą być rejestrowane na różnych poziomach. W niektórych sytuacjach wpis w dzienniku w pełni odpowiada określonej logicznej operacji aktualizacji, w innych - minimalnej operacji wewnętrznej związanej z aktualizacją strony pamięci zewnętrznej, podczas gdy niektóre DBMS zapewniają kombinację tych dwóch podejść.

W każdym przypadku używana jest tak zwana strategia rejestrowania „zapisu z wyprzedzeniem”. Po zastosowaniu rekord wskazujący na zmianę dowolnego obiektu bazy danych jest wprowadzany do zewnętrznej pamięci dziennika przed zmianą obiektu. Wiadomo, że jeśli funkcje Access DBMS zapewniają normalną implementację tego protokołu, to korzystanie z dziennika rozwiązuje wszelkie problemy związane z przywróceniem bazy danych w przypadku jakichkolwiek awarii.

Wycofanie

Najprostszą sytuacją odzyskiwania jest cofnięcie poszczególnych transakcji. W przypadku tej procedury nie trzeba używać ogólnosystemowego dziennika zmian i wystarczy użyć lokalnego dziennika operacji modyfikacji dla każdej transakcji, a następnie wycofać transakcje, wykonując operacje odwrotne, zaczynając od końca każdego z nagrania. Struktura funkcji DBMS często zapewnia:zastosowanie właśnie takiej struktury, ale w większości przypadków logi lokalne nadal nie są obsługiwane, a indywidualne wycofanie nawet dla pojedynczych transakcji odbywa się zgodnie z ogólnosystemowym, a do tego wszystkie zapisy każdej z transakcji są łączone na liście odwróconej.

pojęcie funkcji subd subd
pojęcie funkcji subd subd

Podczas awarii miękkiej pamięć zewnętrzna bazy danych może zawierać różne obiekty, które zostały zmodyfikowane przez transakcje, które nie zostały zakończone w momencie awarii, a także może brakować różnych obiektów, które zostały zaktualizowane przez te, które zakończyły się pomyślnie przed awarią poprzez wykorzystanie buforów pamięci RAM, których zawartość całkowicie znika w przypadku wystąpienia takich problemów. Jeśli przestrzegany jest protokół używania dzienników lokalnych, w pamięci zewnętrznej muszą znajdować się wpisy dotyczące modyfikacji takich obiektów.

Głównym celem procedury naprawczej po wystąpieniu miękkich awarii jest taki stan pamięci zewnętrznej głównej bazy danych, który wystąpiłby, gdyby zmiany w dowolnych zakończonych transakcjach zostały zatwierdzone w VI i nie zawierałyby śladów niedokończonych procedur. Aby osiągnąć ten efekt, głównymi funkcjami DBMS w tym przypadku są wycofywanie niekompletnych transakcji i odtwarzanie tych operacji, których wyniki ostatecznie nie zostały wyświetlone w pamięci zewnętrznej. Proces ten obejmuje dość dużą liczbę subtelności, które dotyczą głównie organizacji zarządzania logami i buforami.

Poważne awarie

Gdy baza danych musi zostać przywrócona po poważnej awarii, używany jest nie tylko dziennik, ale także kopia zapasowa bazy danych. Ta ostatnia jest kompletną kopią bazy danych do czasu rozpoczęcia wypełniania dziennika. Oczywiście dla normalnej procedury odzyskiwania wymagane jest zachowanie dziennika, dlatego, jak wspomniano wcześniej, na jego zachowanie w pamięci zewnętrznej stawiane są niezwykle poważne wymagania. W tym przypadku odtworzenie bazy danych polega na tym, że na podstawie kopii archiwalnej dziennik odtwarza wszystkie transakcje, które zostały zakończone do czasu wystąpienia awarii. W razie potrzeby może nawet odtworzyć oczekujące transakcje i kontynuować ich normalne działanie po zakończeniu procedury przywracania, ale w większości rzeczywistych systemów ta procedura nie jest przeprowadzana z tego powodu, że samo odzyskiwanie po twardym błędzie jest dość długą procedurą.

Obsługa językowa

Nowoczesne bazy danych wykorzystują różne języki, a wczesne DBMS-y, których przeznaczenie, funkcje i inne cechy znacznie różniły się od nowoczesnych systemów, zapewniały obsługę kilku wysoce wyspecjalizowanych języków. Zasadniczo były to SDL i DML, zaprojektowane odpowiednio do definiowania schematu bazy danych i manipulowania danymi.

struktura funkcji subd
struktura funkcji subd

SDL został użyty do określenia logicznej struktury bazy danych, to znaczy do rozpoznania specyficznej struktury bazy danych, która jest reprezentowanaużytkowników. Z kolei DML zawierał cały kompleks operatorów manipulacji informacjami, które umożliwiały wprowadzanie informacji do bazy danych, a także usuwanie, modyfikowanie lub wykorzystywanie istniejących danych.

Funkcje DBMS obejmują różne typy obsługi jednego zintegrowanego języka, co zapewnia obecność wszelkich środków niezbędnych do normalnej pracy z bazami danych, począwszy od ich początkowego utworzenia, aż po standardowy interfejs użytkownika. SQL jest używany jako język standardowy, który zapewnia podstawowe funkcje systemu DBMS w najpopularniejszych dzisiejszych systemach relacyjnych.

Co to jest?

Przede wszystkim język ten łączy w sobie główne funkcje DML i SDL, to znaczy zapewnia możliwość określenia specyficznej semantyki relacyjnej bazy danych i manipulowania niezbędnymi informacjami. Jednocześnie nazewnictwo różnych obiektów bazy danych jest obsługiwane bezpośrednio na poziomie języka w tym sensie, że kompilator konwertuje nazwy obiektów na ich wewnętrzne identyfikatory na podstawie specjalnie utrzymywanych tabel katalogu usług. Zasadniczo rdzeń systemów sterowania nie wchodzi w interakcję z tabelami ani ich poszczególnymi kolumnami.

nie zawarte w głównych funkcjach subd
nie zawarte w głównych funkcjach subd

Język SQL zawiera całą listę specjalnych narzędzi, które pozwalają określić ograniczenia integralności bazy danych. Ponownie, wszelkie takie ograniczenia są zawarte w specjalnych tabelach katalogowych, a kontrola integralności odbywa się bezpośrednio na poziomie języka, czyli:w procesie odczytu poszczególnych instrukcji modyfikacji bazy danych kompilator, na podstawie ograniczeń integralności w bazie danych, generuje odpowiedni kod programu.

Zalecana: