Fragen zu den Top 50-Datenbankinterviews (DBMS) & Antworten

Anonim

PDF Herunterladen

1) Datenbank definieren.

Eine vorab festgelegte Sammlung von Zahlen, die als Daten bezeichnet werden, wird als Datenbank bezeichnet.

2) Was ist DBMS?

Datenbankmanagementsysteme (DBMS) sind speziell entwickelte Anwendungen, die die Benutzerinteraktion mit anderen Anwendungen ermöglichen.

3) Welche verschiedenen Arten von Interaktionen werden von DBMS angeboten?

Die verschiedenen Arten von Interaktionen, die von DBMS angeboten werden, sind:

  • Datendefinition
  • Aktualisieren
  • Abruf
  • Verwaltung

4) Trennen Sie die Entwicklung der Datenbanktechnologie.

Die Entwicklung der Datenbanktechnologie gliedert sich in:

  • Struktur oder Datenmodell
  • Navigationsmodell
  • SQL / relationales Modell

5) Wer hat das relationale Modell vorgeschlagen?

Edgar F. Codd schlug das relationale Modell 1970 vor.

6) Was sind die Merkmale der Datenbanksprache?

Eine Datenbanksprache kann auch Funktionen enthalten wie: DBMS-spezifische Konfiguration und Verwaltung der Speicher-Engine. Berechnungen zur Änderung der Abfrageergebnisse durch Berechnungen wie Summieren, Zählen, Mitteln, Gruppieren, Sortieren und Querverweisen

7) Was machen Datenbanksprachen?

Als Spezialsprachen haben sie:

  • Datendefinitionssprache
  • Datenmanipulierungssprache
  • Abfragesprache

8) Definieren Sie das Datenbankmodell.

Ein Datenmodell, das grundlegend bestimmt, wie Daten gespeichert, bearbeitet und organisiert werden können, und die Struktur der Datenbank logisch, wird als Datenbankmodell bezeichnet.

9) Was ist SQL?

SQL (Structured Query Language) ist eine ANSI-Standardsprache, die die Datenbank aktualisiert, und Befehle für den Zugriff.

10) Tragen Sie die verschiedenen Beziehungen der Datenbank ein.

Die verschiedenen Beziehungen der Datenbank sind:

  • Eins-zu-eins: Einzelne Tabelle mit gezeichneter Beziehung zu einer anderen Tabelle mit ähnlichen Spalten.
  • Eins-zu-viele: Zwei Tabellen mit Primär- und Fremdschlüsselbeziehung.
  • Viele-zu-Viele: Junction-Tabelle mit vielen Tabellen, die sich auf viele Tabellen beziehen.

11) Normalisierung definieren.

Organisierte Daten ohne inkonsistente Abhängigkeit und Redundanz innerhalb einer Datenbank werden als Normalisierung bezeichnet.

12) Nutzen Sie die Vorteile der Normalisierung der Datenbank.

Vorteile der Normalisierung der Datenbank sind:

  • Keine doppelten Einträge
  • Spart Speicherplatz
  • Bietet die Abfrageleistungen.

13) Denormalisierung definieren.

Die Steigerung der Datenbankleistung und das Hinzufügen redundanter Daten, die wiederum zur Beseitigung komplexer Daten beitragen, wird als Denormalisierung bezeichnet.

14) Definieren Sie DDL und DML.

Das Verwalten von Eigenschaften und Attributen der Datenbank wird als Data Definition Language (DDL) bezeichnet.

Das Bearbeiten von Daten in einer Datenbank wie das Einfügen, Aktualisieren und Löschen wird als Datenmanipulationssprache definiert. (DML)

15) Tragen Sie einige Befehle von DDL ein.

Sie sind:

ERSTELLEN:

Create wird in der Anweisung CREATE TABLE verwendet. Die Syntax lautet:

CREATE TABLE [column name] ( [column definitions] ) [ table parameters]

ÄNDERN:

Es hilft bei der Änderung eines vorhandenen Datenbankobjekts. Die Syntax lautet:

ALTER objecttype objectname parameters.

FALLEN:

Es zerstört eine vorhandene Datenbank, einen Index, eine Tabelle oder eine Ansicht. Die Syntax lautet:

DROP objecttype objectname.

16) Union definieren Alle Betreiber und Union.

Die vollständige Aufzeichnung von zwei Tabellen ist der Operator Union All. Eine eindeutige Aufzeichnung von zwei Tabellen ist Union.

17) Cursor definieren.

Ein Datenbankobjekt, das bei der zeilenweisen Bearbeitung von Daten hilft, die eine Ergebnismenge darstellen, wird als Cursor bezeichnet.

18) Tragen Sie die Cursortypen ein.

Sie sind:

  • Dynamisch: Es spiegelt Änderungen beim Scrollen wider.
  • Statisch: Spiegelt keine Änderungen beim Scrollen wider und arbeitet an der Aufzeichnung von Schnappschüssen.
  • Keyset: Datenänderung ohne Reflexion neuer Daten wird angezeigt.

19) Tragen Sie die Cursortypen ein.

Die Cursortypen sind:

  • Impliziter Cursor: Wird automatisch deklariert, sobald die Ausführung von SQL ohne Kenntnis des Benutzers erfolgt.
  • Expliziter Cursor: Definiert von PL / SQL, das Abfragen in mehr als einer Zeile verarbeitet.

20) Unterabfrage definieren.

Eine in einer Abfrage enthaltene Abfrage wird als Unterabfrage bezeichnet.

21) Warum wird die Gruppenklausel verwendet?

Die Gruppenklausel verwendet Aggregatwerte, die durch Sammeln ähnlicher Daten abgeleitet werden.

22) Vergleichen Sie den nicht gruppierten und den gruppierten Index

Beide haben eine B-Baum-Struktur. Der nicht gruppierte Index verfügt über Datenzeiger, die einer Tabelle viele nicht gruppierte Indizes ermöglichen, während der gruppierte Index für jede Tabelle unterschiedlich ist.

23) Aggregatfunktionen definieren.

Funktionen, die gegen eine Sammlung von Werten arbeiten und einen einzelnen Wert zurückgeben, werden als Aggregatfunktionen bezeichnet

24) Skalarfunktionen definieren.

Die Skalarfunktion hängt vom angegebenen Argument ab und gibt den einzigen Wert zurück.

25) Welche Einschränkungen können Sie beim Erstellen von Ansichten anwenden?

Es gelten folgende Einschränkungen:

  • Nur die aktuelle Datenbank kann Ansichten haben.
  • Sie sind nicht verpflichtet, einen berechneten Wert in einer bestimmten Ansicht zu ändern.
  • Integritätskonstanten bestimmen die Funktionalität von INSERT und DELETE.
  • Volltextindexdefinitionen können nicht angewendet werden.
  • Temporäre Ansichten können nicht erstellt werden.
  • Temporäre Tabellen dürfen keine Ansichten enthalten.
  • Keine Zuordnung zu DEFAULT-Definitionen.
  • Trigger wie INSTEAD OF sind Ansichten zugeordnet.

26) Definieren Sie "korrelierte Unterabfragen".

Eine 'korrelierte Unterabfrage' ist eine Art Unterabfrage, aber die korrelierte Unterabfrage ist auf eine andere Abfrage für einen zurückgegebenen Wert angewiesen. Im Falle einer Ausführung wird zuerst die Unterabfrage und dann die korrelierte Abfrage ausgeführt.

27) Definieren Sie Data Warehousing.

Das Speichern und Zugreifen auf Daten vom zentralen Standort aus, um eine strategische Entscheidung zu treffen, wird als Data Warehousing bezeichnet. Die Unternehmensverwaltung wird zum Verwalten der Informationen verwendet, deren Framework als Data Warehousing bezeichnet wird.

28) Definieren Sie Join und tragen Sie seine Typen ein.

Joins helfen bei der Erläuterung der Beziehung zwischen verschiedenen Tabellen. Sie ermöglichen es Ihnen auch, Daten mit Bezug zu Daten in einer anderen Tabelle auszuwählen.

Die verschiedenen Typen sind:

  • INNERE VERBINDUNGEN: Leere Zeilen bleiben in der Mitte, während mehr als zwei Tabellen verbunden werden.
  • OUTER JOINs: Unterteilt in Left Outer Join und Right Outer Join. Leere Zeilen bleiben auf der angegebenen Seite, indem Tabellen auf der anderen Seite zusammengefügt werden.

Andere Joins sind CROSS JOINs, NATURAL JOINs, EQUI JOIN und NON-EQUI JOIN.

29) Was meinst du mit Indexjagd?

Indizes helfen bei der Verbesserung der Geschwindigkeit sowie der Abfrageleistung der Datenbank. Das Verfahren zum Erhöhen der Indexsammlung wird als Indexsuche bezeichnet.

30) Wie hilft die Indexsuche bei der Verbesserung der Abfrageleistung?

Die Indexsuche hilft bei der Verbesserung der Geschwindigkeit sowie der Abfrageleistung der Datenbank. Dazu werden folgende Maßnahmen getroffen:

  • Das Abfrageoptimierungsprogramm wird verwendet, um das Studium von Abfragen mit der Arbeitslast und der besten Verwendung der darauf basierend vorgeschlagenen Abfragen zu koordinieren.
  • Index, Abfrageverteilung und deren Leistung werden beobachtet, um den Effekt zu überprüfen.
  • Es wird auch empfohlen, Datenbanken auf eine kleine Sammlung von Problemabfragen abzustimmen.

31) Nennen Sie die Nachteile der Abfrage.

Die Nachteile der Abfrage sind:

  • Keine Indizes
  • Gespeicherte Prozeduren werden übermäßig kompiliert.
  • Trigger und Prozeduren sind ohne SET NOCOUNT ON.
  • Komplizierte Verknüpfungen bilden eine unzureichend geschriebene Abfrage.
  • Cursor und temporäre Tabellen zeigen eine schlechte Präsentation.

32) Geben Sie Möglichkeiten an, um Transaktionen effizient zu codieren.

Möglichkeiten zum effizienten Codieren von Transaktionen:

  • Benutzereingaben sollten während Transaktionen nicht zulässig sein.
  • Während des Surfens dürfen keine Transaktionen mit Daten geöffnet werden.
  • Transaktionen müssen so klein wie möglich gehalten werden.
  • Niedrigere Transaktionssegregationsstufen.
  • Während der Transaktion muss auf die wenigsten Dateninformationen zugegriffen werden.

33) Was ist ein Executive Plan?

Executive Plan kann definiert werden als:

  • SQL Server speichert die gesammelte Prozedur oder den Plan der Abfrageausführung zwischen und wird anschließend von nachfolgenden Aufrufen verwendet.
  • Ein wichtiges Merkmal in Bezug auf die Leistungssteigerung.
  • Der Datenausführungsplan kann textuell oder grafisch angezeigt werden.

34) B-Bäume definieren.

Eine Datenstruktur in Form eines Baums, in der sortierte Daten und Suchen, Einfügungen, sequentieller Zugriff und Löschvorgänge gespeichert sind, ist in logarithmischer Zeit zulässig.

35) Unterscheiden Sie den Tabellenscan vom Indexscan.

Das Iterieren über alle Tabellenzeilen wird als Tabellenscan bezeichnet, während das Iterieren über alle Indexelemente als Indexscan definiert wird.

36) Was meinen Sie mit dem Füllfaktorkonzept in Bezug auf Indizes?

Der Füllfaktor kann als der Wert definiert werden, der den Prozentsatz des linken Speicherplatzes auf jeder Seite auf Blattebene definiert, die mit Daten gepackt werden soll. 100 ist der Standardwert des Füllfaktors.

37) Fragmentierung definieren.

Fragmentierung kann als Datenbankfunktion des Servers definiert werden, die die Kontrolle über Daten fördert, die vom Benutzer auf Tabellenebene gespeichert werden.

38) Unterscheiden Sie Nested Loop, Hash Join und Merge Join.

Verschachtelte Schleife (Schleife über Schleife)

Eine äußere Schleife innerhalb einer inneren Schleife wird gebildet, die aus weniger Einträgen besteht, und dann wird für einzelne Einträge die innere Schleife einzeln verarbeitet.

Z.B

  • Wählen Sie col1. *, Col2. * Aus coll, col2 aus, wobei coll.col1 = col2.col2;

Die Verarbeitung erfolgt folgendermaßen:

Für i in (wählen Sie * aus Spalte1 aus) loopFor j in (wählen Sie * aus Spalte2 aus, wobei col2 = i.col1) loopResults werden angezeigt; Ende der Schleife; Ende der Schleife;

Die Schritte der verschachtelten Schleife sind:

  • Identifizieren Sie den äußeren (Fahr-) Tisch
  • Ordnen Sie die innere (angetriebene) Tabelle der äußeren Tabelle zu.
  • Greifen Sie für jede Zeile der äußeren Tabelle auf die Zeilen der inneren Tabelle zu.

Verschachtelte Schleifen werden von innen nach außen ausgeführt als:

  • Outer_loop
  • innere Schleife
  • Hash beitreten

Beim Verbinden großer Tabellen wird die Verwendung von Hash Join bevorzugt.

Der Algorithmus von Hash Join ist unterteilt in:

  • Build: Es handelt sich um eine Hash-Tabelle mit In-Memory, die in der kleineren Tabelle vorhanden ist.
  • Probe: Dieser Hashwert der Hash-Tabelle gilt für jedes zweite Zeilenelement.
  • Sort Merge Join

Zwei unabhängige Datenquellen werden beim Sort Merge Join zusammengeführt. Ihre Leistung ist im Vergleich zu verschachtelten Schleifen besser, wenn das Datenvolumen groß genug ist, aber nicht gut, da Hash-Joins im Allgemeinen vorhanden sind. Der vollständige Vorgang kann in Teile von zwei Teilen unterteilt werden:

Join-Operation sortieren:

Holen Sie sich die erste Zeile R1 von Eingang1

Holen Sie sich die erste Zeile R2 von Eingabe2.

Join-Operation zusammenführen:

'while' ist am Ende einer der beiden Schleifen nicht vorhanden. Wenn R1 mit R2 verbunden ist, erhält die nächste Zeile R2 von der Eingabe 2return (R1, R2). Andernfalls wird R1