50 otázek a odpovědí na rozhovor s databází (DBMS)

Stáhnout PDF

1) Definujte databázi.

Předem uspořádaná sbírka obrázků známá jako data se nazývá databáze.

2) Co je to DBMS?

Systémy pro správu databází (DBMS) jsou aplikace určené zejména k tomu, aby umožňovaly interakci uživatelů s jinými aplikacemi.

3) Jaké různé druhy interakcí zajišťuje systém DBMS?

DBMS poskytuje různé druhy interakcí:

  • Definice dat
  • Aktualizace
  • Získávání
  • Správa

4) Rozdělte vývoj databázové technologie.

Vývoj databázové technologie je rozdělen na:

  • Struktura nebo datový model
  • Navigační model
  • SQL/ relační model

5) Kdo navrhl relační model?

Edgar F. Codd navrhl relační model v roce 1970.

6) Jaké jsou funkce databázového jazyka?

Jazyk databáze může také zahrnovat funkce jako:
Specifické pro DBMS Konfigurace a správa úložného stroje
Výpočty k úpravě výsledků dotazů výpočty, jako je sčítání, počítání, zprůměrování, seskupování, třídění a křížové odkazy Vynucení omezení Aplikační programovací rozhraní

7) Co dělají databázové jazyky?

Jako jazyky pro zvláštní účely mají:

  • Jazyk definice dat
  • Jazyk manipulace s daty
  • Dotazovací jazyk

8) Definujte databázový model.

Datový model, který v zásadě určuje, jak lze data ukládat, manipulovat s nimi a organizovat je a strukturu databáze logicky, se nazývá databázový model.

9) Co je to SQL?

Structured Query Language (SQL), což je standardní jazyk ANSI, aktualizuje databázi a příkazy pro přístup.

10) Získejte různé vztahy databáze.

Různé vztahy databáze jsou:

  • Jeden na jednoho: Jedna tabulka s nakresleným vztahem k jiné tabulce s podobným druhem sloupců.
  • One-to-many: Dvě tabulky, které mají vztah primárního a cizího klíče.
  • Many-to-many: Spojovací tabulka s mnoha tabulkami souvisejícími s mnoha tabulkami.

11) Definujte normalizaci.

Organizovaná data bez nekonzistentní závislosti a redundance v databázi se nazývají normalizace.

12) Získejte výhody normalizace databáze.

Výhody normalizace databáze jsou:

  • Žádné duplicitní položky
  • Šetří úložný prostor
  • Může se pochlubit výkonem dotazů.

13) Definujte denormalizaci.

Zvýšení výkonu databáze, přidání nadbytečných dat, které zase pomáhá zbavit se složitých dat, se nazývá denormalizace.

14) Definujte DDL a DML.

Správa vlastností a atributů databáze se nazývá Data Definition Language (DDL).

Manipulace s daty v databázi, jako je vkládání, aktualizace, mazání, je definována jako jazyk pro manipulaci s daty. (DML)

15) Zařaďte některé příkazy DDL.

Oni jsou:

VYTVOŘIT:

Create se používá v příkazu CREATE TABLE. Syntaxe je: | _+_ |

STÁŘÍ:

Pomáhá při úpravě existujícího objektu databáze. Jeho syntaxe je: | _+_ |

UPUSTIT:

Zničí stávající databázi, index, tabulku nebo zobrazení. Jeho syntaxe je: | _+_ |

16) Definujte Union All operator a Union.

Úplné záznamy dvou tabulek je operátor Union All. Jednoznačným záznamem dvou tabulek je Union.

17) Definujte kurzor.

Objekt databáze, který pomáhá při manipulaci s daty řádek po řádku představující sadu výsledků, se nazývá kurzor.

18) Zařaďte typy kurzorů.

Oni jsou:

  • Dynamický: odráží změny při posouvání.
  • Statický: neodráží změny při posouvání a funguje při nahrávání snímku.
  • Sada klíčů: je vidět modifikace dat bez odrazu nových dat.

19) Zařaďte typy kurzorů.

Jedná se o tyto typy kurzorů:

  • Implicitní kurzor: Deklarován automaticky, jakmile proběhne spuštění SQL bez vědomí uživatele.
  • Explicitní kurzor: Definováno PL/ SQL, které zpracovává dotaz ve více než jednom řádku.

20) Definujte dílčí dotaz.

Dotaz obsažený v dotazu se nazývá dílčí dotaz.

21) Proč se používá skupinová klauzule?

Skupinová klauzule používá k odvození agregovaných hodnot shromažďováním podobných dat.

22) Porovnat neklastrovaný a seskupený index

Oba mají B-stromovou strukturu, neseskupený index má datové ukazatele, které umožňují jedné tabulce mnoho neclusterových indexů, zatímco klastrovaný index je pro každou tabulku odlišný.

23) Definujte agregační funkce.

Funkce, které fungují proti kolekci hodnot a vracejících jednu hodnotu, se nazývají agregační funkce

24) Definujte skalární funkce.

Skalární funkce závisí na zadaném argumentu a vrací jedinou hodnotu.

25) Jaká omezení můžete použít při vytváření pohledů?

Použitá omezení jsou:

  • Zobrazení může mít pouze aktuální databáze.
  • Nejste zodpovědní za změnu jakékoli vypočítané hodnoty v konkrétním zobrazení.
  • O funkčnosti INSERT a DELETE rozhodují konstanty integrity.
  • Definice fulltextového indexu nelze použít.
  • Dočasná zobrazení nelze vytvořit.
  • Dočasné tabulky nemohou obsahovat zobrazení.
  • Žádné spojení s DEFAULT definicemi.
  • Spouště, jako například INSTEAD OF, je spojeno s pohledy.

26) Definujte „korelované poddotazy“.

„Korelovaný poddotaz“ je druh poddotazu, ale korelovaný poddotaz závisí na jiném dotazu na hodnotu, která je vrácena. V případě provedení se nejprve provede dílčí dotaz a poté korelační dotaz.

27) Definujte datové sklady.

Úložiště a přístup k datům z centrálního umístění za účelem přijetí strategického rozhodnutí se nazývá Data Warehousing. Podniková správa se používá ke správě informací, jejichž rámec je známý jako Data Warehousing.

28) Definujte Připojit se a zařaďte jeho typy.

Spojení pomáhají při vysvětlování vztahu mezi různými tabulkami. Umožňují také vybrat data ve vztahu k datům v jiné tabulce.

Jedná se o tyto typy:

  • VNITŘNÍ PŘIPOJENÍ: Prázdné řádky jsou ponechány uprostřed, zatímco jsou spojeny více než dvě tabulky.
  • VNĚJŠÍ PŘIPOJENÍ: Rozdělena na levé vnější spojení a pravé vnější spojení. Prázdné řádky jsou ponechány na určené straně spojením tabulek na druhé straně.

Další spojení jsou CROSS JOINs, NATURAL JOINs, EQUI JOIN a NON-EQUI JOIN.

29) Co rozumíte pod pojmem hon na index?

Rejstříky pomáhají zlepšovat rychlost a výkon dotazů databáze. Postup posílení shromažďování indexů je pojmenován jako Lov indexů.

30) Jak index hunting pomáhá při zlepšování výkonu dotazů?

Index hunting pomáhá při zvyšování rychlosti a výkonu dotazů databáze. K tomu jsou splněna následující opatření:

  • Optimalizátor dotazů se používá ke koordinaci studia dotazů s pracovní zátěží a na základě toho navrhovaného nejlepšího využití dotazů.
  • Index, distribuce dotazů spolu s jejich výkonem je sledován ke kontrole účinku.
  • Doporučuje se také vyladění databází na malou sbírku problémových dotazů.

31) Uveďte nevýhody dotazu.

Nevýhody dotazu jsou:

  • Žádné indexy
  • Uložené procedury jsou nadměrně kompilovány.
  • Spouště a procedury jsou bez ZAPNUTÉ NOCOUNT.
  • Složité spojování tvoří neadekvátně napsaný dotaz.
  • Kurzory a dočasné tabulky předvádějí špatnou prezentaci.

32) Vytvořte způsoby, jak efektivně kódovat transakce.

Způsoby efektivního kódování transakcí:

  • Vstup uživatele by během transakcí neměl být povolen.
  • Při procházení nesmí být otevírány transakce dat.
  • Transakce musí být co nejmenší.
  • Nižší úrovně segregace transakcí.
  • Během transakce je třeba přistupovat k nejmenším informacím o datech.

33) Co je výkonný plán?

Výkonný plán lze definovat jako:

  • SQL Server ukládá do mezipaměti shromážděnou proceduru nebo plán spuštění dotazu a poté je použije při následných voláních.
  • Důležitá funkce ve vztahu k vylepšení výkonu.
  • Plán provádění dat lze zobrazit textově nebo graficky.

34) Definujte B-stromy.

V logaritmickém čase je povolena datová struktura ve formě stromu, který ukládá seřazená data a vyhledávání, vkládání, sekvenční přístup a mazání.

35) Odlište skenování tabulky od indexového skenování.

Iterace přes všechny řádky tabulky se nazývá Skenování tabulky, zatímco iterace přes všechny položky indexu je definována jako Prohledávání indexu.

36) Co myslíte pojmem Fill Factor s ohledem na indexy?

Faktor výplně lze definovat jako hodnotu, která definuje procento zbývajícího místa na každé stránce na úrovni listu, která má být naplněna daty. 100 je výchozí hodnota Fill Factor.

37) Definujte fragmentaci.

Fragmentaci lze definovat jako databázovou funkci serveru, která podporuje kontrolu nad daty, která uživatel ukládá na úrovni tabulky.

38) Rozlišujte vnořenou smyčku, Hash připojení a sloučení připojení.

Vnořená smyčka (smyčka přes smyčku)

Vnější smyčka uvnitř vnitřní smyčky je vytvořena z menšího počtu záznamů a poté pro individuální vstup je vnitřní smyčka zpracována jednotlivě.

Např.

  • Vyberte col1.*, Col2.* Z coll, col2 kde coll.col1 = col2.col2;

Jeho zpracování probíhá tímto způsobem:

Pro smyčku i in (select * from col1)
Pro smyčku j in (vyberte * z col2, kde col2 = i.col1)
Zobrazí se výsledky;
Konec smyčky;
Konec smyčky;

Kroky vnořené smyčky jsou:

  • Identifikujte vnější (hnací) stůl
  • Přiřaďte vnitřní (poháněný) stůl k vnějšímu stolu.
  • Pro každý řádek vnější tabulky otevřete řádky vnitřní tabulky.

Vnořené smyčky se provádějí z vnitřní do vnější jako:

  • vnější_smyčka
  • inner_loop
  • Hash připojení

Při spojování velkých tabulek je upřednostňováno použití Hash Join.

Algoritmus Hash Join je rozdělen na:

  • Build: Je to hashovací tabulka s pamětí, která je přítomna na menší tabulce.
  • Sonda: tato hodnota hash tabulky hash je použitelná pro každý prvek druhého řádku.
  • Seřadit sloučení spojení

Dva nezávislé zdroje dat jsou spojeny v slučování spojením řazení. Jejich výkon je lepší ve srovnání s vnořenou smyčkou, když je objem dat dostatečně velký, ale není dobrý, protože hash se obecně připojuje. Plnou operaci lze rozdělit na části ze dvou:

Seřadit operaci připojení:

Získejte první řádek R1 ze vstupu1

Získejte první řádek R2 ze vstupu2.

Operace sloučení spojení:

'while' není přítomen na konci žádné smyčky.
pokud se R1 spojí s R2
další řádek má R2 ze vstupu 2
návrat (R1, R2)
jinak pokud R1 je další řádek získán z R1 ze vstupu 1
jiný
další řádek je získán z R2 ze vstupu 2
konec smyčky

39) Co je rozdělení databáze?

Rozdělení logické databáze na nezávislé kompletní jednotky pro zlepšení její správy, dostupnosti a výkonu se nazývá Rozdělení databáze.

40) Vysvětlete důležitost rozdělení.

Rozdělení jedné tabulky, která je velká na menší databázové entity, se logicky nazývá rozdělení databáze. Jeho výhody jsou:

  • Chcete -li dramaticky zlepšit výkon dotazů v situacích, kdy jsou většinou řádky, ke kterým je velký přístup, v jednom oddílu.
  • Přístup k velkým částem jednoho oddílu
  • Pro data, která se používají jen zřídka, lze použít pomalejší a levnější paměťová média.

41) Definujte databázový systém.

DBMS spolu s databází se nazývá databázový systém.

42) Co rozumíte pod výrazem Query Evaluation Engine?

Query Evaluation Engine provede instrukce nízké úrovně, které jsou generovány kompilátorem.

43) Definujte tlumočníka DDL.

Příkazy DDL jsou interpretovány a zaznamenány do tabulek nazývaných metadata.

44) Definujte atomicitu a agregaci.

Atomicita: Je to koncept všech nebo žádných, který umožňuje uživateli mít jistotu, že o neúplné transakce bude postaráno. Akce zahrnující neúplné transakce jsou v DBMS ponechány zpět.

Agregace: Shromážděné entity a jejich vztah jsou agregovány v tomto modelu. Používá se hlavně při vyjadřování vztahů v rámci vztahů.

45) Zařaďte různé fáze transakcí.

Různé transakční fáze jsou:

  • Fáze analýzy.
  • Opakovaná fáze
  • Zrušit fázi

46) Definujte objektově orientovaný model.

Kompilace objektů tvoří tento model, ve kterém jsou hodnoty uloženy v instančních proměnných, které jsou uvnitř objektu. Samotný objekt obsahuje tělesa objektu pro svou činnost, která se nazývají metody. Objekty obsahující stejný druh proměnných a metod se nazývají třídy.

47) Definujte entitu.

Lze jej definovat jako „věc“ s nezávislou existencí v reálném světě.

48) Co rozumíte pod typem entity?

Sada položek s podobnými atributy jsou typy entit.

49) Definujte sadu entit.

Kompilace všech záznamů jakéhokoli konkrétního typu záznamu v databázi se nazývá Sada entit.

50) Co myslíte rozšířením typu Entity?

Kompilace podobných typů entit do jednoho konkrétního typu, který je seskupen jako sada entit.