Cloud Computing


Introduction to Clouds


1.Introduction to course slides 
2. "Introduction to Cloud Computing Architecture", White paper, Sun Microsystems, June 2009. slides
3.
 "A Short Introduction to Cloud Platforms," David Chappell, Microsoft Corporation, Aug. 2008. slides

 

Google File System

 

4."The Google File System", S. Ghemawat, H. Gobioff, S.T. Leung, "SOSP '03. slides, 
5."GFS: Evolution on Fast-Forward," Communications of the ACM March 2010. slides


Fluffy - IaaS

6. Introduction to Fluffy:  "Ubuntu Enterprise Cloud Architecture", Technical White Paper, Aug. 2009. slides

Map/Reduce

7. Data-Intensive Text Processing with MapReduce, J. Ku and C. Dyer, Morgan and Claypool, 2010.Parallel/Distributed Computing, Intro to MapReduce slides - Chapter 1
8. MapReduce Basics slides - Chapter 2
9. "MapReduce: Simplified Data Processing on Large Clusters," J. Dean and S. Ghemawat,
 SOSP '04. slides
10. MapReduce and Algorithms slides - Chapter 5
11. Fluffy Demo and Chapter 5 Continued
12. MapReduce strategies - Chapter 3 slides -- present before HW2
13. Information Retrieval - Chapter 4 slides -- present before HW3

Student presentations

14. "Data Management in Clouds" (Bahri, Grubic) slides

Modeling and Analysis of Computer and Communication Systems


Course Description:
The course introduces basic concepts of performance evaluation and analytical modeling of modern computer systems and networks.  The topics include: measurement techniques, monitoring tools, statistical analysis, simulation, analytic models, Queuing theory, benchmarks, and performance evaluation problems. 
By the end of this course students are well-prepared with theoretical and practical knowledge  for experimental design, measurement, simulation, and modeling of modern computer and communication systems. 

Text Book: 
Raj Jain, The Art of Computer Systems Performance Analysis: Techniques, Experimental Design, Measurement, Simulation and Modeling, 
John Wiley & Sons, Inc., New York, NY, 1991.

Lecture Notes:Lecture notes will be available in PPT and PDF format. 

Lecture
Topic
PPT Notes
#1 (M)
Introduction (Course Admin, Objectives, 
Common Mistakes)
#2 (W)
Introduction (Systematic Approach, Example)
Selection of Techniques and Metrics
#3 (M)
Workloads: Types, Selection, and Characterization
#4 (W)
 Workloads: Selection and Characterization
#5 (W)
 Monitors
#6 (M)
 The Art of Data Presentation; Ratio Games
#7 (W)
 Summarizing Measured Data
#8 (M)
 Comparing Systems Using Sample Data
#9 (W)
 Simple Linear Regression Models
#10 (M)
 Other Regression Models
#11 (W)
 Experimental Design
#12 (M)
 Experimental Design
#13 (W)
 2^(k-p) Factorial Design
#14 (M)
 One Factor Experiments
#15 (W)
 Midterm Exam
#16 (M)
 One Factor Experiments
 Two Factor Full Factorial Design  without Replications
#17 (W)
 Two Factor Full Factorial Design with  Replications; 
 Full Factorial Design with k Factors
#19 (W)
  Introduction to Simulation
#20  (M)
 Random Number Generation
#21 (W)
 Testing Random Number Generators,  Random-Variate Generation
#22 (M)
 (Random Variate Generation)
 Introduction to Queueing Theory
#23 (W)
 Analysis of a Single Queue (M/M/1)
#24  (M)
 Analysis of a Single Queue (M/M/m)
 Queueing Networks
#25 (W)
 Operational Laws
#26 (M)
 Mean-Value Analysis and
 Related Techniques

Introduction to Python Programming


Week
Topics
PPT
Assignment
1
Python types, variables, simple I/O; Useless Trivia game
2
Branching, while loops, planning; Guess My Number game
3
for loops, strings, tuples; Word Jumble game
4
Lists, dictionaries; Hangman game
5
Functions; Tic-Tac-Toe game
6
Files, exceptions; Trivia Challenge game
7
Review in lecture & Midterm Exam in lab
Review
8
Object Oriented Programming (OOP); Critter Caretaker game
9
Messages, inheritance, modules; Blackjack game
10
GUI development; Mad Lib game
11
Graphics; Pizza Panic game
12
Sound, animation, development; Astrocrash game
13
Review, no lab or lab assignment [Thanksgiving]

14
Clicks, layers, rotation, following, keyboard input to GUI
See code
15
Office hours replace lecture & lab



·         Python official web site
·         Python documentation including a beginner’s guide and a tutorial
·         Learn Python in 10 minutes

Search Engine Technology


Course description

A significant portion of the information that surrounds us is in textual format. A number of techniques for accessing such information exist, ranging from databases to natural language processing.
Some of the most prestigious companies these days spend large amounts of money to build intelligent search engines that allow casual users to find what they want anytime, from anywhere, and in any language.
In this course, we will cover the theory and practice behind the implementation of search engines, focusing on a wide range of topics including methods for text storage and retrieval, the structure of the Web as a graph, evaluation of systems, and user interfaces.

Learning objectives

  • Understand how search engines work
  • Understand the limits of existing search technology
  • Learn to appreciate the sheer size of the Web
  • Learn to wrote code for text indexing and retrieval
  • Learn about the state of the art in IR research
  • Learn to analyze textual and semi-structured data sets
  • Learn to appreciate the diversity of texts on the Web
  • Learn to evaluate information retrieval
  • Learn about standardized document collections
  • Learn about text similarity measures
  • Learn about semantic dimensionality reduction
  • Learn about the idiosyncrasies of hyperlinked document collections
  • Learn about web crawling
  • Learn to use existing software
  • Understand the dynamics of the Web by building appropriate mathematical models
  • Build working systems that assist users in finding useful information on the Web
  • Download PPT  Lectures
    Size
    576K
    199K
    265K
    488K
    135K
    530K
    233K
    1.2M
    153K
    2.6M
    1.4M
    1.2M
    545K
free counters