MongoDB Origini. MongoDB deriva il suo nome dalla parola "humongous, che significa enorme. E' attualmente il il database NoSQL più diffuso*.
|
|
- Elisa Rosina Belloni
- 8 anni fa
- Visualizzazioni
Transcript
1 NOSQL
2 Origini MongoDB deriva il suo nome dalla parola "humongous, che significa enorme. E' attualmente il il database NoSQL più diffuso*. Sviluppato inizialmente dalla società di software 10gen (ora MongoDB Inc.) nel 2007 come un componente di un altro prodotto. Nel 2009 viene rilasciato in open-source come database a se stante. *Fonte del dato della diffusione dei DB:
3 Datamodel MongoDB è un document store: ogni record viene memorizzato come un documento; esso può avere un numero arbitrario di campi aventi una qualsiasi lunghezza. Rispetto al modello relazionale: si accorpano quanto più possibile gli oggetti, creando delle macro entità dal massimo contenuto informativo. MongoDB non possiede uno schema e ogni documento non è strutturato, ha solo una chiave obbligatoria: _id, la quale è utilizzata per identificare univocamente il documento.
4 BSON e JSON Il formato utilizzato per il salvataggio e la trasmissione dei document in MongoDB è il BSON (JSON Binario). Il formato JSON (JavaScript Object Notation) è largamente diffuso nel mondo web, esso è un formato di testo completamente indipendente dal linguaggio di programmazione utilizzato ed è basato su due strutture: - un insieme di coppie nome/valore; - un elenco ordinato di valori.
5 Esempio di JSON { } "_id" : 1, "name" : { "first" : "John", "last" : "Backus" }, "contribs" : [ "Fortran", "ALGOL", "Backus-Naur Form", "FP" ], "awards" : [ { "award" : "W.W. McDowell Award", "year" : 1967 }, { "award" : "Draper Prize", "year" : 1993 } ]
6 BSON e JSON II formato BSON estende il modello JSON allo scopo di aggiungere ulteriori tipi di dati (ad esempio il formato data e il byte array) e garantire una maggiore efficienza nell'interazione tra diversi linguaggi di programmazione. La dimensione massima di un singolo documento BSON è di 16MB. Ad ogni document è associato un _id che agisce come object identifier ed è composto da 12 byte come segue:
7 BSON e GridFS La dimensione del BSON potrebbe essere limitante. Si può utilizzare la modalità in GridFS che, invece che effettuare un'unica memorizzazione, divide i file in più parti (chunk) di dimensione prestabilita e li memorizza come document separati. Il limite di default di un chunk è 255kB. Vengono utilizzate due collection per memorizzare i file: - una per i chunk; - una per i metadati. Sarà compito del driver o del client riassemblare i chunk necessari.
8 Datamodel In MongoDB il document è l'unità di base del database ed equivale ad una riga dei database relazionali. La tabella seguente riassume le equivalenze di termini fra MongoDB e gli RDBMS: MongoDB Database Collection Document Field RDBMS Database Tabella Record Colonna
9 Datamodel Database Collection Collection Collection Document Document _id Field1 Field2 Document Document _id Field1 Field3 Field4
10 Architettura
11 Architettura Base MongoDB è organizzato secondo una architettura base Client/Server. Il client può essere: - shell mongo (implementata in JavaScript) - un applicativo scritto in diversi linguaggi di programmazione mongod client Oltre a questa configurazione base è possibile incrementare la ridondanza e la disponibilità del dato attraverso la configurazione di un replica set
12 Architettura con Replica Set Un replica set è un gruppo di istanze mongod che gestiscono lo stesso insieme di dati. Secondary Primary Secondary Replica set client Tutte le modifiche che vengono effettuate unicamente sul primary, vengono scritte in un log che viene poi distribuito in maniera asincrona ai secondary i quali poi replicano le modifiche sui loro dati. I client leggono i dati dal primary, ma possono essere configurati anche per leggere i dati dai secondary. Il dato restituito da un secondary potrebbe non essere aggiornato.
13 Architettura con Replica Set Nel caso in cui il server primario non fosse più disponibile un meccanismo di automatic election provvede ad eleggere un nuovo server primario fra i secondari. Driver Lettura Scrittura Lettura Lettura Mongod: Primary Mongod: Secondary Mongod: Secondary Repliche asincrone È possibile prevedere un'ulteriore istanza di mongod, avente il ruolo di arbiter, che viene utilizzato solo per la votazione durante l'elezione del nuovo primary. Driver Lettura Scrittura Lettura Mongod: Primary Mongod: Primary Mongod: Secondary Replica asincrona
14 Introduzione Architettura Sharding L'architettura appena vista presenta potenziali problemi: - all'aumentare del numero di query è possibile che si possa esaurire la capacità di CPU del server; - all'aumentare delle dimensioni dei dati c'è il rischio di superare la capacità del disco di una singola macchina; - dati di lavoro di dimensioni superiori alla RAM del sistema potrebbero stressare la velocità di I / O dei dischi. Possibili soluzioni: - scalare verticalmente (aumento CPU, HD e ram); - scalare orizzontalmente (sharding).
15 Architettura Sharding MongoDB può scalare orizzontalmente in maniera lineare. L'architettura Sharding è costituita da tre componenti: - Shards: immagazzinano i dati, per garantire la consistenza e la disponibilità dei dati sono spesso costituiti da dei Replica Sets; - Query Routers o istanze mongos: interfacce che ridirezionano le richieste verso i shards corretti e restituiscono il risultato ai vari client. - Config servers: contengono i metadati che descrivono il mapping tra dati e shards.
16 Architettura Sharding Mongod: Primary Mongod: Secondary Mongod: Secondary Shard 1 Mongod: Primary Mongod: Secondary Mongod: Secondary Shard N Config Config Config mongos mongos client
17 Architettura Sharding Il partizionamento ed il bilanciamento è automatico in base alla Shard Key (un field del document) che si decide di utilizzare. È poi possibile decidere, per la suddivisione dei dati in chunks, se utilizzare: Range Based Sharding Hash Based Sharding Key-range (0...99) mongod mongod Key-range (0...33) mongod Chunk 1 Key-range ( ) mongod Chunk N Hash Function mongod mongod Chunk 1 Chunk N
18 Query Language
19 Datatype Datatype Boolean Arrays Integer Double String Symbol Regular expression Date Timestamp Binary data Code Null Object ID Object Min/Max key Descrizione Tipo booleano true/false Utilizzato per memorizzare array o liste di valori Valori numerici (32-bit o 64-bit a seconda del server. Valori numerici in virgola mobile Stringa in formato UTF-8 Come una stringa, ma utilizzato nei linguaggi che usano il tipo symbol (es. Ruby) Utilizzato per memorizzare espressioni regolari Memorizza il tempo e la data in formato Unix. Memorizza un Timestamp Memorizza dati in formato binario Utilizzato per memorizzare codice Javascript nel document Memorizza un valore null Memorizza l'id del document Utilizzato per gli embedded document Questi vengono usati solo internamente e servono per comparare al valore minimo e massimo di un dato BSON
20 Query Language Uso dei database Per selezionare un database: > use DATABASE_NAME Questo comando seleziona il database e, qualora non esista, lo crea. Per vedere quali database sono presenti all'interno di un server possiamo usare il comando > show dbs local GB test GB vengono mostrati tutti i database sui quali è stato fatto almeno un insert e la dimensione che occupano.
21 Query Language Uso dei database Per sapere quale database è stato selezionato si usa il comando: > db viene restituito il nome del database in uso. Per eliminare un database occorre selezionarlo attraverso use e poi dare il comando: > db.dropdatabase() se per caso non viene selezionato nessun database e viene dato il comando db.dropdatabase viene eliminato il database di default.
22 Query Language Collection Una volta che abbiamo creato il database possiamo creare le collection al suo interno. Possono essere usati due metodi: - il primo prevede una creazione esplicita > db.createcollection(name, options) - il secondo prevede una creazione implicita > db.users.insert(document) Per visualizzare tutte le collection presenti in un database si usa il comando: > show collections
23 Query Language - Insert Con il comando insert possiamo inserire un document all'interno di una collection. > db.docs.insert({ _id: ObjectId(7df78ad8902c), title: 'Dispense MongoDB', description: 'Dispense corso DASSIA su MongoDB', by: 'CRS4', url: ' tags: ['mongodb', 'database', 'NoSQL'] }) Se l'_id non viene specificato questo viene assegnato in maniera automatica.
24 Query Language - Find Il metodo base per effettuare le query è find: restituisce un cursore ai dati corrispondenti e supporta sia criteri per la query che le proiezioni dei dati. Possono poi essere applicati dei modificatori al cursore. MongoDB db.users.find( { age: {$gt: 18 } }, { name : 1, address: 1} ). limit ( 5 ) collection criteri di query proiezione modificatore di cursore SQL SELECT _id, name, address FROM users WHERE age > 18 LIMIT 5 proiezione tabella criteri di selezione modificatore di cursore
25 Query Language - Find L'uso del metodo find è il seguente > db.collection_name.find({querycriteria},{projection}) dove i QueryCriteria e la Projection sono opzionali. Vanno racchiusi fra parentesi grafe e possono essere più di uno: eventuali criteri di selezione vanno indicati singolarmente. Se si vuole effettuare una proiezione senza criteri di selezione: > db.collection_name.find({},{projection}) Se non si ha nessuna proiezione da fare, ma solo delle selezioni la sintassi è > db.collection_name.find({querycriteria})
26 Find Query Criteria Criterio Sintassi Esempio Uguaglianza {<key>:<value>} db.users.find({ name : Nicola }) Minore di {<key>:{$lt:<value>}} db.users.find({ age : {$lt:25}}) Minore o uguale di {<key>:{$lte:<value>}} db.users.find({ age : {$lte:25}}) Maggiore di {<key>:{$gt:<value>}} db.users.find({ age : {$gt:18}}) Maggiore o uguale di {<key>:{$gte:<value>}} db.users.find({ age : {$gte:19}}) Non uguale {<key>:{$ne:<value>}} db.users.find({ age : {$ne:45}})
27 Find Query Criteria Il metodo find supporta criteri multipli in AND, OR o combinazione di questi: AND (tutti gli utenti di 18 anni che si chiamano Nicola) > db.users.find({ age: 18, name: 'Nicola'}) OR (tutti gli utenti di 18 anni e tutti gli utenti che si chiamano Nicola) > db.users.find({ $or: [{age: 18}, {name: 'Nicola'}] }) AND e OR (tutti gli utenti di 18 anni e che contemporaneamente si chiamano Nicola o vivono a Cagliari) > db.users.find({ age: 18, $or:[ {name: 'Nicola'}, {town: 'Cagliari'} ] })
28 Find Projection I criteri di proiezione servono ad indicare quali attributi del documento restituire. db.users.find( { age: 18 }, { name: 1} ) { _id: 1, age: 18, name: 'Almo' } { _id: 2, age: 28, name: 'Asia' } { _id: 3, age: 21, name: 'Giada' } { _id: 4, age: 38, name: 'Ugo' } query criteria { _id: 1, age: 18, name: 'Almo' } { _id: 5, age: 18, name: 'Sofia' } projection { _id: 1, name: 'Almo' } { _id: 5, name: 'Sofia' } { _id: 5, age: 18, name: 'Sofia' } { _id: 6, age: 58, name: 'Guido' } Bisogna notare che _id viene sempre restituito, se non lo si vuole visualizzare va messo a zero. db.users.find( { age: 18 }, { name: 1, _id : 0} )
29 Cursor Modifier: Limit e Skip Il cursore ai dati restituito da un find può essere modificato mediante l'utilizzo di un cursor modifier. Abbiamo quindi: limit che viene utilizzato per restituire i primi N documenti trovati. > db.collection_name.find().limit(n) skip che permette di saltare i primi M documenti trovati. > db.collection_name.find().skip(m) Ad esempio > db.users.find({},{name:1,_id:0}).limit(1).skip(2) restituisce il nome del terzo documento.
30 Sort e Distinct sort che esegue l'ordinamento per la chiave specificata ascendente (1) o discendente (-1) > db.collection_name.find().sort({key:1}) distinct se volessi trovare tutti i valori diversi presenti per uno o più field in una collection > db.collection_name.distinct('key') Ad esempio, la seguente trova tutti i nomi presenti nella collection > db.users.distinct('name') mentre la seguente restituisce tutti i nomi distinti dei maggiorenni presenti nella collection > db.users.distinct('name',{age:{$gte:18}})
31 Count Per contare il numero di documenti può essere usato il metodo count() sia in questo modo: che > db.collection_name.count() > db.collection_name.find().count() Se vogliamo specificare dei criteri di query, ricorrendo alla programmazione funzionale, abbiamo: oppure db.users.count( { age: { $gt: 30 } }) db.users.find( { age: { $gt: 30 } }).count()
32 Update e Save Per aggiornare un document si hanno due metodi a disposizione: - update: aggiorna i field che vengono indicati nel document; - save: rimpiazza il document esistente con uno nuovo. Ad esempio abbiamo: > db.users.update({name: 'Pino'}, {$set:{name: 'Ugo'}}) > db.users.save({_id:objectid(),new_data})
33 Remove Document Per rimuovere un document si utilizza remove. > db.collection_name.remove(deletion_criteria) Ad esempio > db.users.remove({name: 'Maurizio'}) Mentre la sintassi per rimuovere il primo document dove compare il criterio è: > db.collection_name.remove(deletion_criteria, 1) Per rimuovere tutti i document da una collection devo usare > db.collection_name.remove()
34 Indici Secondari Tutti i documenti sono indicizzati per la loro chiave primaria _id. Ciò significa che utilizzando il metodo find con alcuni criteri di ricerca controlleremo tutti i documenti nella loro interezza. Per snellire queste operazioni si possono creare degli indici secondari tramite il comando ensureindex. > db.collection_name.ensureindex(keys,options) Posso ad esempio specificare uno o più field sui quali generare gli indici sia in maniera ascendente (1) che discendente (-1). > db.users.ensureindex({'name' : 1, 'age' : -1})
35 Aggregazione In MongoDB è possibile processare diversi dati per restituire dati aggregati o computazioni sugli stessi. > db.collection_name.aggregate(aggregate_operations) È presente il concetto di pipeline nell'aggregazione: possiamo definire una pipeline di stage consecutivi per ridurre e filtrare i dati all'interno dell'aggregazione. Ad esempio abbiamo gli stage per: - $match: filtra dei dati in base a criteri assegnati - $group: raggruppa i dati in base a criteri assegnati - $unwind: separa un array del documento creando singoli documenti - $projection: proietta i dati in base a criteri assegnati - $sort: ordina i dati in base a criteri assegnati - $limit: prende in esame solo i primi N document - $skip: salta i primi N document
36 Aggregazione Group All'interno di $group possiamo utilizzare diverse espressioni per ottenere dati aggregati o particolari computazioni sugli stessi: $sum $avg $min $max $first $last $push $addtoset Ad esempio: db.users.aggregate( [ { $group:{_id:'$name', count_omonimi:{$sum:1} } } ]) db.users.aggregate( [ { $group:{_id:null, eta_min:{$min:'$age'} } } ]) db.users.aggregate( [ { $group:{_id:'$name', eta:{$push:'$age'} } } ]) db.users.aggregate( [ { $group:{_id:'$name', eta:{$addtoset:'$age'} } } ])
37 Aggregazione Esempio db.orders.aggregate( [ { $match: {status: 'A' } }, { $group: {_id: '$cust_id', total: { $sum: '$amount' } } } ] ) { cust_id: 'A123', amount: 500, status: 'A' } { cust_id: 'A123', { cust_id: 'A123', amount: 250, status: 'A' } $match amount: 500, status: 'A' } { cust_id: 'A123', $group { _id: 'A123', total: 750 } { cust_id: 'B212', amount: 250, status: 'A' } { _id: 'B212', amount: 200, status: 'A' } { cust_id: 'B212', total: 200 } { cust_id: 'A123', amount: 300, status: 'D' } amount: 200, status: 'A' } results orders
38 Funzionalità Avanzate MapReduce In MongoDB è presente una implementazione interna del Map-Reduce per la realizzazione di operazioni di aggregazioni complesse: si possono definire le operazioni di map e di reduce creando delle funzioni in linguaggio JavaScript. db.runcommand( opzionali ) { } mapreduce: <collection>, map: <function>, reduce: <function>, finalize: <function>, out: <output>, query: <document>, sort: <document>, limit: <number>, scope: <document>, jsmode: <boolean>, verbose: <boolean> JavaScript function
39 db.orders.mapreduce( MongoDB Funzionalità Avanzate MapReduce function( ) { emit ( this.cust_id, this.amount ); }, function( key, values ) { return Array.sum( values ) }, { }) query: { status: 'A' }, out: 'order_totals' { cust_id: 'A123', amount: 500, status: 'A' } { cust_id: 'A123', { cust_id: 'A123', amount: 250, status: 'A' } query amount: 500, status: 'A' } { cust_id: A123, map { 'A123': [500, 250] } reduce { _id: 'A123', total: 750 } { cust_id: 'B212', amount: 200, status: 'A' } amount: 250, status: 'A' } { cust_id: B212, { 'B212': 200 } { _id: 'B212', total: 200 } { cust_id: 'A123', amount: 300, status: 'D' } amount: 200, status: 'A' } order_totals orders
40 Funzionalità Avanzate MapReduce 1 client definisce una funzione di map, di reduce, una query e una collection di output 2 client request mongos
41 Funzionalità Avanzate MapReduce 3 Config mongos MR request Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Primary Mongod: Primary Shard N Mongod: Primary Shard N Shard N 4 query Mongod: Primary map
42 Funzionalità Avanzate MapReduce 5 map <K,V> <k,v> <k,v> buffer 5a Mongod: Secondary <k,v> <k,v> <k,v> <k,v> <k,v> buffer partial reduce Mongod: Secondary Mongod: Primary Shard N
43 Funzionalità Avanzate MapReduce 6 reduce Mongod reduce Mongod reduce Mongod 7 mongos Out Collection Request Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Secondary Mongod: Primary Mongod: Primary Shard N Mongod: Primary Shard N Shard N
44 Funzionalità Avanzate MapReduce 8 Mongod: Secondary Mongod: Secondary reduce Mongod: Primary Shard X 8a Mongod: Primary finalize
45 Funzionalità Avanzate MapReduce Il Map Reduce implementato all'interno di Mongo presenta una serie di limiti: - Javascript non è il linguaggio più indicato per il processamento di funzioni quali MapReduce - Javascript limita l'utilizzo di librerie di terze parti per l'elaborazione dei dati - Viene aggiunto un carico extra in termini di informazioni memorizzate - Solo l'architettura con i shards consente di parallelizzare i dati e solo a seconda della query che viene utilizzata Quando i dati crescono occorre passare a un tool pensato per la gestione dei JOB MapReduce
46
47 Connettore Hadoop Lo scopo di questo connettore è offrire la possibilità di usare MongoDB come sorgente di input o destinazione di output per i task di MapReduce sotto Hadoop. Permette di utilizzare nei tool dell'universo Hadoop, come Pig ed Hive, i documenti BSON/MongoDB. Generalmente il connettore MongoDB viene utilizzato come strato intermedio fra l'applicazione e Hadoop in modo da sfruttare le potenzialità del query language di MongoDB per filtrare i dati.
48 Connettore Hadoop Aggregazione Batch
49 Connettore Hadoop Data Warehouse
50 Connettore Hadoop ETL
51 Connettore Hadoop Casi d'uso Gestione dati e metadati Analisi utenti Gestione dati, check in, review Analisi utenti, segmentazione, personalizzazione Gestione dati hotel e prezzi Segmentazione hotel per migliorare le ricerche
52 Connettore Hadoop Casi d'uso Gestione dati studenti Analisi studenti per l'apprendimento mirato Gestione dati Modellazione rischio, sicurezza e prevenzione truffe Call center / Portali web Analisi uso da parte degli utenti e ottimizzazione delle tariffe
Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:
Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare
DettagliIl linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.
(Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System
DettagliHBase Data Model. in più : le colonne sono raccolte in gruppi di colonne detti Column Family; Cosa cambia dunque?
NOSQL Data Model HBase si ispira a BigTable di Google e perciò rientra nella categoria dei column store; tuttavia da un punto di vista logico i dati sono ancora organizzati in forma di tabelle, in cui
DettagliMongoDB. Un database NoSQL Open-Source
MongoDB Un database NoSQL Open-Source Database Relazionali I dati sono divisi in tabelle. Ogni tabella è composta da diverse colonne fisse. Le tabelle possono avere riferimenti tra loro. A.C.I.D. I database
DettagliAbilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere
Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.
DettagliRiccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino
Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server
DettagliAccess. P a r t e p r i m a
Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di
DettagliOperazioni sui database
Operazioni sui database Le operazioni nel modello relazionale sono essenzialmente di due tipi: Operazioni di modifica della base di dati (update) Interrogazioni della base di dati per il recupero delle
DettagliDBMS (Data Base Management System)
Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire
DettagliDispensa di database Access
Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di
DettagliData Base. Master "Bio Info" Reti e Basi di Dati Lezione 6
Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica
DettagliOSSIF WEB. Manuale query builder
OSSIF WEB Manuale query builder - Maggio 2010 1) Sommario 1) SOMMARIO... 2 INTRODUZIONE... 3 Scopo del documento... 3 Struttura del documento... 3 Descrizione dell interfaccia grafica... 3 SELEZIONE DI
DettagliRegione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da
ARPA Fonte Dati Regione Toscana Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 06/08/13 Stato DRAFT 1 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 2 Sommario
DettagliProgetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore
ARPA Fonte Dati Regione Toscana 1 Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.1 Data emissione 09/10/13 Stato FINAL 2 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 1.1 09/10/2013
DettagliESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7
ESEMPI DI QUERY SQL Dati di esempio... 2 Query su una sola tabella... 2 Esempio 1 (Ordinamento)... 2 Esempio 2 (Scelta di alcune colonne)... 3 Esempio 3 (Condizioni sui dati)... 3 Esempio 4 (Condizioni
DettagliIntroduzione alla teoria dei database relazionali. Come progettare un database
Introduzione alla teoria dei database relazionali Come progettare un database La struttura delle relazioni Dopo la prima fase di individuazione concettuale delle entità e degli attributi è necessario passare
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliVolumi di riferimento
Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di
DettagliIntroduzione ai database relazionali
Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita
DettagliInformatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati
Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità
DettagliINFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.
INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed
DettagliIl database management system Access
Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio
DettagliLinee di evoluzione dei Database
Linee di evoluzione dei Database DB NoSQL Linked Open Data Semantic Web Esigenze e caratteristiche Presenza di grandi volumi di dati..crescenti Struttura non regolare dei dati da gestire Elementi relativamente
DettagliCORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)
Ambiente Access La Guida di Access Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Guida in linea Guida rapida Assistente di Office indicazioni
DettagliMon Ami 3000 Varianti articolo Gestione di varianti articoli
Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliCapitolo 13. Interrogare una base di dati
Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per
DettagliBasi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL
Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,
DettagliUser Tools: DataBase Manager
Spazio di lavoro Per usare T-SQL Assistant selezionare il link Simple Query e spostare a piacere la piccola finestra dove un menu a tendina mostra i diversi comandi SQL selezionabili, il pulsante Preview
DettagliI database relazionali (Access)
I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale
DettagliSiti web centrati sui dati Architettura MVC-2: i JavaBeans
Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con
DettagliMODULO 5 Appunti ACCESS - Basi di dati
MODULO 5 Appunti ACCESS - Basi di dati Lezione 1 www.mondopcnet.com Modulo 5 basi di dati Richiede che il candidato dimostri di possedere la conoscenza relativa ad alcuni concetti fondamentali sui database.
DettagliDATABASE. www.andreavai.it
Cos'è un database? Quando si usa? Differenze con i fogli elettronici Le tabelle: record, campi, tipi di dati Chiavi e indici Database relazionali (R-DBMS) Relazioni uno-a-uno Relazioni uno-a-molti Relazioni
DettagliDATABASE RELAZIONALI
1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.
DettagliDDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione
SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni
DettagliLe Basi di Dati. Le Basi di Dati
Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per
DettagliConcetti fondamentali dei database database Cos'è un database Principali database
Concetti fondamentali dei database Nella vita di tutti i giorni si ha la necessità di gestire e manipolare dati. Le operazioni possono essere molteplici: ricerca, aggregazione con altri e riorganizzazione
DettagliSQL Server 2005. Integration Services. SQL Server 2005: ETL - 1. Integration Services Project
atabase and ata Mi ni ng Group of P ol itecnico di Torino atabase and ata Mi ni ng Group of P ol itecnico di Torino atabase and data mining group, SQL Server 2005 Integration Services SQL Server 2005:
DettagliUniversità degli Studi di Verona. Laboratorio di Basi di Dati
Università degli Studi di Verona Laboratorio di Basi di Dati Introduzione ad OOo Base: Creazione Tabelle Gabriele Pozzani: gabriele.pozzani@univr.it Materiale prodotto da: Dott.ssa Barbara Oliboni Database:
DettagliArchitettura MVC-2: i JavaBeans
Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con
DettagliCorso sul linguaggio SQL
Corso sul linguaggio SQL Modulo L2B (SQL) 2.2 Comandi sulle tabelle 1 Prerequisiti Introduzione ai DB Tabelle, relazioni e attributi Chiave primaria Chiave esterna Vincoli di integrità 2 1 Introduzione
DettagliInsegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati
Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7 Il trattamento dei dati database: il linguaggio SQL seconda parte Prof. Valle D.ssa Folgieri Lez9 15.11.06 Trattamento dati. Database: il
DettagliCorso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.
Programma 30 set 205 Installazione Macchina Virtuale Introduzione alla BI nelle Aziende Introduzione SQL Macchina Virtuale È un emulazione di un computer su un altro computer Stesso punto di partenza per
DettagliBasi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007
Basi di dati Concetti introduttivi Ultima modifica: 26/02/2007 ESEMPIO INSEGNAMENTI Fisica, Analisi, Informatica Aule Docenti Entità Relazioni Interrogazioni St udent i Database 2 Tabella (I) STUDENTE
DettagliProcedure memorizzate SQL-2003/PSM. Forma base di PSM. Parametri in PSM
Procedure memorizzate SQL-2003/PSM Procedure memorizzate nel database Programmazione general-purpose Leggere sezione 8.2 di Garcia-Molina et al. Lucidi derivati da quelli di Jeffrey D. Ullman 1 Una estensione
DettagliCorso di Archivistica
Corso di Archivistica e gestione documentale Prima Parte - Area Informatica Le tabelle Lezione 6 Creare un data base Introduzione La presente è la prima di una serie di lezioni finalizzate alla creazione
DettagliCorso sul linguaggio SQL
Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio
DettagliSistemi per la gestione di database: MySQL ( )
Sistemi per la gestione di database: MySQL ( ) Relational Database e Relational Database Management System Un database è una raccolta di dati organizzata in modo da consentire l accesso, il reperimento
DettagliSistemi Mobili e Wireless Android - Dati persistenti: SQLite
Sistemi Mobili e Wireless Android - Dati persistenti: SQLite Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Android offre
DettagliSQL - Funzioni di gruppo
una funzione di gruppo permette di estrarre informazioni da gruppi di tuple di una relazione le funzioni di gruppo si basano su due concetti: partizionamento delle tuple di una relazione in base al valore
DettagliSQL/OLAP. Estensioni OLAP in SQL
SQL/OLAP Estensioni OLAP in SQL 1 Definizione e calcolo delle misure Definire una misura significa specificare gli operatori di aggregazione rispetto a tutte le dimensioni del fatto Ipotesi: per ogni misura,
DettagliDatabase Manager Guida utente DMAN-IT-01/09/10
Database Manager Guida utente DMAN-IT-01/09/10 Le informazioni contenute in questo manuale di documentazione non sono contrattuali e possono essere modificate senza preavviso. La fornitura del software
DettagliLaboratorio di Basi di Dati e Web
Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 1 SQL Structured Query Language SQL è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali Il linguaggio
DettagliMODULO 5 ACCESS Basi di dati. Lezione 4
MODULO 5 ACCESS Basi di dati Lezione 4 ARGOMENTI Lezione 4 Filtrare i dati Esempio 1 Query Cos è Creare Query in visualizza struttura Criteri di ricerca Esempio 2 Esempio 3 Esempio 4 Creare Query in creazione
DettagliUtilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi
Vogliamo creare una struttura per permettere di memorizzari i voti della classe in tutte le materie Per fare questo untilizziamo tre tabelle Alunni,materie,voti Alunni Materie Voti Creo un record per ogni
DettagliMySQL Database Management System
MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare
DettagliECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 2
ECDL - Database European Computer Driving Licence - Modulo 5 - Database LEZIONE 2 Ripasso Introduzione - Ripasso Cosa si intende per dbms? e cosa per database? Quali sono gli elementi che lo compongono?
DettagliRaggruppamenti Conti Movimenti
ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli
DettagliOttimizzazione delle interrogazioni (parte I)
Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di
DettagliSQL, NoSQL, o entrambi?
Introduzione Nella prima parte di questo corso abbiamo fatto una prima introduzione sul quando e come scegliere un database per risolvere un determinato problema. In questa parte finale vedremo attraverso
DettagliBase Dati Introduzione
Università di Cassino Facoltà di Ingegneria Modulo di Alfabetizzazione Informatica Base Dati Introduzione Si ringrazia l ing. Francesco Colace dell Università di Salerno Gli archivi costituiscono una memoria
DettagliStrutturazione logica dei dati: i file
Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer
DettagliPer visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere;
Maschere e Query Le Maschere (1/2) Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere; Le maschere sono simili a moduli cartacei: ad ogni campo corrisponde un etichetta
DettagliUso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database
Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,
DettagliIntroduzione a MySQL
Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da
DettagliSPECIFICHE E LIMITI DI EXCEL
SPECIFICHE E LIMITI DI EXCEL Un "FOGLIO DI CALCOLO" è un oggetto di un programma per computer costituito da un insieme di celle, organizzate in righe e colonne, atte a memorizzare dati ed effettuare operazioni
DettagliFinalità della soluzione... 3. Schema generale e modalità d integrazione... 4. Gestione centralizzata in TeamPortal... 6
Finalità della soluzione... 3 Schema generale e modalità d integrazione... 4 Gestione centralizzata in TeamPortal... 6 Dati gestiti dall Anagrafica Unica... 8 Gestione anagrafica... 9 Storicizzazione...
DettagliSQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:
SQL SQL (pronunciato anche come l inglese sequel: acronimo di Structured Query Language (linguaggio di interrogazione strutturato Linguaggio completo che presenta anche proprietà di: DDL (Data Definition
Dettaglicorso di Access MICROSOFT ACCESS Docente: Andrea Mereu Università degli studi di Cagliari 16 aprile 9 maggio 2012
1 MICROSOFT ACCESS 1 Docente: Andrea Mereu Università degli studi di Cagliari 16 aprile 9 maggio 2012 Che cos'è Access? 2 Access è un'applicazione database (DBMS), cioè un programma che serve a gestire
DettagliMANUALE PARCELLA FACILE PLUS INDICE
MANUALE PARCELLA FACILE PLUS INDICE Gestione Archivi 2 Configurazioni iniziali 3 Anagrafiche 4 Creazione prestazioni e distinta base 7 Documenti 9 Agenda lavori 12 Statistiche 13 GESTIONE ARCHIVI Nella
DettagliI file di dati. Unità didattica D1 1
I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliLink e permessi. Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione. Corso di Sistemi Operativi A. A. 2005-2006
Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione Corso di Sistemi Operativi A. A. 2005-2006 Link e permessi Link Un riferimento ad un file è detto link Ogni file può avere un numero
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo
DettagliDBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)
(DataBase Management System) Sistemi di ges3one di basi di da3 Un Database Management System è un sistema software progettato per consentire la creazione e manipolazione efficiente di database (collezioni
DettagliCorso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati
Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente
DettagliEsercizio sui data base "Gestione conti correnti"
Database "Gestione conto correnti" Testo del quesito La banca XYZ vuole informatizzare le procedure di gestione dei conti correnti creando un archivio dei correntisti (Cognome, Nome, indirizzo, telefono,
Dettagli(Esercizi Tratti da Temi d esame degli ordinamenti precedenti)
(Esercizi Tratti da Temi d esame degli ordinamenti precedenti) Esercizio 1 L'agenzia viaggi GV - Grandi Viaggi vi commissiona l'implementazione della funzione AssegnaVolo. Tale funzione riceve due liste
DettagliI Sistemi Informativi
I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e
Dettagli19. LA PROGRAMMAZIONE LATO SERVER
19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici
DettagliSQL Server 2005. Introduzione all uso di SQL Server e utilizzo delle opzioni Olap. Dutto Riccardo - SQL Server 2005.
SQL Server 2005 Introduzione all uso di SQL Server e utilizzo delle opzioni Olap SQL Server 2005 SQL Server Management Studio Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione DB SQL
DettagliPer visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere;
Maschere e Query Le Maschere (1/2) Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere; Le maschere sono simili a moduli cartacei: ad ogni campo corrisponde un etichetta
DettagliTEORIA sulle BASI DI DATI
TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere
DettagliSQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12
SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I Anno accademico 2011/12 DEFINIZIONE Il concetto di vista 2 È una relazione derivata. Si specifica l espressione che genera il suo contenuto.
DettagliIl linguaggio SQL: viste e tabelle derivate
Il linguaggio SQL: viste e tabelle derivate Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLd-viste.pdf Sistemi Informativi L-A DB di riferimento
DettagliUN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database
UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database Per comprendere al meglio cosa sia un database, dobbiamo prima introdurre il concetto di
DettagliDispensa di Informatica I.1
IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.
DettagliEsercizio data base "Biblioteca"
Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni
DettagliAppunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.
Appunti di MySql Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov. Indice generale avviare la shell mysql...2 comandi SQL per la gestione del database (DDL)...2 visualizzare l'elenco
DettagliObiettivi d esame PHP Developer Fundamentals on MySQL Environment
Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web
DettagliProgetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Documentazione Database
ARPA Fonte Dati Regione Toscana 1 Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 08/10/13 Stato FINAL 2 Versione Data Descrizione 1,0 08/10/13 Versione Iniziale 3 Sommario
DettagliOrganizzazione delle informazioni: Database
Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)
DettagliCome modificare la propria Home Page e gli elementi correlati
Come modificare la propria Home Page e gli elementi correlati Versione del documento: 3.0 Ultimo aggiornamento: 2006-09-15 Riferimento: webmaster (webmaster.economia@unimi.it) La modifica delle informazioni
DettagliAl giorno d oggi, i sistemi per la gestione di database
Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,
DettagliUno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti:
Javadoc Uno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti: /* commenti */ // commenti /** commenti documentazione */ Questi ultimi generano automaticamente
DettagliMon Ami 3000 Multimagazzino Gestione di più magazzini fisici e/o logici
Prerequisiti Mon Ami 3000 Multimagazzino Gestione di più magazzini fisici e/o logici L opzione Multimagazzino è disponibile per le versioni Azienda Light e Azienda Pro. Introduzione L opzione Multimagazzino
DettagliMODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it
MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo
DettagliProgettazione di un Database
Progettazione di un Database Per comprendere il processo di progettazione di un Database deve essere chiaro il modo con cui vengono organizzati e quindi memorizzati i dati in un sistema di gestione di
DettagliSistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory
FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File
Dettagli