Un database è una raccolta ricercabile di informazioni (dati) solitamente correlate, memorizzate elettronicamente. La funzione di un database non è solo quella di memorizzare i dati, ma anche di archiviarli in un formato che consenta una ricerca efficiente e un rapido recupero delle informazioni e di garantire la sicurezza dei dati.
Le funzioni di database sono procedure che eseguono particolari operazioni sui dati di un database. Le funzioni di database includono le operazioni CRUD di base, acronimo di create, read, update e delete data. In diversi linguaggi informatici, queste operazioni di base possono avere nomi diversi, ad esempio insert invece di create.
Un database è gestito da un sistema di gestione di database (DBMS) o da un sistema di gestione di database relazionale (RDBMS).
I sistemi di database sono una miscela di hardware fisico che memorizza i dati, software DBMS o RDBMS complessi e diversi linguaggi informatici per accedere e manipolare i dati.
Gli avvisi personalizzati e la visualizzazione dei dati consentono di identificare e prevenire rapidamente i problemi di salute e di prestazioni della rete.
Prima del primo database elettronico, i database non elettronici dell'epoca erano costituiti da schedari che archiviavano e organizzavano le informazioni come documenti cartacei e potevano essere indicizzati e ricercati in modo efficiente.
Charles Bachman progettò il primo database computerizzato, l'Integrated Data Store (IDS), all'inizio degli anni Sessanta. L'IDS introdusse il concetto di database navigabile, che aveva due modelli, gerarchico o di rete, entrambi non ricercabili. I database elettronici ricercabili sono stati introdotti negli anni '70 insieme al linguaggio di interrogazione strutturato (SQL), che ha fornito un modo per eseguire ricerche nei database. Negli anni 2000 è stato sviluppato il NoSQL per gestire la pletora di dati non strutturati presenti su Internet. Negli anni 2010, influenzati dalla crescente quantità di big data e dalla globalizzazione dell'Internet delle cose (IoT), è stato sviluppato un modello di database distribuito per consentire l'archiviazione dei dati in più luoghi fisici.
I database vengono utilizzati ovunque sia necessario memorizzare i dati. Esempi comuni di utilizzo dei database sono i sistemi bancari, le applicazioni industriali, i documenti governativi, la vendita al dettaglio, il commercio elettronico, la finanza personale e la maggior parte delle applicazioni online. Gli usi moderni dei database includono le applicazioni di social networking, mobile computing, cloud e data analytics. Questi tipi di applicazioni hanno influenzato la crescita di nuovi tipi di database e l'uso di sistemi e framework di database misti.
I database sono caratterizzati dal tipo di dati che memorizzano, dal metodo utilizzato per accedere ai dati o dal modo in cui li memorizzano. Tra gli esempi vi sono i database relazionali, in-memory, gerarchici, virtualizzati, colonnari, a grafo, a oggetti, distribuiti, in streaming, a serie temporali e cloud. I database possono anche essere classificati per funzione o settore, come i database personali, commerciali, per utenti finali, blockchain, operativi e di rete.
Il tipo di dati da memorizzare e a cui accedere determina il tipo di database da utilizzare in un'applicazione. I dati memorizzati dai database sono di due tipi: strutturati e non strutturati. I dati strutturati hanno una lunghezza e un formato definiti, ad esempio numeri, date e stringhe. Vengono memorizzati in un database relazionale e recuperati con un software chiamato SQL. I dati non strutturati comprendono raccolte multimediali e di documenti. Sono archiviati in database non relazionali e sono accessibili principalmente tramite NoSQL. La differenza principale tra database relazionali e non relazionali è che i primi definiscono esplicitamente le relazioni tra gli oggetti di dati.
Nei database relazionali, i dati sono organizzati in righe e colonne in tabelle separate. La struttura dei dati è separata dalla struttura fisica e i dati possono essere localizzati utilizzando un algoritmo di ricerca basato su identificatori unici di relazione, chiamati chiavi. I database relazionali utilizzano gli schemi, che sono schemi che descrivono il modo in cui i dati sono organizzati. I database relazionali sono progettati per consentire la normalizzazione, ossia che ogni dato sia memorizzato in un solo posto. Quasi l'opposto di un database gerarchico, un database relazionale utilizza un modello di relazioni molti-a-molti. I database relazionali sono orientati alle righe, mentre i database non relazionali sono orientati alle colonne.
Un database relazionale è chiamato anche database SQL perché utilizza il linguaggio di interrogazione SQL per trovare, recuperare, modificare e cancellare i dati.
I linguaggi dei database possono essere classificati come linguaggi di definizione dei dati o linguaggi di manipolazione dei dati. I linguaggi di manipolazione dei dati comprendono i linguaggi di interrogazione dei dati e i linguaggi procedurali. I linguaggi procedurali supportano processi di codifica come l'iterazione e la ricorsione.
SQL è un linguaggio di definizione dei dati, non un linguaggio procedurale. SQL è spesso incorporato in un linguaggio host di uso generale, come Cobol, C++, Python o Java, che può eseguire funzioni di iterazione e ricorsione.
Esempi popolari di database relazionali sono Microsoft SQL Server, MySQL, Oracle Database e IBM DB2.
L'utilizzo di grandi volumi di dati non strutturati nelle applicazioni moderne ha dato il via allo sviluppo dei database non relazionali. I database non relazionali sono stati progettati per soddisfare i requisiti di maggiore scalabilità. I database non relazionali sono chiamati database NoSQL per distinguerli dai database SQL, o relazionali, e perché non utilizzano il linguaggio di interrogazione SQL. NoSQL è l'acronimo di not SQL, ma può anche significare not only SQL.
Diversi tipi di database NoSQL hanno i propri linguaggi di interrogazione, molti dei quali si basano vagamente su SQL. Cassandra Query Language (CQL) è usato per interrogare i database Cassandra. MongoDB dispone di driver che gli permettono di interagire con diversi linguaggi, come Java o C#, e ha un proprio linguaggio di shell interno, MongoDB Query Language (MQL), basato su JavaScript.
Il termine data store si riferisce al modello di archiviazione utilizzato da un database non relazionale, ad esempio i dati possono essere archiviati come documenti, immagini o grafici. I database NoSQL si basano su quattro modelli principali di data store: key-value store, document store, column-oriented store e graph store. Modelli meno comuni e più specializzati sono gli archivi di serie temporali, di oggetti e di indici esterni.
Una coppia chiave-valore, o coppia nome-valore, è un'unità di dati identificata da un nome e dal valore del contenuto, ad esempio chiave=paese e valore=bolivia. Utilizzando le coppie chiave-valore, gli sviluppatori possono creare strutture di dati aperte e altamente scalabili che non sono vincolate da dimensioni o tipo e sono facilmente partizionabili per consentire interrogazioni più rapide. I database basati sul modello chiave-valore sono considerati la versione più semplice dei database NoSQL. Esempi di database chiave-valore sono Redis e Amazon DynamoDB.
Un database NoSQL è spesso indicato genericamente come un database chiave-valore. Alcuni database NoSQL possono essere considerati database ibridi chiave-valore. Ad esempio, Cassandra di Facebook è un database a valore-chiave e orientato alle colonne. Il database NoSQL di Oracle è un database distribuito chiave-valore.
Un database basato sul modello del document store è progettato per archiviare in modo efficiente i documenti come singola istanza. Le aziende del settore dei media, come le case editrici di giornali e i sistemi di knowledge base, utilizzano i database document store per archiviare articoli, sinossi, blog e post. Un database document-store memorizza i documenti nella loro interezza, rendendo ogni documento facilmente accessibile. Se i documenti fossero archiviati in un database relazionale, un tipico articolo dovrebbe essere suddiviso in parti logiche composite - ad esempio informazioni sull'autore, contenuti e commenti dei lettori - e poi incrociato in base a una chiave come l'autore. Esempi di database documentali sono MongoDB ed Elasticsearch.
I database relazionali sono orientati alle righe, mentre i database non relazionali sono orientati alle colonne. I database basati sul modello orientato alle colonne memorizzano le colonne multiple che si trovano nelle righe di un database relazionale separatamente con ID individuali. Un database orientato alle colonne è in grado di scansionare solo le colonne a cui è interessato quando cerca i dati, mentre i database orientati alle righe devono scansionare tutte le colonne di un record quando filtrano i dati su una colonna specifica. Un esempio di database orientato alle colonne è Cassandra di Facebook.
I Graph Store si riferiscono a collezioni di relazioni. I database basati sul modello graph store sono molto utilizzati dalle piattaforme di social media, in quanto sono progettati per collegare i nodi con più bordi, creando cluster di informazioni correlate. In un database a grafo, un nodo è un'entità di dati primaria, ad esempio una persona o un'azienda. Gli edge descrivono le relazioni che un nodo ha con altri nodi e edge, ad esempio i clienti di un'azienda, le filiali, il personale, i prodotti, ecc. Gli edge in un database a grafo sono essi stessi nodi, collegati a diversi edge. Un esempio di database a grafo è Neo4j.
Un database centralizzato opera in un'unica sede, ad esempio un database di un campus universitario. Un database centralizzato non è la stessa cosa di un gestore di database centralizzato. Le aziende moderne utilizzano sistemi di gestione di database centralizzati che consistono in più database per archiviare e gestire dati eterogenei. La gestione centralizzata dei database aiuta le organizzazioni a garantire la sicurezza, l'integrità, la coerenza e l'efficienza operativa dei dati.
In un ambiente cloud, un database cloud è un servizio di database. Un'organizzazione può acquistare uno spazio virtuale da un provider cloud su cui distribuire il proprio database. In alternativa, un'organizzazione può acquistare un abbonamento per un'offerta di database come servizio (DBaaS), che può includere servizi di gestione, manutenzione e funzionamento del database. Il DBaaS è l'equivalente del software come servizio (SaaS). I database cloud sono tipicamente utilizzati da organizzazioni con elevati volumi di traffico e i cui clienti sono distribuiti geograficamente. Esempi di database cloud sono MySQL, IBM Db2 e Microsoft SQL Server.
Un database colonnare è un DBMS che memorizza i dati in colonne anziché in righe. I database a colonne sono utilizzati principalmente nelle applicazioni analitiche, in quanto i dati possono essere consultati molto rapidamente, e nei data warehouse. Nei database basati su righe, le righe sono memorizzate in blocchi contigui su un disco. Nei database a colonne, le colonne sono memorizzate in blocchi contigui su un disco. Quando un'azienda ha bisogno di recuperare e analizzare i dati solo per una colonna o un gruppo specifico di colonne e vuole ignorare tutti gli altri dati di un record, i database a colonne sono più efficienti. Esempi di DBMS orientati alle colonne sono ClickHouse, MariaDB e Apache Cassandra.
In un database distribuito, i dati sono archiviati in più sedi fisiche o su più computer nella stessa sede fisica. Per gli utenti, il database appare come un unico database.
I file piatti sono file di testo in cui le voci dei dati sono solitamente separate da delimitatori come le virgole. I file piatti sono file di archiviazione dati non relazionali, ma i dati possono essere integrati con quelli di database relazionali utilizzando applicazioni di gestione di database come Microsoft Access. Un esempio comune di file piatto è un file CSV (comma-separated values).
In un database gerarchico, i dati sono memorizzati in una struttura ad albero. I dati vengono recuperati da un database gerarchico attraversando la struttura ad albero dall'alto verso il basso utilizzando dei puntatori.
Un database gerarchico utilizza un modello di relazione uno-a-molti, in cui un nodo padre può avere più nodi figli. Un esempio di modello di archiviazione gerarchica dei dati è il modo in cui cartelle e file sono presentati nei gestori di file come Windows Explorer.
Un database in-memory (IMDB) memorizza i dati su dispositivi di memoria volatile o nella memoria a breve termine del computer, o RAM, consentendo un accesso più rapido ai dati. Tradizionalmente, se si perde l'alimentazione, i dati vanno persi. Nei sistemi moderni, la tecnologia della memoria non volatile ad accesso casuale consente la manutenzione dei dati in memoria anche in caso di interruzione dell'alimentazione. Uno dei modi per ottenere questo risultato è il failover automatico.
Negli anni '70, quando sono stati creati i database relazionali, la memoria era costosa. Oggi le applicazioni possono essere eseguite in modo efficiente utilizzando gli IMDB senza perdere alcuna informazione in caso di interruzione dell'alimentazione. Le applicazioni che richiedono prestazioni elevate e bassa latenza - come i giochi online, l'elaborazione geospaziale, l'elaborazione dell'apprendimento automatico, l'analisi dei dispositivi medici - possono utilizzare IMDB non volatili insieme ai database basati su disco.
Molti database includono opzioni in-memory, come memcached e Redis. La piattaforma Apache Ignite crea un livello in-memory sopra qualsiasi database esistente. Esempi di IMDB "puri" sono SQLite, Exasol, SAP HANA e IBM solidDB.
Come XML, JavaScript Object Notation (JSON) è descritto come un database rudimentale. JSON è un formato aperto per l'interscambio di dati che viene utilizzato per descrivere i dati. È anche un tipo di database di documenti che può essere utilizzato per memorizzare cataloghi su siti di e-commerce e per fornire aggiornamenti in tempo reale su siti web.
TaffyDB è un file system piatto che utilizza JSON per memorizzare i dati.
Un database di rete consente di associare i record di più tabelle a un singolo record di un'altra tabella. A differenza di un database relazionale tradizionale, basato su chiavi, un database di rete è basato su puntatori.
Un modello di database di rete è considerato una versione avanzata di un modello di dati gerarchico, poiché utilizza una struttura a grafo anziché ad albero. Nei database di rete, i nodi genitori sono chiamati occupanti e i nodi figli sono chiamati membri. In un database di rete, un nodo membro può avere più di un nodo occupante. I nodi occupanti e membri formano un insieme. Le entità in questo modello hanno una relazione molti-a-molti.
Un database orientato agli oggetti memorizza i dati sotto forma di oggetti, come si usa nella programmazione orientata agli oggetti. Nei sistemi orientati agli oggetti, gli oggetti possono essere persistiti. I dati persistenti sono dati che vengono conservati per un periodo più lungo di quello per cui sono stati inizialmente creati e memorizzati su dispositivi di archiviazione non volatili. Un database orientato agli oggetti utilizza un modello di relazioni molti-a-molti. L'accesso ai dati avviene tramite puntatori. Esempi di database orientati agli oggetti sono Magma e il database mobile di Realm.
I database relazionali a oggetti sono database ibridi che combinano le caratteristiche dei database relazionali con quelle dei database orientati agli oggetti. La caratteristica distintiva dei database relazionali a oggetti è il supporto di tipi aggregati, ad esempio liste e insiemi. Un esempio è rappresentato da una colonna chiamata indirizzo in un database relazionale, che può includere un elenco di informazioni correlate, come la residenza , le case di villeggiatura, ecc. Esempi di sistemi di gestione di database relazionali a oggetti (ORDBMS) sono PostgreSQL e Oracle.
Un sistema di database OLTP si occupa di transazioni multiple eseguite simultaneamente da più utenti, ad esempio nelle applicazioni di e-commerce. Un database OLTP gestisce solitamente piccole quantità di dati alla volta, ad esempio l'esecuzione di una transazione bancaria online, ma deve supportare un gran numero di utenti. I database spesso utilizzati per l'OLTP sono MySQL, InterSystems Caché e VoltDB, un database NewSQL conforme ai principi di atomicità, consistenza, isolamento e durata (ACID).
Qualsiasi supporto fisico in grado di memorizzare dati è un database, compreso il disco rigido di un computer. Tuttavia, i database utilizzati e discussi nell'ambito dell'IT sono solitamente modelli complessi di archiviazione dei dati.
Un esempio di archiviazione di dati personali è rappresentato dai dati memorizzati su dispositivi personali, come personal computer, telefoni cellulari, tablet e dischi rigidi esterni. Questi dati sono accessibili e gestiti da applicazioni come Microsoft Office, applicazioni di sistema che memorizzano la configurazione e i dati degli utenti e applicazioni funzionali.
I dispositivi personali utilizzano anche IMDB come la RAM per migliorare le prestazioni del dispositivo.
Come JSON, un database Extensible Markup Language (XML) è descritto come un database rudimentale. XML è un tipo di database di documenti, nel senso che i file XML sono memorizzati con l'estensione .xml, possono memorizzare dati conformi al formato XML e possono essere interrogati utilizzando uno strumento di interrogazione linguistica come XQuery.
Le caratteristiche uniche dei database relazionali e non relazionali nelle moderne applicazioni si sono fuse in alcune implementazioni di database per creare sistemi di database a più modelli. Ad esempio, OrientDB è un database a grafo NoSQL i cui nodi sono documenti.
Un database che integra caratteristiche di database relazionali e non relazionali è un altro tipo di database ibrido, ad esempio NewSQL.
Un terzo tipo di database ibrido è un composito di un IMDB e di un database su disco. In questo tipo di database ibrido, i dati possono essere archiviati nella memoria principale, su disco o utilizzando entrambi i meccanismi di archiviazione. Un esempio di questo tipo di database ibrido è Altibase.
Notifiche in tempo reale significano una risoluzione più rapida dei problemi, in modo da poter intervenire prima che si verifichino problemi più gravi.
Le funzioni dei DBMS sono componenti software che gestiscono gruppi di attività correlate. Le funzioni dei DBMS includono moduli di dizionario, archiviazione, trasformazione, presentazione, sicurezza, controllo degli accessi, backup e ripristino, integrità dei dati, accesso, interfaccia, concorrenza e gestione delle transazioni.
Ad esempio, un DBMS memorizza elementi di dati e metadati in un dizionario di dati (DD). Un DBMS consente di memorizzare non solo i dati, ma anche gli elementi ad essi correlati, come le regole di convalida, le definizioni di moduli e rapporti e gli schemi che descrivono la struttura del database. Le funzioni del DBMS sono interconnesse, ad esempio un modulo di controllo degli accessi gestisce l'accesso ai dati; il controllo degli accessi multipli consente a più utenti di accedere al database senza compromettere l'integrità dei dati.
I dati vengono memorizzati, acceduti e gestiti in modo diverso nei RDBMS e nei DBMS. In un RDBMS, i dati sono memorizzati in righe di tabelle e vi si accede utilizzando un identificatore univoco di riga chiamato chiave primaria. Un RDBMS supporta la normalizzazione e i database distribuiti e supporta più utenti. In un DBMS, i dati sono memorizzati in forma navigabile o gerarchica. Un DBMS non supporta la normalizzazione o i database distribuiti e supporta solo utenti singoli.
Non esiste una specifica formale per ciò che costituisce un database, ma esistono diversi standard de facto che forniscono linee guida per la progettazione di database conformi alle normative internazionali sui dati.
Una delle caratteristiche fondamentali dei database, ovvero la consistenza, si basa su uno dei due modelli teorici: il modello ACID (atomicità, consistenza, isolamento e durata) e il modello BASE (fondamentalmente disponibile, stato morbido, consistenza finale).
Un database che utilizza il modello ACID garantisce che i dati siano memorizzati in modo sicuro e coerente, cioè quando un processo memorizza i dati e segnala che i dati sono stati memorizzati, non c'è alcuna possibilità che i dati siano stati persi lungo il percorso. I database relazionali adottano sempre il modello ACID e alcuni database grafici NoSQL sono progettati per rispettare il modello ACID.
Un database che utilizza il modello BASE si concentra sull'alta disponibilità dei dati per scopi di scalabilità. I database non relazionali sono solitamente progettati per rispettare il modello BASE.
La normalizzazione è il processo di organizzazione dei dati in un database. La normalizzazione comporta la creazione di tabelle e la mappa delle relazioni tra le tabelle secondo regole specifiche volte a proteggere i dati, a eliminare la ridondanza (duplicazione) e a garantire l'assenza di anomalie. Un esempio di anomalia tipica che la normalizzazione previene è la creazione di informazioni su una vendita senza aver prima creato informazioni sul prodotto da vendere.
La persistenza dei dati garantisce che qualsiasi informazione salvata possa essere recuperata anche se il supporto di memorizzazione o il sistema che utilizza i dati viene disconnesso. Un esempio di persistenza è la possibilità per un utente di recuperare le finestre di navigazione recenti dopo un arresto del computer.
La scalabilità è la capacità di un database di gestire la crescita, come l'aumento dei volumi di dati e degli utenti. Ad esempio, le reti di social media devono essere molto scalabili per gestire le persone che si collegano costantemente a nuove persone, pubblicano messaggi e caricano dati.
L'integrità dei dati si riferisce all'accuratezza, alla completezza, alla coerenza, alla sicurezza e alla protezione dei dati. L'integrità dei dati è essenziale per la conformità alle normative, come il Regolamento generale sulla protezione dei dati (GDPR).
La cardinalità si riferisce alla relazione tra i dati di una tabella del database e quelli di un'altra tabella ed è correlata al concetto di integrità dei dati. Un esempio di cardinalità è la specificazione se la relazione tra i valori dei dati è molti a molti, uno a uno o molti a uno, ad esempio una persona può avere un solo numero di previdenza sociale. La cardinalità è importante perché influisce sull'efficienza con cui vengono eseguite le interrogazioni sui database per recuperare le informazioni.
I database relazionali offrono una maggiore coerenza e affidabilità rispetto ai database non relazionali e riducono la ridondanza dei dati. I database relazionali forniscono un facile accesso ai dati attraverso un modello di query semplice e collaudato, un'elevata sicurezza, integrità dei dati e normalizzazione.
I database relazionali supportano le proprietà ACID, garantendo transazioni affidabili. Supportano query complesse e offrono un'indicizzazione illimitata.
I database non relazionali offrono prestazioni migliori ed elaborano volumi elevati di dati più velocemente dei database relazionali. Offrono un'elevata disponibilità e non richiedono uno schema.
I database non relazionali utilizzano la scalabilità orizzontale, ovvero si espandono aggiungendo altri nodi. La scalabilità dei database non relazionali è più conveniente rispetto a quella dei database relazionali.
I database non relazionali possono memorizzare e gestire tipi di dati diversi, come i feed di notizie, i flussi audio e video e i dati delle applicazioni mobili, senza modificare l'architettura.
Rispetto ad altri tipi di database, i database relazionali sono lenti e consumano più spazio in memoria a causa del modo in cui memorizzano fisicamente i dati. Il processo di normalizzazione può richiedere molti join (mappatura delle tabelle) che rallentano anche la velocità di recupero dei dati.
I database relazionali utilizzano la scalabilità verticale, ovvero si espandono aumentando la capacità dei nodi esistenti. La scalabilità dei database relazionali è più costosa di quella dei database non relazionali.
I database relazionali possono diventare complessi quando ci sono molte tabelle e può diventare sempre più complicato interagire con altri sistemi altrettanto complessi.
I database relazionali sono più costosi da mantenere e non supportano i dati non strutturati. Inoltre, hanno limiti alla lunghezza dei campi.
I database non relazionali non utilizzano un linguaggio di interrogazione standardizzato e i linguaggi personalizzati sviluppati dai fornitori spesso non sono potenti come SQL. Non hanno a disposizione gli stessi strumenti dei database relazionali.
I database non relazionali non sono sicuri come quelli relazionali. Non hanno integrità dei dati integrata né supportano ACID, ma si affidano alla "consistenza eventuale".
I database NoSQL praticano un livello di normalizzazione inferiore rispetto ai database SQL e quindi possono contenere ridondanze di dati.
C'è poca uniformità tra i database non relazionali o interfacce standardizzate per comunicare tra loro.
Due delle ragioni principali per cui si utilizza un database sono l'accesso rapido ed efficiente ai dati e la loro persistenza. Le applicazioni moderne - dai siti di social network, alle previsioni del tempo, all'intelligenza artificiale - richiedono enormi quantità di dati elaborati in tempo reale. Sebbene, statisticamente, i database relazionali siano ancora i più utilizzati, i moderni sistemi di database spesso integrano una varietà di database open source o proprietari, DBMS, storage fisico e virtuale e framework di database.
NewSQL è un sistema di gestione di database relazionali che ha le proprietà scalabili di un database NoSQL. I database NewSQL supportano ACID, OLTP, scalabilità verticale e orizzontale, query complesse, più tipi di store e sistemi di database distribuiti.
Un esempio di sistema di database moderno e combinato è Spanner di Google. Spanner è un servizio distribuito di gestione e archiviazione di database SQL, ma di solito viene definito un database NewSQL ospitato nel cloud. I database relazionali supportano l'SQL e sono più coerenti dei database NoSQL, ma non sono scalabili come i database NoSQL. Spanner è un database relazionale ma offre il tipo di funzionalità per cui sono stati progettati i database NoSQL, come la scalabilità globale, le prestazioni ottimizzate grazie allo sharding automatico, l'alta disponibilità e la latenza minima. Lo sharding è il processo di distribuzione dei dati da un database sovraccarico in più database più piccoli per distribuire il carico.
Altri esempi di prodotti e servizi di database NewSQL sono MemSQL, Infobright, ScaleBase e TransLattice.
PRTG Network Monitor è un software di monitoraggio di rete completo e tiene traccia dell'intera infrastruttura IT.
Il monitoraggio dei database garantisce prestazioni ottimali dei dati e l'uso delle risorse. Ad esempio, le prestazioni di SQL si misurano in base alla velocità e all'efficienza delle query SQL e la pianificazione dello storage aiuta a stimare la capacità reale necessaria prima che vengano raggiunti i limiti di storage.
Il monitoraggio proattivo dei database identifica i potenziali problemi prima che diventino gravi violazioni della sicurezza ed è obbligatorio per conformarsi alla legislazione sulla privacy e sulla protezione dei dati, come il GDPR.
Le prestazioni di un database hanno un'influenza diretta sul tempo di attività, sulla velocità di caricamento delle pagine web, sulle prestazioni geografiche, sull'utilizzo efficiente dell'hardware e sull'esperienza dei clienti.