Skip to Content

Che cos'è l'astrazione dei dati in un DBMS?

L'astrazione dei dati consente agli sviluppatori e agli amministratori di visualizzare solo i dati necessari agli utenti front-end, poiché non devono avere accesso a un intero silo di dati. L'astrazione viene utilizzata in diverse aree di sviluppo software e il livello dei dati di un'applicazione separa il database dall'interfaccia utente. Lo scopo è quello di sfruttare una migliore scalabilità e meno refactoring durante i cambiamenti dell'infrastruttura.

Che cos'è un DBMS?

Un sistema di gestione dei database (DBMS) è uno strumento utilizzato come interfaccia tra un utente e i dati archiviati raw. Utilizzando un DBMS, gli amministratori possono visualizzare i dati memorizzati in un database, aggiornare o inserire nuovi dati ed eseguire query per recuperare i dati. Gli amministratori possono anche gestire elementi del database come procedure memorizzate, trigger, tabelle, indici e altri oggetti. Un DBMS viene spesso utilizzato per creare il database e gestirlo in un secondo momento.

Un esempio di DBMS è MySQL . MySQL è un database relazionale, pertanto gli amministratori utilizzano il DBMS per visualizzare oggetti di database, creare tabelle o eseguire query sui dati. Un'applicazione utilizza il DBMS per eseguire query sui dati o aggiungerli al database. Poiché MySQL è un database relazionale, i dati vengono memorizzati in tabelle con vincoli su ogni colonna per controllare il tipo di dati memorizzati.

Un altro esempio di DBMS è MongoDB . MongoDB è un database open source NoSQL che memorizza dati non strutturati. I dati vengono archiviati in documenti e gli amministratori possono memorizzare qualsiasi numero e tipo di elemento nel documento. Gli amministratori utilizzano il DBMS MongoDB per gestire la struttura del database e le applicazioni lo utilizzano per eseguire query e aggiungere dati.

Che cos'è l'astrazione dei dati?

L'astrazione dei dati è una funzione logica in un'applicazione per separare i dati raw dal front-end. In parole povere, il livello dei dati gestisce la connessione al database e lo interroga dal front-end. L'astrazione dei dati consente all'applicazione front-end di eseguire query sui dati indipendentemente da dove sono archiviati. Gli sviluppatori possono quindi sostituire i database di back-end senza rifattorizzare grandi sezioni del codice per connettersi e lavorare con un nuovo motore di database.

Ad esempio, supponiamo di utilizzare MongoDB in sviluppo fino a quando non sarà possibile determinare il tipo di dati necessari per lavorare. In questo modo, è necessario utilizzare MySQL in produzione. Il livello di astrazione dei dati gestisce la connessione al database e le query da MongoDB e MySQL senza influire sul codebase front-end. Gli utenti non sono consapevoli delle modifiche apportate ai motori di database, ma possono comunque ottenere le informazioni di cui hanno bisogno.

Livelli di astrazione dei dati

L'astrazione dei dati è un termine generico che gestisce diversi aspetti della gestione dei dati. Quando gli sviluppatori creano un'applicazione e lavorano con gli amministratori, ci sono tre livelli di astrazione: fisica, logica e visiva. Ecco una breve spiegazione di questi livelli:

  • Livello fisico/interno: Questo livello comprende l'infrastruttura che ospita il database, comprese le informazioni di rete per il server e la posizione del server. Ad esempio, i componenti fisici potrebbero essere una macchina virtuale cloud con CPU di livello medio e risorse di memoria.
  • Livello logico/concettuale: Il livello logico è il codice utilizzato per connettersi al livello fisico. Contiene la logica per connessioni, query e gestione degli errori. I livelli logici possono includere il codice da collegare a più database a seconda dei fattori di input.
  • Visualizzazione/livello esterno: L'applicazione front-end consente agli utenti di visualizzare i dati. Questo livello di astrazione è il più lontano dalla posizione di data storage raw, ma formatta e presenta i dati al visualizzatore in modo che possano essere utili.

Architetture di database multilivello

I livelli di astrazione possono essere livelli logici integrati nell'applicazione, ma possono anche essere posizionati su risorse fisicamente diverse. Lo scopo dell'astrazione multilivello è semplificare notevolmente la scalabilità di un singolo livello senza influire sugli altri livelli. L'architettura multilivello è anche denominata "architettura n-tier" in cui gli amministratori possono scegliere di avere più livelli per ciascun componente dell'applicazione.

È normale avere tre livelli in un'architettura multilivello: presentazione, dati e applicazione. Ecco una breve descrizione di questi livelli:

  • tier di dati: Questo tier memorizza i dati ed esegue il motore di database. Può essere su un server bare bones dedicato o su una macchina virtuale. I database possono anche funzionare in cluster in un data warehouse con pipeline di dati complesse a seconda dello scenario del caso d'uso.
  • tier applicazione: Questo tier gestisce l'applicazione. Ad esempio, se il front end è un'applicazione web personalizzata, un server web memorizza i file dell'applicazione ed li esegue. Gli utenti si connettono a questo server per eseguire l'applicazione.
  • tier di presentazione: Il tier di presentazione è diverso dal tier di applicazione anche se sembra simile. I tier delle applicazioni hanno la base di codice e la logica delle applicazioni, mentre il tier di presentazione è quello che l'utente vede. In un'applicazione web, il tier di presentazione è il CSS e l'HTML utilizzati per formattare e visualizzare il codice dell'applicazione per l'utente.

Quali sono i vantaggi dell'astrazione dei dati?

La separazione dei livelli di dati dall'applicazione front-end consente una scalabilità granulare delle risorse. Anche le modifiche al livello dei dati non influiscono sul front-end, pertanto l'astrazione dei dati limita il refactoring del codice quando viene utilizzato un altro motore di database o il livello dei dati cambia posizione.

Supponiamo, ad esempio, che la tua organizzazione decida di spostare il database nel cloud da posizioni on-premise. Solo il livello dati deve cambiare e non sono necessarie modifiche al codice dell'applicazione front-end. Gli amministratori possono scalare le risorse per il livello di dati senza la necessità di scalare le risorse per il livello di applicazione se non è necessario.

Conclusione

In un'applicazione enterprise, disporre di un livello di astrazione dei dati per connettersi al DBMS consente di eseguire lo scale-up o lo scale-down. È inoltre possibile apportare modifiche all'architettura del tier di dati nell'architettura senza dover apportare molte modifiche al codice di base. È possibile utilizzare più motori di database o spostare il database in una nuova posizione senza costi generali di gestione.

Mentre pianifichi la tua architettura di astrazione dei dati, dai un'occhiata a Pure Storage ® FlashArray™ per il block storage e il file storage unificato. Per lo storage nel cloud, dai un'occhiata al cloud block storage di Pure Storage.

Potrebbe interessarti anche...

01/2022
Data Storage in an Open Source World | Everpure
Open source databases have been on the scene for a number of years as rapidly-deployable databases at the peripheries of enterprises, serving as testing environments and website back-ends. Lately, however, they have been moving into mission-critical production environments in a big way. Today, an open source database is just as likely to be found behind a bank’s customer relationship management system as it is under the hood of the intensive research center of a university.
Thought leadership
9 pages

Esplora risorse e eventi principali

VIDEO
Guarda: Il valore di un Enterprise Data Cloud (EDC).

Charlie Giancarlo spiega perché il futuro è nella gestione dei dati, non dello storage. Scopri in che modo un approccio unificato trasforma le operazioni IT aziendali.

Guarda
RISORSA
Lo storage legacy non può alimentare il futuro.

I workload moderni richiedono velocità, sicurezza e scalabilità AI-ready. Il tuo stack è pronto?

Effettua la valutazione
DEMO DI PURE360
Esplora, scopri e prova Pure Storage.

Accedi a video e demo on demand per scoprire i vantaggi che Pure Storage ti offre.

Guarda le demo
THOUGHT LEADERSHIP
La corsa per l'innovazione

Le più recenti informazioni approfondite e opinioni di leader di settore che sono all'avanguardia nell'innovazione dello storage.

Maggiori informazioni
Il browser che stai usando non è più supportato.

I browser non aggiornati spesso comportano rischi per la sicurezza. Per offrirti la migliore esperienza possibile sul nostro sito, ti invitiamo ad aggiornare il browser alla versione più recente.

Personalize for Me
Steps Complete!
1
2
3
Thinking...