About CSC

Process for CSC hosting
School Models
Role of Local Organisers
Other Roles

Past Schools

2004 2005 2006 2007 2008 2009 2010 2011

Diploma at CSC
Sport at CSC
Inverted CSCs

iCSC05 iCSC06 iCSC08 iCSC10 iCSC11

Special schools


Inverted School 2005

CSC 2005

CSC2005 Overview

Practical Information






Examination results
Grants from EU -FP6

Eligibility Conditions

Level of grant support

How to apply
New  Lecture videos
New  Photo-Contest
New  Updated news
New  Social activities



inverted CERN School of Computing 2005 23-25 February 2005, CERN

Programme Overview

Data Management and Data Bases

Advanced Software Development Engineering

Web Services
in Distributed Computing



Lecturer Bios

Printable Version

iCSC2005 Data Management and Data Bases Theme

Details of all lectures

Fundamentals of Database Design


Wednesday 23 February

10:05 - 11:00 Lecture 1 Fundamentals of Database Design Zornitsa Zaharieva

The objective of the lecture is to briefly introduce the notion of a database system and then to give a practical overview of the process of designing a database schema.
The aim is to show how to end up with a database model starting from the row data. In this process the participants will learn what is a conceptual design of a database (entity-relationship model), how to transfer the conceptual design to a logical design (relational model), get acquainted with the Data Definition Language as part of SQL, look at some common pitfalls when designing a database schema.

1.      Introducing database concepts

2.      Conceptual Design – Entity-Relationship Model

3.      Logical Design

4.      Relational Database Model

5.      Introducing SQL (Structured Query Language)

6.      Implementing the relation model through the DDL part of SQL

7.     Effective design best practices and common pitfalls

SQL: basics and recent advances


Wednesday 23 February

11:30 12:25 Lecture 2 SQL: basics and recent advances Miguel Anjo

At the end of this lecture it is expected that the participants have heard about the main features available for interacting with a database. The base of the session is to look in detail at all the possibilities of database queries, with particular attention to advanced SELECT forms. Most of the session will be based on SQL92 standard and a small part on Oracle features.

1. DML basics: insert/update/delete

2. SELECT basics

  • '||', column pseudonyms, NVL

  • union, union all, intersect, minus

  • restricting: where, in, like, distinct, and/or, not, is [not] null, any, all

  • sorting: order by, asc/desc

  • aggregation: count, sum, max, avg, group by, having

  • joins: equijoins, outerjoins

  • charater manipulation functions: contat, length, lower, upper, ltrim, substr, ...

  • numeric functions: abs, ceil, floor, mod, power, round, sign, sqrt, trunc, ...

  • date functions: to_date, last_day, next_day, NLS_DATE_FORMAT, round, sysdate, trunc

  • convertion functions: to_char, to_date, to_number

  • other functions: decode, greatest, least, nvl, uid, user, vsize

3. Advanced SELECT

  • self joins

  • subqueries, inline views, rownum

  • correlated subqueries

4. Indexes b-tree

5. Transactions

6. Multi-dimensional aggregation

Advanced Database Features


Wednesday 23 February

14:00 - 14:55 Lecture 3 Advanced Database Features Zornitsa Zaharieva
Miguel Anjo

This lecture will give an overview of what a database offers to improve the performance of very big databases (index-organized tables, partitioning, etc.) and certain features for protecting the data when working in a multi-user environment in a database. It will also show how to put more logic into the database layer and make the database ‘smarter’ by capturing database events through triggers or adding programming logic to the execution of SQL commands (PL/SQL functions). The lecture is heavily based on the Oracle implementation of all these features.

  1. Creating a table from a table

  2. Creating an index-organized tables

  3. Other indexes (bitmap, function based, reverse, multi-column)

  4. Using partitioned tables

  • range, hash, composite partitioning

  • global, local indexes

  1. By what authority – users and privileges


  3. Materialized views

  4. Accessing Remote Data - synonyms, db links

  5. Introduction to PL/SQL

  6. Triggers

  7. PL/SQL procedures, functions and packages

Performance Optimization and Tuning


Wednesday 23 February

15:05 16:00 Lecture 4 Performance Optimization and Tuning Michal Kwiatek

The aim of this lecture is to give you an idea of what database performance tuning is from the point of view of an application developer and not that of a DataBase Administrator (DBA ). Why do we need to tune at all? How can we make tuning experts unnecessary? Application tuning is the main topic of the lecture and its substantial part is devoted to SQL statement tuning. But the larger picture is also there! Common pitfalls are listed and you will see real life examples and problems.

Come to this lecture if you want to learn:

  • what tuning is, why it's perceived as magic and how to tame it,

  • when to start tuning a database application,

  • what techniques and tools to use,

  • what is an SQL optimizer and how to make it work better,

  • how to read an execution plan,

  • what types of indexes to use and why,

  • why timing and logging is so important,

  • why avoid using optimizer hints

All these issues are presented based on an Oracle database. But they are also relevant to other database systems!

Data Mining: Extracting knowledge from data


Wednesday 23 February

16:30 - 17:25 Lecture 5 Data Mining:  Extracting knowledge from data Petr Olmer

A hidden knowledge can be stored in databases. How to discover it? How can we search for an answer, if we do not know a question? Data mining can help. The objective of the lecture is to introduce basic methods of knowledge discovery in structured data, and also in an unstructured text.


1. What and why

  • Data mining, knowledge discovery, data exploration

  • Machine learning

  • Statistics

2. Data mining as a process

  •  CRISP-DM method

  • Predictive and descriptive tasks

  •  Concepts, instances, attributes

3. Models and algorithms

  • Decision trees

  • Classification rules

  • Association rules

  • k-nearest neighbors

  • Cluster analysis

4. Text mining: How does Google News work

  • Converting unstructured text to structured data

  • Cluster analysis



All on iCSCs



Data Theme






All lectures

Soft Theme







All lectures

WS Theme




All lectures

Exercises New
Social Events


Feedback: Computing (dot) School (at) cern (dot) ch
Last update: Thursday, 14. November 2013 11:48

Copyright CERN