Upload
lykiet
View
219
Download
0
Embed Size (px)
Citation preview
1.1
Prof. Paolo Romano IST / INESC-ID Lisboa
https://fenix.tecnico.ulisboa.pt/disciplinas/PADI1011/2014-2015/2-semestre
METI / MEIC-T
Course Introduction
PADI Plataformas para Aplicações
Distribuídas na Internet
1.2
Roadmap
Goals Myself Syllabus Bibliography Evaluation Important dates
Presentations in the labs: how to? Structure of a technical paper
1.3
Global Goals
Understand the problems underlying the design and development of large-scale (i.e., Internet-scale) distributed applications
Study middleware solutions supporting the execution of large-scale distributed, with an emphasis on their:
architecture, communication protocols, scalability, performance and dependability
1.4
Operational Goals
Specify, design, analyze and implement applications distributed over large scale systems, ... and middleware systems supporting their operation
Analyze and design protocols, algorithms and mechanisms to enhance the dependability of large-scale applications and platforms
1.5
Myself Prof. Paolo Romano(Theo + Labs)
[email protected] Room 2N3.1
E-mail of the Course [email protected] Subject: padi-14-15: Identify yourself: n.º aluno, curso/campus, turno
Office hours Wednesday: 11h00-12:30 and 15:00-16:30
Syllabus Introduction, System models Group Communication Publish-subscribe systems, Messas Queues Distributed Shared Memory, Tuple spaces Peer-to-Peer Systems Clock synchronization, logical and vector clocks Global States Mutual exclusion, leader election Reliable and Totally Ordered Broadcast Consensus Replication and fault-tolerance Transactions and Concurrency Control Distributed Transactions Gossip, Bayou, Coda Case-study: Google FS, Chubby, Big-table, Map-Reduce
1.6
1.7
Bibliography
“Custom”book PADI – Compiled by Luís Rodrigues and Luís Veiga for Instituto Superior Técnico
Selected chapters from : “Distributed Systems, concepts and design”, George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair, 5th edition, Pearson.
1.8
Evaluation Method 3 components
Exam (40%) Who submits at most one exam is awarded one bonus point for the grade of the exam Minimum grade: 8 (without bonuses)
Presentation of one paper in the laboratory class (10%) Groups of 3 students - MANDATORY
Individual feedback to presentations (5%)
Project (45%) Group of 3 students, minimum grade: 8 Intermediate checkpoint:
• counts for 15% of the project grade • only accounted for if it is improves the project’s grade
Evaluation based on code, final report and discussion
Mandatory registration for the labs, presentations and examss.
1.9
Evaluation dates and schedule Dates:
1st Exam: June 8 (9h00) 2nd Exam: June 29 (9h00) Project:
Submission of code: May 15 Submission of report: May 18 Demos and discussions in the following weeks
Schedule: theory classes:
Monday: 13h30 -15h00 (A5) Wednesday: 13h30 -15h00 (A1)
Laboratories Monday: 11h00-12h30 and 15h00-16h30 (1-19) Wednesday: 16h30-18h00 (1-19) Registrations (via web) during the first week of classes
1.10
Registration in the Labs Registration of groups to Labs
via Fénix, started today @ noon Groups of exactly 3 students Groups will collaborate for:
1. Project 2. Presentation of one paper
A google doc was created to facilitate group creation: http://goo.gl/GFt60n add your name there if your group is incomplete non-moderated: use it in a sensible way! it is important to converge soon: ACT FAST!
Do you want to “re-use” last year’s project? Send an email to PADI’s mailing list Subject: Project 2014 (Tagus) – Student No: XXX – Grade: YY
1.11
Summary
Objectives...what are you going to learn... understand the principles underlying large scale distributed systems and middleware platforms.
Syllabus...what are you going to study... theoretical foundations: time in distributed systesm, passive and active replication, group communications, mutual exclusion and leader election algorithms, mutlicast, optimistic replication, shared memory. Concurrency control and distributed transactions Distributed and replicated systems: Gossip, Coda, Bayou. Advanced systems: peer-to-peer, publish-subscribe, Google.
1.12
Summary (cont.)
Labs...what are you going to use... .Net Framework, C#, .NET Remoting
Project...what are you going to build... replicated system with focus on scalability and dependability
e.g., distributed video-game, replicated CVS server, P2P forum, fault-tolerant P2P versions of Wiki and Facebook, distributed and replicated shared calendar, file system inspired to GFC, etc.
Evaluation...what I expect from you... exam(40%), project(45%), paper presentation (10%), feedback to colleagues’ presenations (5%)
Questions?
1.14
Roadmap
Motivation for presentations
Structure of a presentation “What to say” and “how to say it”
Questions Types of questions
Other aspects: Communicate with your audience Plots/Multimedia and other auxiliary materials Read full paper.
1.15
...A Speaker’s Guide for Students...
Paper’s presentation, why? Courses (PADI, CM, etc.) Introduction to research activities
Master courses Systematic research of bibliography in an area
Scientific Activity Engineering Activity
Projects, systems, applications Adopted technologies
Your own or others’ work
1.16
Structure of a presentation
A paper/project presentation must: Identify the main ideas
Focus on differentiating aspects vs existing work Not overload with details
Motivate subsequent reading, ease comprehension Do not alienate audience
Be structured in distinct parts Clearly identified, each part with its clear own goals, fluid transitions.
Take a top-down approach Introduction, Main body, “Details” Section, Conclusion Not a rigid receipt, adapt to each topic
1.17
Structure of a presentation - Introduction
Most important part (not kidding!) Lays the ground for the entire presentation Determines receptivity of your audience
Problem definition Often forgotten Short but clear description If the problem is unclear...
...the solution will not be understood, nor the work will be appreciated!
Motivation Justify relevance and difficulty of the problem Provide overview of the solution Highlight potential benefits
1.18
Structure of a presentation – Introduction (2)
Terminology Coherence of the tems used in the talk Make sure you introduced obscure acronyms and jergon
Related work 100% new works are rare Mention related work with refereces (e.g. [SOSP’11]) Compare pros/cons among current solutions and your paper
Contributions of the Paper/Project Shortly express what is new Generate interest in the paper, help understanding it
Road-map of the rest of the presentation Short overview of what follows
1.19
Structure of a presentation – Main body
Core of the presentation Gradual introduction of details
Summary of main aspects, e.g.: Base mechanisms of a platform Protocol messages Algorithm’s properties Modules of an application/large-scale system
Discussion of the results Justify why/how results are adequate for your target problem Make clear that they match what you have sold in the introduction
1.20
Structure of a presentation – Details
Natural follow-up of the previous part only useful if previous section has been understood...
Must convince the audience The introduction can only captivate Experts do not “buy” results presented at high-level Non-experts should appreciate the merit/challenges of the work
Select ONE important aspect Relevant, not trivial Thoroughly txplain that one aspect Extra details not included in the paper that you are presenting
Previous work Additional bibliographic researches that you conducted Aspects that had to be omitted from the paper for space constraints
1.21
Structure of a presentation – Conclusion
Finalize the talk Regain audience’s attention after the Details Section Place results in retrospective
Recall the most important results of each part.
Additional observations that may confuse/distract audience if mentioned earlier on
Identify open problems Ineffiiciencies, limitations, faults anticipate possible questions
Express your availability to answer questions
1.22
Structure of a presentation – Q&A
Common practice after presentations Conferences, work, press, customer, etc.
Types of questions: 1. Curiosity/genuine ignorance
Will to understand/know more 2. Selfish
aim to shift attention to the “questioner” advertise her/his own related work
3. Aggressive / Malicious More important and more frequent Attacks to rivals Devalue work, problem, motivation, references à Assess reaction of speaker under pression!
1.23
Summing up
Presentations are aimed to: Publicize work to a community
Scientific, professional, some company, etc.
Motivate reading of paper/work/project Ease comprehension Justify relevance of the tackled problem Position proposed solution vs related work Describe the work you did Convince of the relevance of the results you obtained
Questions ????
1.25
Typical Structure of a Paper
Abstract Introduction Related Work Solution
Architecture/Algorithm/System
Evaluation Conclusions Bibliography / References
1.26
Typical Structure of a Paper - I Abstract
Convince to follow up and read the whole paper Focus on differentiating aspects, advances, applicability.
Introduction Context
e.g. emergence of cloud systems...
Problem dependability of applications running on the cloud comes with high costs
Key aspects of the solution scalable replication protocol, 10x higher throughput than state of the art
Overview and roadmap of the rest of the work Section 2 presents system’ architecture. Algorithm is introduced in Section 3...
Typical Structure of a Paper - II
Related Work Critical/comparative analysis of previous work
either your own or by others’ pursuing same or related goals
Serves as starting point to describe your contributions Can also be placed later on in the paper, before conclusions
Before: + allows to motivate early on yoyur solution by comparison + clarify what is new soon - cannot dwelve in technical comparison, as your solution was not presented yet After:
opposite pros/cons 1.27
1.28
Typical Structure of a Paper - III Solution
Architecture/Algorithm/System Most extense and detailed section of the paper Rule of thumb: take a top-down approach
Not mention component/aspect w/o explaining how it fits in the “big picture” Not refer elements that were not introduced yet
Evaluation Qualitative and quantitative analysis of the solution’s performance Justify convincingly why a solution is “better”
Conclusions Summary, recall key aspects in the evaluatio, identify interesting research questions opened by your work
Bibliography Include only articles that were explicitly cited in the text body.