Oracle Utility: SQL*Loader

Slides:



Advertisements
Presentazioni simili
Trieste, 26 novembre © 2005 – Renato Lukač Using OSS in Slovenian High Schools doc. dr. Renato Lukač LinuxDay Trieste.
Advertisements

Sfogliandomi… Viaggio tra me e me alla scoperta dellaltro… A travel between me and myself discovering the other…
Preposizioni semplici e articolate
Logistica collaborativa per i distretti industriali.
Cache Memory Prof. G. Nicosia University of Catania
Teoria e Tecniche del Riconoscimento
1 Teaching Cloud Computing and Windows Azure in Academia Domenico Talia UNIVERSITA DELLA CALABRIA & ICAR-CNR Italy Faculty Days 2010.
Luca Bianchi Windows Development Day Bologna 28 gennaio 2005 SQL Server Desktop Engine (MSDE) & SQL Server 2005 Express.
A. Oppio, S. Mattia, A. Pandolfi, M. Ghellere ERES Conference 2010 Università Commerciale Luigi Bocconi Milan, june 2010 A Multidimensional and Participatory.
EBRCN General Meeting, Paris, 28-29/11/20021 WP4 Analysis of non-EBRCN databases and network services of interest to BRCs Current status Paolo Romano Questa.
DG Ricerca Ambientale e Sviluppo FIRMS' FUNDING SCHEMES AND ENVIRONMENTAL PURPOSES IN THE EU STRUCTURAL FUNDS (Monitoring of environmental firms funding.
SQL (Standard query language) Istruzioni per la creazione di una tabella: Create table ( tipo, (, [vincoli]) Primary key ( ) CHIVE PRIMARIA Foreign key(
1.E un algoritmo ricorsivo: Tutti le istanze di oggetti raggiungibili da un oggetto persistente diventano anchessi persistenti.
© and ® 2011 Vista Higher Learning, Inc.4B.1-1 Punto di partenza Italian uses two principal tenses to talk about events in the past: the passato prossimo.
© and ® 2011 Vista Higher Learning, Inc.4B.2-1 Punto di partenza The verbs conoscere and sapere both mean to know. The choice of verb depends on its context.
Un DataBase Management System (DBMS) relazionale client/server.
J0 1 Marco Ronchetti - Corso di Formazione Sodalia – Febbraio 2001 – Modulo Web Programming Tomcat configuration.
Directory services Directory offline –Elenchi telefonici –Guide TV –Cataloghi acquisti Directory online –Application specific (lotus notes, MS Exchange.
Biometry to enhance smart card security (MOC using TOC protocol)
Costruzione di Interfacce Lezione 10 Dal Java al C++ parte 1
TIPOLOGIA DELLE VARIABILI SPERIMENTALI: Variabili nominali Variabili quantali Variabili semi-quantitative Variabili quantitative.
LInnovazione di Prodotto. Lo sviluppo di nuovi prodotti e nuovi servizi: una vecchia sfida per le imprese innovative. [emilio bellini]
Application Code Dato Table Data Base Trigger Code 1° Controllo Procedure Client Side 3° Controllo Integrity Constraint 2° Controllo Event Driven BUSINESS.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 3 - Functions Outline 3.1Introduction 3.2Program Components in C++ 3.3Math Library Functions 3.4Functions.
SQL Esercitazione per il corso “Basi di Dati” Gabriel Kuper
Magnetochimica AA Marco Ruzzi Marina Brustolon
Introduzione Grid1 Introduzione ai Sistemi Grid. Introduzione Grid2 Generalità Un sistema Grid permette allutente di richiedere lesecuzione di un servizio.
VARO SRL LOGISTIC, QUALITY, SERVICE
National Project – on going results Potenza 7/10 November 06 IT-G2-SIC-066 – Social Enterprise and Local Development.
Le regole Giocatori: da 2 a 10, anche a coppie o a squadre Scopo del gioco: scartare tutte le carte per primi Si gioca con 108 carte: 18 carte.
Players: 3 to 10, or teams. Aim of the game: find a name, starting with a specific letter, for each category. You need: internet connection laptop.
Viste. Cosè una vista? è possibile creare un subset logico di dati o una combinazione di dati una vista è una tabella logica basata su una tabella o su.
PRODOTTO CARTESIANO Otteniamo un prodotto cartesiano quando: viene omessa la condizione di join una condizione di join non è valida tutte le righe della.
Creazione e manipolazione tabelle. TABELLE una tabella può essere creata in qualsiasi momento,anche quando gli utenti stanno usando il database la struttura.
Constraints.
Componenti dell’architettura Oracle
1 Attivita di ricerca Carlo Batini. 2 Aree Come costruire ed esprimere il contenuto informativo integrato di sistemi informativi complessi basati.
LHCf Status Report Measurement of Photons and Neutral Pions in the Very Forward Region of LHC Oscar Adriani INFN Sezione di Firenze - Dipartimento di Fisica.
Concord A tool for the analysis and concordances of the terminological constituents P. Plini, N. Mastidoro* * - Èulogos, Rome Institute for Atmospheric.
Francesca Pizzorni Ferrarese 05/05/2010
Palermo, may 2010 F.Doumaz, S.Vinci (INGV-CNT- Gruppo di telerilevamento)
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea Specialistica in Ingegneria Informatica Analisi e valutazione.
Project Review byNight byNight December 6th, 2011.
Guardate le seguenti due frasi:
Motor Sizing.
Funzioni stringhe. chr Restituisce il carattere di un valore ascii dato. Per vedere lelenco dei codici ascii clicca QQQQ uuuu iiiiEsempio
Tutor: Elisa Turrini Mail:
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 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.
UG40 Energy Saving & Twin Cool units Functioning and Adjustment
Dato Table Data Base Application Code 1° Controllo Procedure Client Side 3° Controllo Integrity Constraint Trigger Code 2° Controllo Event Driven BUSINESS.
1 Basi di dati (Sistemi Informativi) Scuola di Dottorato in Scienze Veterinarie per la Salute Animale e la Sicurezza Alimentare a.a Ing. Mauro.
Data Warehousing con ORACLE
Analysis and Development of Functions in REST Logic: Application to the «DataView» Web App UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA DIPARTIMENTO.
Collection & Generics in Java
LA WEB RADIO: UN NUOVO MODO DI ESSERE IN ONDA.
SQL Developer Lanciare sqldeveloper (alias sul desktop) / c:\Oracle\sqldeveloper Associare tutti i tipi di file, se volete Tasto destro sulla spina “connection”
Guida alla compilazione del Piano di Studi Curricula Sistemi per l’Automazione Automation Engineering.
Lezione n°27 Università degli Studi Roma Tre – Dipartimento di Ingegneria Corso di Teoria e Progetto di Ponti – A/A Dott. Ing. Fabrizio Paolacci.
Italian 1 -- Capitolo 2 -- Strutture
Dynamic SQL.
Do You Want To Pass Actual Exam in 1 st Attempt?.
X. Specifications (IV).
Studente : Andrea Cassarà Classe: 5AII A.S. 2014/2015 Link Sito
Accesso al corpus it. / ing. parola cercata sintagmi preposizioni.
Information In March we decided to start to work on this topic in strong collaboration with Roma 1 group: Ferrante (50-70%), Braccini (50-70%), Torre (100%),
Transcript della presentazione:

Oracle Utility: SQL*Loader Control File Input Data Files SQL*Loader Log File Discard Files Bad Files Tables Indexes Data Base

Data Base Record KO OK SQL*Loader Field Processing Bad SQL*Loader When Clause Discard SQL*Loader DML Inserting Data Base

sqlldr ... Valid Keywords: Userid -- ORACLE username/password control -- Control file name log -- Log file name bad -- Bad file name data -- Data file name discard -- Discard file name discardmax -- Number of discards to allow (Default all) skip -- Number of logical records to skip (Default 0) load -- Number of logical records to load (Default all) errors -- Number of errors to allow (Default 50) rows -- Number of rows in conventional path bind array or between direct path data saves (Default: Conventional path 64, Direct path all) silent -- Suppress messages during run (header,feedback,errors,discards,partitions) direct -- use direct path (Default FALSE) parfile -- parameter file: name of file that contains parameter specifications

-- Loads EMP records from first 23 characters -- Creates and loads PROJ records for each PROJNO listed -- for each employee LOAD DATA INFILE ’ulcase5.dat’ BADFILE ’ulcase5.bad’ DISCARDFILE ’ulcase5.dsc’ REPLACE INTO TABLE emp (empno POSITION( 1: 4) INTEGER EXTERNAL, ename POSITION( 6:15) CHAR, deptno POSITION(17:18) CHAR, mgr POSITION(20:23) INTEGER EXTERNAL) INTO TABLE proj -- PROJ has two columns, both not null: EMPNO and PROJNO WHEN projno != ’ ’ projno POSITION(25:27) INTEGER EXTERNAL) -- 1st proj projno POSITION(29:31) INTEGER EXTERNAL) -- 2nd proj projno POSITION(33:35) INTEGER EXTERNAL) -- 3rd proj

External Tables Concepts The Oracle9i external tables feature is a complement to existing SQL*Loader functionality. It allows you to access data in external sources as if it were in a table in the database. External tables are read-only. No data manipulation language (DML) operations or index creation is allowed on an external table. Therefore, SQL*Loader may be the better choice in data loading situations that require additional indexing of the staging table. To use the external tables feature, you must have some knowledge of the file format and record format of the datafiles on your platform. You must also know enough about SQL to be able to create an external table and execute DML statements that access the external table.

CREATE TABLE empxt (empno NUMBER(4), ename VARCHAR2(10), job VARCHAR2(9), mgr NUMBER(4) ) ORGANIZATION EXTERNAL ( TYPE ORACLE_LOADER DEFAULT DIRECTORY dat_dir ACCESS PARAMETERS records delimited by newline badfile dat_dir:'empxt%a_%p.bad' logfile dat_dir:'empxt%a_%p.log' fields terminated by ',' missing field values are null ( empno, ename, job, mgr ) LOCATION ('empxt1.dat') REJECT LIMIT UNLIMITED;

Data Warehousing

DataWarehouse Discoverer Development Tool Forms& Reports PL/SQL Pro*C S.Q.L.

fasi del processo di integrazione... di piattaforme e applicazioni: Intranet Integrazione di dati: Data Warehouse OLAP su Web Integrazione di dati: Data Warehouse

Data Warehouse Definition Un DWH raccoglie i dati da diverse sorgenti trasformandoli in un formato consistente ed omogeneo. Ogni Punto nel “Cubo” contiene “Fact Data” per una particolare combinazione di n “Dimension Data”. Nel caso a 3 dimensioni riportato a lato in particolare troviamo dati statistici organizzati per Product, Market, Time.

Data Warehouse Data Mart data entry Extraction, Transformation Loading reports integrati ed analisi on-line interrogazioni e reports Ambiente di reporting e Decision Support System O.L.A.P. Sistema transazionale Strumenti per l’analisi on-line dei dati con caratteristiche di efficienza, facilità d’uso ed elaborazione grafica O.L.T.P.

Sistema transazionale Reporting tools Sistema transazionale Decision Support System Database operazionale Data Warehouse Meta Data Estrazione Trasformazione Trasporto

Architettura tipica di un DWH

Cosa è successo? Perchè è successo? Cosa accadrebbe se? Oracle Reports IT Sviluppa Utenti Consultano Quanto abbiamo venduto l’anno scorso? Utenti evoluti Chi ha contribuito all’aumento delle vendite? Analisti Quanto si prevede di vendere quest’anno in base al trend attuale? Cosa è successo? Perchè è successo? Cosa accadrebbe se? Tactical Strategic Operational Reporting Standard Analisi e Domande ad hoc Analisi Avanzate Oracle Reports Oracle Discoverer Oracle Express

differenti requisiti di hardware, storage e tuning Differenze di un data warehouse rispetto ad un database operazionale: differenti requisiti di hardware, storage e tuning differente modellazione dei dati diversi strumenti di interrogazione e reporting

Data Mart Schema composto da una o più tabelle dei FATTI contenenti l’elemento quantitativo e diverse tabelle delle DIMESIONI rappresentanti un tipo di gerarchia. Schema a stella (star schema) Più stelle collegate prendono il nome di costellazioni

Star queries Il processo di join di Oracle per N tabelle è quello di creare dei risultati intermedi considerando in join due tabelle per volta (pair-wise). Con l’ottimizzazione delle star query Oracle si riserva di mettere in join la tabella dei fatti per ultimo essendo quella di maggiori dimensioni.

Schema a Stella (Star Schema)

Star Schema Example Oracle9i

Data Warehousing con ORACLE Viste materializzate / Snapshots Tabelle partizionate Tabelle Organizzate ad Indice Cluster Star query Indici Function Based Read only tablespaces

Oracle Architectural Components (Logical) DataBase Tablespace DataFile Oracle Block O.S. Block Partition Owner Schema Segment Extent Table Index Cluster Snapshot

CREATE TABLE sales ( invoice_no CREATE TABLE sales ( invoice_no NUMBER NOT NULL, sale_year NUMBER NOT NULL, sale_month NUMBER NOT NULL, sale_day NUMBER NOT NULL ) PARTITION BY RANGE (sale_year, sale_month, sale_day) ( PARTITION sales_q1 VALUES LESS THAN (1998, 04, 01) TABLESPACE tsa STORAGE (……….), PARTITION sales_q2 VALUES LESS THAN (1998, 07, 01) TABLESPACE tsb STORAGE (……….), PARTITION sales_q3 VALUES LESS THAN (1998, 10, 01) TABLESPACE tsc STORAGE (……….), PARTITION sales_q4 VALUES LESS THAN (1999, 01, 01) TABLESPACE tsd STORAGE (……….) );

Maintaining Partitions This section describes how to perform the following specific partition maintenance operations: Moving Partitions Adding Partitions Dropping Partitions Coalescing Partitions Modifying Partition Default Attributes Truncating Partitions Splitting Partitions Merging Partitions Exchanging Table Partitions

Index-Organized Tables Regular table access IOT access ROWID Non-key columns Key column Row header

Index-Organized Tables Compared with Regular Tables Faster key-based access to table data Reduced storage requirements Main restrictions: Must have a primary key Cannot use unique constraints Cannot be clustered

Creating Index-Organized Tables SQL> create table sales 2 (office_cd number(3) 3 ,qtr_end date 4 ,revenue number(10,2) 5 ,constraint sales_pk 6 PRIMARY KEY (office_cd,qtr_end) 7 ) 8 ORGANIZATION INDEX 9 tablespace indx 10 storage (…);

Cluster Use clusters to store one or more tables that: 1) Are primarily queried 2) Not predominantly inserted into or updated 3) Which the queries often join data of multiple tables in the cluster.

CREATE CLUSTER emp_dept (deptno NUMBER(3)) PCTFREE 5 TABLESPACE users STORAGE (INITIAL n NEXT m MINEXTENTS 1 MAXEXTENTS 121 PCTINCREASE 0 ); CREATE TABLE dept (deptno NUMBER(3) PRIMARY KEY, . . ) CLUSTER emp_dept (deptno); CREATE TABLE emp (empno NUMBER(5) PRIMARY KEY, ename VARCHAR2(15) NOT NULL, . . . deptno NUMBER(3) REFERENCES dept)

CREATE INDEX emp_dept_index ON CLUSTER emp_dept TABLESPACE users STORAGE (INITIAL n NEXT m MINEXTENTS 1 MAXEXTENTS 121 PCTINCREASE 0) PCTFREE 5;

Index Function Based Features of Function-Based Indexes Function-based indexes allow you to: 1) More powerful 2) Precompute the value of a computationally intensive function and store it in the index 3) Increase the number of situations where the optimizer can perform a range scan instead of a full table scan You must have the following initialization parameters defined to create a function-based index: *) QUERY_REWRITE_ENABLED set to TRUE *) COMPATIBLE set to 8.1.0.0.0 or a greater value

Index Function Based Example: Function-Based Index for Case Insensitive Searches The following statement creates function-based index idx on table emp based on an uppercase evaluation of the ename column: CREATE INDEX idx ON emp (UPPER(ename)); Now the SELECT statement uses the function-based index on UPPER(ename) To retrieve all employees with names that start with JOH: SELECT * FROM emp WHERE UPPER(ename) LIKE 'JOH%'; Example: Precomputing Arithmetic Expressions with a Function-Based Index This statement creates a function-based index on an expression: CREATE INDEX idx ON t (a + b * (c - 1), a, b); SELECT statements can use either an index range scan (in the following SELECT statement the expression is a prefix of the index) or index full scan (preferable when the index specifies a high degree of parallelism). SELECT a FROM t WHERE a + b * (c - 1) < 100;

Discoverer Architecture Viewer edition User edition Administration edition End User Layer Business Area Database (OLTP, Data Warehouse, Data Mart) Database Complexity is Hidden From Users Data Base DWH

Data Warehouse Tools Low-end OLAP Tools per Simple Queries e Reports ad hoc Adeguati per rispondere a domande della tipologia “che cosa?” Powerful Multi-Dimensional Analysis OLAP Tools Supportano “drill down” in “detail data” per rispondere a domande della tipologia “perche?” e “come?” 1. The tools should be fast ( i.e., targeted to deliver most responses to users within about five seconds, with the simplest analyses taking no more than one second and very few taking more than 20 seconds). 2. The tools can cope with any business logic and statistical analysis that is relevant for the application and the user, and keep it easy enough for the target user. The tools should allow the user to define new ad hoc calculations as part of the analysis and to report on the data in any desired way, without having to program. 3. The tool should operated in a shared mode and implement all the security requirements for confidentiality (possibly down to cell level). 4. The system must provide a multidimensional conceptual view of the data, including full support for hierarchies and multiple hierarchies. 5. The tool can handle all the data and derived information needed, wherever it is and however much is relevant for the application. The tool should be graded on how much input data it can handle, not how many Gigabytes needed to store it.

OLAP Tools Slicing del “Cubo” Pivot Ruotare l’approccio visuale di un punto del cubo stesso al fine di ottenere una nuova prospettiva Drill-Down Slicing a Data Cube

Data Reconciliation Steps

Data Reconciliation Process Capture Static - initial load Incremental - ongoing update Scrub or data cleansing Pattern recognition and other artificial intelligence techniques Transform Convert the data format from the source to the target system Record-Level Functions Selection Joining Aggregation (for data marts) Field-Level Functions Single-field transformation Multi-field transformationn Errors and inconsistencies that are commonly found when scrubbing operational data: Misspelled names and addresses. Impossible or erroneous dates of birth. Fields used for purposes for which they were never intended. Mismatched addresses and area codes. Missing data.