Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer.
|
|
- Edmund Clark
- 6 years ago
- Views:
Transcription
1 DBMS Architecture SQL INSTRUCTION OPTIMIZER Dtbse Mngement Systems MANAGEMENT OF ACCESS METHODS BUFFER MANAGER CONCURRENCY CONTROL RELIABILITY MANAGEMENT Index Files Dt Files System Ctlog DATABASE 2 Query optimizer Query optimizer It selects n efficient strtegy for query execution It is fundmentl building block of reltionl DBMS It gurntees the dt independence property The form in which the SQL query is written does not ffect the wy in which it is implemented A physicl reorgniztion of dt does not require rewriting SQL queries It utomticlly genertes query execution pln It ws formerly hrd-coded by progrmmer The utomticlly generted execution pln is usully more efficient It evlutes mny different lterntives It exploits sttistics on dt, stored in the system ctlog, to mke decisions It exploits the best known strtegies It dynmiclly dpts to chnges in the dt distribution 3 4 Query optimizer Lexicl, syntctic nd semntic nlysis SQL QUERY LEXICAL, SYNTACTIC AND SEMANTIC ANALYSIS Anlysis of sttement to detect Lexicl errors e.g., misspelled keywords Syntctic errors errors in the grmmr of the SQL lnguge Semntic errors references to objects which do not ctully exist in the dtbse (e.g, ttributes or tbles) informtion in the dt dictionry is needed 5 6 Pg.
2 Lexicl, syntctic nd semntic nlysis Query optimizer Output Internl representtion in (extended) reltionl lgebr Why reltionl lgebr? It explicitly represents the order in which opertors re pplied It is procedurl (different from SQL) There is corpus of theorems nd properties exploited to modify the initil query tree SQL QUERY LEXICAL, SYNTACTIC AND SEMANTIC ANALYSIS INTERNAL REPRESENTATION BASED ON RELATIONAL ALGEBRA ALGEBRAIC DATA DICTIONARY 7 8 Algebric optimiztion Query optimizer Execution of lgebric trnsformtions considered to be lwys beneficil Exmple: nticiption of selection with respect to join Should eliminte the difference mong different formultions of the sme query This step is usully independent of the dt distribution Output Query tree in cnonicl form SQL QUERY LEXICAL, SYNTACTIC AND SEMANTIC ANALYSIS INTERNAL REPRESENTATION BASED ON RELATIONAL ALGEBRA ALGEBRAIC CANONICAL QUERY TREE COST BASED DATA DICTIONARY 9 Cost bsed optimiztion Selection of the best execution pln by evluting execution cost Selection of the best ccess method for ech tble the best lgorithm for ech reltionl opertor mong vilble lterntives Bsed on cost model for ccess methods nd lgorithms Genertion of the code implementing the best strtegy Cost bsed optimiztion Output Access progrm in executble formt It exploits the internl structures of the DBMS Set of dependencies conditions on which the vlidity of the query pln depends e.g., the existence of n index 2 Pg. 2 2
3 Query optimizer Execution modes SQL QUERY LEXICAL, SYNTACTIC AND SEMANTIC ANALYSIS INTERNAL REPRESENTATION BASED ON RELATIONAL ALGEBRA DATA DICTIONARY Compile nd go Compiltion nd immedite execution of the sttement No storge of the query pln Dependencies re not needed ALGEBRAIC CANONICAL QUERY TREE COST BASED DATA PROFILES (STATISTICS ON DATA) ACCESS PROGRAM SET OF DEPENDENCIES 3 4 Execution modes Compile nd store The ccess pln is stored in the dtbse together with its dependencies It is executed on demnd It should be recompiled when the dt structure chnges Dtbse Mngement Systems Algebric optimiztion 5 6 Algebric optimiztion Algebric optimiztion SQL QUERY LEXICAL, SYNTACTIC AND SEMANTIC ANALYSIS INTERNAL REPRESENTATION BASED ON RELATIONAL ALGEBRA ALGEBRAIC CANONICAL QUERY TREE COST BASED DATA DICTIONARY DATA PROFILES (STATISTICS ON DATA) It is bsed on equivlence trnsformtions Two reltionl expressions re equivlent if they both produce the sme query result for ny rbitrry dtbse instnce Interesting trnsformtions reduce the size of the intermedite result to be stored in memory prepre n expression for the ppliction of trnsformtion which reduces the size of the intermedite result ACCESS PROGRAM SET OF DEPENDENCIES 7 8 Pg. 3 3
4 . Atomiztion of selection s F Ʌ F2 (E) s F2 (s F (E)) s F (s F2 (E)). Atomiztion of selection s F Ʌ F2 (E) s F2 (s F (E)) s F (s F2 (E)) 2. Cscding projections p X (E) p X (p X,Y (E)) 9 2. Atomiztion of selection s F Ʌ F2 (E) s F2 (s F (E)) s F (s F2 (E)) 2. Cscding projections p X (E) p X (p X,Y (E)) 3. Anticiption of selection with respect to join (pushing selection down) s F (E E 2 ) E (s F (E 2 )) F is predicte on ttributes in E 2 only 4. Anticiption of projection with respect to join p L (E p E 2 ) p L ((p L, J (E )) p (p L2,J (E 2 ))) L = L - Schem(E 2 ) L2 = L - Schem(E ) J = set of ttributes needed to evlute join predicte p Join derivtion from Crtesin product s F (E E 2 ) E F E 2 predicte F only reltes ttributes in E nd E 2 5. Join derivtion from Crtesin product s F (E E 2 ) E F E 2 predicte F only reltes ttributes in E nd E 2 6. Distribution of selection with respect to union s F (E E 2 ) (s F (E ) ) (s F (E 2 ) ) Pg. 4 4
5 5. Join derivtion from Crtesin product s F (E E 2 ) E F E 2 predicte F only reltes ttributes in E nd E 2 6. Distribution of selection with respect to union s F (E E 2 ) (s F (E ) ) (s F (E 2 ) ) 7. Distribution of selection with respect to difference s F (E E 2 ) (s F (E ) ) (s F (E 2 ) ) 8. Distribution of projection with respect to union p X (E E 2 ) (p X (E )) (p X (E 2 )) (s F (E )) E Distribution of projection with respect to union p X (E E 2 ) (p X (E )) (p X (E 2 )) Cn projection be distributed with respect to difference? p X (E - E 2 ) (p X (E )) - (p X (E 2 )) 8. Distribution of projection with respect to union p X (E E 2 ) (p X (E )) (p X (E 2 )) Cn projection be distributed with respect to difference? p X (E - E 2 ) (p X (E )) - (p X (E 2 )) This equivlence only holds if X includes the primry key or set of ttributes with the sme properties (unique nd not null) Other properties s F V F2 (E) (s F (E)) (s F2 (E)) s F Ʌ F2 (E) (s F (E)) (s F2 (E)).Distribution of join with respect to union E (E E 2 ) (E E ) (E E 2 ) All binry opertors re commuttive nd ssocitive except for difference 29 3 Pg. 5 5
6 Exmple Exmple: Algebric trnsformtions Tbles EMP (Emp#,, Dept#, Slry) DEPT (Dept#, DNme,) p DNme (s EMP.Dept#=DEPT.Dept# Ʌ Slry > (EMP DEPT)) SQL query SELECT DISTINCT DNme FROM EMP, DEPT WHERE EMP.Dept#=DEPT.Dept# AND Slry > ; 3 32 Exmple: Algebric trnsformtions Exmple: Algebric trnsformtions p DNme (s EMP.Dept#=DEPT.Dept# Ʌ Slry > (EMP DEPT)) Prop # p DNme (s EMP.Dept#=DEPT.Dept# Ʌ Slry > (EMP DEPT)) Prop # p DNme (s Slry > (s EMP.Dept#=DEPT.Dept# (EMP DEPT)) p DNme (s Slry > (s EMP.Dept#=DEPT.Dept# (EMP DEPT)) Prop #5 p DNme (s Slry > (EMP DEPT) Exmple: Algebric trnsformtions Exmple: Algebric trnsformtions p DNme (s Slry > (EMP DEPT) p DNme (s Slry > (EMP DEPT) Prop #3 Prop #3 p DNme (s Slry > (EMP)) DEPT) p DNme (s Slry > (EMP)) DEPT) Prop #2 nd #4 p DNme ((p Dept# (s Slry > (EMP)) (p Dept#,DNme (DEPT))) Pg. 6 6
7 Exmple: Query tree Exmple: Crdinlities Finl query tree p DNme Crdinlity (EMP), Crdinlity (DEPT) Crdinlity (EMP where Slry > ) 5 p Dept# p Dept#,DNme s Slry> EMP DEPT Cost bsed optimiztion SQL QUERY LEXICAL, SYNTACTIC AND SEMANTIC ANALYSIS DATA DICTIONARY INTERNAL REPRESENTATION BASED ON RELATIONAL ALGEBRA Dtbse Mngement Systems ALGEBRAIC Cost bsed optimiztion CANONICAL QUERY TREE COST BASED DATA PROFILES (STATISTICS ON DATA) 39 ACCESS PROGRAM SET OF DEPENDENCIES 4 Cost bsed optimiztion It is bsed on Dt profiles sttisticl informtion describing dt distribution for tbles nd intermedite reltionl expressions Approximte cost formuls for ccess opertions Allow evluting the cost of different lterntives for executing reltionl opertor Dtbse Mngement Systems Dt profiles 4 42 Pg. 7 7
8 Tble profiles Tble profiles Quntittive informtion on the chrcteristics of tbles nd columns crdinlity (# of tuples) in ech tble T lso estimted for intermedite reltionl expressions size in bytes of tuples in T size in bytes of ech ttribute A j in T number of distinct vlues of ech ttribute in T crdinlity of the ctive domin of the ttribute min nd mx vlues of ech ttribute A j in T Tble profiles re stored in the dt dictionry Profiles should be periodiclly refreshed by renlyzing dt in the tbles Updte sttistics commnd Executed on demnd immedite execution during trnsction processing would overlod the system Dt profiles Tble profiles re exploited to estimte the size of intermedite reltionl expressions For the selection opertor Crd (s Ai = v (T)) Crd (T)/ Vl (A i in T) Vl (A i in T) = # of distinct vlues of A i in T (ctive domin) It holds only under the hypothesis of uniform distribution Dtbse Mngement Systems Access opertors Query tree Query tree Internl representtion of the reltionl expression s query tree p DNme Leves correspond to the physicl structures tbles, indices Intermedite nodes re opertions on dt supported by the given physicl structure e.g., scn, join, group by p Dept# p Dept#,DNme s Slry> EMP DEPT Pg. 8 8
9 Disk spce (MB) Dtbse Mngement Systems Sequentil scn Executes sequentil ccess to ll tuples in tble lso clled full tble scn Opertions performed during sequentil scn Projection discrds unnecessry columns Selection on simple predicte (A i =v) Sorting bsed on n ttribute list Insert, updte, delete Clssicl lgorithms in computer science re exploited e.g., quick sort Size of dt is relevnt memory sort sort on disk Sorting 49 5 Predicte evlution B+-tree versus bitmp If vilble, it my exploit index ccess B + -tree, hsh, or bitmp Simple equlity predicte A i =v Hsh, B + -tree, or bitmp re pproprite Rnge predicte v A i v 2 only B + -tree is pproprite For predictes with limited selectivity full tble scn is better if vilble, consider bitmp 5 B-tree Bitmp Len(Pointer) = 4 8 bit Bitmp VS B-Tree NK B-Tree NR Len(Pointer) NR NK bit Bitmp Courtesy of Golfrelli, Rizzi, Dt wrehouse, teori e prtic dell progettzione, McGrw Hill Predicte evlution Exmple: Predicte evlution Conjunction of predictes A i = v Ʌ A j = v 2 The most selective predicte is evluted first Tble is red through the index Next the other predictes re evluted on the intermedite result Optimiztion First compute the intersection of bitmps or RIDs coming from vilble indices Next tble red nd evlution of remining predictes 53 Which femle students living in Piemonte re exempt from enrollment fee? RID Gender Exempt Region M Y Piemonte 2 F Y Liguri 3 M N Pugli 4 M N Sicili 5 F Y Piemonte Gender D M BG 54 RID 5 Exempt Piemonte Pg. 9 9
10 Predicte evlution Join opertion Disjunction of predictes A i = v V A j = v 2 Index ccess cn be exploited only if ll predictes re supported by n index otherwise full tble scn A criticl opertion for reltionl DBMS connection between tbles is bsed on vlues insted of pointers size of the intermedite result is typiclly lrger thn the smller tble Different join lgorithms Nested loop Merge scn join Hsh join Bitmpped join Nested loop Nested loop Outer tble A externl scn A Inner tble A single full scn is done on the outer tble For ech tuple in the outer tble full scn of the inner tble is performed, looking for corresponding vlues Also clled brute force internl or direct scn join D M BG ttribute Nested loop Merge scn Efficient when inner tble is smll nd fits in memory optimized scn join ttribute in the inner tble is indexed index scn Execution cost The nested loop join technique is not symmetric The execution cost depends on which tble tkes the role of inner tble Left tble A b b c e left scn right scn A b d e Right tble 59 join D M BG ttribute 6 Pg.
11 Merge scn Both tbles re sorted on the join ttributes The two tbles re scnned in prllel tuple pirs re generted on corresponding vlues Execution cost The merge scn technique is symmetric requires sorting both tbles my be sorted by previous opertion my be red through clustered index on join ttributes More used in the pst efficient for lrge tbles, becuse sorted tbles D M B my be stored on disk G 6 From left tble HASH() Buckets for left tble d e c j p Buckets for right tble Hsh Join D M B Join G 62 Attribute e m w j z From right tble HASH() Hsh join Bitmpped join index Appliction of the sme hsh function to the join ttributes in both tbles Tuples to be joined end up in the sme buckets collisions re generted by tuples yielding the sme hsh function result with different ttribute vlue A locl sort nd join is performed into ech bucket Very fst join technique 63 Bit mtrix tht precomputes the join between two tbles A nd B One column for ech RID in tble A One row for ech RID in tble B Position (i, j) of the mtrix is if tuple with RID j in tble A joins with tuple with RID i in tble B RID 2 n otherwise Updtes my be slow D M BG 64 Bitmpped join Typiclly used in OLAP queries joining severl tbles with lrge centrl tble Exmple Exm tble, joined to Student nd Course tbles Exploits one or more bitmpped join indices One for ech pir of joined tbles Access to the lrge centrl tble is the lst step Bitmpped join Complex queries my exploit jointly bitmpped join indices bitmp indices for predictes on single tbles Pg.
12 Exmple: Bitmpped join Bitmpped join Averge score of mle students for exms of courses in the first yer of the mster degree STUDENT (Reg#, SNme, Gender) COURSE (Course#, CNme, CourseYer) EXAM (Reg#, Course#, Dte, Grde) SELECT AVG (Grde) FROM STUDENT S, EXAM E, COURSE C WHERE E.Reg# = S.Reg# AND E.Course# = C.Course# AND CourseYer = M AND Gender = M ; 67 RIDs nd 4 Bitmpped join index for Course-Exms join FROM EXAM E, COURSE C WHERE E.Course# = C.Course# AND CourseYer = M RID Bitmp for CourseYer ttribute RID M OR 4 = RID CY 68 Bitmpped join Group by RID CY AND bitmp for Course-Exm predictes nd join RID G = RID bitmp for Student-Exm predictes nd join RIDs of Exm tble for tuples to be red Sort bsed Sort on the group by ttributes Next compute ggregte functions on groups Hsh bsed Hsh function on the group by ttributes Next sort ech bucket nd compute ggregte functions Mterilized views my be exploited to improve the performnce of ggregtion opertions 69 7 Cost bsed optimiztion Dtbse Mngement Systems Execution pln selection 7 Inputs Dt profiles Internl representtion of the query tree Output Optiml query execution pln Set of dependencies It evlutes the cost of different lterntives for reding ech tble executing ech reltionl opertor It exploits pproximte cost formuls for ccess opertions 72 Pg. 2 2
13 Generl pproch to optimiztion Generl pproch to optimiztion The serch for the optiml pln is bsed on the following dimensions The wy dt is red from disk e.g., full scn, index The execution order mong opertors e.g., join order between two join opertions The technique by mens of which ech opertor is implemented e.g., the join method When to perform sort (if sort is needed) The optimizer builds tree of lterntives in which ech internl node mkes decision on vrible ech lef represents complete query execution pln Exmple Exmple Given 3 tbles R, S, T Compute the join R S T Execution lterntives 4 join techniques to evlute (for both joins) 3 join orders In totl, t most 4 * 4 * 3 = 48 different lterntives R S T 2 R INNER 2 NESTED LOOP NESTED LOOP R S T 2 S T R 2 S INNER 2 NESTED LOOP NESTED LOOP MERGE SCAN R T S 2 HASH JOIN T INNER T OUTER 75 LEAF NODE 76 Best execution pln selection Best execution pln selection The optimizer selects the lef with the lowest cost Generl formul C Totl = C I/O x n I/O + C cpu x n cpu n I/O is the number of I/O opertions n cpu is the number of CPU opertions The selection is bsed on opertion reserch optimiztion techniques e.g., brnch nd bound The finl execution pln is n pproximtion of the best solution The optimizer looks for solution which is of the sme order of mgnitude of the best solution For compile nd go it stops when the time spent in serching is comprble to the time required to execute the current best pln Pg. 3 3
Query optimization. Elena Baralis, Silvia Chiusano Politecnico di Torino. DBMS Architecture D B M G. Database Management Systems. Pag.
Database Management Systems DBMS Architecture SQL INSTRUCTION OPTIMIZER MANAGEMENT OF ACCESS METHODS CONCURRENCY CONTROL BUFFER MANAGER RELIABILITY MANAGEMENT Index Files Data Files System Catalog DATABASE
More informationUNIT 11. Query Optimization
UNIT Query Optimiztion Contents Introduction to Query Optimiztion 2 The Optimiztion Process: An Overview 3 Optimiztion in System R 4 Optimiztion in INGRES 5 Implementing the Join Opertors Wei-Png Yng,
More informationText mining: bag of words representation and beyond it
Text mining: bg of words representtion nd beyond it Jsmink Dobš Fculty of Orgniztion nd Informtics University of Zgreb 1 Outline Definition of text mining Vector spce model or Bg of words representtion
More informationLecture 10 Evolutionary Computation: Evolution strategies and genetic programming
Lecture 10 Evolutionry Computtion: Evolution strtegies nd genetic progrmming Evolution strtegies Genetic progrmming Summry Negnevitsky, Person Eduction, 2011 1 Evolution Strtegies Another pproch to simulting
More informationSome Thoughts on Grad School. Undergraduate Compilers Review and Intro to MJC. Structure of a Typical Compiler. Lexing and Parsing
Undergrdute Compilers Review nd Intro to MJC Announcements Miling list is in full swing Tody Some thoughts on grd school Finish prsing Semntic nlysis Visitor pttern for bstrct syntx trees Some Thoughts
More informationData sharing in OpenMP
Dt shring in OpenMP Polo Burgio polo.burgio@unimore.it Outline Expressing prllelism Understnding prllel threds Memory Dt mngement Dt cluses Synchroniztion Brriers, locks, criticl sections Work prtitioning
More informationIntroduction to Computer Engineering EECS 203 dickrp/eecs203/ CMOS transmission gate (TG) TG example
Introduction to Computer Engineering EECS 23 http://ziyng.eecs.northwestern.edu/ dickrp/eecs23/ CMOS trnsmission gte TG Instructor: Robert Dick Office: L477 Tech Emil: dickrp@northwestern.edu Phone: 847
More informationRepresentation of Numbers. Number Representation. Representation of Numbers. 32-bit Unsigned Integers 3/24/2014. Fixed point Integer Representation
Representtion of Numbers Number Representtion Computer represent ll numbers, other thn integers nd some frctions with imprecision. Numbers re stored in some pproximtion which cn be represented by fixed
More informationSystems I. Logic Design I. Topics Digital logic Logic gates Simple combinational logic circuits
Systems I Logic Design I Topics Digitl logic Logic gtes Simple comintionl logic circuits Simple C sttement.. C = + ; Wht pieces of hrdwre do you think you might need? Storge - for vlues,, C Computtion
More informationTree Structured Symmetrical Systems of Linear Equations and their Graphical Solution
Proceedings of the World Congress on Engineering nd Computer Science 4 Vol I WCECS 4, -4 October, 4, Sn Frncisco, USA Tree Structured Symmetricl Systems of Liner Equtions nd their Grphicl Solution Jime
More informationUnit #9 : Definite Integral Properties, Fundamental Theorem of Calculus
Unit #9 : Definite Integrl Properties, Fundmentl Theorem of Clculus Gols: Identify properties of definite integrls Define odd nd even functions, nd reltionship to integrl vlues Introduce the Fundmentl
More informationMidterm 2 Sample solution
Nme: Instructions Midterm 2 Smple solution CMSC 430 Introduction to Compilers Fll 2012 November 28, 2012 This exm contins 9 pges, including this one. Mke sure you hve ll the pges. Write your nme on the
More informationIn the last lecture, we discussed how valid tokens may be specified by regular expressions.
LECTURE 5 Scnning SYNTAX ANALYSIS We know from our previous lectures tht the process of verifying the syntx of the progrm is performed in two stges: Scnning: Identifying nd verifying tokens in progrm.
More informationECE 468/573 Midterm 1 September 28, 2012
ECE 468/573 Midterm 1 September 28, 2012 Nme:! Purdue emil:! Plese sign the following: I ffirm tht the nswers given on this test re mine nd mine lone. I did not receive help from ny person or mteril (other
More informationDr. D.M. Akbar Hussain
Dr. D.M. Akr Hussin Lexicl Anlysis. Bsic Ide: Red the source code nd generte tokens, it is similr wht humns will do to red in; just tking on the input nd reking it down in pieces. Ech token is sequence
More informationA Tautology Checker loosely related to Stålmarck s Algorithm by Martin Richards
A Tutology Checker loosely relted to Stålmrck s Algorithm y Mrtin Richrds mr@cl.cm.c.uk http://www.cl.cm.c.uk/users/mr/ University Computer Lortory New Museum Site Pemroke Street Cmridge, CB2 3QG Mrtin
More informationPreserving Constraints for Aggregation Relationship Type Update in XML Document
Preserving Constrints for Aggregtion Reltionship Type Updte in XML Document Eric Prdede 1, J. Wenny Rhyu 1, nd Dvid Tnir 2 1 Deprtment of Computer Science nd Computer Engineering, L Trobe University, Bundoor
More informationSolving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence Winter 2016
Solving Prolems y Serching CS 486/686: Introduction to Artificil Intelligence Winter 2016 1 Introduction Serch ws one of the first topics studied in AI - Newell nd Simon (1961) Generl Prolem Solver Centrl
More informationTransparent neutral-element elimination in MPI reduction operations
Trnsprent neutrl-element elimintion in MPI reduction opertions Jesper Lrsson Träff Deprtment of Scientific Computing University of Vienn Disclimer Exploiting repetition nd sprsity in input for reducing
More informationDigital Design. Chapter 6: Optimizations and Tradeoffs
Digitl Design Chpter 6: Optimiztions nd Trdeoffs Slides to ccompny the tetbook Digitl Design, with RTL Design, VHDL, nd Verilog, 2nd Edition, by Frnk Vhid, John Wiley nd Sons Publishers, 2. http://www.ddvhid.com
More information4452 Mathematical Modeling Lecture 4: Lagrange Multipliers
Mth Modeling Lecture 4: Lgrnge Multipliers Pge 4452 Mthemticl Modeling Lecture 4: Lgrnge Multipliers Lgrnge multipliers re high powered mthemticl technique to find the mximum nd minimum of multidimensionl
More informationControl-Flow Analysis and Loop Detection
! Control-Flow Anlysis nd Loop Detection!Lst time! PRE!Tody! Control-flow nlysis! Loops! Identifying loops using domintors! Reducibility! Using loop identifiction to identify induction vribles CS553 Lecture
More informationSolving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence
Solving Prolems y Serching CS 486/686: Introduction to Artificil Intelligence 1 Introduction Serch ws one of the first topics studied in AI - Newell nd Simon (1961) Generl Prolem Solver Centrl component
More informationBefore We Begin. Introduction to Spatial Domain Filtering. Introduction to Digital Image Processing. Overview (1): Administrative Details (1):
Overview (): Before We Begin Administrtive detils Review some questions to consider Winter 2006 Imge Enhncement in the Sptil Domin: Bsics of Sptil Filtering, Smoothing Sptil Filters, Order Sttistics Filters
More informationCS 432 Fall Mike Lam, Professor a (bc)* Regular Expressions and Finite Automata
CS 432 Fll 2017 Mike Lm, Professor (c)* Regulr Expressions nd Finite Automt Compiltion Current focus "Bck end" Source code Tokens Syntx tree Mchine code chr dt[20]; int min() { flot x = 42.0; return 7;
More informationEngineer To Engineer Note
Engineer To Engineer Note EE-169 Technicl Notes on using Anlog Devices' DSP components nd development tools Contct our technicl support by phone: (800) ANALOG-D or e-mil: dsp.support@nlog.com Or visit
More informationOverview. Network characteristics. Network architecture. Data dissemination. Network characteristics (cont d) Mobile computing and databases
Overview Mobile computing nd dtbses Generl issues in mobile dt mngement Dt dissemintion Dt consistency Loction dependent queries Interfces Detils of brodcst disks thlis klfigopoulos Network rchitecture
More informationLooking up objects in Pastry
Review: Pstry routing tbles 0 1 2 3 4 7 8 9 b c d e f 0 1 2 3 4 7 8 9 b c d e f 0 1 2 3 4 7 8 9 b c d e f 0 2 3 4 7 8 9 b c d e f Row0 Row 1 Row 2 Row 3 Routing tble of node with ID i =1fc s - For ech
More informationCOMMON HALF YEARLY EXAMINATION DECEMBER 2018
li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net.pds.pds COMMON HALF YEARLY EXAMINATION DECEMBER 2018 STD : XI SUBJECT: COMPUTER SCIENCE
More informationComplete Coverage Path Planning of Mobile Robot Based on Dynamic Programming Algorithm Peng Zhou, Zhong-min Wang, Zhen-nan Li, Yang Li
2nd Interntionl Conference on Electronic & Mechnicl Engineering nd Informtion Technology (EMEIT-212) Complete Coverge Pth Plnning of Mobile Robot Bsed on Dynmic Progrmming Algorithm Peng Zhou, Zhong-min
More informationCompiler-Assisted Cache Replacement
LCPC 3 Formulting The Prolem of Compiler-Assisted Cche Replcement Hongo Yng LCPC 3 Agend Bckground: Memory hierrchy, ISA with cche hints Prolem definition: How should compiler give cche hint to minimize
More informationAllocator Basics. Dynamic Memory Allocation in the Heap (malloc and free) Allocator Goals: malloc/free. Internal Fragmentation
Alloctor Bsics Dynmic Memory Alloction in the Hep (mlloc nd free) Pges too corse-grined for llocting individul objects. Insted: flexible-sized, word-ligned blocks. Allocted block (4 words) Free block (3
More informationEfficient Techniques for Tree Similarity Queries 1
Efficient Techniques for Tree Similrity Queries 1 Nikolus Augsten Dtbse Reserch Group Deprtment of Computer Sciences University of Slzburg, Austri July 6, 2017 Austrin Computer Science Dy 2017 / IMAGINE
More informationCMSC 331 First Midterm Exam
0 00/ 1 20/ 2 05/ 3 15/ 4 15/ 5 15/ 6 20/ 7 30/ 8 30/ 150/ 331 First Midterm Exm 7 October 2003 CMC 331 First Midterm Exm Nme: mple Answers tudent ID#: You will hve seventy-five (75) minutes to complete
More informationFrom Dependencies to Evaluation Strategies
From Dependencies to Evlution Strtegies Possile strtegies: 1 let the user define the evlution order 2 utomtic strtegy sed on the dependencies: use locl dependencies to determine which ttriutes to compute
More informationEngineer To Engineer Note
Engineer To Engineer Note EE-188 Technicl Notes on using Anlog Devices' DSP components nd development tools Contct our technicl support by phone: (800) ANALOG-D or e-mil: dsp.support@nlog.com Or visit
More informationHomework. Context Free Languages III. Languages. Plan for today. Context Free Languages. CFLs and Regular Languages. Homework #5 (due 10/22)
Homework Context Free Lnguges III Prse Trees nd Homework #5 (due 10/22) From textbook 6.4,b 6.5b 6.9b,c 6.13 6.22 Pln for tody Context Free Lnguges Next clss of lnguges in our quest! Lnguges Recll. Wht
More informationCSEP 573 Artificial Intelligence Winter 2016
CSEP 573 Artificil Intelligence Winter 2016 Luke Zettlemoyer Problem Spces nd Serch slides from Dn Klein, Sturt Russell, Andrew Moore, Dn Weld, Pieter Abbeel, Ali Frhdi Outline Agents tht Pln Ahed Serch
More informationsuch that the S i cover S, or equivalently S
MATH 55 Triple Integrls Fll 16 1. Definition Given solid in spce, prtition of consists of finite set of solis = { 1,, n } such tht the i cover, or equivlently n i. Furthermore, for ech i, intersects i
More informationSymbol Table management
TDDD Compilers nd interpreters TDDB44 Compiler Construction Symol Tles Symol Tles in the Compiler Symol Tle mngement source progrm Leicl nlysis Syntctic nlysis Semntic nlysis nd Intermedite code gen Code
More informationIntroduction to Integration
Introduction to Integrtion Definite integrls of piecewise constnt functions A constnt function is function of the form Integrtion is two things t the sme time: A form of summtion. The opposite of differentition.
More informationA Formalism for Functionality Preserving System Level Transformations
A Formlism for Functionlity Preserving System Level Trnsformtions Smr Abdi Dniel Gjski Center for Embedded Computer Systems UC Irvine Center for Embedded Computer Systems UC Irvine Irvine, CA 92697 Irvine,
More informationHow to Design REST API? Written Date : March 23, 2015
Visul Prdigm How Design REST API? Turil How Design REST API? Written Dte : Mrch 23, 2015 REpresenttionl Stte Trnsfer, n rchitecturl style tht cn be used in building networked pplictions, is becoming incresingly
More information2 Computing all Intersections of a Set of Segments Line Segment Intersection
15-451/651: Design & Anlysis of Algorithms Novemer 14, 2016 Lecture #21 Sweep-Line nd Segment Intersection lst chnged: Novemer 8, 2017 1 Preliminries The sweep-line prdigm is very powerful lgorithmic design
More informationThe Search for Optimality in Automated Intrusion Response
The Serch for Optimlity in Automted Intrusion Response Yu-Sung Wu nd Surbh Bgchi (DCSL) & The Center for Eduction nd Reserch in Informtion Assurnce nd Security (CERIAS) School of Electricl nd Computer
More informationCSCI 104. Rafael Ferreira da Silva. Slides adapted from: Mark Redekopp and David Kempe
CSCI 0 fel Ferreir d Silv rfsilv@isi.edu Slides dpted from: Mrk edekopp nd Dvid Kempe LOG STUCTUED MEGE TEES Series Summtion eview Let n = + + + + k $ = #%& #. Wht is n? n = k+ - Wht is log () + log ()
More informationIntroduction To Files In Pascal
Why other With Files? Introduction To Files In Pscl Too much informtion to input ll t once The informtion must be persistent (RAM is voltile) Etc. In this section of notes you will lern how to red from
More informationReplicating Web Applications On-Demand
Replicting Web Applictions On-Demnd Swminthn Sivsubrmnin Guillume Pierre Mrten vn Steen Dept. of Computer Science, Vrije Universiteit, Amsterdm {swmi,gpierre,steen}@cs.vu.nl Abstrct Mny Web-bsed commercil
More informationFile Manager Quick Reference Guide. June Prepared for the Mayo Clinic Enterprise Kahua Deployment
File Mnger Quick Reference Guide June 2018 Prepred for the Myo Clinic Enterprise Khu Deployment NVIGTION IN FILE MNGER To nvigte in File Mnger, users will mke use of the left pne to nvigte nd further pnes
More informationConstrained Optimization. February 29
Constrined Optimiztion Februry 9 Generl Problem min f( ) ( NLP) s.. t g ( ) i E i g ( ) i I i Modeling nd Constrints Adding constrints let s us model fr more richer set of problems. For our purpose we
More information6.2 Volumes of Revolution: The Disk Method
mth ppliction: volumes by disks: volume prt ii 6 6 Volumes of Revolution: The Disk Method One of the simplest pplictions of integrtion (Theorem 6) nd the ccumultion process is to determine so-clled volumes
More informationAccelerating 3D convolution using streaming architectures on FPGAs
Accelerting 3D convolution using streming rchitectures on FPGAs Hohun Fu, Robert G. Clpp, Oskr Mencer, nd Oliver Pell ABSTRACT We investigte FPGA rchitectures for ccelerting pplictions whose dominnt cost
More informationRelational Algebra. Today s Lecture. 1. The Relational Model & Relational Algebra. 2. Relational Algebra Pt. II
Reltionl Algebr BBM471 Dtbse Mngement Systems Dr. Fut Akl kl@hcettepe.edu.tr Tody s Lecture 1. The Reltionl Model & Reltionl Algebr 2. Reltionl Algebr Pt. II 2 1. The Reltionl Model & Reltionl Algebr Wht
More informationSemistructured Data Management Part 2 - Graph Databases
Semistructured Dt Mngement Prt 2 - Grph Dtbses 2003/4, Krl Aberer, EPFL-SSC, Lbortoire de systèmes d'informtions réprtis Semi-structured Dt - 1 1 Tody's Questions 1. Schems for Semi-structured Dt 2. Grph
More informationFall 2018 Midterm 1 October 11, ˆ You may not ask questions about the exam except for language clarifications.
15-112 Fll 2018 Midterm 1 October 11, 2018 Nme: Andrew ID: Recittion Section: ˆ You my not use ny books, notes, extr pper, or electronic devices during this exm. There should be nothing on your desk or
More informationCPSC 213. Polymorphism. Introduction to Computer Systems. Readings for Next Two Lectures. Back to Procedure Calls
Redings for Next Two Lectures Text CPSC 213 Switch Sttements, Understnding Pointers - 2nd ed: 3.6.7, 3.10-1st ed: 3.6.6, 3.11 Introduction to Computer Systems Unit 1f Dynmic Control Flow Polymorphism nd
More informationΕΠΛ323 - Θεωρία και Πρακτική Μεταγλωττιστών
ΕΠΛ323 - Θωρία και Πρακτική Μταγλωττιστών Lecture 3 Lexicl Anlysis Elis Athnsopoulos elisthn@cs.ucy.c.cy Recognition of Tokens if expressions nd reltionl opertors if è if then è then else è else relop
More informationWhat are suffix trees?
Suffix Trees 1 Wht re suffix trees? Allow lgorithm designers to store very lrge mount of informtion out strings while still keeping within liner spce Allow users to serch for new strings in the originl
More informationRegistering as a HPE Reseller. Quick Reference Guide for new Partners in Asia Pacific
Registering s HPE Reseller Quick Reference Guide for new Prtners in Asi Pcific Registering s new Reseller prtner There re five min steps to e new Reseller prtner. Crete your Appliction Copyright 2017 Hewlett
More informationDefinition of Regular Expression
Definition of Regulr Expression After the definition of the string nd lnguges, we re redy to descrie regulr expressions, the nottion we shll use to define the clss of lnguges known s regulr sets. Recll
More informationEliminating left recursion grammar transformation. The transformed expression grammar
Eliminting left recursion grmmr trnsformtion Originl! rnsformed! 0 0! 0 α β α α α α α α α α β he two grmmrs generte the sme lnguge, but the one on the right genertes the rst, nd then string of s, using
More informationA New Learning Algorithm for the MAXQ Hierarchical Reinforcement Learning Method
A New Lerning Algorithm for the MAXQ Hierrchicl Reinforcement Lerning Method Frzneh Mirzzdeh 1, Bbk Behsz 2, nd Hmid Beigy 1 1 Deprtment of Computer Engineering, Shrif University of Technology, Tehrn,
More informationLECT-10, S-1 FP2P08, Javed I.
A Course on Foundtions of Peer-to-Peer Systems & Applictions LECT-10, S-1 CS /799 Foundtion of Peer-to-Peer Applictions & Systems Kent Stte University Dept. of Computer Science www.cs.kent.edu/~jved/clss-p2p08
More information2014 Haskell January Test Regular Expressions and Finite Automata
0 Hskell Jnury Test Regulr Expressions nd Finite Automt This test comprises four prts nd the mximum mrk is 5. Prts I, II nd III re worth 3 of the 5 mrks vilble. The 0 Hskell Progrmming Prize will be wrded
More informationNearest Keyword Set Search in Multi-dimensional Datasets
Nerest Keyword Set Serch in Multi-dimensionl Dtsets Vishwkrm Singh Deprtment of Computer Science University of Cliforni Snt Brbr, USA Emil: vsingh014@gmil.com Ambuj K. Singh Deprtment of Computer Science
More informationDynamic Programming. Andreas Klappenecker. [partially based on slides by Prof. Welch] Monday, September 24, 2012
Dynmic Progrmming Andres Klppenecker [prtilly bsed on slides by Prof. Welch] 1 Dynmic Progrmming Optiml substructure An optiml solution to the problem contins within it optiml solutions to subproblems.
More informationRegular Expression Matching with Multi-Strings and Intervals. Philip Bille Mikkel Thorup
Regulr Expression Mtching with Multi-Strings nd Intervls Philip Bille Mikkel Thorup Outline Definition Applictions Previous work Two new problems: Multi-strings nd chrcter clss intervls Algorithms Thompson
More informationRegistering as an HPE Reseller
Registering s n HPE Reseller Quick Reference Guide for new Prtners Mrch 2019 Registering s new Reseller prtner There re four min steps to register on the Prtner Redy Portl s new Reseller prtner: Appliction
More informationA REINFORCEMENT LEARNING APPROACH TO SCHEDULING DUAL-ARMED CLUSTER TOOLS WITH TIME VARIATIONS
A REINFORCEMENT LEARNING APPROACH TO SCHEDULING DUAL-ARMED CLUSTER TOOLS WITH TIME VARIATIONS Ji-Eun Roh (), Te-Eog Lee (b) (),(b) Deprtment of Industril nd Systems Engineering, Kore Advnced Institute
More informationL2-Python-Data-Structures
L2-Python-Dt-Structures Mrch 19, 2018 1 Principl built-in types in Python (Python ) numerics: int, flot, long, complex sequences: str, unicode, list, tuple, byterry, buffer, xrnge mppings: dict files:
More informationa < a+ x < a+2 x < < a+n x = b, n A i n f(x i ) x. i=1 i=1
Mth 33 Volume Stewrt 5.2 Geometry of integrls. In this section, we will lern how to compute volumes using integrls defined by slice nlysis. First, we recll from Clculus I how to compute res. Given the
More informationStained Glass Design. Teaching Goals:
Stined Glss Design Time required 45-90 minutes Teching Gols: 1. Students pply grphic methods to design vrious shpes on the plne.. Students pply geometric trnsformtions of grphs of functions in order to
More informationCS380: Computer Graphics Modeling Transformations. Sung-Eui Yoon ( 윤성의 ) Course URL:
CS38: Computer Grphics Modeling Trnsformtions Sung-Eui Yoon ( 윤성의 ) Course URL: http://sgl.kist.c.kr/~sungeui/cg/ Clss Ojectives (Ch. 3.5) Know the clssic dt processing steps, rendering pipeline, for rendering
More informationDistributed Systems Principles and Paradigms
Distriuted Systems Principles nd Prdigms Chpter 11 (version April 7, 2008) Mrten vn Steen Vrije Universiteit Amsterdm, Fculty of Science Dept. Mthemtics nd Computer Science Room R4.20. Tel: (020) 598 7784
More informationLecture T4: Pattern Matching
Introduction to Theoreticl CS Lecture T4: Pttern Mtching Two fundmentl questions. Wht cn computer do? How fst cn it do it? Generl pproch. Don t tlk bout specific mchines or problems. Consider miniml bstrct
More informationPARALLEL AND DISTRIBUTED COMPUTING
PARALLEL AND DISTRIBUTED COMPUTING 2009/2010 1 st Semester Teste Jnury 9, 2010 Durtion: 2h00 - No extr mteril llowed. This includes notes, scrtch pper, clcultor, etc. - Give your nswers in the ville spce
More informationM-Historian and M-Trend
Product Bulletin Issue Dte June 18, 2004 M-Historin nd The M-Historin mnges the collection nd rchiving of trend dt, nd enles the presenttion of rchived trend dt in the ssocited softwre component. M-Historin
More informationSmall Business Networking
Why network is n essentil productivity tool for ny smll business Effective technology is essentil for smll businesses looking to increse the productivity of their people nd processes. Introducing technology
More informationToday. Search Problems. Uninformed Search Methods. Depth-First Search Breadth-First Search Uniform-Cost Search
Uninformed Serch [These slides were creted by Dn Klein nd Pieter Abbeel for CS188 Intro to AI t UC Berkeley. All CS188 mterils re vilble t http://i.berkeley.edu.] Tody Serch Problems Uninformed Serch Methods
More informationTopic 2: Lexing and Flexing
Topic 2: Lexing nd Flexing COS 320 Compiling Techniques Princeton University Spring 2016 Lennrt Beringer 1 2 The Compiler Lexicl Anlysis Gol: rek strem of ASCII chrcters (source/input) into sequence of
More informationApproximation by NURBS with free knots
pproximtion by NURBS with free knots M Rndrinrivony G Brunnett echnicl University of Chemnitz Fculty of Computer Science Computer Grphics nd Visuliztion Strße der Ntionen 6 97 Chemnitz Germny Emil: mhrvo@informtiktu-chemnitzde
More informationReducing a DFA to a Minimal DFA
Lexicl Anlysis - Prt 4 Reducing DFA to Miniml DFA Input: DFA IN Assume DFA IN never gets stuck (dd ded stte if necessry) Output: DFA MIN An equivlent DFA with the minimum numer of sttes. Hrry H. Porter,
More informationSlides for Data Mining by I. H. Witten and E. Frank
Slides for Dt Mining y I. H. Witten nd E. Frnk Simplicity first Simple lgorithms often work very well! There re mny kinds of simple structure, eg: One ttriute does ll the work All ttriutes contriute eqully
More information1. SEQUENCES INVOLVING EXPONENTIAL GROWTH (GEOMETRIC SEQUENCES)
Numbers nd Opertions, Algebr, nd Functions 45. SEQUENCES INVOLVING EXPONENTIAL GROWTH (GEOMETRIC SEQUENCES) In sequence of terms involving eponentil growth, which the testing service lso clls geometric
More informationCS 430 Spring Mike Lam, Professor. Parsing
CS 430 Spring 2015 Mike Lm, Professor Prsing Syntx Anlysis We cn now formlly descrie lnguge's syntx Using regulr expressions nd BNF grmmrs How does tht help us? Syntx Anlysis We cn now formlly descrie
More informationCS412/413. Introduction to Compilers Tim Teitelbaum. Lecture 4: Lexical Analyzers 28 Jan 08
CS412/413 Introduction to Compilers Tim Teitelum Lecture 4: Lexicl Anlyzers 28 Jn 08 Outline DFA stte minimiztion Lexicl nlyzers Automting lexicl nlysis Jlex lexicl nlyzer genertor CS 412/413 Spring 2008
More informationCSCI 446: Artificial Intelligence
CSCI 446: Artificil Intelligence Serch Instructor: Michele Vn Dyne [These slides were creted by Dn Klein nd Pieter Abbeel for CS188 Intro to AI t UC Berkeley. All CS188 mterils re vilble t http://i.berkeley.edu.]
More informationUnion-Find Problem. Using Arrays And Chains. A Set As A Tree. Result Of A Find Operation
Union-Find Problem Given set {,,, n} of n elements. Initilly ech element is in different set. ƒ {}, {},, {n} An intermixed sequence of union nd find opertions is performed. A union opertion combines two
More informationChapter Spline Method of Interpolation More Examples Electrical Engineering
Chpter. Spline Method of Interpoltion More Exmples Electricl Engineering Exmple Thermistors re used to mesure the temperture of bodies. Thermistors re bsed on mterils chnge in resistnce with temperture.
More informationPhylogeny and Molecular Evolution
Phylogeny nd Moleculr Evolution Chrcter Bsed Phylogeny 1/50 Credit Ron Shmir s lecture notes Notes by Nir Friedmn Dn Geiger, Shlomo Morn, Sgi Snir nd Ron Shmir Durbin et l. Jones nd Pevzner s presenttion
More informationCS143 Handout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexical Analysis
CS143 Hndout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexicl Anlysis In this first written ssignment, you'll get the chnce to ply round with the vrious constructions tht come up when doing lexicl
More informationUSING HOUGH TRANSFORM IN LINE EXTRACTION
Stylinidis, Efstrtios USING HOUGH TRANSFORM IN LINE EXTRACTION Efstrtios STYLIANIDIS, Petros PATIAS The Aristotle University of Thessloniki, Deprtment of Cdstre Photogrmmetry nd Crtogrphy Univ. Box 473,
More informationCSCI1950 Z Computa4onal Methods for Biology Lecture 2. Ben Raphael January 26, hhp://cs.brown.edu/courses/csci1950 z/ Outline
CSCI1950 Z Comput4onl Methods for Biology Lecture 2 Ben Rphel Jnury 26, 2009 hhp://cs.brown.edu/courses/csci1950 z/ Outline Review of trees. Coun4ng fetures. Chrcter bsed phylogeny Mximum prsimony Mximum
More informationOn Computation and Resource Management in Networked Embedded Systems
On Computtion nd Resource Mngement in Networed Embedded Systems Soheil Ghisi Krlene Nguyen Elheh Bozorgzdeh Mjid Srrfzdeh Computer Science Deprtment University of Cliforni, Los Angeles, CA 90095 soheil,
More informationStreams on Wires A Query Compiler for FPGAs
Strems on Wires A Query Compiler for FPGAs Rene Mueller rene.mueller@inf.ethz.ch Jens Teubner jens.teubner@inf.ethz.ch Gustvo Alonso lonso@inf.ethz.ch Systems Group, Deprtment of Computer Science, ETH
More informationCOMP 423 lecture 11 Jan. 28, 2008
COMP 423 lecture 11 Jn. 28, 2008 Up to now, we hve looked t how some symols in n lphet occur more frequently thn others nd how we cn sve its y using code such tht the codewords for more frequently occuring
More informationAnnouncements. CS 188: Artificial Intelligence Fall Recap: Search. Today. General Tree Search. Uniform Cost. Lecture 3: A* Search 9/4/2007
CS 88: Artificil Intelligence Fll 2007 Lecture : A* Serch 9/4/2007 Dn Klein UC Berkeley Mny slides over the course dpted from either Sturt Russell or Andrew Moore Announcements Sections: New section 06:
More informationAn Efficient Divide and Conquer Algorithm for Exact Hazard Free Logic Minimization
An Efficient Divide nd Conquer Algorithm for Exct Hzrd Free Logic Minimiztion J.W.J.M. Rutten, M.R.C.M. Berkelr, C.A.J. vn Eijk, M.A.J. Kolsteren Eindhoven University of Technology Informtion nd Communiction
More informationP(r)dr = probability of generating a random number in the interval dr near r. For this probability idea to make sense we must have
Rndom Numers nd Monte Crlo Methods Rndom Numer Methods The integrtion methods discussed so fr ll re sed upon mking polynomil pproximtions to the integrnd. Another clss of numericl methods relies upon using
More informationEECS 281: Homework #4 Due: Thursday, October 7, 2004
EECS 28: Homework #4 Due: Thursdy, October 7, 24 Nme: Emil:. Convert the 24-bit number x44243 to mime bse64: QUJD First, set is to brek 8-bit blocks into 6-bit blocks, nd then convert: x44243 b b 6 2 9
More information