Oracle Lessons

Lezioni Pratiche in Italiano

Creato da Pietro_Bonfigli il 11/03/2009

Area personale

 

Tag

 

Archivio messaggi

 
 << Luglio 2024 >> 
 
LuMaMeGiVeSaDo
 
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
 
 

Cerca in questo Blog

  Trova
 

FACEBOOK

 
 

Ultime visite al Blog

marcop1973pixfaxhellingen666RiukaTerzo_Blog.GiusFDMDMFqwerty_alnicola.cambaraFilippoPaganellifrancocapoluanadiciommoaleale78alebherryraffaelesoldanoio_brina
 

Chi puņ scrivere sul blog

Solo l'autore puņ pubblicare messaggi in questo Blog e tutti gli utenti registrati possono pubblicare commenti.
 
RSS (Really simple syndication) Feed Atom
 
 

 

« Oracle Tabelle Esterne Lezione 4Oracle Tabelle Esterne Appendice »

Oracle Tabelle Esterne Lezione 5

Post n°25 pubblicato il 09 Agosto 2010 da Pietro_Bonfigli
 

 

Limitazioni, vantaggi e usi possibili delle tabelle esterne.

 

Le più importanti limitazioni che abbiamo sulle tabelle esterne sono le seguenti:

  1. Le tabelle esterne sono soggette a limitazioni che potrebbero renderle inadatte per alcune applicazioni per l’elaborazione di transazioni in linea: se nel corso di una transazione viene modificato il contenuto di una tabella esterna sostituendo il file a cui si riferisce, la transazione potrebbe perdere la sua consistenza;

  2. Nelle tabelle esterne non si possono effettuare operazioni di aggiornamento o cancellazione.

  3. Più dinamica è l’informazione contenuta in una tabella esterna meno appropriato è il suo uso.

  4. Le tabelle esterne non possono essere indicizzate, quindi se il numero dei record presenti è consistente i tempi di accesso all’informazione possono degradare;

  5. In una tabella esterna non è possibile specificare dei vincoli. Persino il tentativo di creare un vincolo not null o quello di definizione di chiave esterna avrà esito negativo;

  6. Per analizzare una tabella esterna si deve utilizzare il package DBMS_STAT, non è possibile analizzarla con il comando analyze;

 

Nonostante queste limitazioni, le tabelle esterne mettono a disposizione molte soluzioni utili:

  1. possono essere messe in join con altre tabelle esterne o con tabelle standard. Si può anche ricorre ai suggerimenti per costringere lì ottimizzatore a scegliere percorsi di join differenti, e i risultati saranno visibili nei percorsi di esecuzione delle query;

  2. come alternativa al caricamento dei dati, le tabelle esterne offrono ai DBA e agli sviluppatori delle applicazioni la possibilità di accedere ai dati senza dover sviluppare programmi di caricamento;

  3. dato che i file possono essere modificati a livello di sistema operativo, è possibile sostituire i dati di una tabella molto rapidamente senza doversi preoccupare delle transazioni in sospeso che modificano la tabella;

  4. se il file contiene molti record, è possibile frammentarlo su più file, sui quali costruire più tabelle esterne e successivamente un'unica vista in union all, dando così origine ad una vista di partizione tra più file (il cui accesso è più veloce considerando il parallelismo).

  5. se il partizionamento in più file di un file contenente molti record segue logiche opportune, si potranno gestire i dati di ogni tabella separatamente, a livello di file system, sostituendone il contenuto in base alle esigenze.

  6. considerata la possibilità di eseguire una query su di una tabella esterna, quest’ultima potrà fungere da origine di dati per un comando “insert as select”. Per migliorare ulteriormente le prestazioni dell’operazione “insert as select”, si dovrebbe usare il suggerimento APPEND per forzare gli inserimenti a livello di blocco;

  7. quando si specifica il grado di parallelismo per l’operazione “insert as select”, Oracle avvia più driver di accesso ORACLE_LOADER, per elaborare i dati in parallelo;

  8. la disattivazione di “badfile” (con “nobadfile”) elimina i costi associati alla creazione di file e alla gestione del contesto della riga originale.

  9. durante l’operazione “insert as select” si possono eseguire funzioni sui dati mentre questi vengono elaborati. Queste funzioni possono essere inserite nella definizione della tabella esterna. Questa capacità sottolinea un vantaggio importante garantito dalle tabelle esterne, ossia la possibilità di centralizzare i requisiti di rappresentazione e elaborazione dei dati, creando così le routine di conversione nelle definizioni delle tabelle.

  10. nelle query le tabelle esterne consento di selezionare gruppi di dati specifici tramite la clausola “load when”;

  11. la possibilità di accedere in modo limitato ai dati consente di definire delle regole di sicurezza anche per i dati esterni (ad esempio si potrebbe pensare di tenere dei dati riservati fuori dal database in una directory sicura dove solo alcuni utenti hanno il diritto di accesso in lettura);

 

Se nell’architettura del database si utilizzano tabelle esterne, ci si dovrà accertare che i piani di backup e recupero, tengano conto anche di questi file. Se i file esterni cambiano più rapidamente di quelli del database, potrebbe essere necessario eseguire dei backup con maggiore frequenza per sfruttare le capacità di completo recupero da parte di oracle.

 
 
 
Vai alla Home Page del blog
 
 

© Italiaonline S.p.A. 2024Direzione e coordinamento di Libero Acquisition S.á r.l.P. IVA 03970540963