Słownik danych - Data dictionary

Słownik danych lub metadanych repozytorium , jak określono w IBM Dictionary of Computing , to „centralnym repozytorium informacji na temat danych, takich jak znaczenie, związki z innymi danymi, pochodzenie, użytkowania i format”. Oracle definiuje go jako zbiór tabel z metadanymi. Termin może mieć jedno z kilku ściśle powiązanych znaczeń odnoszących się do baz danych i systemów zarządzania bazami danych (DBMS):

  • Dokument opisujący bazę danych lub gromadzenie baz danych
  • Integralnym składnikiem z DBMS , które są wymagane w celu określenia jego struktury
  • Kawałek middleware , który rozciąga się lub wypiera rodzimą słownika danych DBMS

Dokumentacja

Terminy słownik danych i repozytorium danych wskazują na bardziej ogólne narzędzie programowe niż katalog. Katalog jest ściśle sprzężony z oprogramowaniem DBMS. Udostępnia przechowywane w nim informacje użytkownikowi i administratorowi danych, ale dostęp do nich mają głównie różne moduły oprogramowania samego DBMS, takie jak kompilatory DDL i DML , optymalizator zapytań, procesor transakcji, generatory raportów i ograniczenie egzekutor. Z drugiej strony słownik danych to struktura danych przechowująca metadane , tj. (Ustrukturyzowane) dane o informacjach. Pakiet oprogramowania dla samodzielnego słownika danych lub repozytorium danych może współdziałać z modułami oprogramowania DBMS, ale jest używany głównie przez projektantów, użytkowników i administratorów systemu komputerowego do zarządzania zasobami informacji. Systemy te przechowują informacje o konfiguracji sprzętu i oprogramowania, dokumentacji, aplikacji i użytkownikach, a także inne informacje związane z administrowaniem systemem.

Jeśli system słownika danych jest używany tylko przez projektantów, użytkowników i administratorów, a nie przez oprogramowanie DBMS, nazywa się go pasywnym słownikiem danych. W przeciwnym razie jest nazywany aktywnym słownikiem danych lub słownikiem danych. Aktualizacja pasywnego słownika danych odbywa się ręcznie i niezależnie od jakichkolwiek zmian w strukturze DBMS (bazy danych). W przypadku aktywnego słownika danych, słownik jest aktualizowany jako pierwszy, a w wyniku tego zmiany w systemie DBMS następują automatycznie.

Użytkownicy baz danych i programiści aplikacji mogą skorzystać z autorytatywnego dokumentu słownika danych, który kataloguje organizację, zawartość i konwencje co najmniej jednej bazy danych. Zwykle obejmuje to nazwy i opisy różnych tabel (rekordów lub jednostek ) oraz ich zawartość ( pola ) oraz dodatkowe szczegóły, takie jak typ i długość każdego elementu danych . Inną ważną informacją, którą może dostarczyć słownik danych, są relacje między tabelami. Czasami jest to określane na diagramach encji-relacji lub w przypadku używania deskryptorów zestawów, określających, w których zestawach uczestniczą tabele bazy danych.

W aktywnym słowniku danych ograniczenia mogą być nałożone na dane bazowe. Na przykład, zakres może być nałożony na wartość danych liczbowych w elemencie danych (polu) lub rekord w tabeli może być WYMUSZONY do uczestniczenia w ustalonej relacji z innym typem rekordu. Ponadto rozproszony DBMS może mieć określone specyfikacje lokalizacji opisane w jego aktywnym słowniku danych (np. Gdzie tabele są fizycznie zlokalizowane).

Słownik danych składa się z typów rekordów (tabel) utworzonych w bazie danych przez pliki poleceń generowane przez systemy, dostosowane do każdego obsługiwanego systemu DBMS typu back-end. Oracle ma listę określonych widoków dla użytkownika „sys”. Dzięki temu użytkownicy mogą znaleźć dokładne informacje, które są potrzebne. Pliki poleceń zawierają instrukcje SQL dla funkcji CREATE TABLE, CREATE UNIQUE INDEX, ALTER TABLE (dla integralności referencyjnej) itp., Przy użyciu określonej instrukcji wymaganej przez ten typ bazy danych.

Nie ma uniwersalnego standardu co do poziomu szczegółowości takiego dokumentu.

Oprogramowanie pośredniczące

Przy konstruowaniu aplikacji bazodanowych przydatne może być wprowadzenie dodatkowej warstwy oprogramowania słownika danych, tj. Oprogramowania pośredniego , które komunikuje się z bazowym słownikiem danych DBMS. Taki słownik danych „wysokiego poziomu” może oferować dodatkowe funkcje i stopień elastyczności, który wykracza poza ograniczenia natywnego słownika danych „niskiego poziomu”, którego głównym celem jest obsługa podstawowych funkcji DBMS, a nie wymagań typowej aplikacji. Na przykład słownik danych wysokiego poziomu może zapewnić alternatywne modele relacji między jednostkami, dostosowane do różnych aplikacji, które współużytkują wspólną bazę danych. Rozszerzenia słownika danych mogą również pomóc w optymalizacji zapytań względem rozproszonych baz danych . Ponadto funkcje DBA są często zautomatyzowane przy użyciu narzędzi restrukturyzacyjnych, które są ściśle powiązane z aktywnym słownikiem danych.

Struktury oprogramowania, których celem jest szybkie tworzenie aplikacji, czasami zawierają narzędzia słownika danych wysokiego poziomu, co może znacznie zmniejszyć ilość programowania wymaganego do tworzenia menu , formularzy , raportów i innych składników aplikacji bazodanowej, w tym samej bazy danych. Na przykład, PHPLens zawiera bibliotekę klas PHP do automatyzacji tworzenia tabel, indeksów i ograniczeń klucza obcego przenośnie dla wielu baz danych. Inny słownik danych oparty na PHP, będący częścią zestawu narzędzi RADICORE, automatycznie generuje obiekty programu , skrypty i kod SQL dla menu i formularzy z walidacją danych i złożonymi połączeniami . W przypadku środowiska ASP.NET słownik danych Base One zapewnia funkcje między DBMS umożliwiające zautomatyzowane tworzenie baz danych, sprawdzanie poprawności danych, zwiększanie wydajności ( buforowanie i wykorzystanie indeksów), bezpieczeństwo aplikacji i rozszerzone typy danych . Funkcje Visual DataFlex zapewniają możliwość używania DataDictionaries jako plików klas w celu utworzenia warstwy pośredniej między interfejsem użytkownika a bazową bazą danych. Celem jest stworzenie standardowych reguł w celu zachowania integralności danych i egzekwowania reguł biznesowych w jednej lub większej liczbie powiązanych aplikacji.

Niektóre branże wykorzystują uogólnione słowniki danych jako standardy techniczne w celu zapewnienia interoperacyjności między systemami. Na przykład branża nieruchomości przestrzega słownika danych RESO, do którego National Association of REALTORS zobowiązuje swoje MLS w swoim podręczniku polityki. Ta pośrednia warstwa mapowania dla natywnych baz danych MLS jest obsługiwana przez firmy programistyczne, które świadczą usługi API dla organizacji MLS.

Przykłady specyficzne dla platformy

Programiści używają specyfikacji opisu danych ( DDS ) do opisywania atrybutów danych w opisach plików, które są zewnętrzne w stosunku do aplikacji przetwarzającej dane w kontekście systemu IBM i . W sys.ts $ tabela w Oracle przechowuje informacje o każdej tabeli w bazie danych. Jest częścią słownika danych, który jest tworzony podczas tworzenia bazy danych Oracle .

Typowe atrybuty

Oto niewyczerpująca lista typowych pozycji znalezionych w słowniku danych dla kolumn lub pól:

  • Nazwa podmiotu lub formularza lub ich identyfikator (EntityID lub FormID). Grupa, do której należy to pole.
  • Nazwa pola, na przykład nazwa pola RDBMS
  • Wyświetlany tytuł pola. Domyślnie nazwa pola może być pusta.
  • Typ pola (ciąg, liczba całkowita, data itp.)
  • Wymiary, takie jak wartości minimalne i maksymalne, szerokość wyświetlania lub liczba miejsc dziesiętnych. Różne typy pól mogą różnie to interpretować. Alternatywą jest posiadanie różnych atrybutów w zależności od typu pola.
  • Kolejność wyświetlania pól lub kolejność tabulacji
  • Współrzędne na ekranie (jeśli jest to interfejs pozycyjny lub oparty na siatce)
  • Domyślna wartość
  • Typ monitu, taki jak lista rozwijana, pole kombi, pola wyboru, zakres itp.
  • Jest wymagane (Boolean) - Jeśli „prawda”, wartość nie może być pusta, zerowa ani zawierać tylko białych spacji
  • Tylko do odczytu (wartość logiczna)
  • Nazwa tabeli odwołań, jeśli jest to klucz obcy. Może być używany do list walidacyjnych lub list wyboru.
  • Różne programy obsługi zdarzeń lub odwołania do. Przykład: „on-click”, „on-validate” itp. Zobacz programowanie sterowane zdarzeniami .
  • Formatuj kod, na przykład wyrażenie regularne lub instrukcje „PIC” w stylu COBOL
  • Opis lub streszczenie
  • Charakterystyka lub specyfikacja indeksu bazy danych

Zobacz też

Bibliografia

Linki zewnętrzne