Data Structures in. Sean Cribbs. Friday, April 26, 13
|
|
- Rafe Harvey
- 5 years ago
- Views:
Transcription
1 Data Structures in Sean Cribbs
2 Riak is Eventually-Consistent
3 Eventual Consistency 1 2 Replicated Loose coordination 3 Convergence
4 Eventual is Good Fault-tolerant Highly available Low-latency
5 Consistency? 1 A 2 No clear winner! 3 Throw one out? Keep both? B
6 Consistency? 1 A 2 No clear winner! 3 Throw one out? Keep both? B Cassandra
7 Consistency? 1 A 2 No clear winner! 3 Throw one out? Keep both? B Cassandra Riak & Voldemort
8 Conflicts! B! A!
9 Siblings in Riak HTTP/ Multiple Choices X- Riak- Vclock: a85hygdgygdkbviszmk55zkyehnzwblkinio8kgf2tyvhyikf0ciszunmtbzh YVKbIhEUl +VK4spDFTPxhHzFyqhEoVQz7wkSAGLMGuz6FSocFIUijE3pt5HlsgCAA== Vary: Accept, Accept- Encoding Server: MochiWeb/1.1 WebMachine/1.9.0 (participate in the frantic) Date: Fri, 30 Sep :24:35 GMT Content- Type: text/plain Content- Length: 102 Siblings: 16vic4eU9ny46o4KPiDz1f 4v5xOg4bVwUYZdMkqf0d6I 6nr5tDTmhxnwuAFJDd2s6G 6zRSZFUJlHXZ15o9CG0BYl
10 Siblings in Riak HTTP/ Multiple Choices X- Riak- Vclock: a85hygdgygdkbviszmk55zkyehnzwblkinio8kgf2tyvhyikf0ciszunmtbzh YVKbIhEUl +VK4spDFTPxhHzFyqhEoVQz7wkSAGLMGuz6FSocFIUijE3pt5HlsgCAA== Vary: Accept, Accept- Encoding Server: MochiWeb/1.1 WebMachine/1.9.0 (participate in the frantic) Date: Fri, 30 Sep :24:35 GMT Content- Type: text/plain Content- Length: 102 Siblings: 16vic4eU9ny46o4KPiDz1f 4v5xOg4bVwUYZdMkqf0d6I 6nr5tDTmhxnwuAFJDd2s6G 6zRSZFUJlHXZ15o9CG0BYl list of siblings
11 Siblings in Riak HTTP/ Multiple Choices X- Riak- Vclock: a85hygdgygdkbviszmk55zkyehnzwblkinio8kgf2tyvhyikf0ciszunmtbzhyvkbiheul +VK4spDFTPxhHzFyqhEoVQz7wkSAGLMGuz6FSocFIUijE3pt5HlsgCAA== Vary: Accept, Accept- Encoding Server: MochiWeb/1.1 WebMachine/1.9.0 (participate in the frantic) Date: Fri, 30 Sep :24:35 GMT Content- Type: multipart/mixed; boundary=yinlmzyur9feb17okmytgksylvh Content- Length: YinLMzyUR9feB17okMytgKsylvh Content- Type: application/x- www- form- urlencoded Link: </riak/test>; rel="up" Etag: 16vic4eU9ny46o4KPiDz1f Last- Modified: Wed, 10 Mar :01:06 GMT {"bar":"baz"} - - YinLMzyUR9feB17okMytgKsylvh Content- Type: application/json Link: </riak/test>; rel="up" Etag: 4v5xOg4bVwUYZdMkqf0d6I Last- Modified: Wed, 10 Mar :00:04 GMT {"bar":"baz"} - - YinLMzyUR9feB17okMytgKsylvh Content- Type: application/json Link: </riak/test>; rel="up"
12 Siblings in Riak HTTP/ Multiple Choices X- Riak- Vclock: a85hygdgygdkbviszmk55zkyehnzwblkinio8kgf2tyvhyikf0ciszunmtbzhyvkbiheul +VK4spDFTPxhHzFyqhEoVQz7wkSAGLMGuz6FSocFIUijE3pt5HlsgCAA== Vary: Accept, Accept- Encoding Server: MochiWeb/1.1 WebMachine/1.9.0 (participate in the frantic) Date: Fri, 30 Sep :24:35 GMT Content- Type: multipart/mixed; boundary=yinlmzyur9feb17okmytgksylvh Content- Length: YinLMzyUR9feB17okMytgKsylvh Content- Type: application/x- www- form- urlencoded Link: </riak/test>; rel="up" Etag: 16vic4eU9ny46o4KPiDz1f Last- Modified: Wed, 10 Mar :01:06 GMT {"bar":"baz"} - - YinLMzyUR9feB17okMytgKsylvh Content- Type: application/json Link: </riak/test>; rel="up" Etag: 4v5xOg4bVwUYZdMkqf0d6I Last- Modified: Wed, 10 Mar :00:04 GMT all the values {"bar":"baz"} - - YinLMzyUR9feB17okMytgKsylvh Content- Type: application/json Link: </riak/test>; rel="up"
13 Semantic Resolution Your app knows the domain - use business rules to resolve Amazon Dynamo s shopping cart
14 Semantic Resolution BAD Your app knows the domain - use business rules to resolve Amazon Dynamo s shopping cart
15 Semantic Resolution BAD Your app knows the domain - use business rules to resolve Amazon Dynamo s shopping cart Ad hoc approaches have proven brittle and error-prone
16 Goals Meaningful values Automatic resolution Transparent to user
17 WARNING This is a lot of math. Side effects may include dry mouth, itchy rash, and a desire to go back for a PhD.
18 Monotonic Functions Change in strictly a single direction Consecutive values may be equal Monotonic: Linear, Exponential Non-monotonic: Quadratic, Sinusoidal
19 Monotonic Functions Change in strictly a single direction Consecutive values may be equal Monotonic: Linear, Exponential Non-monotonic: Quadratic, Sinusoidal
20 Monotonic Logic Existing facts are never refuted New facts can be added Knowledge only grows
21 Monotonic Logic Existing facts are never refuted New facts can be added Knowledge only grows monotonicity of entailment
22
23 Bounded Join Semi-Lattice S,,
24 Bounded Join Semi-Lattice S,, S is a set
25 Bounded Join Semi-Lattice S,, S is a set S (minimal element)
26 Bounded Join Semi-Lattice S,, is a least-upper bound function x, y S, z S: x y = z
27 Bounded Join Semi-Lattice S,, is a least-upper bound function x, y S, z S: x y = z x, y S: x S y x y = y partial order
28 Bounded Join Semi-Lattice S,, is a least-upper bound function x, y S, z S: x y = z x, y S: x S y x y = y partial order x S: x = x identity
29 Set Lattice S = all finite sets = set-union = {}
30 Set Lattice {a,b,c,d,e} Time {a,b,c,d} {a,b,c} {b,c} {a,b} {b,c,d} {b,c,d,e} {c,d,e} {c,d} {d,e} {a} {b} {c} {d} {e} S = all finite sets = set-union = {}
31 Vector Clock
32 Vector Clock Vector clock is a lattice...
33 Vector Clock Vector clock is a lattice... S = all vectors of (Actor, Count) pairs = All Actors, each with their max Count = [] (empty vector)
34 Vector Clock Vector clock is a lattice... S = all vectors of (Actor, Count) pairs = All Actors, each with their max Count = [] (empty vector)...but the associated Riak value is nonmonotonic,
35 Vector Clock Vector clock is a lattice... S = all vectors of (Actor, Count) pairs = All Actors, each with their max Count = [] (empty vector)...but the associated Riak value is nonmonotonic,...and the vclock is not meaningful to the client.
36
37 CRDT Flavors Convergent (state-based) One replica updates, then forwards entire state, downstream merges Commutative (operation-based) Only mutations (ops) communicated Needs a reliable broadcast channel
38 CRDT Types Registers LWW, MV Counters Positive, P/N Sets Grow only, Two-Phase, Observed-Remove Graphs 2P-2P Lists Growable-array Collaborative editing Treedoc
39 Garbage! Monotonic types are space-inefficient Garbage-collection is non-monotonic Strong consensus may be needed for GC Related: vector-clock pruning, key deletion
40 Garbage! Counters Dead actors Sets, Graphs Tombstones
41 Theory Into Practice
42 Introducing Riak DT
43 Riak DT Riak Core Application State-based CRDTS Independent storage engine HTTP API CRDT behaviour QuickCheck convergence property
44 CRDT Behaviour new/0 empty CRDT value/1 the resolved value update/3 mutate CRDT merge/2 converge two CRDTs equal/2 compare internal value
45 G-Counter Simple version vector (28 LoC) [{ActorId,Count}] Update: increment actor s count Merge: greatest value per Actor Value: sum of Counts
46 G-Counter new() - > []. value(gcnt) - > sum([cnt {_Act, Cnt} <- GCnt]). equal(va,vb) - > lists:sort(va) =:= lists:sort(vb).
47 PN-Counter { } P = [{a,10},{b,2}], N = [{a,1},{c,5}] 2 x G-Counter (10 + 2) - (1 + 5) = 12-6 = 6 P - N = value
48 Riak DT In Action Bitcask storage per vnode Value / Update FSM per request Webmachine resource(s) e.g. GET /counters/key Read-repair
49 Trade-Offs Update: Primary replica only Secondary/Fallbacks may Merge PW=DW=1 by default Read-before-Write in the request path
50 But wait...
51 Riak KV Heavily-tested Storage engines Multi-datacenter Active anti-entropy Secondary Indexes, MapReduce KV Object = MV-Register
52 MERGE ALL THE CODE!!!
53 CRDTs in KV Store CRDTs as values inside KV Objects Requires allow_mult = true Resolve CRDTs separately from opaque values Counters-only at first
54 KV Counters
55 KV Counters GET /buckets/b/counters/c => 5
56 KV Counters GET /buckets/b/counters/c => 5 POST /buckets/b/counters/c 10
57 KV Counters GET /buckets/b/counters/c => 5 POST /buckets/b/counters/c 10 GET /buckets/b/keys/c
58 KV Counters GET /buckets/b/counters/c => 5 POST /buckets/b/counters/c 10 GET /buckets/b/keys/c Stop doing that.
59 Demo!
60 #crdt #riak
Eventual Consistency for CRDTs
Eventual Consistency for CRDTs Radha Jagadeesan DePaul University Chicago, USA ESOP 2018 James Riely 1/22 CRDTs? 2/22 CRDTs? C = blah blah R = mumble DT = Data Type 2/22 Data Type An abstract data type
More informationDo we have a quorum?
Do we have a quorum? Quorum Systems Given a set U of servers, U = n: A quorum system is a set Q 2 U such that Q 1, Q 2 Q : Q 1 Q 2 Each Q in Q is a quorum How quorum systems work: A read/write shared register
More informationI Can t Believe It s Not Causal! Scalable Causal Consistency with No Slowdown Cascades
I Can t Believe It s Not Causal! Scalable Causal Consistency with No Slowdown Cascades Syed Akbar Mehdi 1, Cody Littley 1, Natacha Crooks 1, Lorenzo Alvisi 1,4, Nathan Bronson 2, Wyatt Lloyd 3 1 UT Austin,
More informationTime. To do. q Physical clocks q Logical clocks
Time To do q Physical clocks q Logical clocks Events, process states and clocks A distributed system A collection P of N single-threaded processes (p i, i = 1,, N) without shared memory The processes in
More informationCausal Consistency for Geo-Replicated Cloud Storage under Partial Replication
Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication Min Shen, Ajay D. Kshemkalyani, TaYuan Hsu University of Illinois at Chicago Min Shen, Ajay D. Kshemkalyani, TaYuan Causal
More informationCS 484 Data Mining. Association Rule Mining 2
CS 484 Data Mining Association Rule Mining 2 Review: Reducing Number of Candidates Apriori principle: If an itemset is frequent, then all of its subsets must also be frequent Apriori principle holds due
More informationAgreement. Today. l Coordination and agreement in group communication. l Consensus
Agreement Today l Coordination and agreement in group communication l Consensus Events and process states " A distributed system a collection P of N singlethreaded processes w/o shared memory Each process
More informationClocks in Asynchronous Systems
Clocks in Asynchronous Systems The Internet Network Time Protocol (NTP) 8 Goals provide the ability to externally synchronize clients across internet to UTC provide reliable service tolerating lengthy
More informationWarm-Up Problem. Is the following true or false? 1/35
Warm-Up Problem Is the following true or false? 1/35 Propositional Logic: Resolution Carmen Bruni Lecture 6 Based on work by J Buss, A Gao, L Kari, A Lubiw, B Bonakdarpour, D Maftuleac, C Roberts, R Trefler,
More informationTime. Today. l Physical clocks l Logical clocks
Time Today l Physical clocks l Logical clocks Events, process states and clocks " A distributed system a collection P of N singlethreaded processes without shared memory Each process p i has a state s
More informationRandom Number Generator Digital Design - Demo
Understanding Digital Design The Digital Electronics 2014 Digital Design - Demo This presentation will Review the oard Game Counter block diagram. Review the circuit design of the sequential logic section
More informationDistributed Systems. 06. Logical clocks. Paul Krzyzanowski. Rutgers University. Fall 2017
Distributed Systems 06. Logical clocks Paul Krzyzanowski Rutgers University Fall 2017 2014-2017 Paul Krzyzanowski 1 Logical clocks Assign sequence numbers to messages All cooperating processes can agree
More information7. Queueing Systems. 8. Petri nets vs. State Automata
Petri Nets 1. Finite State Automata 2. Petri net notation and definition (no dynamics) 3. Introducing State: Petri net marking 4. Petri net dynamics 5. Capacity Constrained Petri nets 6. Petri net models
More informationLecture 13: Sequential Circuits, FSM
Lecture 13: Sequential Circuits, FSM Today s topics: Sequential circuits Finite state machines Reminder: midterm on Tue 2/28 will cover Chapters 1-3, App A, B if you understand all slides, assignments,
More informationDATA MINING LECTURE 3. Frequent Itemsets Association Rules
DATA MINING LECTURE 3 Frequent Itemsets Association Rules This is how it all started Rakesh Agrawal, Tomasz Imielinski, Arun N. Swami: Mining Association Rules between Sets of Items in Large Databases.
More informationCptS 464/564 Fall Prof. Dave Bakken. Cpt. S 464/564 Lecture January 26, 2014
Overview of Ordering and Logical Time Prof. Dave Bakken Cpt. S 464/564 Lecture January 26, 2014 Context This material is NOT in CDKB5 textbook Rather, from second text by Verissimo and Rodrigues, chapters
More informationOur Problem. Model. Clock Synchronization. Global Predicate Detection and Event Ordering
Our Problem Global Predicate Detection and Event Ordering To compute predicates over the state of a distributed application Model Clock Synchronization Message passing No failures Two possible timing assumptions:
More informationGeodatabase Best Practices. Dave Crawford Erik Hoel
Geodatabase Best Practices Dave Crawford Erik Hoel Geodatabase best practices - outline Geodatabase creation Data ownership Data model Data configuration Geodatabase behaviors Data integrity and validation
More informationCS 584 Data Mining. Association Rule Mining 2
CS 584 Data Mining Association Rule Mining 2 Recall from last time: Frequent Itemset Generation Strategies Reduce the number of candidates (M) Complete search: M=2 d Use pruning techniques to reduce M
More informationPropositional Resolution Part 1. Short Review Professor Anita Wasilewska CSE 352 Artificial Intelligence
Propositional Resolution Part 1 Short Review Professor Anita Wasilewska CSE 352 Artificial Intelligence SYNTAX dictionary Literal any propositional VARIABLE a or negation of a variable a, a VAR, Example
More informationFailure detectors Introduction CHAPTER
CHAPTER 15 Failure detectors 15.1 Introduction This chapter deals with the design of fault-tolerant distributed systems. It is widely known that the design and verification of fault-tolerent distributed
More informationModels for representing sequential circuits
Sequential Circuits Models for representing sequential circuits Finite-state machines (Moore and Mealy) Representation of memory (states) Changes in state (transitions) Design procedure State diagrams
More informationData Mining: Concepts and Techniques. (3 rd ed.) Chapter 6
Data Mining: Concepts and Techniques (3 rd ed.) Chapter 6 Jiawei Han, Micheline Kamber, and Jian Pei University of Illinois at Urbana-Champaign & Simon Fraser University 2013 Han, Kamber & Pei. All rights
More informationExperimental design (DOE) - Design
Experimental design (DOE) - Design Menu: QCExpert Experimental Design Design Full Factorial Fract Factorial This module designs a two-level multifactorial orthogonal plan 2 n k and perform its analysis.
More informationBoolean Algebra. Digital Logic Appendix A. Postulates, Identities in Boolean Algebra How can I manipulate expressions?
Digital Logic Appendix A Gates Combinatorial Circuits Sequential Circuits Other operations NAND A NAND B = NOT ( A ANDB) = AB NOR A NOR B = NOT ( A ORB) = A + B Truth tables What is the result of the operation
More informationData Mining and Analysis: Fundamental Concepts and Algorithms
Data Mining and Analysis: Fundamental Concepts and Algorithms dataminingbook.info Mohammed J. Zaki 1 Wagner Meira Jr. 2 1 Department of Computer Science Rensselaer Polytechnic Institute, Troy, NY, USA
More informationD B M G Data Base and Data Mining Group of Politecnico di Torino
Data Base and Data Mining Group of Politecnico di Torino Politecnico di Torino Association rules Objective extraction of frequent correlations or pattern from a transactional database Tickets at a supermarket
More informationExercises Stochastic Performance Modelling. Hamilton Institute, Summer 2010
Exercises Stochastic Performance Modelling Hamilton Institute, Summer Instruction Exercise Let X be a non-negative random variable with E[X ]
More informationFormal Verification of Mobile Network Protocols
Dipartimento di Informatica, Università di Pisa, Italy milazzo@di.unipi.it Pisa April 26, 2005 Introduction Modelling Systems Specifications Examples Algorithms Introduction Design validation ensuring
More informationBoolean Algebra. Digital Logic Appendix A. Boolean Algebra Other operations. Boolean Algebra. Postulates, Identities in Boolean Algebra
Digital Logic Appendix A Gates Combinatorial Circuits Sequential Circuits George Boole ideas 1854 Claude Shannon, apply to circuit design, 1938 (piirisuunnittelu) Describe digital circuitry function programming
More informationAssociation Rules. Fundamentals
Politecnico di Torino Politecnico di Torino 1 Association rules Objective extraction of frequent correlations or pattern from a transactional database Tickets at a supermarket counter Association rule
More informationDiscrete-event simulations
Discrete-event simulations Lecturer: Dmitri A. Moltchanov E-mail: moltchan@cs.tut.fi http://www.cs.tut.fi/kurssit/elt-53606/ OUTLINE: Why do we need simulations? Step-by-step simulations; Classifications;
More informationD B M G. Association Rules. Fundamentals. Fundamentals. Elena Baralis, Silvia Chiusano. Politecnico di Torino 1. Definitions.
Definitions Data Base and Data Mining Group of Politecnico di Torino Politecnico di Torino Itemset is a set including one or more items Example: {Beer, Diapers} k-itemset is an itemset that contains k
More informationAssociation Rules Information Retrieval and Data Mining. Prof. Matteo Matteucci
Association Rules Information Retrieval and Data Mining Prof. Matteo Matteucci Learning Unsupervised Rules!?! 2 Market-Basket Transactions 3 Bread Peanuts Milk Fruit Jam Bread Jam Soda Chips Milk Fruit
More informationGoal. Partially-ordered set. Game plan 2/2/2013. Solving fixpoint equations
Goal Solving fixpoint equations Many problems in programming languages can be formulated as the solution of a set of mutually recursive equations: D: set, f,g:dxd D x = f(x,y) y = g(x,y) Examples Parsing:
More informationD B M G. Association Rules. Fundamentals. Fundamentals. Association rules. Association rule mining. Definitions. Rule quality metrics: example
Association rules Data Base and Data Mining Group of Politecnico di Torino Politecnico di Torino Objective extraction of frequent correlations or pattern from a transactional database Tickets at a supermarket
More informationPortal for ArcGIS: An Introduction. Catherine Hynes and Derek Law
Portal for ArcGIS: An Introduction Catherine Hynes and Derek Law Agenda Web GIS pattern Product overview Installation and deployment Configuration options Security options and groups Portal for ArcGIS
More informationALU, Latches and Flip-Flops
CSE14: Components and Design Techniques for Digital Systems ALU, Latches and Flip-Flops Tajana Simunic Rosing Where we are. Last time: ALUs Plan for today: ALU example, latches and flip flops Exam #1 grades
More informationSpecification and Complexity of Collaborative Text Editing
Specification and Complexity of Collaborative Text Editing Hagit Attiya Technion Adam Morrison Technion Sebastian Burckhardt Microsoft Research Hongseok Yang University of Oxford Alexey Gotsman IMDEA Software
More informationLecture 2: Divide and conquer and Dynamic programming
Chapter 2 Lecture 2: Divide and conquer and Dynamic programming 2.1 Divide and Conquer Idea: - divide the problem into subproblems in linear time - solve subproblems recursively - combine the results in
More informationDistributed Systems Principles and Paradigms. Chapter 06: Synchronization
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 06: Synchronization Version: November 16, 2009 2 / 39 Contents Chapter
More informationSlides for Chapter 14: Time and Global States
Slides for Chapter 14: Time and Global States From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, Addison-Wesley 2012 Overview of Chapter Introduction Clocks,
More informationDistributed Systems Principles and Paradigms
Distributed Systems Principles and Paradigms Chapter 6 (version April 7, 28) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.2. Tel: (2)
More informationarxiv: v1 [cs.dc] 22 Oct 2018
FANTOM: A SCALABLE FRAMEWORK FOR ASYNCHRONOUS DISTRIBUTED SYSTEMS A PREPRINT Sang-Min Choi, Jiho Park, Quan Nguyen, and Andre Cronje arxiv:1810.10360v1 [cs.dc] 22 Oct 2018 FANTOM Lab FANTOM Foundation
More informationBasics HTTP. requests. Ryan E. Freckleton. PySprings. May 24, 2016
PySprings May 24, 2016 >>> import r e q u e s t s >>> r = r e q u e s t s. g e t ( h t t p s : / / a p i. g i t h u b. com/ u s e r, auth=( u s e r, p a s s ) ) >>> r. status_code 401 >>> r. h e a d e
More informationThe File Geodatabase API. Craig Gillgrass Lance Shipman
The File Geodatabase API Craig Gillgrass Lance Shipman Schedule Cell phones and pagers Please complete the session survey we take your feedback very seriously! Overview File Geodatabase API - Introduction
More informationLeveraging ArcGIS Online Elevation and Hydrology Services. Steve Kopp, Jian Lange
Leveraging ArcGIS Online Elevation and Hydrology Services Steve Kopp, Jian Lange Topics An overview of ArcGIS Online Elevation Analysis Using Elevation Analysis Services in ArcGIS for Desktop Using Elevation
More informationPropositional Resolution Introduction
Propositional Resolution Introduction (Nilsson Book Handout) Professor Anita Wasilewska CSE 352 Artificial Intelligence Propositional Resolution Part 1 SYNTAX dictionary Literal any propositional VARIABLE
More informationCS 425 / ECE 428 Distributed Systems Fall Indranil Gupta (Indy) Oct. 5, 2017 Lecture 12: Time and Ordering All slides IG
CS 425 / ECE 428 Distributed Systems Fall 2017 Indranil Gupta (Indy) Oct. 5, 2017 Lecture 12: Time and Ordering All slides IG Why Synchronization? You want to catch a bus at 6.05 pm, but your watch is
More informationDigital Logic Appendix A
Digital Logic Appendix A Boolean Algebra Gates Combinatorial Circuits Sequential Circuits 1 Boolean Algebra George Boole ideas 1854 Claude Shannon, apply to circuit design, 1938 Describe digital circuitry
More informationMAD. Models & Algorithms for Distributed systems -- 2/5 -- download slides at
MAD Models & Algorithms for Distributed systems -- /5 -- download slides at http://people.rennes.inria.fr/eric.fabre/ 1 Today Runs/executions of a distributed system are partial orders of events We introduce
More informationLecture 13: Sequential Circuits, FSM
Lecture 13: Sequential Circuits, FSM Today s topics: Sequential circuits Finite state machines 1 Clocks A microprocessor is composed of many different circuits that are operating simultaneously if each
More informationCSE140: Components and Design Techniques for Digital Systems. Midterm Information. Instructor: Mohsen Imani. Sources: TSR, Katz, Boriello & Vahid
CSE140: Components and Design Techniques for Digital Systems Midterm Information Instructor: Mohsen Imani Midterm Topics In general: everything that was covered in homework 1 and 2 and related lectures,
More informationLeveraging Web GIS: An Introduction to the ArcGIS portal
Leveraging Web GIS: An Introduction to the ArcGIS portal Derek Law Product Management DLaw@esri.com Agenda Web GIS pattern Product overview Installation and deployment Configuration options Security options
More informationDATA MINING - 1DL360
DATA MINING - 1DL36 Fall 212" An introductory class in data mining http://www.it.uu.se/edu/course/homepage/infoutv/ht12 Kjell Orsborn Uppsala Database Laboratory Department of Information Technology, Uppsala
More informationCoordination. Failures and Consensus. Consensus. Consensus. Overview. Properties for Correct Consensus. Variant I: Consensus (C) P 1. v 1.
Coordination Failures and Consensus If the solution to availability and scalability is to decentralize and replicate functions and data, how do we coordinate the nodes? data consistency update propagation
More informationDistributed Algorithms Time, clocks and the ordering of events
Distributed Algorithms Time, clocks and the ordering of events Alberto Montresor University of Trento, Italy 2016/04/26 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International
More informationBy that, every path can be analyzed :-) A given program may admit several paths :-( For any given input, another path may be chosen :-((
[x = M[e];] A = (A {e})\expr x [M[e 1 ] = e 2 ;] A = A {e 1,e 2 } By that, every path can be analyzed :-) A given program may admit several paths :-( For any given input, another path may be chosen :-((
More informationBig Data Infrastructure CS 489/698 Big Data Infrastructure (Winter 2016)
Big Data Infrastructure CS 489/698 Big Data Infrastructure (Winter 2016) Week 12: Real-Time Data Analytics (2/2) March 31, 2016 Jimmy Lin David R. Cheriton School of Computer Science University of Waterloo
More informationCS425: Algorithms for Web Scale Data
CS425: Algorithms for Web Scale Data Most of the slides are from the Mining of Massive Datasets book. These slides have been modified for CS425. The original slides can be accessed at: www.mmds.org Challenges
More informationSequential logic and design
Principles Of Digital Design Sequential logic and design Analysis State-based (Moore) Input-based (Mealy) FSM definition Synthesis State minimization Encoding Optimization and timing Copyright 20-20by
More informationEquivalence Checking of Sequential Circuits
Equivalence Checking of Sequential Circuits Sanjit Seshia EECS UC Berkeley With thanks to K. Keutzer, R. Rutenbar 1 Today s Lecture What we know: How to check two combinational circuits for equivalence
More informationScalar Optimisation Part 2
Scalar Optimisation Part 2 Michael O Boyle January 2014 1 Course Structure L1 Introduction and Recap 4-5 lectures on classical optimisation 2 lectures on scalar optimisation Last lecture on redundant expressions
More informationLecture Notes for Chapter 6. Introduction to Data Mining
Data Mining Association Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 6 Introduction to Data Mining by Tan, Steinbach, Kumar Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004
More informationCS 5014: Research Methods in Computer Science
Computer Science Clifford A. Shaffer Department of Computer Science Virginia Tech Blacksburg, Virginia Fall 2010 Copyright c 2010 by Clifford A. Shaffer Computer Science Fall 2010 1 / 254 Experimental
More informationDataflow analysis. Theory and Applications. cs6463 1
Dataflow analysis Theory and Applications cs6463 1 Control-flow graph Graphical representation of runtime control-flow paths Nodes of graph: basic blocks (straight-line computations) Edges of graph: flows
More informationSection 6 Fault-Tolerant Consensus
Section 6 Fault-Tolerant Consensus CS586 - Panagiota Fatourou 1 Description of the Problem Consensus Each process starts with an individual input from a particular value set V. Processes may fail by crashing.
More informationCS505: Distributed Systems
Department of Computer Science CS505: Distributed Systems Lecture 5: Time in Distributed Systems Overview Time and Synchronization Logical Clocks Vector Clocks Distributed Systems Asynchronous systems:
More informationInformation-Theoretic Lower Bounds on the Storage Cost of Shared Memory Emulation
Information-Theoretic Lower Bounds on the Storage Cost of Shared Memory Emulation Viveck R. Cadambe EE Department, Pennsylvania State University, University Park, PA, USA viveck@engr.psu.edu Nancy Lynch
More informationGeodatabase: Best Practices. Robert LeClair, Senior Instructor
Geodatabase: Best Practices Robert LeClair, Senior Instructor Agenda Geodatabase Creation Data Ownership Data Model Data Configuration Geodatabase Behaviors Data Validation Extending Performance Geodatabase
More informationMaking Geo-Replicated Systems Fast when Possible, Consistent if Necessary
Making Geo-Replicated Systems Fast when Possible, Consistent if Necessary Rodrigo Rodrigues NOVA University of Lisbon Joint work with Allen Clement, Johannes Gehrke, Cheng Li, Daniel Porto and Nuno Preguiça
More informationDATA MINING - 1DL360
DATA MINING - DL360 Fall 200 An introductory class in data mining http://www.it.uu.se/edu/course/homepage/infoutv/ht0 Kjell Orsborn Uppsala Database Laboratory Department of Information Technology, Uppsala
More informationDesign of discrete-event simulations
Design of discrete-event simulations Lecturer: Dmitri A. Moltchanov E-mail: moltchan@cs.tut.fi http://www.cs.tut.fi/kurssit/tlt-2707/ OUTLINE: Discrete event simulation; Event advance design; Unit-time
More informationMaximal Antichain Lattice Algorithms for Distributed Computatio
Maximal Antichain Lattice Algorithms for Distributed Computations Vijay K. Garg Parallel and Distributed Systems Lab, Department of Electrical and Computer Engineering, The University of Texas at Austin,
More informationIntroduction to Randomized Algorithms III
Introduction to Randomized Algorithms III Joaquim Madeira Version 0.1 November 2017 U. Aveiro, November 2017 1 Overview Probabilistic counters Counting with probability 1 / 2 Counting with probability
More informationThe Weakest Failure Detector to Solve Mutual Exclusion
The Weakest Failure Detector to Solve Mutual Exclusion Vibhor Bhatt Nicholas Christman Prasad Jayanti Dartmouth College, Hanover, NH Dartmouth Computer Science Technical Report TR2008-618 April 17, 2008
More informationCSC9R6 Computer Design. Practical Digital Logic
CSC9R6 Computer Design Practical Digital Logic 1 References (for this part of CSC9R6) Hamacher et al: Computer Organization App A. In library Floyd: Digital Fundamentals Ch 1, 3-6, 8-10 web page: www.prenhall.com/floyd/
More informationBoolean Algebra and Digital Logic 2009, University of Colombo School of Computing
IT 204 Section 3.0 Boolean Algebra and Digital Logic Boolean Algebra 2 Logic Equations to Truth Tables X = A. B + A. B + AB A B X 0 0 0 0 3 Sum of Products The OR operation performed on the products of
More informationData Mining Concepts & Techniques
Data Mining Concepts & Techniques Lecture No. 04 Association Analysis Naeem Ahmed Email: naeemmahoto@gmail.com Department of Software Engineering Mehran Univeristy of Engineering and Technology Jamshoro
More informationFunctional Dependencies and Normalization
Functional Dependencies and Normalization There are many forms of constraints on relational database schemata other than key dependencies. Undoubtedly most important is the functional dependency. A functional
More informationTemporal Data Mining
Temporal Data Mining Christian Moewes cmoewes@ovgu.de Otto-von-Guericke University of Magdeburg Faculty of Computer Science Department of Knowledge Processing and Language Engineering Zittau Fuzzy Colloquium
More informationESTIMATION METHODS FOR MISSING DATA IN UN-REPLICATED 2 FACTORIAL AND 2 FRACTIONAL FACTORIAL DESIGNS
Journal of Statistics: Advances in Theory and Applications Volume 5, Number 2, 2011, Pages 131-147 ESTIMATION METHODS FOR MISSING DATA IN k k p UN-REPLICATED 2 FACTORIAL AND 2 FRACTIONAL FACTORIAL DESIGNS
More informationECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering TIMING ANALYSIS Overview Circuits do not respond instantaneously to input changes
More informationFrequent Itemset Mining
Frequent Itemset Mining prof. dr Arno Siebes Algorithmic Data Analysis Group Department of Information and Computing Sciences Universiteit Utrecht Battling Size The previous time we saw that Big Data has
More informationMidterm1 Review. Jan 24 Armita
Midterm1 Review Jan 24 Armita Outline Boolean Algebra Axioms closure, Identity elements, complements, commutativity, distributivity theorems Associativity, Duality, De Morgan, Consensus theorem Shannon
More informationSimplification of finite automata
Simplification of finite automata Lorenzo Clemente (University of Warsaw) based on joint work with Richard Mayr (University of Edinburgh) Warsaw, November 2016 Nondeterministic finite automata We consider
More informationSection 3.3: Discrete-Event Simulation Examples
Section 33: Discrete-Event Simulation Examples Discrete-Event Simulation: A First Course c 2006 Pearson Ed, Inc 0-13-142917-5 Discrete-Event Simulation: A First Course Section 33: Discrete-Event Simulation
More informationIntegrating External and Internal Clock Synchronization. Christof Fetzer and Flaviu Cristian. Department of Computer Science & Engineering
Integrating External and Internal Clock Synchronization Christof Fetzer and Flaviu Cristian Department of Computer Science & Engineering University of California, San Diego La Jolla, CA 9093?0114 e-mail:
More informationDynamic Group Communication
Dynamic Group Communication André Schiper Ecole Polytechnique Fédérale de Lausanne (EPFL) 1015 Lausanne, Switzerland e-mail: andre.schiper@epfl.ch Abstract Group communication is the basic infrastructure
More informationDescription of the ED library Basic Atoms
Description of the ED library Basic Atoms Simulation Software / Description of the ED library BASIC ATOMS Enterprise Dynamics Copyright 2010 Incontrol Simulation Software B.V. All rights reserved Papendorpseweg
More informationPRUNING PROCEDURE FOR INCOMPLETE-OBSERVATION DIAGNOSTIC MODEL SIMPLIFICATION
PRUNING PROCEDURE FOR INCOMPLETE-OBSERVATION DIAGNOSTIC MODEL SIMPLIFICATION Ivan Havel Department of Cybernetics Faculty of Electrical Engineering, Czech Technical University Karlovo náměstí 13, 121 35
More informationEnabling Web GIS. Dal Hunter Jeff Shaner
Enabling Web GIS Dal Hunter Jeff Shaner Enabling Web GIS In Your Infrastructure Agenda Quick Overview Web GIS Deployment Server GIS Deployment Security and Identity Management Web GIS Operations Web GIS
More informationBetter Living Through Statistics Monitoring Doesn't (Have To) Suck
Better Living Through Statistics Monitoring Doesn't (Have To) Suck Jamie Wilkinson Site Reliability Engineer, Google jaq@{spacepants.org,google.com} @jaqpants #monitoringsucks I love monitoring. This hashtag
More informationChapter 11 Time and Global States
CSD511 Distributed Systems 分散式系統 Chapter 11 Time and Global States 吳俊興 國立高雄大學資訊工程學系 Chapter 11 Time and Global States 11.1 Introduction 11.2 Clocks, events and process states 11.3 Synchronizing physical
More informationAsymptotic Analysis. Slides by Carl Kingsford. Jan. 27, AD Chapter 2
Asymptotic Analysis Slides by Carl Kingsford Jan. 27, 2014 AD Chapter 2 Independent Set Definition (Independent Set). Given a graph G = (V, E) an independent set is a set S V if no two nodes in S are joined
More informationSpatial information sharing technology based on Grid
Spatial information sharing technology based on Grid Hong-bin ZHANG a,b,c,1, Bao-rui CHEN a,b,c,3,gang LI b,c,2, Xiao-ping XIN a,b,c,* a Hulunber Grassland Ecosystem Observation and Research Station, Beijing
More informationBasic Data Structures and Algorithms for Data Profiling Felix Naumann
Basic Data Structures and Algorithms for 8.5.2017 Overview 1. The lattice 2. Apriori lattice traversal 3. Position List Indices 4. Bloom filters Slides with Thorsten Papenbrock 2 Definitions Lattice Partially
More informationarxiv: v2 [cs.db] 24 Jul 2012
On the Relative Trust between Inconsistent Data and Inaccurate Constraints George Beskales 1 Ihab F. Ilyas 1 Lukasz Golab 2 Artur Galiullin 2 1 Qatar Computing Research Institute 2 University of Waterloo
More informationDIGITAL LOGIC CIRCUITS
DIGITAL LOGIC CIRCUITS Digital logic circuits BINARY NUMBER SYSTEM electronic circuits that handle information encoded in binary form (deal with signals that have only two values, and ) Digital. computers,
More informationScalable Failure Recovery for Tree-based Overlay Networks
Scalable Failure Recovery for Tree-based Overlay Networks Dorian C. Arnold University of Wisconsin Paradyn/Condor Week April 30 May 3, 2007 Madison, WI Overview Motivation Address the likely frequent failures
More information