26
Introduction to the Course Distributed Systems Sistemi Distribuiti Andrea Omicini [email protected] Dipartimento di Informatica – Scienza e Ingegneria (DISI) Alma Mater Studiorum – Universit` a di Bologna a Cesena Academic Year 2015/2016 Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 1 / 26

Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

  • Upload
    vocong

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Introduction to the CourseDistributed Systems

Sistemi Distribuiti

Andrea [email protected]

Dipartimento di Informatica – Scienza e Ingegneria (DISI)Alma Mater Studiorum – Universita di Bologna a Cesena

Academic Year 2015/2016

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 1 / 26

Page 2: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Outline

1 Distributed Systems: Why?

2 Distributed Systems: The CourseGoal & StructureWhat to Do

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 2 / 26

Page 3: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

Outline

1 Distributed Systems: Why?

2 Distributed Systems: The CourseGoal & StructureWhat to Do

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 3 / 26

Page 4: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

Pervasive Computation & Interaction I

Nowadays, computational systems. . .

. . . have become pervasive, since they are everywhere, and tend toaffect every aspect of our everyday life and activity

. . . are at the core of most (if not all) artificial systems, so that everyprincipled discipline for modelling / engineering computationalsystems affects the modelling and engineering of almost every sort ofartificial systems

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 4 / 26

Page 5: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

Pervasive Computation & Interaction II

Pervasiveness of computations

how many computational systems today in this room?

in our cars, at home, in the workplaces, in hospitals, in public places?

we live immersed in a sort of computational cloud , where anincredible (and always increasing) number of computations areperformed at every instant

distributed, concurrent computationseither controlled / triggered, or autonomous computations

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 5 / 26

Page 6: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

Pervasive Computation & Interaction III

Pervasiveness of interaction

almost any computational system of today comes equipped with ICTtechnologies for interacting with other computational systems

computational devices continuously interact

with humanswith each otherswith the physical environment and its resources

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 6 / 26

Page 7: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

Physical vs. Computational

The physical nature of artificial systems. . .

. . . adds complexity to computational components / systems

in terms of physical distribution

in terms of temporal distribution

in terms of unpredictability of the scenarios

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 7 / 26

Page 8: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

On the Notion of Distribution I

What is distributed?

computational units

communication channels

data / information / knowledge

along with their representations

sensors, actuators, . . .

the boundaries between the systems and the surrounding environmentare topologically sparse

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 8 / 26

Page 9: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

On the Notion of Distribution II

Spatio-temporal unity of systems is lost

there is no longer a notion of system time, nor a system location

system components, at different level of abstraction, are only partiallyrelated

temporally & topologically

A number of assumptions over systems no longer hold

system events no longer constitute a totally-ordered set

generally speaking, partial ordering is the only feature

admissible interactions among system components no longer dependon compresence

in space / timewithin the same physical / virtual topology

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 9 / 26

Page 10: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

Building Artificial Systems Nowadays I

Building artificial systems. . .

. . . nowadays means building distributed systems

whose core is represented by distributed computational systems

which are to be modelled and engineered

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 10 / 26

Page 11: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: Why?

Building Artificial Systems Nowadays II

Modelling distributed systems. . .

. . . involves new (theoretical) problems

so, it requires new theoretical frameworks, models, abstractions,techniques

Engineering distributed systems. . .

. . . involves new (practical) problems

so, it requires new technologies, infrastructures, methods,methodologies

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 11 / 26

Page 12: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course

Outline

1 Distributed Systems: Why?

2 Distributed Systems: The CourseGoal & StructureWhat to Do

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 12 / 26

Page 13: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Goals of the Course

Students of this course should

Learn the fundamental issues of distributed systems

Re-think some of the most widely used technologies in nowadaysdistributed systems

object-based as a general trend in moving legacy models &technologies toward distributed systemsweb-based as the most relevant case of today widespread distributed,knowledge-intensive systems

Take a look at some of the hottest new trends

Experiment with novel distributed technologies

coordination-based and agent-based as general-purpose approaches toadvanced technologies for intelligent & pervasive systems

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 13 / 26

Page 14: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Structure of the Course: Main Topics I

Generality on distributed systems

basic problems and definitions

software architectures

middleware & infrastructure

Issues of distributed systems

communication

naming

synchronisation

consistency & replication

fault tolerance

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 14 / 26

Page 15: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Structure of the Course: Main Topics II

Main sorts of distributed systems

web-based systems (generality)

from distributed object-based systems to agent-based systems

agent-based systems

coordination-based systems

cloud-based systems

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 15 / 26

Page 16: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Material of the Course: Main Book

[TvS07a]

Tanenbaum, A. S. and van Steen, M. (2007)Distributed Systems. Principles and ParadigmsPearson Prentice Hall, Upper Saddle River, NJ, USA, 2nd edition.

[TvS07b]

Tanenbaum, A. S. and van Steen, M. (2007)Sistemi DistribuitiPearson Education Italia, Torino, Italia, 2a edizione.

This book represents the main guide throughout the first part of thecourse—basics & issues

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 16 / 26

Page 17: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Material of the Course: Other Books I

[CDKB12]

Coulouris, G., Dollimore, J., Kindberg, T. and Blair, G. (2012)Distributed Systems. Concepts and DesignPearson

[Bir05]

Birman, K.P. (2005)Reliable Distributed Systems. Technologies, Web Services, andApplicationsSpringer

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 17 / 26

Page 18: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Material of the Course: Other Books II

[KS11]

Kshemkalyani, A.D. and Singhal, M. (2011)Distributed Computing. Principles, Algorithms, and SystemsCambridge University Press

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 18 / 26

Page 19: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Material of the Course: Slides

http://apice.unibo.it/xwiki/bin/view/Courses/Sd1516Slides

slides will be available from the course web site

along with any additional information—e.g., related literature

After the beginning of the course – on the main sorts of distributedsystems – the remainder of the classes

will contain some references to the Tanenbaum & van Steen bookchapters

but will mainly evolve according to a different perspective, asreported on the course’s slide

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 19 / 26

Page 20: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Schedule

Classes

Tuesday, h. 10-13, Lab 3, via Sacchi 3

Friday, h. 14-17, Room A, via Sacchi 3

http://apice.unibo.it/xwiki/bin/view/Courses/Sd1516Schedule

Any variation, extension, cancellation will be communicated via

schedule page

professor / students mailing list andrea.omicini.SD-1516

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 20 / 26

Page 21: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Organisation of the Course

Professors-students lists

are provided for free by the Alma Mater Studiorum

mostly work

used here

Please register soon. . .

to the list andrea.omicini.SD-1516

using password 1516SD

like, say, today .

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 21 / 26

Page 22: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course Goal & Structure

Laboratory

Where, when, who

(some) Tuesday, h. 10–13, Lab 3, via Sacchi 3

with Prof. Andrea Omicini & Dr. Ing. Stefano Mariani

http://apice.unibo.it/xwiki/bin/view/Courses/Sd1516Lab

slides will be available from the lab web page

along with any additional materials—e.g., links, code, exercises

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 22 / 26

Page 23: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course What to Do

Attitude toward the Course

Attending lessons is useful

The topic is really general and rich of subtleties

A lot of “implicit knowledge” is transferred orally

Material may be enough to pass the exam, anyway. . .

. . . for those who have problems attending lessons—like, workerstudents

. . . or, for those who just hate the Professor’s voice / face / slides /attitude / whatever

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 23 / 26

Page 24: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Distributed Systems: The Course What to Do

Exams

Final exams

mostly consist of an oral discussion about the main themes of thecourse

can be asked at any time of the year, typically via email

Projects

a project can constitute an alternative path w.r.t. oral exam

it should cover a specific topic of the course

it may concern theoretical / technological /methodological aspects

it may be developed by individuals or groups

it has to be negotiated with the Professor, in order to ensure

its focus on distributed systems, as well asits feasibility in a reasonable amount of time

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 24 / 26

Page 25: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

References

References

Kenneth P. Birman.Reliable Distributed Systems. Technologies, Web Services, andApplications.Springer New York, 2005.

George Coulouris, Jean Dollimore, Tim Kindberg, and Gordon Blair.Distributed Systems. Concepts and Design.Pearson, 5th edition, 2012.

Ajay D. Kshemkalyani and Mukesh Singhal.Distributed Computing. Principles, Algorithms, and Systems.Cambridge University Press, March 2011.

Andrew S. Tanenbaum and Marteen van Steen.Distributed Systems. Principles and Paradigms.Pearson Prentice Hall, Upper Saddle River, NJ, USA, 2nd edition,2007.

Andrew S. Tanenbaum and Marteen van Steen.Sistemi Distribuiti.Pearson Education Italia, Torino, Italia, 2a edition, September 2007.

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 25 / 26

Page 26: Introduction to the Course - unibo.itcampus.unibo.it/224004/1/0-intro.pdf · Introduction to the Course Distributed Systems ... distributed systems object-basedas a general trend

Introduction to the CourseDistributed Systems

Sistemi Distribuiti

Andrea [email protected]

Dipartimento di Informatica – Scienza e Ingegneria (DISI)Alma Mater Studiorum – Universita di Bologna a Cesena

Academic Year 2015/2016

Andrea Omicini (DISI, Univ. Bologna) 0 – Introduction to the Course A.Y. 2015/2016 26 / 26