For whom is this course. This 3 credit course is actually
one of the sections of the course Large Scale Data Management of
the Master of Science in Engineering in Computer Science the Sapienza
Università di Roma.
Prerequisites. A good knowledge of the fundamentals of
Programming Structures, Programming Languages, Databases (SQL,
relational data model, Entity-Relationship data model, conceptual and
logical database design) and Database systems.
Course goals. In one sentence, Big Data is data that exceeds the
processing capacity of conventional database systems. In particular,
Big Data applications deal with huge amounts of data, possibly
collected from a huge number of data sources (volume), with
highly heterogeneous format (variety), at a very high rate (velocity).
This scenario calls for new technologies to be developed, ranging from
new data storage mechanisms to new computing frameworks. In this course
we will look at several key technologies used in manipulating, storing,
and analyzing big data. In particular, we will study architectures for
data intensive distributed applications, Data Warehouse solutions,
NoSQL storage solutions, including RDF and graph databases.
Lectures
- When: Tuesday, 4:00pm - 6:00pm (occasionally also 6:00pm-7:00pm), Thursday, 2:00pm - 5:00pm,
starting from February 26 until May 31, 2019
- Where: Classroom A5, DIAG, via Ariosto 25, Roma
Schedule
- Lectures 1, 2 (February 26)
- Course Introduction; Introduction to Big Data
- Lectures 3, 4 (March 5)
- DataWarehousing: Introduction; Architectures
- Lectures 5, 6, 7 (March 12)
- DataWarehousing: ETL; multidimensional model; OLAP Operators; Accessing DWs
- Lectures 8, 9, 10 (March 19)
- DataWarehousing: ROLAP vs. MOLAP; DW Design Methodology; Conceptual Modeling for DW: Dimensional Fact Model (DFM); Logical Modeling through the ROLAP approach: The star schema; the snowflake schema
- Lectures 11,12 (March 26)
- DataWarehousing: Views; Logical design; Indyco Tool quick demonstration;
- Graph Databases: Introduction to Graph databases; Graph DBs vs relational DBs; Graph Abstract Data Type and Implementation of Graphs; Querying Graph Databases;
- Lecture 13,14 (April 2)
- Graph Databases: Types of Graph DBs; Neo4j.
- Lecture 15,16 (April 9)
- Graph Databases: Resource Description Framework (RDF)
- Lecture 17,18,19 (April 16)
- Graph Databases: RDF storage; SPARQL; Linked Open Data
- Lecture 20,21 (April 30)
- Aggregate Databases: introduction to aggregate DBs; NoSQL data models: Key-value, Document and Column-family databases
- Lecture 22,23 (May 9)
- Aggregate Databases: MongoDB; Data Modeling in NoSQL databases
- Lecture 24,25 (May 14)
- Aggregate Databases: Distribution models; Consistency.
- Lecture 26, 27, 28 (May 21)
- Aggregate Databases: Map-Reduce.
- Seminar by Luca Vallarelli (Microsoft): Big Data flow to end architectures for Enterprises; ETL for data integration.
- Lecture 29,30 (May 28)
- Presentations of students' projects
Slides
Slides are available at http://elearning2.uniroma1.it/
To access the material enter in the system with your INFOSTUD
account and select the course on Big Data Management
Exams
There are two modalities for the exam:
(1) Development of a small project. Students are strongly encouraged to propose their own idea for projects. As a suggestion, they can refer to (and also select from) the following list of tools. The project connected to a tool consists, for example, in studying the logical data model(s) adopted by the tool, the native storage data structure it uses, the query language it provides, and highlighting further distinguishing features. Also, a demonstration of the basic use of the tool through one or more examples is required. Presentation connected to projects (possibly through slides) should last around 20 minutes (including the demo).
- Graph database and RDF tools
- Neo4j
-
OrientDB (it has features of both document and graph DBMSs).
-
ThingSpan (the new product incorporating InfiniteGraph functionalities)
-
HyperGraphDB
-
GraphDB (free edition).
-
Blazegraph
-
Allegrograph
-
Virtuoso
- key-value database tools
-
Redis
- Riak
-
MemcachedDB
-
Voldemort
- document database tools
- MongoDB
-
Couchbase
-
MarkLogic (Enterprise NoSQL)
- column-family database tools
- Cassandra
-
Hbase
-
Hypertable
- DataWarehousing tools
- Hive
- Qlikview (a
proprietary front-end tool for Business intelligence. A personal
edition can be downloaded for study purposes. Being it a front-end
tool, the focus of student analysis should be on the mechanisms
provided by the tool for data analytics, and for multidimensional
access to data, rather than on data models or storage data structure).
Note: This kind of projects can be developed individually or
by groups of two students. In this latter case,
presentation should be equally separated into two parts, one managed by
each member of the group, and the overall presentation time
can be extended to 30-40 minutes.
The exam will consist in the project presentation with possible additional questions on the
topics covered by this
section of the Large Scale Data Management Course.
To have a project assigned, students must send an email to
lembo@diag.uniroma1.it
indicating the kind project they are willing
to present (please, do not start working on a project before you have
it assigned).
(2) Article Presentation
Article presentation consists in preparing a 20 minute presentation about
scientific papers assigned by the lecturer or proposed by students. Send an email to lembo@diag.uniroma1.it to ask for the assignment of papers to study as final work (please, do not start studying a paper for exam presentation before you have it assigned).
Note: Article presentation can be carried out only individually
Note: Both project and paper presentations and paper will be preferably
carried out during the office ours. Students are however required to send an email in advance to fix the exact date and hour of their presentation.
Note: We recall that these exam details refer only to the
section on Big Data Management of the course "Big Data Management". Once you have passed the exam of this section, it will be notified to Prof. Maurizio Lenzerini, which is the responsible for the course for this academic year. The exam of the overall course of
"Large Scale Data Management" will be officially recorded (verbalizzato) through the INFOSTUD system only once the student will have successfully passed the exams of all the sections of the course. For details on this final registration please refere to the web page of the course "Large Scale Data Management".