Nezávislost dat v DBMS: Fyzická a logická s příklady
Co je to datová nezávislost DBMS?
Data Independence je definována jako vlastnost DBMS, která vám pomáhá měnit schéma databáze na jedné úrovni databázového systému, aniž byste museli měnit schéma na další vyšší úrovni. Datová nezávislost vám pomáhá udržovat data oddělená od všech programů, které je využívají.
Tato uložená data můžete použít pro výpočty a prezentaci. V mnoha systémech je nezávislost na datech základní funkcí komponent systému.
Typy datové nezávislosti
In DBMS existují dva typy nezávislosti dat
- Fyzická datová nezávislost
- Logická nezávislost dat.
Úrovně databáze
Než se naučíme Data Independence, je důležité zopakovat si databázové úrovně. Databáze má 3 úrovně, jak je znázorněno na obrázku níže
- Fyzické/vnitřní
- Koncepční
- Externí
Zvažte příklad univerzitní databáze. Na různých úrovních bude implementace vypadat takto:
Typ schématu | Implementace |
---|---|
Externí schéma |
Zobrazit 1: Informace o kurzu(cid:int,cname:string) Zobrazit 2: studeninfo(id:int. jméno:string) |
Koncepční Shema |
Students(id: int, name: string, login: string, age: integer) Courses(id: int, cname:string, credits:integer) Enrolled(id: int, grade:string) |
Fyzikální schéma |
|
Fyzická nezávislost dat
Fyzická nezávislost na datech vám pomůže oddělit koncepční úrovně od vnitřních/fyzických úrovní. Umožňuje vám poskytnout logický popis databáze bez nutnosti specifikovat fyzické struktury. Ve srovnání s logickou nezávislostí je snadné dosáhnout fyzické nezávislosti dat.
Pomocí fyzické nezávislosti můžete snadno změnit struktury fyzického úložiště nebo zařízení s dopadem na koncepční schéma. Jakákoli provedená změna by byla absorbována mapováním mezi koncepční a vnitřní úrovní. Fyzické datové nezávislosti je dosaženo přítomností interní úrovně databáze a následně transformací z koncepční úrovně databáze na úroveň interní.
Příklady změn v rámci Fyzická nezávislost dat
Vzhledem k fyzické nezávislosti nebude mít žádná z níže uvedených změn vliv na koncepční vrstvu.
- Použití nového úložného zařízení, jako je pevný disk nebo magnetické pásky
- Úprava techniky organizace souborů v databázi
- Přepínání na různé datové struktury.
- Změna metody přístupu.
- Úprava indexů.
- Změny kompresních technik nebo hašovacích algoritmů.
- Změna umístění databáze z disku C na disk D
Logická nezávislost dat
Logical Data Independence je schopnost měnit koncepční schéma beze změny
- Vnější pohledy
- Externí API nebo programy
Jakákoli provedená změna bude absorbována mapováním mezi vnější a koncepční úrovní.
Ve srovnání s nezávislostí fyzických dat je náročné dosáhnout logické nezávislosti dat.
Příklady změn v rámci Logical Data Independence
Vzhledem k logické nezávislosti nebude mít žádná z níže uvedených změn vliv na externí vrstvu.
- Přidat/upravit/vymazat nový atribut, entitu nebo vztah je možné bez přepisování existujících aplikačních programů
- Sloučení dvou záznamů do jednoho
- Rozdělení existujícího záznamu na dva nebo více záznamů
Rozdíl mezi fyzickou a logickou nezávislostí dat
Logica Data Independence | Fyzická nezávislost dat |
---|---|
Logical Data Independence se týká především struktury nebo změny definice dat. | Jde především o ukládání dat. |
Je to obtížné, protože získávání dat závisí hlavně na logické struktuře dat. | Dá se snadno získat. |
Ve srovnání s logickou fyzickou nezávislostí je obtížné dosáhnout logické nezávislosti dat. | Ve srovnání s logickou nezávislostí je snadné dosáhnout fyzické nezávislosti dat. |
Pokud jsou z databáze přidána nebo odstraněna nová pole, musíte provést změny v aplikačním programu. | Změna fyzické úrovně obvykle nevyžaduje změnu na úrovni aplikačního programu. |
Modifikace na logických úrovních je významná vždy, když se změní logické struktury databáze. | Úpravy provedené na vnitřních úrovních mohou, ale nemusí být nutné ke zlepšení výkonu struktury. |
Zajímá se o koncepční schéma | Týká se vnitřního schématu |
Příklad: Přidat/upravit/vymazat nový atribut | Příklad: změna kompresních technik, hashovacích algoritmů, úložných zařízení atd |
Význam nezávislosti dat
- Pomůže vám zlepšit kvalitu dat
- Údržba databázového systému se stává dostupnou
- Prosazování standardů a zlepšování bezpečnosti databází
- V aplikačních programech nemusíte měnit datovou strukturu
- Umožněte vývojářům soustředit se na obecnou strukturu databáze, spíše než se starat o interní implementaci
- Umožňuje vám zlepšit stav, který je nepoškozený nebo nerozdělený
- Nesrovnalosti databáze jsou výrazně sníženy.
- Pro zlepšení výkonu systému je potřeba snadno provádět úpravy na fyzické úrovni.
Shrnutí
- Data Independence je vlastnost DBMS, která vám pomáhá měnit Schéma databáze na jedné úrovni databázového systému bez nutnosti měnit schéma na další vyšší úrovni.
- Dvě úrovně nezávislosti dat jsou 1) fyzická a 2) logická
- Fyzická nezávislost na datech vám pomůže oddělit koncepční úrovně od vnitřních/fyzických úrovní
- Logical Data Independence je schopnost měnit koncepční schéma beze změny
- Ve srovnání s nezávislostí fyzických dat je náročné dosáhnout logické nezávislosti dat
- Nezávislost dat Pomáhá zlepšit kvalitu dat