Sommario[Nascondere][Spettacolo]
- 1. Cosa intendi per Database?
- 2. Cosa intendi per DBMS?
- 3. Spiegare i vari linguaggi DBMS.
- 4. Elenca alcuni vantaggi del DBMS?
- 5. Menzionare gli svantaggi dei sistemi basati su file convenzionali che i DBMS hanno su di essi.
- 6. Cosa intendi per proprietà ACID in DBMS?
- 7. Quale ruolo svolge SQL nel DBMS?
- 8. Lo spazio vuoto o lo zero contano come valori NULL nei database?
- 9. Che cos'è esattamente il data warehousing?
- 10. Cosa significa checkpoint DBMS?
- 11. Descrivi i vari livelli di astrazione dei dati DBMS.
- 12. Cosa significa per te "ottimizzazione delle query"?
- 13. Modellazione entità-relazione: che cos'è?
- 14. Cosa significano le espressioni "entità", "tipo di entità" e "insieme di entità" in un sistema di gestione di database?
- 15. Cosa sono le connessioni e che tipo di relazioni ci sono nel DBMS?
- 16. Che cos'è esattamente RDBMS?
- 17. Cosa significano i termini "intensione" ed "estensione" in un database?
- 18. Quali sono i molti metodi di normalizzazione e cosa significa il termine “normalizzazione”?
- 19. Descrivi un lucchetto. Dovrebbe essere spiegata la principale distinzione tra un blocco condiviso e un blocco esclusivo durante una transazione di database.
- 20. Cosa significano i termini “normalizzazione” e “denormalizzazione”?
- 21. Descrivere il partizionamento del database e il suo significato.
- 22. Cosa significano per te i termini "proattivo", "retroattivo" e "aggiornamento simultaneo"?
- 23. Cosa significa per te il termine "cursore"? Descrivi i molti tipi di cursori.
- 24. Descrivere le variazioni tra i modelli di database di rete e gerarchici.
- 25. Descrivi MongoDB.
- 26. Descrivi le variazioni tra un sistema DBMS a 2 e 3 livelli.
- 27. In un database, cosa significa il termine "hashing"?
- 28. Che ruolo svolge un amministratore di database in un DBMS?
- Conclusione
I dati possono essere trovati ovunque nel mondo! Nel mercato odierno, ogni giorno vengono prodotti oltre 2.5 quintilioni di byte di dati.
È essenziale che tutti noi analizziamo questi dati e forniamo i risultati richiesti utilizzando i sistemi di gestione dei database (DBMS). D'altra parte, la conoscenza del DBMS rende possibile lavorare come amministratore di database.
Dato che stai leggendo questo post sulle domande di intervista DBMS, presumo che tu sia già a conoscenza di questi dettagli. Qualsiasi professione nell'analisi dei dati deve iniziare con una solida conoscenza dei sistemi di gestione dei database (DBMS).
La creazione di sistemi di database efficaci richiede la capacità di organizzare, valutare, esaminare e dare un senso a vasti volumi di dati.
Ecco alcune domande del colloquio DBMS per aiutarti ad avere successo nel tuo prossimo colloquio di lavoro e ottenere la posizione che stavi sognando, sia che tu abbia già iniziato una carriera nell'analisi dei dati o che tu abbia appena iniziato.
Le principali domande dell'intervista DBMS sono state raccolte in un elenco a tuo vantaggio al fine di aiutarti a migliorare la tua intervista e rafforzare la tua comprensione dell'argomento.
1. Cosa intendi per Database?
Un database è una raccolta logicamente strutturata di dati che possono essere aggiornati, consultati e gestiti con facilità. Tutto ciò che viene generato con il comando create è un oggetto di database e i database spesso comprendono raccolte di tabelle o oggetti con voci e campi.
Una singola voce in una tabella è rappresentata da una tupla o da una riga. Le parti fondamentali dell'archiviazione dei dati, che forniscono dettagli su un aspetto specifico della tabella, sono un attributo o una colonna.
Un DBMS recupera i dati da un database utilizzando query fornite dall'utente.
2. Cosa intendi per DBMS?
I DBMS sono programmi software che aiutano a creare e gestire dati collegati logicamente.
In altre parole, un sistema di gestione del database (DBMS) ci fornisce un'interfaccia o uno strumento per eseguire una varietà di operazioni tra cui la creazione di un database, l'aggiunta di dati, la rimozione, la modifica dei dati e così via.
Il software chiamato sistema di gestione del database (DBMS) consente di archiviare i dati in modo più sicuro rispetto a un sistema basato su file.
3. Spiegare i vari linguaggi DBMS.
Di seguito sono riportati alcuni dei linguaggi utilizzati dai DBMS:
- DDL (Data Definition Language): in esso sono contenute le istruzioni necessarie per definire il database. CREATE, ALTER, DROP, TRUNCATE, RENAME, ecc. sono alcuni esempi.
- DML (Data Manipulation Language): Include i comandi necessari per lavorare con i dati nel database. Gli esempi includono SELECT, UPDATE, INSERT, DELETE, ecc.
- DCL (Data Control Language): include i comandi necessari per gestire i permessi degli utenti e i controlli del sistema di database. Ad esempio, CONCEDERE e REVOCA.
- TCL (Transaction Control Language): Include i comandi che devono essere utilizzati per gestire le transazioni del database. Ad esempio, COMMIT, ROLLBACK e SAVEPOINT.
4. Elenca alcuni vantaggi del DBMS?
- È possibile per numerosi utenti scambiare dati dallo stesso database contemporaneamente. Inoltre, questo tipo di condivisione consente agli utenti di rispondere rapidamente alle alterazioni dell'ambiente del database.
- È possibile per più utenti visualizzare contemporaneamente i dati dello stesso database.
- riduce la duplicazione in un database introducendo un sistema che unifica tutti i dati in un unico database.
- Quando necessario, i dati nel database possono essere ripristinati e un backup dei dati può essere programmato per essere creato automaticamente.
- Consente di modificare il formato dei dati mantenendo la composizione di tutti i processi applicativi in esecuzione.
5. Menzionare gli svantaggi dei sistemi basati su file convenzionali che i DBMS hanno su di essi.
Siamo costretti a scansionare ogni pagina in un tipico sistema basato su file poiché non c'è indicizzazione, il che rende l'accesso ai contenuti lento e lento.
Ridondanza e incoerenza sono gli altri problemi poiché i file spesso includono dati ridondanti e duplicati e la modifica di uno di essi li rende tutti incoerenti.
L'accesso ai dati è più impegnativo con i tradizionali sistemi basati su file poiché i dati sono disorganizzati. Un altro svantaggio è la mancanza di controllo della concorrenza, che impedisce a molte operazioni di lavorare sullo stesso file contemporaneamente e costringe invece un'azione a bloccare l'intera pagina.
I sistemi di gestione dei database hanno anche risolto i problemi con i tradizionali sistemi basati su file, inclusi i controlli di integrità, la separazione dei dati, l'atomicità, la sicurezza e altro ancora.
6. Cosa intendi per proprietà ACID in DBMS?
Le linee guida fondamentali che devono essere seguite per preservare l'integrità dei dati sono le caratteristiche ACID di un sistema di gestione di database. Questi sono cosa sono:
- Atomicità - Detto anche principio "tutto o niente", l'atomicità sostiene che ogni valutazione di una singola unità viene eseguita interamente o per niente.
- Coerenza: questa proprietà mostra che i dati nel database sono costanti sia prima che dopo ogni transazione.
- Isolamento: questa proprietà definisce che possono essere eseguite più transazioni contemporaneamente.
- Durabilità: questa proprietà garantisce che ogni transazione venga registrata nella memoria non volatile una volta completata.
7. Quale ruolo svolge SQL nel DBMS?
SQL sta per Structured Query Language e la sua funzione principale è quella di interagire con i database relazionali inserendo e aggiornando/modificando i dati.
8. Lo spazio vuoto o lo zero contano come valori NULL nei database?
No, un valore NULL è molto diverso da zero e da uno spazio vuoto poiché denota un valore che è assegnato, non conoscibile, non disponibile o non rilevante, in contrapposizione allo spazio vuoto e allo zero, che rappresentano ciascuno un carattere.
9. Che cos'è esattamente il data warehousing?
Il data warehousing è il processo di raccolta, estrazione, elaborazione e importazione di dati da diverse fonti per archiviarli in un unico database.
Un data warehouse può essere considerato come un repository centrale in cui i dati vengono utilizzati per l'analisi dei dati e i flussi provenienti da sistemi transazionali e altri database relazionali.
A data warehouse contiene una serie di dati storici di un'organizzazione utilizzati per migliorare il processo decisionale all'interno dell'azienda.
10. Cosa significa checkpoint DBMS?
Il metodo Checkpoint elimina tutti i registri precedenti dal sistema e li salva in modo permanente sul dispositivo di archiviazione.
Due tecniche che possono aiutare il DBMS a recuperare e mantenere le qualità ACID includono la conservazione delle pagine shadow e la conservazione di un registro di ogni transazione. I checkpoint sono importanti per un meccanismo di ripristino basato su log.
Il record del registro delle transazioni può essere utilizzato per recuperare tutti i dati salvati fino al momento dell'arresto anomalo dai checkpoint, che sono i punti minimi da cui il motore di database può eseguire il ripristino dopo un arresto anomalo.
11. Descrivi i vari livelli di astrazione dei dati DBMS.
L'astrazione dei dati nasconde informazioni non importanti all'utente per promuovere un'interazione più fluida. Esistono tre livelli di astrazione:
- Livello fisico: il livello più piccolo di astrazione descrive l'archiviazione fisica dei dati in memoria. Entrambi i metodi di accesso sequenziale e casuale possono essere utilizzati per accedere ai dati. Per organizzare i file vengono utilizzati alberi B+ e tecniche di hashing.
- Livello logico: il livello in cui i dati vengono conservati sotto forma di tabelle. Inoltre, le strutture di base vengono utilizzate per memorizzare le connessioni tra i diversi elementi.
- Livello di visualizzazione: è il più alto livello di astrazione. Solo una parte del database reale, rappresentato da righe e colonne, è a disposizione degli utenti. Sono possibili più visualizzazioni dello stesso database. Gli utenti non sono a conoscenza delle specifiche di archiviazione e implementazione.
12. Cosa significa per te "ottimizzazione delle query"?
Il passaggio di ottimizzazione della query trova la strategia di valutazione con il costo previsto più basso. Questa fase diventa rilevante quando sono disponibili diversi algoritmi e tecniche per eseguire lo stesso problema.
Di seguito sono riportati alcuni vantaggi dell'ottimizzazione delle query:
- L'output viene consegnato più rapidamente
- Riduce il complessità del tempo e lo spazio
- È possibile elaborare più richieste in un lasso di tempo più breve.
13. Modellazione entità-relazione: che cos'è?
Questo metodo di progettazione del database utilizza i diagrammi per rappresentare gli elementi reali nel mondo reale come entità e mostrare le loro relazioni. Questo metodo semplifica la comprensione dello schema da parte del team DBA.
14. Cosa significano le espressioni "entità", "tipo di entità" e "insieme di entità" in un sistema di gestione di database?
Entità: un oggetto del mondo reale è considerato un'entità se ha proprietà che corrispondono ai suoi attributi specifici. Ad esempio, uno studente, un dipendente o un insegnante simboleggia un'entità.
Tipo di entità: un tipo di entità è descritto come un gruppo di entità con caratteristiche simili. Un tipo di entità è rappresentato da una o più tabelle collegate in un database. È possibile pensare al tipo di entità o agli attributi come un tratto che identifica specificamente l'entità. Uno studente, ad esempio, simboleggia un oggetto con caratteristiche come l'ID studente, il nome dello studente, ecc.
Insieme di entità: tutte le entità in un database che appartiene a un determinato tipo di entità vengono raccolte insieme come un insieme di entità. Ad esempio, un insieme di entità è una raccolta di tutti gli studenti, i membri del personale, gli insegnanti e così via.
15. Cosa sono le connessioni e che tipo di relazioni ci sono nel DBMS?
In un DBMS, una relazione è una situazione in cui due entità sono collegate tra loro. In questo caso, la tabella della chiave esterna ha un riferimento alla chiave primaria dell'altra tabella.
L'elenco seguente include i numerosi tipi di relazione trovati in DBMS:
- Relazione uno-a-uno: questo termine viene utilizzato per descrivere una relazione tra una riga nella tabella A e una riga nella tabella B.
- Relazione uno-a-molti: utilizzata quando esiste una relazione tra una riga nella tabella A e molte righe nella tabella B.
- Relazione molti-a-molti: utilizzata quando un numero elevato di righe nella tabella A può essere connesso a un numero elevato di righe nella tabella B.
- Relazione autoreferenziale: utilizzata quando un record nella tabella A è connesso a un altro record nella stessa tabella.
16. Che cos'è esattamente RDBMS?
RDBMS, o sistemi di gestione di database relazionali, è l'abbreviazione di questi sistemi. Viene utilizzato per tenere traccia degli indici delle tabelle e dei record di dati.
Gli RDBMS sono un sottoinsieme di sistemi di gestione del database che utilizzano la struttura per individuare e recuperare informazioni su altri oggetti del database. Un sistema di gestione di database relazionali (RDBMS) semplifica l'aggiornamento, l'inserimento, la rimozione, la modifica e la gestione di un database relazionale.
La maggior parte delle volte, RDBMS utilizza il linguaggio SQL poiché è intuitivo e utilizzato regolarmente.
17. Cosa significano i termini "intensione" ed "estensione" in un database?
La principale distinzione tra intenzione ed estensione in un database è la seguente:
Intensione: l'intenzione, a volte indicata come schema del database, viene utilizzata per descrivere la descrizione del database. Viene stabilito durante la costruzione del database e per lo più non cambia.
Estensione: D'altra parte, l'estensione è una misura del numero totale di tuple nel database in qualsiasi momento. Quando le tuple vengono create, modificate o eliminate in un database, l'estensione, nota anche come snapshot del database, cambia continuamente di valore.
18. Quali sono i molti metodi di normalizzazione e cosa significa il termine “normalizzazione”?
La normalizzazione è il processo di strutturazione dei dati per prevenire la duplicazione e la ridondanza dei dati. Diverse fasi di normalizzazione si susseguono e sono indicate come forme normali. Le seguenti forme tipiche dipendono l'una dall'altra.
Le prime tre forme normali sono le seguenti.
NF-1, o First Normal Form, righe senza raggruppamenti ripetuti
2NF sta per Second Normal Form. Ogni valore di una colonna di supporto (non chiave) dipende dall'intera chiave principale.
Three-Normal-Form (3NF) dipende solo dalla chiave primaria e non dipende da altri valori di colonna (non chiave) di supporto.
Hai anche forme normali più elevate, come BCNF, oltre a queste.
BNCF – Una variante più sofisticata ed esigente di 3NF è indicata come 3.5NF. Una tabella dovrebbe essere in 3NF e aderire alla regola BCNF secondo cui A dovrebbe essere la super chiave della tabella per qualsiasi dipendenza funzionale A->B.
19. Descrivi un lucchetto. Dovrebbe essere spiegata la principale distinzione tra un blocco condiviso e un blocco esclusivo durante una transazione di database.
Un blocco del database è una misura di sicurezza che impedisce a due o più utenti del database di aggiornare un dato condiviso contemporaneamente.
Nessun altro utente o sessione del database può modificare i dati fino a quando il blocco non viene rilasciato su un determinato database quando un singolo utente o sessione del database ha ottenuto un blocco.
Blocco condiviso: la lettura di un elemento di dati richiede un blocco condiviso e molte transazioni possono mantenere un blocco sullo stesso elemento di dati con un blocco condiviso. Gli elementi di dati in un blocco condiviso possono essere letti da molte transazioni.
Blocco esclusivo: qualsiasi transazione che sta per eseguire un'operazione di scrittura ha un blocco, noto come blocco esclusivo. Questa forma di blocco impedisce transazioni multiple, prevenendo eventuali discrepanze nel database.
20. Cosa significano i termini “normalizzazione” e “denormalizzazione”?
Il processo di normalizzazione prevede la suddivisione dei dati in molte tabelle per ridurre la ridondanza. La normalizzazione comporta un maggiore utilizzo dello spazio su disco e semplifica la conservazione dell'integrità del database.
La denormalizzazione è l'opposto della normalizzazione poiché unisce le tabelle normalizzate in un'unica tabella per accelerare il recupero dei dati. Capovolgendo la normalizzazione, l'operazione JOIN ci consente di produrre una rappresentazione denormalizzata dei dati.
21. Descrivere il partizionamento del database e il suo significato.
Un database logico viene suddiviso in entità separate e autonome dal processo di partizionamento dei dati, che migliora la disponibilità, le prestazioni e la gestibilità.
Di seguito sono riportati alcuni motivi per cui il partizionamento del database è importante:
- Migliora l'efficienza delle query
- Consente di accedere a porzioni significative di una determinata partizione
- I dati possono essere archiviati in uno spazio di archiviazione lento e poco costoso.
22. Cosa significano per te i termini "proattivo", "retroattivo" e "aggiornamento simultaneo"?
Aggiornamento proattivo: prima che il database abbia effetto nel mondo reale, vengono apportate queste modifiche.
Aggiornamento retroattivo: dopo che un database è operativo nel mondo reale, vengono apportate queste modifiche retroattive.
Aggiornamento simultaneo: queste modifiche vengono apportate al database nello stesso momento in cui entrano in vigore nel mondo reale.
23. Cosa significa per te il termine "cursore"? Descrivi i molti tipi di cursori.
Un cursore è un oggetto di database che facilita la manipolazione dei dati riga per riga e rappresenta un set di risultati.
Questi sono i vari tipi di cursori:
- Cursore implicito: questo tipo di cursore viene immediatamente dichiarato non appena viene eseguito SQL. L'utente non viene informato della dichiarazione del cursore in questo caso.
- Cursore esplicito: poiché elabora una query in più righe, questo tipo di cursore è descritto da PL/SQL.
24. Descrivere le variazioni tra i modelli di database di rete e gerarchici.
I dati sono organizzati in nodi in quello che assomiglia a un albero in un paradigma di database gerarchico. Un nodo può avere un solo nodo padre collegato.
Di conseguenza, i dati di questo modello hanno una connessione uno a molti. Il Document Object Approach (DOM), che viene spesso utilizzato nei browser Web, è un ottimo esempio di questo modello.
Una variante migliorata di un modello gerarchico è il modello di database di rete. I dati sono disposti in modo simile a un albero in questo caso. Un nodo figlio, tuttavia, potrebbe essere collegato a diversi nodi padre.
Di conseguenza, si sviluppa un collegamento molti-a-molti tra i nodi di dati. I database di rete includono l'Integrated Data Store (IDS) e l'IDMS (Integrated Database Management System).
25. Descrivi MongoDB.
MongoDB è un database open source, non relazionale e non strutturato. I tuoi dati vengono archiviati in raccolte composte da singoli documenti nel nostro database orientato ai documenti.
Un documento in MongoDB è un oggetto JSON di notevoli dimensioni senza struttura o sintassi specifica. I documenti JSON sono rappresentati da MongoDB in un formato con codifica binaria chiamato BSON.
26. Descrivi le variazioni tra un sistema DBMS a 2 e 3 livelli.
Il termine "architettura a due livelli" si riferisce a un'architettura client-server in cui le applicazioni in esecuzione sui client interagiscono direttamente con i database in esecuzione sui server senza l'uso di alcun middleware.
Il design a 3 livelli include un livello aggiuntivo tra il client e il server per offrire agli utenti un'interfaccia utente grafica e rendere il sistema più sicuro e accessibile. In questa forma di progettazione, l'applicazione lato client interagisce con un'applicazione lato server, che quindi dialoga con il sistema di database.
27. In un database, cosa significa il termine "hashing"?
Una stringa di caratteri viene sottoposta a hash in una chiave o un valore che rappresenta la stringa originale ma è spesso fissata a una lunghezza inferiore. Poiché la ricerca di un elemento utilizzando una chiave hash più breve rispetto a un valore originale è più rapida, l'hashing viene utilizzato per indicizzare e recuperare oggetti nei database.
28. Che ruolo svolge un amministratore di database in un DBMS?
L'amministratore del database (DBA) ha i seguenti ruoli cruciali nel DBMS:
- Configurazione e installazione di database
- Migrazione dei dati
- Valutazione delle prestazioni
- Pianificazione e attuazione delle misure di sicurezza
- Recupero e archiviazione dei dati
- Troubleshooting
Conclusione
La raccolta di domande e risposte per interviste DBMS è stata fornita come riferimento in modo che i potenziali candidati possano comprendere queste domande in modo rapido e semplice.
In conclusione, abbiamo analizzato le principali domande dell'intervista DBMS che vengono poste di frequente nelle organizzazioni.
Lascia un Commento