GNU/Linux >> Linux Esercitazione >  >> Cent OS

Che cos'è un database?

Introduzione

I database sono la spina dorsale di tutti i moderni sistemi informativi. Poiché i computer archiviano database contemporanei, i dati possono essere di qualsiasi dimensione e complessità. Esistono molti modi per raccogliere e organizzare i dati a seconda dell'utilizzo e del tipo di dati.

Questo articolo fornisce una panoramica completa dei database e dei sistemi di database.

Definizione database

Un database è un insieme organizzato di dati logicamente connessi. Le informazioni si trasformano in conoscenze utili, strutturate e mantenute in base alle esigenze dell'utente. Oltre a memorizzare i dati stessi, un database mantiene anche le relazioni tra i punti dati.

In senso lato, un database è un insieme integrato di informazioni su un sistema e le procedure per la manutenzione e l'utilizzo. A differenza dei fogli di calcolo, più utenti e applicazioni accedono allo spazio di archiviazione contemporaneamente.

A cosa servono i database?

I database hanno un ampio spettro di applicazioni. Esempi tipici includono:

  • Sistemi bancari mantenere database per clienti, conti bancari, crediti, transazioni, ecc.
  • Traffico aereo conserva le informazioni su voli, prenotazioni biglietti e simili. Le compagnie aeree sono il primo settore a utilizzare database distribuiti geograficamente.
  • Università utilizzare i database per registrare informazioni su studenti, applicazioni, voti, corsi, ecc.
  • Transazioni con carta di credito contengono schede sui pagamenti e generano rapporti mensili.
  • Società di telecomunicazioni memorizzare informazioni sulle chiamate, generare fatture mensili, tracciare la linea di comunicazione, ecc.
  • Il settore finanziario tiene traccia delle vendite e degli acquisti di strumenti finanziari come obbligazioni e azioni.
  • Commercio e e-commerce aziende archiviare dati su consumatori, prodotti e vari cataloghi di prezzi.
  • Aziende manifatturiere gestire filiere, linee di produzione, magazzini, generare fatture, ecc.
  • Risorse umane memorizza informazioni su dipendenti, buste paga, tasse, vantaggi, ecc.

L'elenco sopra mostra quanto i database siano cruciali per qualsiasi tipo di attività. Con le moderne interfacce utente, il back-end è nascosto quando accedono a un database, quindi molti utenti non sanno che ne usano uno ogni giorno.

Breve storia dei database

Il primo database automatizzato si collega a Herman Hollerith, che nel 1884 brevettò il sistema per l'elaborazione automatica dei dati. Il censimento statunitense del 1890 utilizzava il sistema di conteggio delle schede perforate e la raccolta delle carte rappresenta il primo sistema di database automatizzato.

Ogni scheda aveva 80 colonne e informazioni caratterizzate su una persona. Di solito, l'elaborazione delle informazioni sul censimento richiederebbe due anni. Tuttavia, il sistema delle schede perforate e il meccanismo di lettura automatizzata delle schede hanno impiegato solo circa sei settimane per elaborare i dati. Il sistema delle schede perforate è stato utilizzato per tutto il 20° secolo, in particolare per votare e timbrare per il lavoro.

Dopo la seconda guerra mondiale, le aziende e le istituzioni governative iniziarono a utilizzare i computer per semplici database di contabilità lineare. I primi database computerizzati erano usati per compiti specifici e mancavano di flessibilità.

Le banche dati negli anni '60

Negli anni '60, i database di documenti avevano un ruolo dominante. I primi sistemi di gestione di database sono apparsi in questo decennio e sono stati utilizzati per progetti grandi e complessi, come lo sbarco sulla luna dell'Apollo.

Le banche dati negli anni '70

I database diventano una realtà commerciale negli anni '70. Vengono introdotti sistemi gerarchici e di rete per la gestione dei dati principalmente per la gestione di strutture dati complesse, come i conti di fabbrica, al momento dell'acquisto di materie prime.

Questo decennio include il DBMS commerciale di prima generazione e alcuni sono ancora in uso oggi. Diversi inconvenienti sono:

  • È stato difficile recuperare i dati. Le aziende hanno utilizzato programmi complessi negli anni '70 per accedere a dati semplici.
  • L'indipendenza dei dati limitata ha reso le informazioni difficili da modificare e aggiornare.
  • Nessuna base teorica per alcun modello di database.

Le banche dati negli anni '80

Gli anni '80 affrontano gli inconvenienti del decennio precedente. Il modello dei dati relazionali appare negli anni '70 e il DBMS di seconda generazione trova uso commerciale negli anni '80. Quando si utilizza il modello relazionale, tutti i dati sono in un formato tabellare familiare. Un linguaggio di programmazione relativamente semplice (SQL) recupera i dati dal database.

Il nuovo modello di database ha consentito un più facile accesso ai dati a persone che non erano programmatori, affrontando il problema più significativo con i modelli precedenti. Il modello relazionale era conveniente per la comunicazione client/server, i trasferimenti di dati paralleli e una GUI semplificava l'utilizzo.

Le banche dati negli anni '90

Gli anni '90 hanno dato origine alle applicazioni Internet e ai sistemi di archiviazione dei dati. I dati multimediali (grafica, audio, immagini e video) sono diventati più comuni. Grandi quantità di dati strutturati e non strutturati erano standard. A causa della crescente complessità dei dati, i sistemi di database relazionali si sono rivolti all'approccio orientato agli oggetti.

Le banche dati negli anni 2000

Vengono visualizzati tre nuovi tipi di database:database XML, NoSQL e NewSQL.

I database XML sono un tipo basato su documenti altamente strutturato. L'esecuzione di query è consentita tramite attributi XML con vari gradi di flessibilità.

I database NoSQL rispondono alla forte domanda di sistemi di database distribuiti altamente flessibili, che utilizzino l'eventuale coerenza e non richiedano uno schema fisso. Il tipo NoSQL è altamente scalabile e memorizza dati denormalizzati.

NewSQL mira a combinare i migliori attributi dei database NoSQL, come la scalabilità, utilizzando SQL e mantenendo la conformità ACID.

Diversi tipi di database

Attualmente sono disponibili molti tipi di database diversi, ognuno con vantaggi e svantaggi. Ogni tipo di database crea un ambiente specifico per la memorizzazione dei dati e la relazione tra le informazioni.

  • I database relazionali archiviano i dati in strutture simili a tabelle come righe e colonne con particolare attenzione alla coerenza dei dati. Questo tipo di database si concentra sulle relazioni tra i dati ed è il tipo di database più utilizzato.
  • I database orientati agli oggetti combinano i principi della programmazione orientata agli oggetti (OOP) con gli standard dei database relazionali.
  • Banca dati distribuiti distribuiti su più siti e scalabili orizzontalmente.
  • I data warehouse integrano i dati provenienti da varie fonti in modo coerente in un unico sistema di supporto alle decisioni. I magazzini soddisfano grandi volumi di dati e risiedono comunemente su server di big data.
  • I database NoSQL sono tipi strutturalmente diversi di database con particolare attenzione all'elevata disponibilità. I sistemi NoSQL sono più adatti per grandi volumi di dati non strutturati.
  • I database Graph sono un tipo di database NoSQL incentrato sulle relazioni tra punti dati. Con una struttura di rete topografica, i database a grafo sono il miglior sistema per esplorare e scoprire relazioni.
  • I database OLTP si concentrano su transazioni quotidiane brevi, supportando un'ampia base di utenti con elevata integrità dei dati ed efficacia nelle query simultanee.
  • I database open source sono aperti a modifiche e sono gratuiti. Le preferenze personalizzabili dell'utente e il basso costo rendono questo tipo di database ampiamente adottato.
  • I database cloud dispongono di tutte le tradizionali funzionalità di database con flessibilità di cloud computing.
  • I database multimodello forniscono un unico motore per lavorare con più tipi di modelli di database.
  • Il database Document/JSON è un sistema di archiviazione NoSQL che archivia i dati nei documenti JSON.
  • I database cloud a guida autonoma (database autonomi) utilizzano l'apprendimento automatico per automatizzare varie attività nel DBMS.

Componenti di un database

Cinque componenti principali costituiscono un sistema di database.

Hardware

L'hardware comprende i dispositivi fisici che collegano i computer al mondo reale. Quando si tratta di database, server, dischi di archiviazione e vari dispositivi di raccolta dati includono l'hardware necessario per eseguire e popolare un database.

Software

Il software include una vasta gamma di programmi utilizzati per accedere, manipolare e controllare i database. Ai livelli inferiori, il software comprende i sistemi operativi su cui risiedono i database, la rete per la comunicazione con i database e il software per accedere ai dati.

Dati

I dati sono il fatto essenziale di un elemento o di un evento che il database può salvare. I dati richiedono un trattamento per acquisire significato e diventare informazioni. Inoltre, l'elaborazione estrae dettagli approfonditi dai dati e aiuta nelle procedure decisionali.

Procedure

Le procedure di database includono tutte le funzioni che operano all'interno di un archivio. Che si tratti di backup regolari, generazione di report e altre operazioni quotidiane, le procedure sono un insieme di istruzioni eseguito nel sistema di gestione del database.

Lingua di accesso al database

Il linguaggio di accesso al database è il linguaggio di programmazione utilizzato per inserire, aggiornare, eliminare e modificare i dati archiviati in un database. I database eseguono query direttamente nel linguaggio di accesso al database.

Cos'è un sistema di gestione dei database (DBMS)?

Un sistema di gestione del database (DBMS) funge da interfaccia tra l'utente (o le applicazioni) e il database. Il programma consente la comunicazione diretta con il database, consentendo il recupero dei dati, gli aggiornamenti, l'ottimizzazione e la gestione complessiva delle informazioni memorizzate nel database.

Cos'è un server di database?

Un server di database è un server dedicato che fornisce servizi a un client tramite applicazioni di database. Una parte del server memorizza il DBMS, mentre un'altra memorizza il database stesso. Di solito, i server di database hanno una grande capacità di archiviazione e molte memory stick.

Perché i database sono importanti?

Un sistema di database archivia i dati essenziali di un'azienda:i dati, una volta analizzati, diventano informazioni preziose su un'azienda e aiutano nel processo decisionale.

Allo stesso modo, un database aiuta a costruire un archivio sull'azienda, rendendo un'azienda più solida e consapevole di dove è diretta quando fa delle scelte. L'archiviazione dei dati su un'interazione aiuta a fornire informazioni dettagliate per aiutare l'azienda a svilupparsi ulteriormente e aumentare i profitti.

Ci sono molti vantaggi quando si utilizza un sistema con un database:

  • Indipendenza tra programmi e dati . La separazione dei metadati dalle applicazioni che utilizzano i dati è un attributo chiave. La caratteristica principale del database è la capacità di modificare e trasferire i dati di un'organizzazione su un diverso sistema informatico senza modificare i programmi che elaborano le informazioni.
  • Ridondanza dei dati minima . I database affrontano la sfida della ripetizione dei dati. Le informazioni si integrano in un'unica struttura logica e ogni dato si ripete minimamente. Tuttavia, i database non eliminano del tutto le ridondanze. Il sistema consente a un progettista di database di pianificare l'entità delle ridondanze a seconda del caso d'uso.
  • Condivisione dei dati migliorata. I database sono una risorsa aziendale utilizzata da molti dipendenti e settori. Utenti interni ed esterni specifici gestiscono il database e ogni persona o gruppo ha viste specializzate dei dati.
  • Maggiore sicurezza dei dati. Un DBMS ha funzioni amministrative che aiutano a controllare la sicurezza delle informazioni sensibili tramite privilegi e ruoli utente.
  • Maggiore produttività nello sviluppo delle applicazioni. Lo sviluppo di nuove applicazioni è più veloce grazie ai sistemi di database. Un programmatore può concentrarsi sulle funzioni necessarie per una nuova applicazione senza dover definire i dati. Un DBMS aiuta ad automatizzare attività come la progettazione e l'implementazione di un database.

Sfide comuni del database

I database contengono sfide, rischi e spese durante la creazione del sistema.

Formazione del personale Un'azienda che opta per un sistema di database deve reclutare o formare persone per progettare, implementare e mantenere un database. A causa della natura in continua evoluzione, è necessaria una formazione continua per massimizzare l'efficienza delle tecnologie di database.
Spese e complessità di installazione e gestione I sistemi di database multiutente sono architetture software estese e complesse, spesso con costi annuali per supporto tecnico ed espansioni. Le estensioni software con miglioramenti continui sulla sicurezza sono indispensabili quando si lavora con i dati.
Backup, ripristino e sicurezza Backup regolari assicurano la coerenza dei dati e l'elevata disponibilità. Procedure di sicurezza chiare e ripristino del database sono necessarie per un moderno sistema di database.
Conflitti organizzativi I database condivisi richiedono il consenso sulla definizione e sulla proprietà dei dati. Inoltre, è necessaria una persona dedicata per mantenere i dati. Pertanto, sono necessari un amministratore di database capace e ruoli di accesso significativi.

Il futuro dei database

La tecnologia con il maggiore impatto potenziale per il futuro dei database sono i database autonomi. Il machine learning aiuta ad automatizzare completamente il provisioning, la gestione, l'ottimizzazione e gli aggiornamenti a un database. L'automazione aiuta inoltre a concentrarsi in modo più significativo sulla sicurezza del database, che è la sfida più grande che i sistemi dovranno affrontare in futuro.


Cent OS
  1. Che cos'è il database NoSQL? – Spiegazione di NoSQL

  2. Tipi di database NoSQL

  3. Che cos'è un DataFrame Spark?

  4. Che cos'è un database relazionale?

  5. Database NoSQL distribuito Elasticsearch:cos'è e dovresti usarlo?

Che cos'è un database di documenti?

Che cos'è un database OLTP?

Che cos'è la denormalizzazione del database?

Che cos'è la normalizzazione del database?

Che cos'è NewSQL?

Che cos'è un database distribuito e a cosa servono i sistemi di dati distribuiti?