# Oracle Database: definizione e funzione

Oracle Database è un sistema di gestione dei database relazionali (RDBMS) del produttore software e hardware Oracle. Come software di database, Oracle Database **ottimizza la gestione e la sicurezza dei record di dati**, creando schemi di database strutturati e accessibili soltanto agli amministratori autorizzati.

## Che cos’è Oracle Database?

Oracle Database rientra con SAP HANA, Microsoft SQL Server e IBM Db2 tra i **leader del settore** dei [sistemi di gestione di database relazionali](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/database-relazionale/) (abbreviato in RDBMS). Secondo il [ranking stilato da DB Engines](https://db-engines.com/en/ranking "Ranking di DB Engines"), Oracle occupa il primo posto tra i 380 sistemi di database più popolari, seguito immediatamente da MySQL e Microsoft SQL Server. Sebbene la società fondata nel 1977 da Lawrence J. Ellision offra oggi un’ampia gamma di prodotti e servizi, Oracle Database rappresenta il **fiore all’occhiello del produttore statunitense**. La prima versione è stata lanciata sul mercato nel 1979. Attualmente (informazioni aggiornate a ottobre 2021) sono disponibili la versione di lunga data 19c e l’innovativa 21c.

Se fatto a regola d’arte, Oracle Database costituisce il fulcro dell’ambiente IT delle imprese. In base al modello strutturale scelto, i [database](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/database/ "Database") possono variare tra vari modelli gerarchici, orientati agli oggetti o ai documenti e simili a una rete. Per Oracle Database Oracle usa un **modello di database relazione** che consente di archiviare e riprodurre dati utente e dell’azienda sotto forma di **record di dati organizzati**.

Le quantità di dati vengono strutturate in colonne, tabelle e righe e i punti di dati vengono messi in relazione con il supporto degli attributi. Il **punto forte** dei database di Oracle sono **l’organizzazione e la rappresentazione intuitive ed efficienti** delle quantità di dati. Inoltre, le imprese possono decidere se impiegare Oracle Database in ambienti on premise oppure cloud.

## Come funziona Oracle Database?

Come la maggior parte degli RDBMS, Oracle Database usa il **linguaggio di programmazione standardizzato SQL** (Structured Query Language) per creare strutture database, gestire i record di dati, eseguire azioni e consultare i dati immagazzinati. Il **linguaggio di programmazione di casa Oracle PL/SQL** è invece strettamente collegato con SQL e offre la possibilità di completare SQL con le estensioni per programmatori di Oracle.

Per la **strutturazione dei database**, Oracle usa le tabelle di righe e colonne all’interno delle quali i punti di dati sono associati per mezzo di attributi. In questo modo l’accesso a tutte le tabelle avviene in modo efficiente, risparmiando tempo.

**L’architettura** dei sistemi di database di Oracle consiste di un database per l’archiviazione dei file del database, una o più istanze di database per la gestione dei dati e uno o più processi Listener, che collegano i client del database con le relative istanze. A questo proposito, le **strutture di dati logiche e fisiche vengono separate** nei database Oracle. I seguenti contenuti riassumono le strutture di archiviazione fisiche e logiche:

1. **Strutture di archiviazione fisiche**: file di dati, file di configurazione (con metadati del database) e file red log (per la documentazione delle modifiche)
2. **Strutture di archiviazione logiche**: le tabelle e i blocchi di dati, le extent (per il raggruppamento dei blocchi di dati logici), segmenti (set di extent) e tablespace (container di segmenti logici)

La strutturazione chiara dei database Oracle consente un’amministrazione affidabile dei record di dati, il massimo della sicurezza grazie alla crittografia dei dati e della rete, un’autenticazione, l’autorizzazione e le analisi dei permessi più rigorosi. Inoltre, **con PL/SQL Oracle supporta Java** e le programmazioni fatte in Java.

## Gli strumenti importanti per Oracle Database

Per lo sviluppo e l’estensione dei database, Oracle mette a disposizione diversi strumenti sia per gli sviluppatori che per gli amministratori.

- **SQL\*Plus**: disponibile per tutti i sistemi per computer che usano i software per client e server di Oracle. Come strumento a riga di comando per la gestione del database consente di inviare comandi, consultare i dati, cancellare e apportare modifiche ai file del database. La conoscenza di SQL è indispensabile per l’uso di SQL\*Plus.
- **Oracle SQL Developer**: un programma Java gratuito con interfaccia utente grafica che crea ed elabora i progetti di database, gestisce gli script e gli statement SQL, esegue analisi del database, genera procedure PL/SQL e consente il debugging.
- **Oracle Data Modeler**: uno strumento gratuito che si rivolge principalmente ai designer di database. Con Modeler si possono disegnare modelli logici di database o modelli di entity relationship. I punti di forza del tool sono il suo utilizzo intuitivo (tramite drag&amp;drop), la riproduzione di strutture di database complesse, così come l’esportazione delle strutture di database in Oracle SQL Developer.
- **Oracle Enterprise Manager Database Control**: uno strumento di amministrazione per i database Oracle basato sul web che offre un’interfaccia utente grafica.
- **Oracle Enterprise Manager Grid Control**: uno strumento di amministrazione flessibile per gli ambienti Oracle basato sul web e che lavora con un’interfaccia utente grafica. Può essere usato per più database, per interi cluster o per sistemi standby.
- **Oracle JDeveloper**: uno strumento per sviluppatori che lavorano con Oracle che serve ad aiutare il loro ambiente di sviluppo integrato nello sviluppo di applicazioni di database con Oracle e Java.

## Versioni e settori di utilizzo di Oracle Database

Attualmente i prodotti Oracle Database possono essere suddivisi in **tre versioni Oracle essenziali**, ciascuna adatta per diversi campi di applicazione in base alla dimensione dell’azienda.

### Express Edition

Oracle Express Edition è un Oracle Database, adatto a ogni client e che mette a disposizione un **database gratuito** (per esempio per piccole applicazioni o corsi di formazione). Express Edition supporta PHP, Java, XML e .NET. Trattandosi di una versione gratuita lo spazio di archiviazione è limitato a 4 GB e la RAM a 1 GB con una sola CPU.

### Standard Edition

Oracle Standard Edition è scelta principalmente dalle **imprese di medie dimensioni**. I vantaggi della Standard Edition sono l’installazione e la configurazione intuitive, le funzionalità di gestione automatizzate, l’amministrazione efficiente e chiara di grandi record di dati, così come un’elevata compatibilità con tutti i tipi di dati e applicazioni più comuni.

### Enterprise Edition

Enterprise Edition di Oracle è la **versione di lusso** di Oracle Database e fa parte dell’élite degli RDBMS. Poiché la Enterpreise Edition **non ha praticamente limiti** per quanto riguarda l’archiviazione, le estensioni e la gestione delle quantità di dati, è prevalentemente adatta alle imprese di grandi dimensioni che lavorano con enormi quantità di dati. Ulteriori vantaggi sono le affidabili funzionalità di protezione e sicurezza contro la perdita di dati, la mancanza di corrente elettrica (blackout) e i malfunzionamenti lato software.

Consiglio Oracle offre il servizio cloud di data warehouse [Oracle Autonomous Data Warehouse](https://www.oracle.com/it/autonomous-database/autonomous-data-warehouse/ "Oracle Autonomous Data Warehouse") per una gestione ottimale dei database, che serve a semplificare l’automatizzazione e l’amministrazione del [data warehouse](https://www.ionos.it/digitalguide/online-marketing/analisi-web/dwh-che-cose-un-data-warehouse/ "DWH | Che cos’è un data warehouse?") alle imprese.

## I vantaggi e gli svantaggi di Oracle Database

I vantaggi e gli svantaggi di Oracle dipendono in prima linea dalle aspettative e dalle esigenze dell’utente così come dalle capacità finanziarie, dalle competenze tecniche e dalle conoscenze dei programmatori coinvolti. Un grande vantaggio di Oracle Database è il modello opzionale [Database as a Service](https://www.ionos.it/digitalguide/server/know-how/cose-dbaas/ "Cos’è DBaaS?") che permette l’archiviazione e l’amministrazione di database relazionali nell’[infrastruttura cloud di Oracle](https://www.oracle.com/it/cloud/ "Oracle Cloud"). Ciò rende possibile lo **sfruttamento massimo della CPU, dell’hardware e dello spazio di archiviazione** così come anche delle operazioni di gestione del database. I più elevati criteri di sicurezza garantiscono la migliore protezione possibile contro la perdita dei dati, gli attacchi cibernetici e le falle di sicurezza.

### Vantaggi

Tra i vantaggi di Oracle Database vi sono:

- **L’elevata compatibilità** con tutte le applicazioni e le piattaforme
- L’essere supportato da tutti i principali produttori hardware e software
- Diverse versioni, da quella gratuita a quella Enterprise
- La diffusione nel settore imprenditoriale legato all’IT
- L’utilizzo opzionale dei **database cloud** di Oracle per lo sfruttamento ottimizzato e l’automatizzazione della gestione dei database
- Il sistema più popolare di gestione di database relazionale
- Una grande comunità di sviluppatori e l’eccezionale supporto offerto da Oracle
- Funzionalità affidabili di **sicurezza e protezione dati** (per esempio autenticazione e autorizzazione rigorose degli accessi, crittografia dei dati e delle reti)

### Svantaggi

I vantaggi dei database Oracle superano gli svantaggi. Tuttavia, è importante menzionare quelli che sono i punti deboli di Oracle Database:

- Le **conoscenze di SQL** e l’**esperienza nell’amministrazione di database** sono un prerequisito per l’utilizzo della versione on premise di Oracle
- Le licenze Oracle hanno un **prezzo molto elevato** (la versione Standard costa circa 17.000 euro lordi e la versione Enterprise circa 40.000 euro lordi)
- Requisiti hardware elevati per la versione locale on premise

## Le alternative ai database Oracle

Se Oracle Database va oltre le vostre possibilità, potete comunque scegliere tra **numerosi sistemi di gestione di database alternativi**. Tra i fornitori più conosciuti dei sistemi di database, oltre a Oracle, ci sono SAP e IBM.

Qui di seguito trovate le alternative a Oracle Database:

- SAP HANA
- IBM Db2
- Amazon Relational Database Service (RDS)
- Amazon Aurora
- Microsoft SQL
- [MySQL](https://www.ionos.it/digitalguide/server/know-how/imparare-a-utilizzare-mysql-guida-per-principianti/)
- SQLite
- Azure SQL Database

In aggiunta a queste ci sono anche sistemi di gestione di database open source e gratuiti:

- [MariaDB](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/mariadb-vs-mysql/)
- [NoSQL](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/nosql/)
- [InfluxDB](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/cose-influxdb/) come licenza GPL
- [InnoDB](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/che-cose-innodb/)
- [CouchDB](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/couchdb/)
- [MongoDB](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/mongodb-presentazione-e-confronto-con-mysql/)
- [PostgreSQL](https://www.ionos.it/digitalguide/server/know-how/postgresql/)


This is a markdown version of: [https://www.ionos.it/digitalguide/hosting/tecniche-hosting/oracle-database/](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/oracle-database/) for AI/LLM consumption.