Argomenti per amministratori di database e sviluppatori

I componenti script in questa pagina sono utilizzati solo per scopi di navigazione e non alterano in alcun modo il contenuto.

Questo capitolo riassume gli argomenti comuni del database che sono importanti sia per gli amministratori di database che per gli sviluppatori e fornisce suggerimenti ad altri manuali, non a un account esaustivo delle funzioni del database.

Panoramica della sicurezza del database

In generale, la sicurezza del database implica l'autenticazione degli utenti, la cifratura, il controllo dell'accesso e il monitoraggio.

Questa sezione contiene gli argomenti riportati di seguito.

Account utente

Ogni database Oracle dispone di una lista di utenti del database validi.

Il database contiene diversi account predefiniti, incluso l'account amministrativo predefinito SYSTEM. È possibile creare account utente in base alle esigenze. È inoltre possibile configurare gli utenti dell'applicazione per accedere ai database Oracle.

Per accedere a un database, un utente deve fornire un nome utente e una credenziale di autenticazione validi. La credenziale può essere una password, un ticket Kerberos o un certificato PKI (Public Key Infrastructure). È possibile configurare la sicurezza del database per bloccare gli account in base a tentativi di login non riusciti.

In generale, il controllo dell'accesso al database prevede la limitazione dell'accesso ai dati e delle attività del database. Ad esempio, è possibile limitare gli utenti all'esecuzione di query su tabelle specifiche o all'esecuzione di istruzioni di database specifiche.

Vedere anche:

Privilegi

Un privilegio utente è il diritto di eseguire istruzioni SQL specifiche.

I privilegi rientrano nelle seguenti categorie:

I privilegi sono concessi agli utenti a discrezione di altri utenti. Gli amministratori devono concedere privilegi agli utenti in modo da poter eseguire i task necessari per i job. Una buona procedura di sicurezza prevede la concessione di un privilegio solo a un utente che richiede tale privilegio per eseguire il lavoro necessario.

Vedere anche:

Ruoli

Un ruolo è un gruppo denominato di privilegi correlati che un utente può concedere ad altri utenti o ruoli. Un ruolo consente di gestire i privilegi per un'applicazione di database o un gruppo di utenti. La Figura 20-1 illustra un uso comune per i ruoli. I ruoli PAY_CLERK, MANAGER e REC_CLERK vengono assegnati a utenti diversi. Il ruolo applicazione ACCTS_PAY, che include il privilegio per eseguire l'applicazione ACCTS_PAY, viene assegnato agli utenti con il ruolo PAY_CLERK e MANAGER. Il ruolo applicazione ACCTS_REC, che include il privilegio per eseguire l'applicazione ACCTS_REC, viene assegnato agli utenti con il ruolo REC_CLERK e MANAGER.

Figura 1: Usi comuni per i ruoli

Descrizione dell'illustrazione cncpt082.gif

Vedere anche:

Privilege Analysis

Il meccanismo di analisi dei privilegi acquisisce l'uso dei privilegi per un database in base a una condizione specificata.

In questo modo, è possibile acquisire i privilegi necessari per eseguire un modulo applicativo o eseguire istruzioni SQL specifiche. Ad esempio, è possibile trovare i privilegi che un utente ha esercitato durante una sessione di database specifica.

In un database di produzione le relazioni tra i privilegi e i ruoli, i ruoli e i ruoli e i ruoli possono essere complesse. L'analisi dei privilegi consente di identificare i privilegi concessi inutilmente in un sistema complesso. In base all'analisi dei risultati acquisiti, è possibile rimuovere privilegi non necessari o riconfigurare privilegi per rendere i database più sicuri.

Vedere anche: Oracle AI Database Security Guide per informazioni sull'analisi dei privilegi.

Profili utente

Nel contesto delle risorse di sistema, un profilo utente è un insieme denominato di limiti di risorse e parametri di password che limitano l'uso del database e le risorse delle istanze di database per un utente.

I profili possono limitare il numero di sessioni concorrenti per un utente, il tempo di elaborazione della CPU disponibile per ogni sessione e la quantità di I/O logico disponibile. Ad esempio, il profilo clerk potrebbe limitare l'utilizzo di un utente alle risorse di sistema richieste per le attività di tipo clerico. Nota: è preferibile utilizzare Gestione risorse database per limitare le risorse e utilizzare i profili per gestire le password.

I profili forniscono un unico punto di riferimento per gli utenti che condividono un set di attributi. È possibile assegnare un profilo a un set di utenti e un profilo predefinito a tutti gli altri. Ogni utente ha al massimo un profilo assegnato in qualsiasi momento.

Vedere anche:

Autenticazione database

In Oracle AI Database, l'autenticazione del database è il processo mediante il quale un utente presenta le credenziali al database, che verifica le credenziali e consente l'accesso al database.

La convalida dell'identità stabilisce una relazione di fiducia per ulteriori interazioni. L'autenticazione consente anche la responsabilità rendendo possibile collegare l'accesso e le azioni a identità specifiche.

Oracle AI Database fornisce diversi metodi di autenticazione, tra cui:

Gli account utente di database non amministrativi non devono eseguire operazioni di database quali la chiusura o l'avvio del database. Queste operazioni richiedono privilegi SYSDBA, SYSOPER, SYSBACKUP o SYSDG.

Vedere anche:

Cifratura

La cifratura di Oracle AI Database è il processo di trasformazione dei dati in un formato illeggibile utilizzando una chiave segreta e un algoritmo di cifratura.

La cifratura viene spesso utilizzata per soddisfare i requisiti di conformità alle normative, ad esempio quelli associati al PCI-DSS (Payment Card Industry Data Security Standard) o alle leggi sulle notifiche di violazione. Ad esempio, occorre cifrare il numero di carta di credito, il numero di previdenza sociale o i dati relativi alla salute dei pazienti.

Cifratura rete

La cifratura dei dati in transito sulla rete tra client e server si riferisce alla cifratura della rete.

Un intruso può utilizzare un sniffer di pacchetti per acquisire le informazioni durante il viaggio sulla rete, quindi creare un file di spool per utilizzarlo in modo improprio. La cifratura dei dati sulla rete evita questo tipo di attività.

Cifratura dei dati trasparente

La cifratura dei dati trasparenti di Oracle Advanced Security consente di cifrare singole colonne o un'intera tablespace.

Quando un utente inserisce dati in una colonna cifrata, il database crittografa automaticamente i dati. Quando gli utenti selezionano la colonna, i dati vengono decifrati. Questa forma di crittografia è trasparente, offre prestazioni elevate ed è facile da implementare.

La cifratura dei dati trasparente include algoritmi di cifratura standard del settore come l'Advanced Encryption Standard (AES) e la gestione delle chiavi integrata.

Vedi anche: Guida alla cifratura dei dati trasparente di Oracle AI Database

Protezione dati sensibili Oracle

Oracle Data Redaction, parte di Oracle Advanced Security, consente di mascherare (redattare) i dati sottoposti a query da utenti o applicazioni con privilegi ridotti. La protezione dati sensibili si verifica in tempo reale quando gli utenti eseguono query sui dati.

La protezione dati sensibili supporta i seguenti tipi di funzione di protezione dati sensibili:

La protezione dei dati sensibili non è una soluzione di sicurezza completa. Ad esempio, non impedisce agli utenti con privilegi direttamente connessi di eseguire attacchi di inferenza sui dati protetti. Tali attacchi identificano le colonne protette e, mediante il processo di eliminazione, tentano di tornare ai dati effettivi ripetendo query SQL che indovinano i valori memorizzati. Per rilevare e prevenire l'inferenza e altri attacchi da parte di utenti con privilegi, Oracle consiglia di associare Oracle Data Redaction ai prodotti di sicurezza del database correlati, come Oracle Audit Vault and Database Firewall e Oracle Database Vault.

La protezione dei dati sensibili funziona come segue:

Nell'esempio riportato di seguito viene aggiunto un criterio di protezione dati sensibili completo per proteggere la colonna ID dipendente (employee_id) della tabella hr.employees.

BEGIN
 DBMS_REDACT.ADD_POLICY(
   object_schema    => 'hr'
,  object_name      => 'employees'
,  column_name      => 'employee_id'
,  policy_name      => 'mask_emp_ids'
,  function_type    => DBMS_REDACT.FULL
,  expression       => '1=1'
);
END;
/

Nell'esempio precedente, l'impostazione dell'espressione, che restituisce true, applica la protezione dati sensibili agli utenti a cui non viene concesso il privilegio EXEMPT REDACTION POLICY.

Vedere anche:

Controllo dell'accesso

Oracle AI Database fornisce molte tecniche per controllare l'accesso ai dati. Questa sezione riassume alcune di queste tecniche.

Oracle Database Vault

Oracle Database Vault limita l'accesso degli utenti con privilegi ai dati dell'applicazione.

A partire da Oracle Database 12c, Oracle Database Vault estende la struttura di dati di audit del database standard. Inoltre, se si esegue la migrazione all'audit unificato, il database scrive i record di audit nello storico modifiche unificato in Oracle Secure Files, che centralizza i record di audit per Oracle AI Database.

Puoi utilizzare Oracle Database Vault per controllare quando, dove e come si accede a database, dati e applicazioni. Pertanto, puoi affrontare problemi di sicurezza comuni come la protezione contro le minacce interne, la conformità ai requisiti normativi e l'applicazione della separazione dei compiti.

Per rendere l'amministratore di Oracle Database Vault responsabile, il database controlla obbligatoriamente le modifiche alla configurazione apportate ai metadati di Oracle Database Vault. Queste modifiche includono la creazione, la modifica e l'eliminazione di qualsiasi applicazione relativa a Oracle Database Vault, le concessioni e la revoca di ruoli protetti e le autorizzazioni per componenti quali Oracle Data Pump e Job Scheduler.

Vedere anche:

VPD (Virtual Private Database)

Oracle Virtual Private Database (VPD) consente di applicare la sicurezza a livello di riga e colonna.

Un criterio di sicurezza stabilisce metodi per proteggere un database dalla distruzione accidentale o dannosa di dati o danni all'infrastruttura del database.

VPD è utile quando le protezioni di sicurezza, ad esempio i privilegi e i ruoli, non sono granulari a sufficienza. Ad esempio, è possibile consentire a tutti gli utenti di accedere alla tabella employees, ma creare criteri di sicurezza per limitare l'accesso ai dipendenti nello stesso reparto dell'utente.

In sostanza, il database aggiunge una clausola WHERE dinamica a un'istruzione SQL emessa a fronte della tabella, vista o sinonimo a cui è stato applicato un criterio di sicurezza Oracle VPD. La clausola WHERE consente solo agli utenti le cui credenziali superano il criterio di sicurezza di accedere ai dati protetti.

Vedi anche: Guida sulla sicurezza di Oracle AI Database

OLS (Oracle Label Security)

Oracle Label Security (OLS) consente di assegnare la classificazione dei dati e l'accesso di controllo utilizzando le etichette di sicurezza. È possibile assegnare un'etichetta ai dati o agli utenti.

Quando viene assegnata ai dati, l'etichetta può essere allegata alle tabelle come colonna nascosta, fornendo trasparenza a SQL. Ad esempio, è possibile etichettare le righe che contengono dati altamente riservati come HIGHLY SENSITIVE e le righe etichetta meno sensibili come SENSITIVE. Quando un utente tenta di accedere ai dati, OLS confronta l'etichetta dell'utente con l'etichetta dati e determina se concedere l'accesso. A differenza di VPD, OLS fornisce un criterio di sicurezza integrato e un repository di metadati per la definizione e la memorizzazione delle etichette.

Se l'audit unificato è abilitato, il database fornisce un framework basato su criteri per configurare e gestire le opzioni di audit. È possibile raggruppare le opzioni di controllo per diversi tipi di operazioni, incluse le operazioni OLS, e salvarle come criterio di controllo. È quindi possibile abilitare o disabilitare il criterio per applicare le opzioni di audit sottostanti.

Ogni volta che viene creato un criterio OLS, il database aggiunge una colonna etichetta per il criterio alla tabella di audit trail del database. Il controllo di OLS può scrivere record di controllo, inclusi i record per le operazioni dell'amministratore di OLS, nell'audit trail unificato.

Vedere anche:

Monitoraggio accesso ai dati

Oracle AI Database offre diversi strumenti e tecniche per monitorare l'attività degli utenti. L'audit è il meccanismo principale per il monitoraggio dell'accesso ai dati.

Audit del database

L'audit del database si riferisce al monitoraggio e alla registrazione di azioni selezionate del database dell'utente.

È possibile configurare un criterio di audit unificato per eseguire il controllo di quanto riportato di seguito.

L'audit trail unificato può acquisire gli eventi di Recovery Manager, che è possibile eseguire tramite query nella vista del dizionario dati UNIFIED_AUDIT_TRAIL. Non si creano criteri di audit unificati per gli eventi di Recovery Manager.

È inoltre possibile utilizzare l'auditing con filtro per eseguire l'audit di colonne di tabella specifiche e per associare gestori di eventi durante la creazione dei criteri. Per l'audit unificato e granulare, è possibile creare criteri che eseguono il test per le condizioni che acquisiscono azioni di database specifiche in una tabella o negli orari in cui si verificano le attività. Ad esempio, è possibile eseguire il controllo di una tabella a cui si accede dopo le ore 9:00.

Di seguito sono riportati i motivi per il controllo.

A partire da Oracle Database 12c, quando si utilizza l'audit unificato, l'audit del database è abilitato per impostazione predefinita. Per controllare l'audit del database, abilitare i criteri di audit. Tuttavia, prima di poter utilizzare l'auditing unificato, è necessario eseguire la migrazione dei database ad esso.

Vedere anche:

Criteri di audit

È possibile utilizzare una singola istruzione SQL per creare un criterio di audit unificato denominato che specifica un set di opzioni di audit. Queste opzioni possono specificare i privilegi di sistema, le azioni o i ruoli da sottoporre ad audit all'interno del database.

In un criterio di audit, è possibile impostare facoltativamente una condizione che può essere valutata per ogni istruzione, una volta per una sessione o una volta per l'istanza di database. L'auditing di un evento è soggetto al risultato della valutazione di una condizione per le politiche di audit applicabili. Se la condizione restituisce true, il database genera il record di audit.

L'esempio seguente crea un criterio che controlla le attività nella tabella hr.employees a meno che un utente non esegua il login dai terminali sicuri term1 e term2:

CREATE AUDIT POLICY EmployeesTableAudit
  ACTIONS update ON hr.employees, delete ON hr.employees
  WHEN SYS_CONTEXT ("userenv", "hostname") NOT IN
                   ("term1","term2") EVALUATE PER SESSION;

L'istruzione seguente abilita il criterio per gli utenti hr e hrvp:

AUDIT POLICY EmployeesTableAudit BY hr, hrvp;

È possibile applicare criteri di audit unificati a qualsiasi utente del database, inclusi gli utenti amministrativi quali SYSDBA, SYSOPER e così via. Tuttavia, i criteri di audit possono essere letti solo dopo l'apertura del database mediante l'istruzione ALTER DATABASE OPEN. Pertanto, le azioni di livello superiore degli utenti amministrativi vengono sempre sottoposte ad audit fino all'apertura del database. Dopo l'apertura del database, la configurazione dei criteri di audit è attiva.

Quando l'auditing unificato è abilitato, il database controlla automaticamente le modifiche apportate alle impostazioni di audit. Il database controlla anche l'avvio e la chiusura dell'istanza del database.

Vedere anche: Oracle AI Database Security Guide per informazioni su come gestire i criteri di audit

Ruoli amministratore audit

Per eseguire l'audit, è necessario disporre dei privilegi di sistema appropriati.

Oracle AI Database fornisce i seguenti ruoli di amministratore di audit forniti dal sistema:

Vedi anche: Oracle AI Database Security Guide per ulteriori informazioni sull'auditing

Audit trail unificato

I record di controllo sono essenziali per rilevare e identificare gli accessi ai dati non autorizzati.

Oracle AI Database può configurare l'audit per gli eventi specificati. Se l'evento si verifica durante una sessione utente, il database genera un record di audit.

Un audit trail è un'ubicazione in cui sono memorizzati i record di audit. L'audit trail unificato, nuovo in Oracle Database 12c, fornisce uno storage unificato per i record di audit di tutti i tipi di audit. È necessario eseguire manualmente la migrazione dagli audit trail tradizionali delle release precedenti all'audit unificato.

L'audit include l'audit standard e granulare e include anche l'audit dei seguenti eventi, inclusa l'esecuzione di questi eventi da parte degli utenti amministrativi:

L'audit trail unificato è di sola lettura e memorizzato nello schema AUDSYS. Per impostazione predefinita, la tablespace SYSAUX memorizza i record di audit da tutte le origini. È possibile fornire una nuova tablespace utilizzando il pacchetto DBMS_AUDIT_MGMT.

La vista UNIFIED_AUDIT_TRAIL recupera i record di controllo dallo storico modifiche e li visualizza in formato tabulare. La colonna APPLICATION_CONTEXTS memorizza i valori degli attributi di contesto dell'applicazione configurati. È possibile utilizzare l'istruzione AUDIT per includere i valori degli attributi di contesto nei record di audit. Ad esempio, l'istruzione seguente acquisisce gli attributi MODULE e CLIENT_INFO dallo spazio di nomi userenv:

AUDIT CONTEXT NAMESPACE userenv ATTRIBUTES MODULE, CLIENT_INFO BY hr;

A seconda del componente sottoposto ad audit (ad esempio Oracle Database Vault), sono disponibili ulteriori viste unificate correlate all'audit trail.

Vedere anche:

Supporto per l'audit di Enterprise Manager

Oracle Enterprise Manager (Enterprise Manager) consente di eseguire la maggior parte dei task correlati all'auditing.

Le attività includono quanto segue:

Vedere anche: Guida in linea di Enterprise Manager

Oracle Audit Vault and Database Firewall

Oracle Audit Vault and Database Firewall (Oracle AVDF) fornisce una difesa di prima linea per i database e consolida i dati di audit provenienti da database, sistemi operativi e directory.

Un motore basato sulla grammatica SQL monitora e blocca il traffico SQL non autorizzato prima che raggiunga il database. Per il reporting e gli avvisi di conformità, Oracle AVDF combina i dati delle attività del database provenienti dalla rete con dati di audit dettagliati. È possibile personalizzare i controlli di controllo e monitoraggio per soddisfare i requisiti di sicurezza aziendali.

Vedere anche: Oracle AI Database Security Guide per informazioni su risorse di sicurezza aggiuntive come Oracle Audit Vault and Database Firewall

Panoramica di High Availability

La disponibilità è il grado in cui un'applicazione, un servizio o una funzionalità è disponibile su richiesta.

Ad esempio, un database OLTP utilizzato da un libraio online è disponibile nella misura in cui è accessibile dai clienti che effettuano acquisti. Affidabilità, recuperabilità, rilevamento tempestivo degli errori e operazioni continue sono le caratteristiche principali dell'alta disponibilità.

L'importanza dell'alta disponibilità in un ambiente di database è legata al costo dei tempi di inattività, ovvero al momento in cui una risorsa non è disponibile. Il tempo di inattività può essere classificato come pianificato o non pianificato. La sfida principale quando si progetta un ambiente ad alta disponibilità è esaminare tutte le possibili cause dei tempi di inattività e sviluppare un piano per affrontarle.

Alta disponibilità e tempi di inattività non pianificati

Oracle AI Database fornisce soluzioni ad alta disponibilità per prevenire, tollerare e ridurre i tempi di inattività per tutti i tipi di errori non pianificati.

I tempi di inattività non pianificati possono essere classificati in base alle relative cause.

Errori sito

Un errore del sito si verifica quando un evento causa l'interruzione dell'elaborazione di tutta o di una parte significativa di un'applicazione o il rallentamento a un livello di servizio inutilizzabile.

Un errore del sito può influire su tutte le elaborazioni in un data center o su un subset di applicazioni supportate da un data center. Esempi includono un'alimentazione estesa a livello di sito o un errore di rete, una calamità naturale che rende un data center non operativo o un attacco dannoso alle operazioni o al sito.

La forma più semplice di protezione contro gli errori del sito è creare backup del database utilizzando RMAN e memorizzarli fuori sede. È possibile ripristinare il database su un altro host. Tuttavia, questa tecnica può richiedere molto tempo e il backup potrebbe non essere aggiornato. La gestione di uno o più database in standby in un ambiente Data Guard consente di fornire un servizio di database continuo in caso di errore del sito di produzione.

Vedere anche:

Errori computer

Un'interruzione del computer si verifica quando il sistema che esegue il database non è più disponibile perché è stato arrestato o non è più accessibile.

Esempi di guasti del computer includono guasti hardware e del sistema operativo. Le funzioni di Oracle riportate nella tabella seguente proteggono o aiutano a rispondere agli errori del computer.

Tabella 1 Protezione contro i guasti del computer

Funzione Descrizione Per saperne di più
Griglie aziendali In un ambiente Oracle Real Applications Cluster (Oracle RAC), Oracle AI Database viene eseguito su due o più sistemi in un cluster mentre accede contemporaneamente a un singolo database condiviso. Un singolo sistema di database si estende su più sistemi hardware, ma viene visualizzato nell'applicazione come un singolo database. "Panoramica di Grid Computing"
Oracle Data Guard Data Guard ti consente di gestire una o più copie di un database di produzione, chiamato database in standby, che può risiedere in continenti diversi o nello stesso data center. Se il database primario non è disponibile a causa di un'indisponibilità, Data Guard può passare qualsiasi database di standby al ruolo primario, riducendo al minimo i tempi di inattività. Concetti e amministrazione di Oracle Data Guard
Global Data Services Il framework Global Data Services automatizza e centralizza la configurazione, la manutenzione e il monitoraggio di un database cloud. Global Data Services consente il bilanciamento del carico e il failover per i servizi forniti dal cloud. In sostanza, Global Data Services offre a un set di database gli stessi tipi di vantaggi offerti da Oracle Real Application Clusters (Oracle RAC) per un singolo database. Guida ai concetti e all'amministrazione di Oracle AI Database Global Data Services
Avvio rapido recupero da errori Una causa comune dei tempi di inattività non pianificati è un errore o un errore del sistema. La tecnologia di avvio rapido di ripristino degli errori in Oracle AI Database associa automaticamente il tempo di ripristino dell'istanza del database. Guida all'ottimizzazione delle prestazioni di Oracle AI Database

Errori di memorizzazione

Un'indisponibilità di errore di storage si verifica quando lo storage che contiene parte o tutto il contenuto del database diventa non disponibile perché è stato arrestato o non è più accessibile. Esempi di errori di storage includono il guasto di un'unità disco o di un array di storage.

La tabella riportata di seguito mostra gli errori di storage oltre a Oracle Data Guard.

Tabella 2 Soluzioni per problemi di storage

Soluzione Descrizione Per saperne di più
Oracle Automatic Storage Management (Oracle ASM) Oracle ASM è un volume manager e un file system per i file di database Oracle che supporta le configurazioni a istanza singola di Oracle AI Database e Oracle RAC. Oracle ASM è la soluzione per l'amministrazione della memoria consigliata da di Oracle che costituisce un'alternativa ai volumi Manager e ai file system convenzionali. "Oracle Automatic Storage Management (Oracle ASM)"
Backup e recupero La utility Recovery Manager (RMAN) può eseguire il backup dei dati, ripristinare i dati da un backup precedente e recuperare le modifiche a tali dati fino al momento precedente l'errore. "Backup e ripristino"

Vedere anche: Oracle Automatic Storage Management Administrator's Guide per ulteriori informazioni su Oracle ASM

Dati danneggiati

Un danneggiamento dei dati si verifica quando un componente hardware, software o di rete causa la lettura o la scrittura di dati corrotti.

Un esempio di danneggiamento dei dati è un errore di gestione dei volumi che causa la lettura o la scrittura di dischi errati. I danneggiamenti dei dati sono rari, ma possono avere un effetto catastrofico su un database e quindi su un'azienda.

Oltre a Data Guard e Recovery Manager, Oracle AI Database supporta le seguenti forme di protezione dal danneggiamento dei dati:

Vedere anche:

Errori umani

Un'indisponibilità di errore umano si verifica quando viene eseguito il commit di azioni non intenzionali o dannose che causano il danneggiamento logico o l'inutilizzabilità dei dati nel database. L'impatto sul livello di servizio di un'indisponibilità di errore umano può variare in modo significativo a seconda della quantità e della natura critica dei dati interessati.

Molte ricerche citano l'errore umano come la più grande causa di tempi di inattività. Oracle AI Database offre potenti strumenti per aiutare gli amministratori a diagnosticare e recuperare rapidamente da questi errori. Include anche funzionalità che consentono agli utenti finali di recuperare dai problemi senza il coinvolgimento dell'amministratore.

Oracle AI Database consiglia le seguenti forme di protezione dagli errori umani:

Vedere anche:

Alta disponibilità e tempi di inattività pianificati

I tempi di inattività pianificati possono essere altrettanto dannosi per le operazioni, soprattutto nelle aziende globali che supportano gli utenti in più fusi orari. In questo caso, è importante progettare un sistema per ridurre al minimo le interruzioni pianificate, come le operazioni di routine, la manutenzione periodica e le nuove implementazioni.

I tempi di inattività pianificati possono essere classificati in base alle relative cause.

Modifiche al sistema e al database

Le modifiche al sistema pianificate si verificano quando si eseguono operazioni di manutenzione di routine e periodiche e nuove distribuzioni, incluse le modifiche pianificate all'ambiente operativo che si verificano al di fuori della struttura dei dati organizzativi nel database.

Ad esempio, l'aggiunta o la rimozione di CPU e nodi cluster (un nodo è un computer sul quale risiede un'istanza di database), l'upgrade dell'hardware o del software di sistema e la migrazione della piattaforma di sistema.

Oracle AI Database fornisce il provisioning dinamico delle risorse come soluzione alle modifiche pianificate al sistema e al database:

Vedere anche:

Modifiche ai dati

Le modifiche ai dati pianificati si verificano quando vengono apportate modifiche alla struttura logica o all'organizzazione fisica degli oggetti di Oracle AI Database. L'obiettivo principale di questi cambiamenti è migliorare le prestazioni o la gestibilità. Alcuni esempi sono la ridefinizione delle tabelle, l'aggiunta di partizioni di tabelle e la creazione o la ricostruzione di indici.

Oracle AI Database riduce al minimo i tempi di inattività per le modifiche ai dati attraverso la riorganizzazione e la ridefinizione online. Questa architettura consente di eseguire le seguenti attività quando il database è aperto:

Vedere anche:

Modifiche all'applicazione

Le modifiche pianificate all'applicazione possono includere modifiche a dati, schemi e programmi. L'obiettivo principale di queste modifiche è migliorare le prestazioni, la gestibilità e la funzionalità. Un esempio è un aggiornamento dell'applicazione.

Oracle AI Database supporta le seguenti soluzioni per ridurre al minimo i tempi di inattività delle applicazioni necessari per apportare modifiche agli oggetti di database di un'applicazione.

Tabella 3 Soluzioni per ridurre al minimo i tempi di inattività

Soluzione Descrizione Per saperne di più
Aggiornamenti delle patch del database in sequenza Oracle AI Database supporta l'applicazione di patch ai nodi di un sistema Oracle RAC in modo continuativo.  
Aggiornamenti delle release del database in sequenza Oracle AI Database supporta l'installazione di upgrade del software del database e l'applicazione di set di patch, in modalità in sequenza con tempi di inattività del database quasi nulli utilizzando Data Guard SQL Apply e database in standby logico. Guida all'aggiornamento di Oracle AI Database
Ridefinizione basata su edizione La ridefinizione basata su edizione consente di aggiornare gli oggetti di database di un'applicazione mentre è in uso, riducendo al minimo o eliminando i tempi di inattività. Oracle AI Database esegue questo task modificando (ridefinendo) gli oggetti di database in un ambiente privato noto come edizione. Guida allo sviluppo di Oracle AI Database
DDL con l'opzione WAIT predefinita Le istruzioni DDL richiedono blocchi esclusivi sulle strutture interne (vedere "Blocchi DDL"). Nelle release precedenti, le istruzioni DDL non riuscirebbero se non fossero in grado di ottenere i lock. La DDL specificata con l'opzione WAIT risolve questo problema.  
Creazione di trigger in stato disabilitato È possibile creare un trigger con stato disabilitato in modo da garantire la corretta compilazione del codice prima di abilitare il trigger. Riferimento al linguaggio PL/SQL Oracle AI Database

Panoramica di Grid Computing

L'architettura di elaborazione nota come grid computing raggruppa in modo efficace un gran numero di server e storage in una risorsa flessibile e on-demand per tutte le esigenze di elaborazione aziendali.

Una Griglia server database è una raccolta di server di base connessi tra loro per essere eseguiti su uno o più database. Una Griglia di storage del database è una raccolta di array di storage modulari a basso costo combinati e a cui accedono i computer nella griglia del database server.

Con Database Server e Storage Grid, puoi creare un pool di risorse di sistema. È possibile allocare e disallocare dinamicamente queste risorse in base alle priorità aziendali. La Figura 20-2 illustra la griglia del database server e la griglia di memorizzazione del database in un ambiente di elaborazione enterprise Grid.

Figura 2: Ambiente di Grid Computing

Descrizione dell'illustrazione haovw004.gif

Griglia server database

Oracle Real Application Clusters (Oracle RAC) consente a più istanze di condividere l'accesso a un database Oracle. Le istanze vengono collegate tramite un'interconnessione.

In un ambiente Oracle RAC, Oracle AI Database viene eseguito su due o più sistemi in un cluster mentre accede contemporaneamente a un singolo database condiviso. Oracle RAC abilita un Database Server Grid fornendo un singolo database che si estende su più server a basso costo, ma che viene visualizzato nell'applicazione come un unico sistema di database unificato. Oracle Clusterware è un software che consente ai server di operare insieme come se fossero un unico server. Ogni server assomiglia a qualsiasi server standalone. Tuttavia, ogni server dispone di processi aggiuntivi che comunicano tra loro in modo che i server separati lavorino insieme come se fossero un unico server. Oracle Clusterware fornisce tutte le funzioni necessarie per eseguire il cluster, inclusi l'appartenenza ai nodi e i servizi di messaggistica.

Vedere anche:

Scalabilità

In una griglia del database server, Oracle RAC consente di aggiungere nodi al cluster man mano che aumenta la domanda di capacità.

La tecnologia di fusione della cache implementata in Oracle RAC consente di ridimensionare la capacità senza modificare le applicazioni. Pertanto, è possibile ridimensionare il sistema in modo incrementale per risparmiare sui costi ed eliminare la necessità di sostituire i sistemi a nodo singolo più piccoli con quelli più grandi.

È possibile aggiungere nodi a un cluster in modo incrementale anziché sostituire i sistemi esistenti con nodi più grandi. Grid Plug and Play semplifica l'aggiunta e la rimozione di nodi da un cluster, semplificando la distribuzione dei cluster in un ambiente con provisioning dinamico. Grid Plug and Play consente inoltre di gestire database e servizi in modo indipendente dalla posizione. SCAN consente ai client di connettersi al servizio di database indipendentemente dalla posizione all'interno della griglia.

Vedere anche:

Tolleranza errore

In un'architettura ad alta disponibilità, la tolleranza agli errori è la protezione fornita dal guasto di un componente nell'architettura.

Un vantaggio chiave dell'architettura Oracle RAC è la tolleranza agli errori intrinseca fornita da più nodi. Poiché i nodi fisici vengono eseguiti in modo indipendente, l'errore di uno o più nodi non influisce sugli altri nodi del cluster.

Il failover può verificarsi in qualsiasi nodo della griglia. In casi estremi, un sistema Oracle RAC fornisce l'accesso al database anche quando tutti i nodi tranne uno sono inattivi. Questa architettura consente a un gruppo di nodi di essere messi in linea o messi offline in modo trasparente, per manutenzione, mentre il resto del cluster continua a fornire l'accesso al database.

Oracle RAC offre l'integrazione integrata con i client Oracle e i connection pool. Grazie a questa funzionalità, un'applicazione viene immediatamente informata di qualsiasi errore tramite il pool che termina la connessione. L'applicazione evita l'attesa di un timeout TCP e può immediatamente eseguire l'azione di recupero appropriata. Oracle RAC integra il listener con i client Oracle e i connection pool per creare un throughput ottimale delle applicazioni. Oracle RAC può bilanciare il carico di lavoro del cluster in base al carico al momento della transazione.

Vedere anche:

Servizi

Oracle RAC supporta servizi in grado di raggruppare i carichi di lavoro del database e instradare il lavoro alle istanze ottimali assegnate per offrire i servizi.

Un servizio rappresenta il carico di lavoro di applicazioni con attributi, soglie delle prestazioni e priorità comuni. È possibile definire e applicare criteri aziendali a questi servizi per eseguire task quali l'allocazione di nodi per i periodi di massima elaborazione o la gestione automatica di un errore del server. L'utilizzo dei servizi garantisce l'applicazione delle risorse di sistema dove e quando sono necessarie per raggiungere gli obiettivi aziendali.

I servizi si integrano con Database Resource Manager, che consente di limitare le risorse che un servizio all'interno di un'istanza può utilizzare. Inoltre, i job di Oracle Scheduler possono essere eseguiti mediante un servizio anziché mediante un'istanza specifica.

Vedere anche:

Cluster Oracle Flex

A partire da Oracle Database 12c, è possibile configurare Oracle Clusterware e Oracle Real Application Clusters in cluster di grandi dimensioni.

Questi cluster di grandi dimensioni, denominati Oracle Flex Clusters, contengono due tipi di nodi disposti in un'architettura hub e spoke: nodi hub e nodi foglia. I nodi hub sono strettamente connessi, hanno accesso diretto allo storage condiviso e fungono da ancoraggi per uno o più nodi foglia. I nodi foglia sono poco connessi con i nodi hub e potrebbero non avere accesso diretto allo storage condiviso.

Vedere anche:

Griglia memorizzazione database

Un amministratore di database o storage può utilizzare l'interfaccia Oracle ASM per specificare i dischi all'interno della griglia di memorizzazione del database che Oracle ASM deve gestire su tutte le piattaforme server e di storage. Oracle ASM esegue il partizionamento dello spazio su disco e distribuisce i dati in modo uniforme tra i dischi forniti a Oracle ASM. Inoltre, Oracle ASM ridistribuisce automaticamente i dati man mano che i dischi degli array di memorizzazione vengono aggiunti o rimossi dalla griglia di memorizzazione del database.

Vedere anche:

Panoramica di Data Warehousing e Business Intelligence

Per data warehouse si intende un database relazionale progettato per l'elaborazione di query e analisi anziché per l'elaborazione delle transazioni.

Ad esempio, un data warehouse potrebbe tenere traccia dei prezzi storici delle azioni o dei record delle imposte sul reddito. Un warehouse in genere contiene dati derivati da dati di transazioni cronologiche, ma può includere dati provenienti da altre origini.

Un ambiente di data warehouse include diversi strumenti oltre a un database relazionale. Un ambiente tipico include una soluzione ETL, un motore OLAP, strumenti di analisi client e altre applicazioni che raccolgono dati e li consegnano agli utenti.

Data warehousing e OLTP

Un modo comune di introdurre il data warehousing è quello di fare riferimento alle caratteristiche di un data warehouse come stabilito da William Inmon.

Le caratteristiche sono le seguenti:Piede 1

I data warehouse e il database OLTP hanno requisiti diversi. Ad esempio, per scoprire le tendenze del business, i data warehouse devono gestire grandi quantità di dati. Al contrario, le buone prestazioni richiedono che i dati cronologici vengano spostati regolarmente dai sistemi OLTP a un archivio. Nella Tabella 20-4 sono elencate le differenze tra i data warehouse e OLTP.

Tabella 4 Magazzini dati e sistemi OLTP

Caratteristiche Data Warehouse OLTP
Carico di lavoro Progettato per soddisfare query ad hoc. Potresti non conoscere il carico di lavoro del tuo data warehouse in anticipo, quindi dovrebbe essere ottimizzato per funzionare bene per una vasta gamma di possibili query. Supporta solo operazioni predefinite. Le applicazioni potrebbero essere ottimizzate o progettate in modo specifico per supportare solo queste operazioni.
Modifiche dati Aggiornato regolarmente dal processo ETL utilizzando tecniche di modifica dei dati in blocco. Gli utenti finali di un data warehouse non aggiornano direttamente il database. Soggetto a singole istruzioni DML rilasciate regolarmente dagli utenti finali. Il database OLTP è sempre aggiornato e riflette lo stato corrente di ogni transazione aziendale.
Progettazione schema Utilizza schemi denormalizzati o parzialmente denormalizzati (ad esempio uno schema a stella) per ottimizzare le prestazioni delle query. Utilizza schemi completamente normalizzati per ottimizzare le prestazioni DML e garantire la coerenza dei dati.
Operazioni tipiche Una query tipica esegue la scansione di migliaia o milioni di righe. Ad esempio, un utente può richiedere le vendite totali per tutti i clienti il mese scorso. Un'operazione tipica accede solo a una manciata di record. Ad esempio, un utente può recuperare l'ordine corrente per un singolo cliente.
Dati cronologici Memorizza molti mesi o anni di dati per supportare l'analisi cronologica. Memorizza i dati solo da poche settimane o mesi. Dati storici conservati in base alle esigenze per soddisfare i requisiti della transazione corrente.

Vedere anche:

Architettura data warehouse

I data warehouse e le loro architetture variano a seconda dei requisiti aziendali.

Architettura del data warehouse (base)

In una semplice architettura di data warehouse, gli utenti finali accedono direttamente ai dati che sono stati trasportati da diversi sistemi di origine al data warehouse.

La figura che segue illustra un esempio di architettura.

Figura 3: Architettura di un data warehouse

Descrizione dell'illustrazione cncpt170.gif

La figura precedente mostra sia i metadati che i dati raw di un sistema OLTP tradizionale che i dati di riepilogo. Un riepilogo è una vista aggregata che migliora le prestazioni delle query precalcolando costosi join e operazioni di aggregazione e memorizzando i risultati in una tabella. Ad esempio, una tabella sintetica può contenere le somme delle vendite per regione e per prodotto. I riepiloghi sono anche denominati viste materializzate.

Vedere anche: Oracle AI Database Data Warehousing Guide per informazioni sulle viste materializzate di base

Architettura del data warehouse (con area intermedia)

Alcuni data warehouse utilizzano un'area intermedia, ovvero un luogo in cui i dati vengono pre-elaborati prima di entrare nel warehouse. Un'area intermedia semplifica le attività di creazione di riepiloghi e gestione del magazzino.

Il grafico seguente mostra un'area intermedia.

Figura 4: Architettura di un data warehouse con un'area intermedia

Descrizione dell'illustrazione cncpt171.gif

Vedi anche: Oracle AI Database Data Warehousing Guide per ulteriori informazioni sui diversi meccanismi di trasporto

Architettura del data warehouse (con area intermedia e data mart)

È possibile personalizzare l'architettura del warehouse per gruppi diversi all'interno dell'organizzazione. È possibile raggiungere questo obiettivo trasportando i dati nel warehouse in data mart, che sono database indipendenti progettati per un'azienda o un progetto specifico. In genere, i data mart includono molte tabelle di riepilogo. La Figura 20-5 separa le informazioni su acquisti, vendite e inventario in data mart indipendenti. Un analista finanziario può eseguire query sui data mart per ottenere informazioni cronologiche su acquisti e vendite.

Figura 5: Architettura di un data warehouse con area intermedia e data mart

Descrizione dell'illustrazione cncpt172.gif

Vedi anche: Oracle AI Database Data Warehousing Guide per scoprire i meccanismi di trasformazione

Panoramica su estrazione, trasformazione e caricamento (ETL)

Il processo di estrazione dei dati dai sistemi di origine e di inserimento nel warehouse è comunemente chiamato ETL: estrazione, trasformazione e caricamento. ETL si riferisce a un processo ampio piuttosto che a tre fasi ben definite.

In uno scenario tipico, i dati di uno o più sistemi operativi vengono estratti e quindi trasportati fisicamente al sistema di destinazione o a un sistema intermedio per l'elaborazione. A seconda del metodo di trasporto, alcune trasformazioni possono verificarsi durante questo processo. Ad esempio, un'istruzione SQL che accede direttamente a una destinazione remota tramite un gateway può concatenare due colonne come parte dell'istruzione SELECT.

Oracle AI Database non è di per sé uno strumento ETL. Tuttavia, Oracle AI Database offre un ricco set di funzionalità utilizzabili dagli strumenti ETL e dalle soluzioni ETL personalizzate. Le funzionalità ETL fornite da Oracle AI Database includono:

Vedere anche:

Business Intelligence

La Business intelligence è l'analisi delle informazioni di un'organizzazione come aiuto per prendere decisioni aziendali.

Le applicazioni analitiche e la business intelligence sono dominate dal drilling verso l'alto e verso il basso delle gerarchie e dal confronto dei valori aggregati. Oracle AI Database fornisce diverse tecnologie per supportare tali operazioni.

SQL analitico

Oracle AI Database ha introdotto molte operazioni SQL per l'esecuzione di operazioni analitiche. Queste operazioni includono classificazione, medie mobili, somme cumulative, rapporto-report e confronti periodo su periodo.

Ad esempio, Oracle AI Database supporta le seguenti forme di SQL analitico.

Tabella 5 SQL analitico

Tipo di SQL analitico Descrizione Per saperne di più
SQL per l'aggregazione Una funzione aggregata, ad esempio COUNT, restituisce una singola riga dei risultati in base a un gruppo di righe. L'aggregazione è fondamentale per il data warehousing. Per migliorare le prestazioni di aggregazione in un warehouse, il database fornisce estensioni alla clausola GROUP BY per semplificare e velocizzare l'esecuzione di query e report. Oracle AI Database Data Warehousing Guide per ulteriori informazioni sull'aggregazione
SQL per l'analisi Una funzione analitica, ad esempio MAX, aggrega un gruppo di righe (chiamata finestra) per restituire più righe come set di risultati. Oracle dispone di funzionalità di elaborazione analitica SQL avanzate che utilizzano una famiglia di funzioni SQL analitiche. Ad esempio, queste funzioni analitiche consentono di calcolare classificazioni, percentili e finestre mobili. Oracle AI Database Data Warehousing Guide per ulteriori informazioni su SQL per l'analisi e il reporting
SQL per la modellazione Con la clausola MODEL è possibile creare un array multidimensionale dai risultati delle query e applicare regole a questo array per calcolare nuovi valori. Ad esempio, è possibile suddividere i dati in una vista vendite per paese ed eseguire un calcolo del modello, come definito da più regole, in ogni paese. Una regola potrebbe calcolare le vendite di un prodotto nel 2008 come somma delle vendite nel 2006 e nel 2007. Oracle AI Database Data Warehousing Guide per ulteriori informazioni sulla modellazione SQL

Vedi anche: Oracle AI Database SQL Language Reference per informazioni sulle funzioni SQL

Viste analitiche

Le viste analitiche estendono il contenuto dei data set e semplificano lo sviluppo di applicazioni di business intelligence.

Le viste analitiche presentano le caratteristiche riportate di seguito.

Vedi anche: Oracle AI Database Data Warehousing Guide per una panoramica delle viste analitiche

Oracle Advanced Analytics

L'opzione Oracle Advanced Analytics estende Oracle AI Database in una piattaforma di analytics avanzata completa per l'analisi dei big data.

Oracle Advanced Analytics offre analytics predittivi, data mining, text mining, analisi statistica, calcoli numerici avanzati e grafica interattiva all'interno del database. Oracle Advanced Analytics include i componenti riportati di seguito.

Oracle Data Mining

Nella business intelligence, il data mining è l'uso di sofisticati algoritmi matematici per segmentare i dati e valutare la probabilità di eventi futuri.

Le applicazioni tipiche del data mining includono call center, ATM, E-business relaational management (ERM) e pianificazione aziendale. Oracle Data Miner consente agli analisti di dati di analizzare rapidamente i dati, individuare i clienti migliori, combattere le frodi e trovare correlazioni e pattern importanti che possono aiutare le loro aziende a competere meglio.

Oracle Data Mining fornisce algoritmi di data mining che vengono eseguiti come funzioni SQL native per la creazione di modelli nel database e la distribuzione di modelli ad alte prestazioni. Oracle Data Mining è in grado di estrarre tabelle, viste, schemi a stella, dati transazionali e dati non strutturati.

Oracle Data Mining supporta un'API PL/SQL e funzioni SQL per il punteggio dei modelli. Pertanto, Oracle AI Database fornisce un'infrastruttura che consente agli sviluppatori di applicazioni di integrare il data mining senza problemi con le applicazioni di database.

Oracle Data Miner, un'estensione SQL Developer, fornisce una GUI per Oracle Data Mining.

Vedere anche: Oracle Machine Learning for SQL Concepts

Oracle Machine Learning for R

R è un linguaggio e un ambiente open source per l'elaborazione statistica e la grafica. Oracle Machine Learning for R rende R pronta per l'azienda e i big data.

Progettato per i problemi che coinvolgono grandi quantità di dati, Oracle Machine Learning for R integra R con Oracle AI Database. È possibile eseguire comandi e script R per analisi statistiche e grafiche sui dati memorizzati in Oracle AI Database. Puoi anche sviluppare, perfezionare e distribuire script R che sfruttano il parallelismo e la scalabilità del database per automatizzare l'analisi dei dati. Gli analisti di dati possono eseguire pacchetti R e sviluppare script R per applicazioni analitiche in un unico passaggio senza dover imparare SQL.

Vedere anche: Oracle Machine Learning for R User's Guide

Panoramica di Oracle Information Integration

Man mano che un'organizzazione si evolve, diventa sempre più importante per essa essere in grado di condividere informazioni tra più database e applicazioni.

Gli approcci di base per la condivisione delle informazioni sono i seguenti:

Questa sezione è incentrata sulle soluzioni Oracle per la federazione e la condivisione delle informazioni.

Accesso federato

La base dell'accesso federato è un ambiente distribuito, che è una rete di sistemi eterogenei che comunicano perfettamente tra loro.

Ogni sistema nell'ambiente è denominato nodo. Il sistema a cui è collegato direttamente un utente è denominato sistema locale. I sistemi aggiuntivi a cui questo utente accede sono sistemi remoti.

Un ambiente distribuito consente alle applicazioni di accedere e scambiare dati dai sistemi locali e remoti. Tutti i dati possono essere consultati e modificati contemporaneamente.

SQL distribuito

Distributed SQL accede e aggiorna in modo sincrono i dati distribuiti tra più database. Un sistema di database distribuito Oracle può essere trasparente per gli utenti, facendolo apparire come un singolo database Oracle.

Distributed SQL include query distribuite e transazioni distribuite. L'architettura di database distribuito di Oracle offre trasparenza a livello di query e transazioni. Ad esempio, le istruzioni DML standard funzionano esattamente come in un ambiente di database non distribuito. Inoltre, le applicazioni controllano le transazioni utilizzando le istruzioni SQL standard COMMIT, SAVEPOINT e ROLLBACK.

Vedere anche:

Database link

Un database link è una connessione tra due database fisici che consente a un client di accedervi come un unico database logico.

Oracle AI Database utilizza i database link per abilitare gli utenti in un database l'accesso agli oggetti in un database remoto. Un utente locale può accedere a un collegamento a un database remoto senza essere un utente nel database remoto. La Figura 20-6 mostra un esempio di accesso dell'utente hr alla tabella employees nel database remoto con il nome globale hq.example.com. Il sinonimo employees nasconde l'identità e la posizione dell'oggetto schema remoto.

Figura 6: Database Link

Descrizione dell'illustrazione cncpt243.gif

Vedere anche: Oracle AI Database Administrator's Guide per informazioni sui database link

Condivisione informazioni

Al centro di qualsiasi integrazione c'è la condivisione dei dati tra le applicazioni dell'azienda.

Oracle GoldenGate

Oracle GoldenGate è un prodotto di replica dei dati asincrono, basato su log e in tempo reale.

Oracle GoldenGate sposta elevati volumi di dati transazionali in tempo reale in ambienti di database, hardware e sistemi operativi eterogenei con un impatto minimo. Ottimizza l'accesso e la disponibilità delle informazioni in tempo reale perché:

Un ambiente tipico include un processo di acquisizione, pompa e consegna. Ogni processo può essere eseguito sulla maggior parte dei sistemi operativi e database più diffusi, inclusi database Oracle e database non Oracle. Alcuni o tutti i dati possono essere replicati. I dati all'interno di uno qualsiasi di questi processi possono essere manipolati sia per ambienti eterogenei che per schemi di database diversi.

Oracle GoldenGate supporta la replica con più siti principali, la distribuzione hub e spoke, il consolidamento dei dati e la trasformazione dei dati. Pertanto, Oracle GoldenGate ti consente di garantire che i tuoi sistemi strategici siano operativi 24/7 e che i dati associati siano distribuiti in tutta l'azienda per ottimizzare il processo decisionale.

Vedere anche:

Code di eventi transazionali e accodamento avanzato (AQ) di Oracle AI Database

Oracle AI Database Transactional Event Queues and Advanced Queuing (AQ) è un sistema di accodamento dei messaggi solido e ricco di funzionalità integrato con Oracle AI Database.

Quando un'organizzazione dispone di sistemi diversi che devono comunicare tra loro, un ambiente di messaggistica può fornire un modo standard e affidabile per trasportare informazioni critiche tra questi sistemi.

Un caso d'uso di esempio è un'azienda che inserisce ordini in un database Oracle presso la sede centrale. Quando viene inserito un ordine, l'azienda utilizza AQ per inviare l'ID ordine e la data dell'ordine in un database situato in un'altra sede. Tali messaggi avvisano i dipendenti del magazzino degli ordini, in modo che possano evaderli e spedirli.

Accodamento e rimozione dalla coda dei messaggi

Oracle AI Database Transactional Event Queues e Advanced Queuing memorizzano i messaggi utente in unità di storage astratte chiamate queues.

L'accodamento è il processo mediante il quale i producer inseriscono i messaggi nelle code. La rimozione dalla coda è il processo mediante il quale i consumer recuperano i messaggi dalle code.

Il supporto per la rimozione dalla coda esplicita consente agli sviluppatori di utilizzare XStream e Oracle GoldenGate per scambiare messaggi in modo affidabile. Possono inoltre notificare alle applicazioni le modifiche utilizzando le funzioni di acquisizione e propagazione delle modifiche di Oracle GoldenGate. La Figura 20-7 mostra un'applicazione di esempio che accoda e rimuove in modo esplicito i messaggi tramite l'accodamento avanzato, consentendo di condividere le informazioni con i partner utilizzando sistemi di messaggistica diversi. Dopo essere stati accodati, i messaggi possono essere trasformati e propagati prima di essere rimossi dalla coda all'applicazione del partner.

Figura 7: Accodamento dei messaggi Oracle

Descrizione dell'illustrazione cncpt310.gif

Code di eventi transazionali di Oracle AI Database e funzioni avanzate di accodamento avanzato

Oracle AI Database Transactional Event Queues e Advanced Queuing (AQ) supportano tutte le funzioni standard dei sistemi di accodamento dei messaggi.

Queste funzioni includono le operazioni seguenti:

Vedi anche: Oracle AI Database Transactional Event Queues and Advanced Queuing User's Guide


Legenda nota a piè di pagina

Nota a piè di pagina 1:

Creare il data warehouse, John Wiley e Sons, 1996.