INDICI PER FILE. Accesso secondario. Strutture ausiliarie di accesso

Размер: px
Начинать показ со страницы:

Download "INDICI PER FILE. Accesso secondario. Strutture ausiliarie di accesso"

Транскрипт

1 INDICI PER FILE Strutture ausiliarie di accesso 2 Accesso secondario Diamo per scontato che esista già un file con una certa organizzazione primaria con dati non ordinati, ordinati o organizzati secondo una funzione di hash. Indici: strutture ausiliarie di accesso Usati per velocizzare l accesso dei record in risposta a determinate condizioni di ricerca Forniscono percorsi di accesso secondari, che offrono metodi alternativi per accedere ai record senza influenzarne la posizione fisica Campi di indicizzazione: vengono utilizzati per costruire un indice Su uno stesso file possono essere costruiti più indici su campi differenti

2 3 Tipi di indici Indici ordinati a un solo livello Indici primari Indici di cluster Indici secondari Indici a più livelli (strutture di dati ad albero) Indici hash Indici bitmap Inoltre: Indice denso: contiene una voce per ogni valore della chiave di ricerca Indice sparso (non denso): contiene voci solo per alcuni valori di ricerca 4 Indici ordinati a un solo livello (1) L idea è simile a quella che sta alla base dell indice analitico di un libro di testo: riporta in ordine alfabetico concetti/ parole fondamentali con l indicazione del numero di pagina in cui compaiono La struttura di accesso a indice è costruita su un campo (campo di indicizzazione) L indice memorizza ogni valore del campo di indicizzazione corredandolo di un elenco di puntatori a tutti i blocchi del disco che contengono un record con quel valore del campo I valori dell indice sono ordinati in modo che si possa fare una ricerca binaria Il file indice è molto più piccolo rispetto al file di dati

3 5 Indice primario Un indice primario è un file ordinato i cui record sono di lunghezza fissa e sono costituiti da due campi Il primo campo: è dello stesso tipo del campo chiave di ordinamento (chiave primaria) Il secondo campo: è un puntatore a un blocco del disco (un indirizzo di blocco) Nel file dell indice esiste una voce per ogni blocco del file di dati. Ogni voce <K(i), P(i)> dove: K(i) è il valore del campo della chiave primaria del primo record del blocco i P(i) è il puntatore al blocco i 6 Lo schema NOME è chiave primaria

4 7 Lo schema 8 Considerazioni su indici primari Il numero di voci dell indice è uguale al numero di blocchi su disco nel file di dati ordinato Il primo record di ciascun blocco è detto record àncora In genere è un indice sparso Un file indice occupa meno blocchi rispetto al file dati: 1. vi sono meno voci dell indice che record nel file dati 2. ogni voce è di dimensione inferiore rispetto a un record (ha solo due campi) Quindi un blocco su disco può contenere più voci dell indice che record del file dati Quindi una ricerca sull indice richiede meno accessi al blocco rispetto a una ricerca binaria su file dati

5 9 Costo di ricerca Ricerca binaria su file di dati ordinato richiede log 2 b accessi a blocco Se il file dell indice primario contiene b i blocchi, la localizzazione di un record richiede: 1. ricerca binaria nel file dell indice 2. accesso al blocco che contiene il record Quindi richiede log 2 b i + 1 accessi a blocco Un record il cui valore della chiave primaria è K si trova nel blocco il cui indirizzo è P(i) la che K(i) K < K(i + 1) 10 Esempio 1 File ordinato con r = record Dimensioni dei blocchi su disco B = 1024 byte I record hanno dimensione fissa e sono indivisibili, lunghezza R = 100 byte Il fattore di blocco è bfr = "(B/R) "= "(1024/100) "= 10 record per blocco Numero blocchi necessari b = (r/bfr) "= (30000/10) "= 3000 blocchi Una ricerca binaria su file dati richiede circa log 2 b "= log "= 12 accessi ai blocchi

6 11 Esempio 1 con indice primario Si supponga che il campo della chiave di ordinamento del file sia lungo V = 9 byte e che un puntatore sia lungo P = 6 byte Indice primario per il file: dimensione di ogni voce R i = (9+6) = 15 byte bfr i = "(B/R i ) "= "(1024/15) "= 68 numero totale delle voci è uguale al numero di blocchi del file dati r i = 3000 Numero di blocchi dell indice b i = (r i /bfr i ) "= (3000/68) "= 45 blocchi Per una ricerca binaria sull indice log 2 b i "= log 2 45 "= 6 accessi ai blocchi Per cercare un record quindi 6+1=7 accessi ai blocchi 12 Problemi con gli indici primari Come per qualsiasi file ordinato il problema è nell inserimento e nell eliminazione dei record Non solo bisogna spostare i record nel file di dati, ma anche cambiare le voci dell indice Si può usare un file di overflow non ordinato

7 13 Indice di cluster Se i record di un file sono ordinati fisicamente rispetto a un campo che non è chiave, quel campo è chiamato campo di raggruppamento (clustering) E possibile creare un indice apposito: indice di clustering Le voci del file indice di cluster hanno la stessa struttura di quelle dell indice primario C è una voce per ogni valore distinto del campo di raggruppamento, questa contiene: 1. Il valore del campo 2. Un puntatore al primo blocco che contiene un record con quel valore del campo di raggruppamento 14 Lo schema

8 15 Lo schema 16 Considerazioni su indici di cluster C è lo stesso problema (dell indice primario) per inserimento e cancellazione Una possibile soluzione è riservare un intero blocco per ciascun valore del campo di raggruppamento È un indice sparso

9 17 Un altro schema (migliorato) L indice di cluster usa un blocco separato per ciascun gruppo di record che condividono lo stesso valore del campo di raggruppamento. Un altro schema (completo) 18

10 19 Indici secondari Un indice secondario fornisce un ulteriore strumento di accesso a un file per cui esiste già un accesso primario L indice è un file ordinato con due campi: 1. Il primo campo è dello stesso tipo di dati di un campo di file di dati (che non viene utilizzato per effettuare l ordinamento del file di dati) chiamato campo di indicizzazione 2. Il secondo campo è un puntatore a un blocco oppure un puntatore a un record Per uno stesso file di dati possono essere creati numerosi indici secondari 20 Indice secondario su campo chiave Indice costruito su un campo che ha un valore distinto per ciascun record: chiave secondaria C è un unica voce nell indice per ogni record del file di dati e questa contiene: Il valore del campo del record Un puntatore al blocco in cui il record è memorizzato È un indice denso Ogni voce è <K(i), P(i)> Le voci sono ordinate in base al valore K(i)

11 21 Lo schema Un indice secondario denso (con puntatori ai blocchi) su un campo chiave sul quale non è stato effettuato un ordinamento del file. Lo schema (completo) 22

12 23 Considerazioni sugli indici secondari Di solito un indice secondario ha bisogno di più spazio e di un tempo di ricerca maggiore rispetto a un indice primario Il miglioramento nel tempo di ricerca di un singolo record è decisamente maggiore per un indice secondario (l alternativa sarebbe una ricerca lineare su tutto il file di dati) 24 Esempio 2 File ordinato con r = record Dimensioni dei blocchi su disco B = 1024 byte I record hanno dimensione fissa e sono indivisibili, lunghezza R = 100 byte Il fattore di blocco è bfr = "(B/R) "= "(1024/100) "= 10 record per blocco Numero blocchi necessari b = (r/bfr) "= (30000/10) "= 3000 blocchi Una ricerca lineare sul file richiederebbe in media b/2 = 3000/2 = 1500 accessi a blocco

13 25 Esempio 2 con indice secondario Si supponga che un campo chiave (su cui costruire indice secondario) del file sia lungo V = 9 byte e che un puntatore sia lungo P = 6 byte Indice secondario per il file: dimensione di ogni voce R i = (9+6) = 15 byte bfr i = "(B/R i ) "= "(1024/15) "= 68 voci per blocco numero totale delle voci è uguale al numero di record del file dati r i = Numero di blocchi dell indice b i = (r i /bfr i ) "= (30000/68) "= 442 blocchi Per una ricerca binaria sull indice log 2 b i "= log "= 9 accessi ai blocchi Per cercare un record quindi 9+1=10 accessi ai blocchi 26 Indice secondario su campo non chiave In questo caso, numerosi record nel file di dati possono avere lo stesso valore del campo di indicizzazione Vi sono varie tecniche per realizzare un indice di questo tipo: 1. Inserire più voci di indice con lo stesso valore di K(i) uno per ciascun record (indice denso) 2. Usare record di lunghezza variabile per le voci dell indice con un campo ricorrente per il puntatore. Nella voce viene tenuta una lista di puntatori a ciascun blocco che ospita un record il cui valore del campo corrisponde a K(i) della voce 3. Voci a lunghezza fissa. Una voce per ciascun valore del campo di indicizzazione, ma creare un ulteriore livello di gestione e accesso ai puntatori multipli (indice sparso). In questo schema ogni puntatore P(i) fa riferimento a un blocco di puntatori ai record

14 27 Lo schema 3 Un indice secondario (con puntatori a record) su un campo non chiave realizzato usando una struttura dati con un ulteriore livello di gestione e accesso in modo che le voci dell indice siano di lunghezza fissa e abbiano valori di campo univoci. Lo schema 3 (completo) 28

15 29 In sintesi 30 In sintesi

16 31 Indici a più di un livello (1) L idea alla base è di ridurre a ogni passo la parte dell indice in cui si continua a cercare di un fattore bfr i (il fattore di blocco dell indice che è maggiore di 2) Lo spazio di ricerca viene ridotto più velocemente bfr i è chiamato fan-out (fo) dell indice multilivello Nota: nella ricerca binaria lo spazio di ricerca viene diviso in due metà a ogni passo, usando l indice multilivello esso viene diviso in fo parti ad ogni passo La ricerca richiede approssimativamente (log fo b i ) accessi ai blocchi 32 Indici a più di un livello (2) Un indice multilivello considera il file dell indice (così come visto finora) come un indice di primo livello di un indice multilivello, come un file ordinato con un valore distinto per ogni K(i) È possibile creare un indice primario per l indice di primo livello: questo è detto secondo livello dell indice multilivello Poiché il secondo livello è un indice primario, si possono utilizzare i punti àncora dei blocchi in modo che il secondo livello contenga una voce per ciascun blocco del primo livello Il bfr i per il secondo livello (e per i successivi) è lo stesso dell indice di primo livello perché tutte le voci hanno la stessa dimensione

17 33 Indici a più di un livello (3) Si può ripetere il procedimento per il secondo livello, creando un terzo livello Il secondo livello è richiesto solo se il primo necessita di più di un blocco di disco Si può ripetere finché tutte le voci di un livello t dell indice possono essere contenute in un singolo blocco Ogni livello riduce il numero di voci del livello precedente di un fattore fo Un indice multilivello con r 1 voci del primo livello avrà approssimativamente t = (log fo (r i )) " 34 Lo schema Indice primario a due livelli simile all organizzazione ISAM (indexed sequential access method, metodo di accesso sequenziale indicizzato).

18 35 Lo schema (completo) 36 Costo per la ricerca Quando si esegue una ricerca sull indice viene reperito un singolo blocco del disco ad ogni livello Per una ricerca sull indice multilivello vengono acceduti t blocchi del disco (dove t è il numero dei livelli dell indice)

19 37 Esempio 3 con indice multilivello Si supponga di trasformare l indice dell esempio 2 in indice multivello, quindi: dimensione di ogni voce R i = (9+6) = 15 byte bfr i = "(B/R i ) "= "(1024/15) "= 68 voci per blocco (fo, fan-out) numero totale delle voci è uguale al numero di record del file dati r i = Numero di blocchi primo livello b 1 = (r 1 /fo) "= (30000/68) "= 442 blocchi Secondo livello b 2 = (b 1 /fo) "= (442/68) "= 7 blocchi Terzo livello b 3 = (b 2 /fo) "= (7/68) "= 1 blocchi Quindi t = 3 Per accedere a un record eseguendo una ricerca nell indice multilivello si accede ai vari livelli più il blocco nel file di dati: t + 1 = = 4 accessi ai blocchi Indici dinamici multilivello implementati con alberi Struttura di dati ad albero che mostra un albero non bilanciato. 38

20 39 Alberi di ricerca (1) Un albero di ricerca di ordine p è un albero tale che ogni suo nodo contiene al massimo p-1 valori di ricerca e i p puntatori sono nell ordine <P 1, K 1, P 2, K 2,,P q-1, K q-1, P q > in cui q p; ogni P i è un puntatore a un nodo figlio (oppure è un puntatore vuoto) e ogni K i è un valore di ricerca preso da un insieme ordinato di valori. Si suppone che tutti i valori di ricerca siano univoci Nodo di un albero di ricerca con i puntatori ai sottoalberi a cui fa riferimento: 40 Alberi di ricerca (2) Devono essere sempre rispettati due vincoli: All interno di ciascun nodo K 1 < K 2 < < K q-1 ; Per tutti i valori di X del sottoalbero ai quali si fa riferimento da P i, si ha: K i-1 < X < K i per 1 < i < q X < K i per i = 1 K i-1 < X per i = q Si può usare un albero di ricerca come meccanismo per ricercare i record immagazzinati in un file su disco I valori dell albero possono essere i valori di uno dei campi del file chiamato campo di ricerca

21 41 Alberi di ricerca (3) Ogni valore chiave dell albero è associato a un puntatore al record nel file di dati (oppure può puntare al blocco del disco che contiene quel record) L albero può essere memorizzato su disco assegnando ogni nodo dell albero a un blocco del disco 42 Esempio: albero di ricerca di ordine p=3

22 43 Alberi B Le strutture dell albero B. (a) Un nodo di un albero B con (q-1) valori di ricerca. (b) Un albero B di ordine p=3. I valori sono stati inseriti nell ordine 8, 5, 1, 7, 3, 12, 9, Alberi B + Nodi di un albero B+. (a) Un nodo interno di un albero B+ con q-1 valori di ricerca. (b) Un nodo foglia di un albero B+ con q-1 valori di ricerca e q-1 puntatori ai dati.

23 45 Alberi B +. Esempio di sequenza di inserimento. Esempio di inserimento in un albero B+ con p=3 e p foglia =2. 46 Indici hash È una struttura secondaria per accedere al file usando l hash su una chiave di ricerca diversa da quella utilizzata per l organizzazione primaria del file di dati Esempio: la funzione di hash (il numero di bucket) è calcolata facendo la somma delle cifre di ID_IMP mod 10

24 Esempio 47

5. Strutture di indici per file

5. Strutture di indici per file 5. Strutture di indici per file I file hanno un'organizzazione primaria, ossia possono essere organizzati su disco in maniera ordinata, non ordinata, oppure a hash. Per velocizzare le operazioni di reperimento

Подробнее

Strutture di accesso ai dati: B + -tree

Strutture di accesso ai dati: B + -tree Strutture di accesso ai dati: B + -tree A L B E R T O B E L U S S I S E C O N D A P A R T E A N N O A C C A D E M I C O 2 0 0 9-2 0 0 Osservazione Quando l indice aumenta di dimensioni, non può risiedere

Подробнее

Strutture fisiche di accesso

Strutture fisiche di accesso Strutture fisiche di accesso Esercitazioni - Basi di dati (complementi) Autore: Dr. Simone Grega Esercizio 1 Siano date le seguenti informazioni: B=4096 bytes la dimensione di un blocco H=12 bytes la dimensione

Подробнее

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato. Il File System Il file system È quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza i concetti

Подробнее

Progettazione Fisica FILE

Progettazione Fisica FILE Progettazione Fisica Organizzazione dei files Organizzazione indici FILE Insieme di record lunghezza fissa (R) lunghezza variabile Record Header BH RH record1 RH record2 RH record2 RH record3 Block Header

Подробнее

TRIE (albero digitale di ricerca)

TRIE (albero digitale di ricerca) TRIE (albero digitale di ricerca) Struttura dati impiegata per memorizzare un insieme S di n stringhe (il vocabolario V). Tabelle hash le operazioni di dizionario hanno costo O(m) al caso medio per una

Подробнее

I B+ Alberi. Sommario

I B+ Alberi. Sommario I B+ Alberi R. Basili (Basi di Dati, a.a. 2002-3) Sommario Indici organizzati secondo B + -alberi Motivazioni ed Esempio Definizione Ricerca in un B + -albero Esempio Vantaggi Inserimento/Cancellazione

Подробнее

Array e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006

Array e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 12 Array e Oggetti A. Miola Dicembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Array e Oggetti 1 Contenuti Array paralleli

Подробнее

LE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve

LE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve LE STRUTTURE DATI DINAMICHE: GLI ALBERI Cosimo Laneve 1 argomenti 1. definizione di alberi e nozioni relative 2. implementazione degli alberi, creazione, visita 3. algoritmo di visita iterativa e sua implementazione

Подробнее

Heap e code di priorità

Heap e code di priorità Heap e code di priorità Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica AA 2009/2010

Подробнее

Alberi binari di ricerca

Alberi binari di ricerca Alberi binari di ricerca Ilaria Castelli [email protected] Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione A.A. 2009/20010 I. Castelli Alberi binari di ricerca, A.A. 2009/20010

Подробнее

Indici ad albero. Albero Binario di Ricerca

Indici ad albero. Albero Binario di Ricerca Indici ad albero Ogni nodo contiene una sequenza di valori ed un insieme di puntatori ai nodi successivi. I valori sono le chiavi di ricerca dell indice N.B. In strutture fisiche ogni nodo corrisponde

Подробнее

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Подробнее

Esercizi Capitolo 7 - Hash

Esercizi Capitolo 7 - Hash Esercizi Capitolo 7 - Hash Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle rispettive

Подробнее

Alberi ed Alberi Binari

Alberi ed Alberi Binari Alberi ed Alberi Binari Il tipo di dato Albero Un albero è una struttura di data organizzata gerarchicamente. È costituito da un insieme di nodi collegati tra di loro: ogni nodo contiene dell informazione,

Подробнее

Esercizio 10.1 Soluzione

Esercizio 10.1 Soluzione Esercizio 10.1 Calcolare il fattore di blocco e il numero di blocchi occupati da una relazione con T = 1000000) di tuple di lunghezza fissa pari a L = 200 byte in un sistema con blocchi di dimensione pari

Подробнее

Architettura degli elaboratori Docente:

Architettura degli elaboratori Docente: Politecnico di Milano Il File System Architettura degli elaboratori Docente: Ouejdane Mejri [email protected] Sommario File Attributi Operazioni Struttura Organizzazione Directory Protezione Il File

Подробнее

Algoritmi e Strutture Dati. HeapSort

Algoritmi e Strutture Dati. HeapSort Algoritmi e Strutture Dati HeapSort Selection Sort: intuizioni L algoritmo Selection-Sort scandisce tutti gli elementi dell array a partire dall ultimo elemento fino all inizio e ad ogni iterazione: Viene

Подробнее

Ripasso Concetti Pratica in Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 3

Ripasso Concetti Pratica in Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 3 ECDL - Database Ripasso European Computer Driving Licence - Modulo 5 - Database LEZIONE 3 Ripasso Cosa sono le relazioni? Come si gestiscono le relazioni in Access? Cosa si intende per query? Come interroghiamo

Подробнее

Prova d Esame Compito A

Prova d Esame Compito A Domanda 1 A) Si richiede di analizzare le seguenti sezioni di codice. Il candidato indichi il risultato dell esecuzione del main. public class Father { private static int counter=0; private int code; public

Подробнее

CORSO ACCESS PARTE IV

CORSO ACCESS PARTE IV Creazione di un database / gestione tabelle Per creare un nuovo database Menu File Selezionare Nuovo Scegliere Database vuoto nella scheda Generale e confermare con Ok Impostare il nome e il percorso nella

Подробнее

INTRODUZIONE ALLE BASI DATI RELAZIONALI

INTRODUZIONE ALLE BASI DATI RELAZIONALI INTRODUZIONE ALLE BASI DATI RELAZIONALI RELAZIONI E TABELLE Nelle BASI DI DATI RELAZIONALI le informazioni sono organizzate in TABELLE; Le tabelle sono rappresentate mediante griglie suddivise in RIGHE

Подробнее

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette. 3.5 STAMPA UNIONE Le funzioni della stampa unione (o stampa in serie) permettono di collegare un documento principale con un elenco di nominativi e indirizzi, creando così tanti esemplari uguali nel contenuto,

Подробнее

Massimo Benerecetti Tabelle Hash: gestione delle collisioni

Massimo Benerecetti Tabelle Hash: gestione delle collisioni Massimo Benerecetti Tabelle Hash: gestione delle collisioni # Lezione n. Parole chiave: Corso di Laurea: Informatica Insegnamento: Algoritmi e Strutture Dati I Email Docente: [email protected] A.A. 2009-2010

Подробнее

La codifica di sorgente

La codifica di sorgente Tecn_prog_sist_inform Gerboni Roberta è la rappresentazione efficiente dei dati generati da una sorgente discreta al fine poi di trasmetterli su di un opportuno canale privo di rumore. La codifica di canale

Подробнее

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI Introduzione alle basi di dati (2) 2 Modelli dei dati, schemi e istanze (1) Nell approccio con basi di dati è fondamentale avere un certo livello di

Подробнее

Definire una chiave primaria. Microsoft Access. Definire una chiave primaria. Definire una chiave primaria. Definire una chiave primaria

Definire una chiave primaria. Microsoft Access. Definire una chiave primaria. Definire una chiave primaria. Definire una chiave primaria Microsoft Access Chiavi, struttura delle tabelle 1. Portare la tabella in Visualizzazione struttura Selezionare la tabella sulla quale si desidera intervenire nella finestra del database Poi: Fare clic

Подробнее

Ordinamenti per confronto: albero di decisione

Ordinamenti per confronto: albero di decisione Ordinamenti per confronto: albero di decisione Albero di decisione = rappresentazione grafica di tutte le possibili sequenze di confronti eseguite da un algoritmo assegnato di ordinamento per confronto

Подробнее

Basi di Dati Complementi Esercizi. Esercizi su strutture fisiche di accesso. Soluzione Esercizio 1. Esercizio 1. Soluzione Esercizio 2.

Basi di Dati Complementi Esercizi. Esercizi su strutture fisiche di accesso. Soluzione Esercizio 1. Esercizio 1. Soluzione Esercizio 2. Basi di Dati Complementi Esercizi Esercizi su strutture fisiche di accesso Esercizio Soluzione Esercizio Siano date le seguenti informaizni: B=4096 bytes la dimensione di un blocco = bytes la dimensione

Подробнее

Sistema Operativo (Software di base)

Sistema Operativo (Software di base) Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Подробнее

C3 IL DBMS MICROSOFT ACCESS

C3 IL DBMS MICROSOFT ACCESS C3 IL DBMS MICROSOFT ACCESS 1 GERARCHIE OBBLIGATORIE Nella progettazione di una base di dati abbiamo moltissimi gradi di libertà ma anche alcune regole rigide che siamo costretti a rispettare. Il primo

Подробнее

Altri metodi di indicizzazione

Altri metodi di indicizzazione Organizzazione a indici su più livelli Altri metodi di indicizzazione Al crescere della dimensione del file l organizzazione sequenziale a indice diventa inefficiente: in lettura a causa del crescere del

Подробнее

Formazione a Supporto dell Inserimento Lavorativo. Elementi di Word avanzato. Docente Franchini Gloria

Formazione a Supporto dell Inserimento Lavorativo. Elementi di Word avanzato. Docente Franchini Gloria Formazione a Supporto dell Inserimento Lavorativo Elementi di Word avanzato Docente Franchini Gloria Impostare i punti di tabulazione Sul righello sono impostati vari punti di Tabulazione. Esistono cinque

Подробнее

Relazioni e tabelle. Introduzione alle Basi di Dati Relazionali. Relazioni uno a uno. Esempio

Relazioni e tabelle. Introduzione alle Basi di Dati Relazionali. Relazioni uno a uno. Esempio Relazioni e tabelle Introduzione alle Basi di Dati Relazionali Nelle Basi di Dati relazionali le informazioni sono organizzate in tabelle Le tabelle sono rappresentate mediante griglie suddivise in colonne

Подробнее

File System. Capitolo 13

File System. Capitolo 13 Capitolo 13 File System Problema 1: Le copie di un file possono essere inconsistenti, quindi per sbaglio si potrebbero leggere dati vecchi. È meglio creare un link a data nella home di ogni utente. Tuttavia,

Подробнее

Il Processore. Informatica di Base -- R.Gaeta 27

Il Processore. Informatica di Base -- R.Gaeta 27 Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Подробнее

CORSO ACCESS 2000 PARTE VI

CORSO ACCESS 2000 PARTE VI Le Query Le Query selezionano dati, da una o più tabelle in un database, che soddisfano determinati requisiti e visualizzano i risultati in un foglio dati. I dati richiesti vengono visualizzati in un recordset

Подробнее

TABELLE RECORD E CAMPI

TABELLE RECORD E CAMPI ACCESS TABELLE RECORD E CAMPI TABELLE: COSTITUISCONO L ELEMENTO PRIMARIO DI OGNI DATABASE, OSSIA L ARCHIVIO IN CUI INSERITI I DATI RELATIVI A UNO SPECIFICO ARGOMENTO. QUERY: ÈUN INTERROGAZIONECHEPERMETTEDIESEGUIRERICERCHEEDESTRAPOLAZIONISUI

Подробнее

Input/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE

Input/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE Input/output da file Il linguaggio C non contiene istruzioni di I/O, in quanto tali operazioni vengono eseguite tramite funzioni di libreria standard. Questo approccio rende estremamente flessibile e potente

Подробнее

L INTERFACCIA GRAFICA DI EXCEL

L INTERFACCIA GRAFICA DI EXCEL Dopo l avvio del foglio elettronico apparirà un interfaccia grafica nella quale verrà aperta una nuova cartella di lavoro alla quale il PC assegnerà automaticamente il nome provvisorio di Cartel1. La cartella

Подробнее

MS Access: Tutorial Tabelle, Relazioni

MS Access: Tutorial Tabelle, Relazioni Università Magna Graecia di Catanzaro Informatica MS Access: Tutorial Tabelle, Relazioni Docente : Alfredo Cuzzocrea e-mail : [email protected] Tel. : 0984 831730 Microsoft Access Tutorial Tabelle,

Подробнее

WORD PROCESSING.

WORD PROCESSING. WORD PROCESSING www.diego72.altervista.org CREARE IN SERIE LETTERE ED ETICHETTE La Creazione guidata Stampa unione è presente nella scheda Lettere consente di creare lettere tipo, etichette per indirizzi,

Подробнее

La codifica. dell informazione

La codifica. dell informazione 00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111

Подробнее

Corso di Informatica. Access. Struttura tabella. Tabelle - esempi 11/01/2008

Corso di Informatica. Access. Struttura tabella. Tabelle - esempi 11/01/2008 Corso di Informatica Ing. Dario Sguassero Access Accessè un programma specializzato nella gestione dei database Un database è una raccolta di informazioni organizzate Un database di Access è costituito

Подробнее

Informatica 3. LEZIONE 23: Indicizzazione. Modulo 1: Indicizzazione lineare, ISAM e ad albero Modulo 2: 2-3 trees, B-trees e B + -trees

Informatica 3. LEZIONE 23: Indicizzazione. Modulo 1: Indicizzazione lineare, ISAM e ad albero Modulo 2: 2-3 trees, B-trees e B + -trees Informatica 3 LEZIONE 23: Indicizzazione Modulo 1: Indicizzazione lineare, ISAM e ad albero Modulo 2: 2-3 trees, B-trees e B + -trees Informatica 3 Lezione 23 - Modulo 1 Indicizzazione lineare, ISAM e

Подробнее

<Nome Tabella>.<attributo>

<Nome Tabella>.<attributo> Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (2) Tabelle mult., variabili, aggreg, group Prof. Alberto

Подробнее

Alberi Binari di Ricerca

Alberi Binari di Ricerca Alberi Binari di Ricerca Prof. G. M. Farinella [email protected] www.dmi.unict.it/farinella Riferimenti Bibliografici Cormen T.H., Leiserson C.E., Rivest R.L Introduction to Algorithms, Third Edition,

Подробнее

Problemi, istanze, soluzioni

Problemi, istanze, soluzioni lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un

Подробнее

Alberi. Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo. Fosco.

Alberi. Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo. Fosco. Alberi Alberi Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo Fosco Dora Drogo Frodo Dudo Daisy Alberi Gli alberi sono una generalizzazione

Подробнее

Dati aggregati. Violetta Lonati

Dati aggregati. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica - in breve: Definizione di tipi Array Stringhe Strutture

Подробнее

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La

Подробнее

Tracce. 1. Data una lista di elementi di tipo intero, implementare in C++ le seguenti funzioni

Tracce. 1. Data una lista di elementi di tipo intero, implementare in C++ le seguenti funzioni Algoritmi e Strutture Dati Tracce 1. Data una lista di elementi di tipo intero, implementare in C++ le seguenti funzioni int freq(list &L, int k): restituisce il numero di occorrenze dei multipli

Подробнее

Alberi e alberi binari I Un albero è un caso particolare di grafo

Alberi e alberi binari I Un albero è un caso particolare di grafo Alberi e alberi binari Un albero è un caso particolare di grafo È costituito da un insieme di nodi collegati tra di loro mediante archi Gli archi sono orientati (ogni arco esce da un nodo origine ed entra

Подробнее

2) FILE BINARI: è una sequenza di byte avente una corrispondenza uno a uno con la sequenza ricevuta dal dispositivo esterno.

2) FILE BINARI: è una sequenza di byte avente una corrispondenza uno a uno con la sequenza ricevuta dal dispositivo esterno. Tipo File Per memorizzare un dato su un supporto magnetico come un hard disk o un nastro, o più in generale su un'unità di memoria di massa viene utilizzata un tipo di dato chiamato file. Un file può essere

Подробнее

Programmazione dinamica

Programmazione dinamica Programmazione dinamica Violetta Lonati Università degli studi di Milano Dipartimento di Informatica Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Violetta Lonati Programmazione

Подробнее

File: definizione. Il file è la più piccola unità logica manipolabie Un file è caratterizzato principalmente da:

File: definizione. Il file è la più piccola unità logica manipolabie Un file è caratterizzato principalmente da: File System File: definizione Il file è la più piccola unità logica manipolabie Un file è caratterizzato principalmente da: Dimensione Posizione Accessibilità (solo lettura, lettura e scrittura) Tipo (estensione)

Подробнее

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Подробнее

Access. P a r t e t e r z a

Access. P a r t e t e r z a Access P a r t e t e r z a 1 Query: Concetti generali (2) Query 1 Tabella Query 2 Le query rappresentano viste differenti sul DB (possono coinvolgere una o più tabelle) 2 Creazione (1) Diverse possibilità,

Подробнее

Fondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento

Fondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento Fondamenti di Informatica Algoritmi di Ricerca e di Ordinamento 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare se un elemento fa parte della sequenza oppure l elemento

Подробнее

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Il processore. Istituzionii di Informatica -- Rossano Gaeta Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Подробнее

La codifica. dell informazione

La codifica. dell informazione La codifica dell informazione (continua) Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da 0 a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero

Подробнее

Alberi binari e alberi binari di ricerca

Alberi binari e alberi binari di ricerca Alberi binari e alberi binari di ricerca Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica

Подробнее

Definizione di file. Directory e file File binari e file di testo

Definizione di file. Directory e file File binari e file di testo I/O Avanzato e File Definizione di file Directory e file File binari e file di testo 5 Definizione di file Directory e file Tutti i sistemi operativi permettono di organizzare le informazioni su hard disk

Подробнее

CODIFICARE I PRODOTTI

CODIFICARE I PRODOTTI CODIFICARE I PRODOTTI I documenti ricevuti ed emessi contengono i prodotti o servizi commercializzati dall attività (detti genericamente articoli). Per codificare un nuovo prodotto o servizio si può procedere

Подробнее

I Tipi di Dato Astratto

I Tipi di Dato Astratto I Tipi di Dato Astratto Sommario Cosa sono le Strutture Dati Astratte? Le strutture dati Le operazioni Come scegliere fra varie implementazioni? Quale è la questione? Come organizzare (strutturare) i dati

Подробнее

Esercitazione 6. Alberi binari di ricerca

Esercitazione 6. Alberi binari di ricerca Esercitazione 6 Alberi binari di ricerca Struttura base Rappresentabile attraverso una struttura dati concatenata in cui ogni nodo è un oggetto di tipo struttura Ogni nodo contiene: campo chiave (key)

Подробнее

Files in C++ Fondamenti di Informatica. R. Basili. a.a. 2006-2007

Files in C++ Fondamenti di Informatica. R. Basili. a.a. 2006-2007 Files in C++ Fondamenti di Informatica R. Basili a.a. 2006-2007 Sintesi Motivazioni Definizione di file in C++ Un esempio Uso dei file Esempi Esercizi Motivazioni il programma in esecuzione legge (sequenzialmente)

Подробнее

TAVOLE DI SVILUPPO DI KUNO BELLER

TAVOLE DI SVILUPPO DI KUNO BELLER TAVOLE DI SVILUPPO DI KUNO BELLER Sommario 1. Accesso al programma... 2 2. Gestione anagrafiche... 3 2.1 Anagrafica nido... 3 2.2 Anagrafica educatrici... 4 2.3 Anagrafica bimbi... 4 2.4 Gestione ruoli...

Подробнее

Modificare il tipo di grafico Spostare, ridimensionare, cancellare un grafico

Modificare il tipo di grafico Spostare, ridimensionare, cancellare un grafico 4.6 GRAFICI Il programma Calc si presta non solo alla creazione di tabelle e all esecuzione di calcoli, ma anche alla creazione di grafici che riepilogano visivamente i dati, ne rendono immediata la loro

Подробнее

Prova di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna:

Prova di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna: Prova di Laboratorio del 12.1.2005 [durata 90 min.] Corso A-B di Programmazione (A.A. 2004/05) 1. Leggere da tastiera un insieme di numeri interi ed inserirli in un vettore A 2. Calcolare tramite una funzione

Подробнее