Componenti dell’architettura Oracle

Slides:



Advertisements
Presentazioni simili
File system: system call e strutture dati a run-time.
Advertisements

CREAZIONE UTENTE SU ORACLE1 Pagina delle risorse: crea utente oracle ( Password:… Dora in poi, in questi lucidi,
Statistica Descrittiva Con STATA 7
Marco Russo DevLeap 27/03/2017 2:27 AM Il processo di Logon e la sicurezza per l’utente interattivo e per.
Migrare da Oracle a SQL Server con SSMA
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
JPA Overview della tecnologia. Java Persistence Architecture Definita nella JSR-220 EJB 3.0 ( Tentativo di unificare EJB2.1 con.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
E Windows SharePoint Services 2.0 Ivan Renesto Overview how to use Windows SharePoint Services.
Un DataBase Management System (DBMS) relazionale client/server.
Limplementazione del database Oracle in Aleph500 Udine, marzo 2001.
EJB Enterprise Java Beans B. Pernici. Approccio Java.
Model – View - Controller
J0 1 Marco Ronchetti - Basi di Dati Web e Distribuite – Laurea Specialitica in Informatica – Università di Trento.
prompt> java SumAverage
1 struct Pila { private: int size; int defaultGrowthSize; int marker; int * contenuto; void cresci(int increment); public: Pila(int initialSize) ; Pila();
Directory services Directory offline –Elenchi telefonici –Guide TV –Cataloghi acquisti Directory online –Application specific (lotus notes, MS Exchange.
JAVA C import java.util.*; #include <stdio.h>
Citrix Metaframe. Metaframe è la soluzione client-server prodotta dalla Citrix in grado di rendere disponibili applicazioni e desktop a qualsiasi dispositivo.
Programming with JXTA Hello World Peer discovery Peer Group discovery Creating Peer group Joining a Peer Group.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
Gestione File System e I/O in Windows 2000 Implementazione del File System FAT-12, FAT-16, FAT-32 NTFS API relative al File System Gestione dei dispositivi.
Sequence. CREARE UNA SEQUENCE CREATE SEQUENCE nome [INCREMENT BY n] [START WITH n] [MAXVALUE n | NOMAXVALUE] [MINVALUE n | NOMINVALUE] [CYCLE | NOCYCLE]
Constraints.
SQL Server 2012 LocalDB.
Palermo, may 2010 F.Doumaz, S.Vinci (INGV-CNT- Gruppo di telerilevamento)
Un esempio: Registrazione e lettura di dati in un file
Il sistema operativo Sistema operativo (in breve) –È costituito dai programmi di gestione delle operazioni più elementari del computer –… gestione di vari.
Muoversi tra le finestre
JavaScript Lezione 5 Tipizzazione ed operazioni tra tipi diversi Istruzioni di input.
Corso di Elementi di Informatica
Filtered Index and Statistics Filtered Indexes Sergio Govoni
Primi passi con Windows: Gestione del Desktop Barra Applicazioni Menu Avvio ISTITUTO COMPRENSIVO N.7 - VIA VIVALDI - IMOLA Via Vivaldi, Imola.
Sviluppo di una Xlet per la TV digitale terrestre Vademecum della regione marche 2006 Ventura Luca.
Tutorial relativo al Mio EBSCOhost. Benvenuti al tutorial dedicato a Mio EBSCOhost, verranno fornite le istruzioni per la configurazione e lutilizzo ottimizzato.
SQL SERVER 2008 RESOURCE GOVERNOR Francesco Diaz Partner Technical Consultant.
Project Review byNight byNight December 6th, 2011.
Attribution-NonCommercial-ShareAlike Le novità
Attribution-NonCommercial-ShareAlike Le novità
Scoprirete che su Office non si può solo contare ma anche sviluppare.
Personalizzazione e porting delle procedure esterne connesse ad Aleph Il caricamento degli utenti della circolazione da files esterni Modifiche introdotte.
Installazione di Drupal su Linux (sistemista) Installazione step-by-step e note.
Schema logico del data warehouse
VB.NET Sviluppo Applicazioni Desktop
Visual Studio Tools for Office: Developer Solutions Platform Fulvio Giaccari MCSD.NET / MCT Responsabile Usergroup ShareOffice Blog:
SQL Server 2005 Sicurezza Davide Mauri Factory Software
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
Project Review byNight byNight December 21th, 2011.
Project Review byNight byNight December 6th, 2011.
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
Project Review byNight byNight December 5th, 2011.
SUBQUERY Chi ha un salario maggiore di quello di Abel? Occorre scomporre la query in due sotto problemi: MAIN : quali impiegati hanno un salario maggiore.
Customer Support Research & Development Come registrarsi ed entrare in......ITRC.
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
Introduzione al linguaggio C. Cos’e’ il C? Il C e’ un linguaggio ad alto livello Un compilatore C prende in input un file contenente codice sorgente C.
1 Basi di dati (Sistemi Informativi) Scuola di Dottorato in Scienze Veterinarie per la Salute Animale e la Sicurezza Alimentare a.a Ing. Mauro.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 - Protocolli del Web Ernesto Damiani Lezione 3 – Esempi HTTP.
CREAZIONE UTENTE SU DATATOP. CREAZIONE UTENTE Andate su //datatop.di.unipi.it/webdb Login come utente: webdb password: ****** Administer -> User Manager.
SQL Developer Lanciare sqldeveloper (alias sul desktop) / c:\Oracle\sqldeveloper Associare tutti i tipi di file, se volete Tasto destro sulla spina “connection”
CREAZIONE UTENTE SU ORACLE1 Pagina delle risorse: crea utente oracle ( D’ora in poi, in questi lucidi, il vostro utente oracle.
Dynamic SQL.
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
SQL*PLUS Worksheet Permette di:
INTRODUZIONE AL TUNING
Esercizio ODBC. Configurare il driver ODBC Start  Control Panel  Administrative Tools Aprire: Data Source(ODBC) User DSN  Add…. Selezionare il driver.
E 1.1 Esercizo sqlplus CREAZIONE UTENTE Connettetevi alla seguente URL: Identificatevi come: Username:
CREAZIONE UTENTE SU ORACLE1 Lanciate Enterprise Manager Console dal Menu Start -> Programmi -> Oracle - OraHome92 (modalità standalone) Scegliete di adottare.
CREAZIONE UTENTE SU ORACLE1
ORACLE Corso Base Copyright © Maggio 2008 Assi Loris Versione : 1
Transcript della presentazione:

Componenti dell’architettura Oracle INTRODUZIONE Componenti dell’architettura Oracle Istanza Oracle SGA Shared Pool Library Cache Data Dictionary Cache Database Buffer Redo Log Buffer Java Pool Large Pool PMON SMON DBWR LGWR CKPT Altri User process Server process PGA Oracle Server ci sono molti files, processi, strutture di memoria in un Oracle server ma non tutte queste componenti vengono usate per elaborare uno statement SQL. Qualcuna viene usate per incrementare le performance di un database o per assicurare il recovery di un database in caso di errore o per svolgere task necessari alla manutenzione del db. Oracle server è diviso in Oracle Instance e Oracle Database. Oracle Instance un oracle instance è una combinazione di background process e strutture di memoria. L’istanza deve essere fatta partire per poter accedere al database. Ad ogni start di istanza la SGA (System Global Area) viene allocata e partono i processi di background. I processi di background svolgono operazioni di I/O e di monitoring in modo da aumentare le performance in termini di esecuzione parallela di processi.(operazioni di gestione del db) Oracle Database è composto di database files che costituiscono il magazzino delle informazioni. I files di database fanno in modo di mantenere la consistenza dei dati e il recover dei dati in caso di errore. User and server process sono i primi processi invocati quando uno statement SQL viene eseguito. Oracle database Parameter file Archived log files Data files Control files Redo log files Password file

INTRODUZIONE Oracle database Oracle database Data files Control files Redo log files Parameter file Password file Archived log files Lo scopo di un database è immagazzinare dati. Consiste di 3 file differenti: DATA FILES che contengono i dati attuali del db ONLINE REDO LOG FILES che contiene del modifiche fatte al database per permettere il recovery qual’ora si verificasse un errore CONTROL FILES che contiene le informazioni per mantenere e verificare l’integrità del db Oracle server usa inoltre altri file che non sono parte del database PARAMETER FILE che contiene le caratteristiche dell’istanza di database. Per esempio contiene la dimensione della memoria PASSWORD FILE per l’autenticazione degli utenti, contiene le informazioni con i privilegi ARCHIVED REDO LOG copia offline dei redo log files che potrebbe servire per il recovery Un database oracle è una collezione di dati trattati come un’unità Consiste di tre tipi di file differenti

Creazione di una sessione INTRODUZIONE Creazione di una sessione server process Sessione creata Connessione user process Oracle Server Aprendo un tools come ad esempio SQL PLUS o ORACLE FORMS, l’applicazione viene eseguita come USER PROCESS. Quando un utente fa login su oracle server un processo (SERVER PROCESS) viene creato sul computer su cui gira Oracle server. Il server process comunica con il computer utente su cui gira Oracle instance mediante lo user process (che gira sul computer client). Una SESSIONE è la connessione di un utente su Oracle Server. La sessione inizia quando l’utente è validato da Oracle Server e termina con il log off o con un abnormal termination.

INTRODUZIONE Strutture di memoria System Global Area (SGA) viene allocata allo start up di un’istanza è composta da più tipi di strutture di memoria Program Global Area (PGA) viene allocata quando parte il server process può essere usata da un solo processo alla volta

System Global Area (SGA) INTRODUZIONE System Global Area (SGA) E’ composta da: shared pool database buffer cache redo log buffer java pool large pool La SGA contiene le informazioni del database ed è condivisa tra tutti i processi del database. E’ allocata sulla memoria su cui Oracle risiede. Dalla versione 9i la SGA è dinamica nel senso che può essere modificata la configurazione senza dover fare shutdown dell’istanza. In questo modo è possibile riconfigurare i vari componenti senza shutdown.

consiste di due memorie: library cache data dictionary cache INTRODUZIONE Shared Pool contiene dati come esecuzioni di statement SQL che possono essere riusati, package PL/SQL, procedure, funzioni consiste di due memorie: library cache data dictionary cache La SHARED POOL contiene dati che possono essere condivisi globalmente come esecuzioni di statement SQL, package PL/SQL, procedure, funzioni. La LIBRARY CACHE contiene informazioni riguardo gli statement SQL e PL/SQL più recentemente usati. Questa memoria è allocata quando uno statement è eseguito o quando un package PL/SQL viene richiamato. Se a questa memoria viene allocato poco spazio (E’ PICCOLA) gli statement vengono continuamente ricaricati con un conseguente rallentamento delle performance. E’ costituita da due strutture: - SHARED SQL che contiene l’excution plan degli statement SQL eseguiti in modo che la seconda volta che verrà eseguito lo statement verrà ricato anziché essere ri-eseguito. SHARED PL/SQL contiene la compilazione dei package utilizzati DATA DICTIONARY CACHE contiene la descrizione degli oggetti del database. E’ un insieme di tabelle e viste di sola lettura che forniscono informazione sugli oggetti presenti nel database. Il data dictionary è modificato da Oracle server quando un comando DDL viene eseguito. Non è solo importante per Oracle database ma è utile anche agli amministratori di sistema e sviluppatori.

INTRODUZIONE Data Dictionary Cache E’ diviso in due parti: base tables continene le informazioni relative al database sono i primi oggetti creati nel database sono creati automaticamente quando Oracle Server avvia sql.bsq nel momento in cui il db viene creato difficilmente se ne fa l’accesso diretto inquanto la maggiorparte dei dati sono criptati data dictionary views forniscono una visualizzazione utile delle base tables (ad esempio nelle data dictionary views vengono usati object names anziché object numbers) sono create con lo script catalog.sql dopo il comando di CREATE DATABASE

Il data dictionary fornisce informazioni riguardo: INTRODUZIONE Data Dictionary Cache Il data dictionary fornisce informazioni riguardo: strutture fisiche e logiche del database definizione e allocazione degli oggetti integrity constraints users ruoli privilegi auditing Contiene: La definizione di tutti gli oggetti presenti nel database (tabelle, viste, indici, cluster, sinonimi, sequences, procedure, funzioni, package, trigger ect.) Quanto spazio è allocato per ciascun oggetto e quanto è effettivamente usato Valore di default delle colonne Il nome degli utenti oracle Privilegi e ruoli definiti dalle grant auditing information, ad esempio chi ha fatto l’accesso al db quante modifiche sono state fatte Solo Oracle server è in grado di modificare le tabelle, gli utenti possono accedervi in sola lettura per la consultazione e alcune tabelle sono visibili solo all’amministratore di sistema.

Ci sono tre tipi di viste statiche INTRODUZIONE Data Dictionary Cache Ci sono tre tipi di viste statiche DBA_xxx tutti gli oggetti del database ALL_xxx oggetti accessibili dal utente loggato USER_xxx oggetti di cui l’utente è proprietario Le viste con il prefisso DBA sono accessibili solo dall’amministratore di sistema. Esempio : select owner, object_name, object_type from dba_object; Restituisce tutti gli oggetti del database Viste con prefisso ALL from all_object; Viste con prefisso USER: Hanno gli stessi campi delle altre viste tranne owner che è implicito

contiene blocchi di dati elaborati dai datafile INTRODUZIONE Database Buffer Cache contiene blocchi di dati elaborati dai datafile aumenta le performance del database evitando di leggere direttamente dai datafiles gestita mediante algoritmo LRU Quando una query viene elaborata, Oracle server process guarda nella db buffer cache cercando i blocchi di memoria di cui ha bisogno. Se non li trova già allocati, il server process legge i blocchi direttamente dai datafiles e ne mette una copia nella db buffer cache. Così per le seguenti letture degli stessi blocchi verranno già trovati quei blocchi in memoria e non occorreranno letture fisiche direttamente dai datafiles.

principalmente utilizzato per il recovery INTRODUZIONE Redo Log Buffer principalmente utilizzato per il recovery contiene tutte le modifiche fatte al database le modifiche sono chiamate Redo Entries Redo log buffer è un buffer circolare che contiene le modifiche fatte ai bolcchi di database. Le Redo Entries contengono le informazioni necessarie per riportare i dati alla situazione precedente a modifiche fatte come INSERT, UPDATE, DELETE, CREATE, ALTER o DROP.

INTRODUZIONE Large Pool area di memoria opzionale nella SGA usata principalmente per memorizzare shared SQL statement usata per: sessioni di memoria per shared server I/O server process backup and restore operation o per RMAN usata con il parametro PARALLEL_AUTOMATIC_TUNING settato a true

INTRODUZIONE Java Pool è necessaria quando installando Java (altrimenti opzionale) dalla versione 9i, la dimensione è di 24MB

Program (Process) Global Area INTRODUZIONE Program (Process) Global Area memoria riservata per ogni user process collegato con Oracle Database viene allocata alla creazione del processo (server process) deallocata quando il processo viene terminato usata da un processo alla volta Al contrario della SGA che è usata da più processi contemporaneamente, la PGA può essere usata da un solo processo alla volta.

Private SQL Area divisa in: persistent area run-time area INTRODUZIONE Cosa contiene la PGA? Il contenuto della PGA varia dall’istanza su cui sta girando, dipende se è un server dedicato o uno shared server. Private SQL Area divisa in: persistent area run-time area Session memory SQL Work Area ogni sessione che elabora statement SQL ha una private SQL Area. Ogni utente che lancia lo stesso statement SQL ha la propria private SQL Area che usa la stessa SQL area condivisa. Cioè più Private SQL Area possono essere associate nella stessa Shared SQL Area. Divisa in PERSISTENT AREA che contiene bind information e si libera quando il cursore viene chiuso. RUN-TIME AREA che viene creata come primo passo quando viene eseguita una richiesta. Per esempio, per INSERT, UPDATE e DELETE statement, l’area si libera quando lo statement viene eseguito, per le query, l’area è libera solo dopo che tutte le righe sono state visualizzate o quando la query è cancellata. La posizione della PGA dipende dal tipo di connessione. Per il server dedicato la private SQL Area si trova nella PGA, per uno shared server, si trova nella SGA. Session Memory contiene le variabili di sessione e altre informazioni relative alla sessione. SQL Work Area usata per operazioni intensive con la memoria per esempio sort, hash-join.

SQL*PLUS Oracle tool che permette di eseguire SQL statement direttamente su Oracle database. si avvia da Oracle tools o dal prompt del sistema operativo Oracle tool che riconosce ed esegue SQL statement accede a database locali e remoti

SQL*PLUS log in esegue statement SQL, aggiunge, rimuove e modifica dati nel database salva, carica ed esegue script file carica comandi da file nel buffer per essere modificati Oracle proprietary

username : utente database password : password di database SQL*PLUS Log in username : utente database password : password di database @database : database connect string Dal prompt del sistema operativo la stringa per la connessione è: sqlplus [username[/password[@database]]] (la password viene digitata in chiaro, per evitare la visaulizzazione della password inserirla solo nel password prompt)