A Semantic Caching Method Based on Linear Constraints Yoshiharu Ishikawa and Hiroyuki Kitagawa University of Tsukuba

Slides:



Advertisements
Similar presentations
Semantic Data Caching and Replacement. Outline Motivation Client Caching Architecture Model of Semantic Caching Simulations and Results Conclusion and.
Advertisements

Outline  Introduction  Background  Distributed DBMS Architecture  Distributed Database Design  Semantic Data Control ➠ View Management ➠ Data Security.
Database Management Systems, R. Ramakrishnan and J. Gehrke1 The Relational Model Chapter 3.
Fast Algorithms For Hierarchical Range Histogram Constructions
Combining Symbolic Simulation and Interval Arithmetic for the Verification of AMS Designs Mohamed Zaki, Ghiath Al Sammane, Sofiene Tahar, Guy Bois FMCAD'07.
Proportion Priors for Image Sequence Segmentation Claudia Nieuwenhuis, etc. ICCV 2013 Oral.
1 9. Evaluation of Queries Query evaluation – Quantifier Elimination and Satisfiability Example: Logical Level: r   y 1,…y n  r’ Constraint.
A First Attempt towards a Logical Model for the PBMS PANDA Meeting, Milano, 18 April 2002 National Technical University of Athens Patterns for Next-Generation.
1 2. Constraint Databases Next level of data abstraction: Constraint level – finitely represents by constraints the logical level.
University of Washington Database Group Reverse Data Management … and the case for Reverse What-If queries 1 Alexandra Meliou, Wolfgang Gatterbauer, Dan.
1 Relational Model. 2 Relational Database: Definitions  Relational database: a set of relations  Relation: made up of 2 parts: – Instance : a table,
Flow Algorithms for Two Pipelined Filtering Problems Anne Condon, University of British Columbia Amol Deshpande, University of Maryland Lisa Hellerstein,
Lecture Fourteen Methodology - Conceptual Database Design
Database Management Systems, R. Ramakrishnan and J. Gehrke1 Relational Algebra Chapter 4, Part A.
Concepts of Database Management Sixth Edition
Indexing Spatio-Temporal Data Warehouses Dimitris Papadias, Yufei Tao, Panos Kalnis, Jun Zhang Department of Computer Science Hong Kong University of Science.
1 Relational Algebra and Calculus Yanlei Diao UMass Amherst Feb 1, 2007 Slides Courtesy of R. Ramakrishnan and J. Gehrke.
1/25 Pointer Logic Changki PSWLAB Pointer Logic Daniel Kroening and Ofer Strichman Decision Procedure.
Chapter 2 Database System Concepts and Architecture
Query Processing Presented by Aung S. Win.
Stevenson and Ozgur First Edition Introduction to Management Science with Spreadsheets McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies,
Objectives of the Lecture :
Advanced Database CS-426 Week 2 – Logic Query Languages, Object Model.
Implemented Systems Presenter: Manos Karpathiotakis Extended Semantic Web Conference 2012.
DATABASE MANAGEMENT SYSTEMS BASIC CONCEPTS 1. What is a database? A database is a collection of data which can be used: alone, or alone, or combined /
1 Relational Algebra and Calculus Chapter 4. 2 Relational Query Languages  Query languages: Allow manipulation and retrieval of data from a database.
Chapter 2 CIS Sungchul Hong
Chapter 4 The Relational Model 3: Advanced Topics Concepts of Database Management Seventh Edition.
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
Physical Database Design Chapter 6. Physical Design and implementation 1.Translate global logical data model for target DBMS  1.1Design base relations.
Computer Science 101 Database Concepts. Database Collection of related data Models real world “universe” Reflects changes Specific purposes and audience.
Chapter 13 Query Processing Melissa Jamili CS 157B November 11, 2004.
Querying Structured Text in an XML Database By Xuemei Luo.
Source Description-based Approach for the Modeling of Spatial Information Integration Yoshiharu Ishikawa and Hiroyuki Kitagawa University of Tsukuba
Towards Robust Indexing for Ranked Queries Dong Xin, Chen Chen, Jiawei Han Department of Computer Science University of Illinois at Urbana-Champaign VLDB.
Minor Thesis A scalable schema matching framework for relational databases Student: Ahmed Saimon Adam ID: Award: MSc (Computer & Information.
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
CSCI 3140 Module 3 – Logical Database Design for the Relational Model Theodore Chiasson Dalhousie University.
1/26/2004TCSS545A Isabelle Bichindaritz1 Database Management Systems Design Methodology.
Integration of Spatial Information Sources Based on Source Description Framework Yoshiharu Ishikawa, Gihyong Ryu, and Hiroyuki Kitagawa University of Tsukuba.
Methodology - Conceptual Database Design
Database Management Systems, R. Ramakrishnan and J. Gehrke1 Relational Algebra.
1 Relational Algebra and Calculas Chapter 4, Part A.
Dynamic-Content Web Caching with Cooperative Proxy Scheme Βελισκάκης Μανώλης Εθνικό Μετσόβιο Πολυτεχνείο Dept. of Electrical & Computer Engineering Knowledge.
Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras.
Proving Non-Termination Gupta, Henzinger, Majumdar, Rybalchenko, Ru-Gang Xu presentation by erkan.
Sept. 27, 2002 ISDB’02 Transforming XPath Queries for Bottom-Up Query Processing Yoshiharu Ishikawa Takaaki Nagai Hiroyuki Kitagawa University of Tsukuba.
August 30, 2004STDBM 2004 at Toronto Extracting Mobility Statistics from Indexed Spatio-Temporal Datasets Yoshiharu Ishikawa Yuichi Tsukamoto Hiroyuki.
Dec. 13, 2002 WISE2002 Processing XML View Queries Including User-defined Foreign Functions on Relational Databases Yoshiharu Ishikawa Jun Kawada Hiroyuki.
CPSC 404, Laks V.S. Lakshmanan1 Overview of Query Evaluation Chapter 12 Ramakrishnan & Gehrke (Sections )
272: Software Engineering Fall 2012 Instructor: Tevfik Bultan Lecture 9: Test Generation from Models.
Query Caching and View Selection for XML Databases Bhushan Mandhani Dan Suciu University of Washington Seattle, USA.
1 Holistic Twig Joins: Optimal XML Pattern Matching Nicolas Bruno, Nick Koudas, Divesh Srivastava ACM SIGMOD 2002 Presented by Jun-Ki Min.
Ruhr University Bochum Faculty of Mathematics Information-Security and Cryptology An Algorithm for Checking Normality of Boolean Functions Magnus DaumHans.
A Unified Approach to Ranking in Probabilistic Databases Jian Li, Barna Saha, Amol Deshpande University of Maryland, College Park, USA VLDB
Efficient Discovery of XML Data Redundancies Cong Yu and H. V. Jagadish University of Michigan, Ann Arbor - VLDB 2006, Seoul, Korea September 12 th, 2006.
Presented by Kyumars Sheykh Esmaili Description Logics for Data Bases (DLHB,Chapter 16) Semantic Web Seminar.
Chapter 13 Query Optimization Yonsei University 1 st Semester, 2015 Sanghyun Park.
1 Overview of Query Evaluation Chapter Outline  Query Optimization Overview  Algorithm for Relational Operations.
1 Copyright © 2003 KAIST All Rights Reserved. Using Semantic Caching to Manage Location Dependent Data in Mobile Computing CS 744 Database Lab.
Chapter 3 The Relational Model. Why Study the Relational Model? Most widely used model. Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. “Legacy.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Relational Model Chapter 3.
Database Management System
Semantic Data Caching and Replacement
Relational Algebra Chapter 4, Part A
Arithmetic Constraints and Automata
Spatio-temporal Pattern Queries
Relational Algebra Chapter 4, Sections 4.1 – 4.2
Probabilistic Ranking of Database Query Results
Efficient Aggregation over Objects with Extent
Presentation transcript:

A Semantic Caching Method Based on Linear Constraints Yoshiharu Ishikawa and Hiroyuki Kitagawa University of Tsukuba

Outline _ Background –Data caching –Semantic caching _ Our Approach _ Algorithms _ Future work and conclusion

Data Caching (1) _ Stores a query result into local cache _ Uses cached results for later queries: improves response time _ Based on the notion of temporal locality _ Used in various situations: –Client-server database environments –Data warehousing –has relationship with materialized view

Data Caching (2) Database Server DBMS Client Module Query Result Local Cache

Data Caching (3) Database Server DBMS Client Module Query Reminder Query Result Local Cache Information Examination Probe Query Result

Semantic Caching (1) _ Based on semantic locality (in addition to temporal locality) –Similar objects tend to be referenced together _ Related work –Semantic caching based on rectlinear region (Dar, Franklin, Srivastava et al.) –Predicate caching (Keller and Basu) –View caching (Roussopoulos et al.)

Semantic Caching (2) _ Semantic caching based on rectlinear region age salary Q1: SELECT * FROM Employee WHERE age  30 AND age  40 AND salary  2000 AND salary  Q2: SELECT * FROM Employee WHERE age  35 AND age  50 AND salary  2500 AND salary  stored into local cache

Semantic Caching (2) _ Semantic caching based on rectlinear region age salary Q1: SELECT * FROM Employee WHERE age  30 AND age  40 AND salary  2000 AND salary  Q2: SELECT * FROM Employee WHERE age  35 AND age  50 AND salary  2500 AND salary  probe query reminder query

Semantic Caching (3) age salary Probe Query SELECT * FROM Employee WHERE age  35 AND age  40 AND salary  2500 AND salary  Reminder Query SELECT * FROM Employee WHERE (age  35 AND age  40 AND salary  3000 AND salary  4000) OR (age  40 AND age  50 AND salary  2500 AND salary  4000) OR (age  40 AND age  50 AND salary  3000 AND salary  4000) probe query reminder query

Outline _ Background _ Our Approach –An example –Constraint data model _ Algorithms _ Future work and conclusion

Our Approach _ A new approach to semantic caching –Generalization of rectlinear region-based approach –Based on linear constraints _ Assumption: a query condition is a conjunction of (in)equality formulas _ Caches retrieved base tuples _ Maintains compact constraint relations to describe cached base tuples

An Example (1) Q1 SELECT name, year FROM UsedCar WHERE displacement  1500 AND price  8000 q 1 (displacement  1500)  (price  8000) client retieves all base tuples which satisfy q 1

An Example (1) Q1 SELECT name, year FROM UsedCar WHERE displacement  1500 AND price  8000 q 1 (displacement  1500)  (price  8000) client retieves all base tuples which satisfy q 1 cache-info client stores a tuple in cache-info to describe obtained tuples

An Example (2) Q2 SELECT name, price, tax FROM UsedCar WHERE displacement  1200 AND price + tax  q 2 (displacement  1200)  (price + tax  10000) cache-info client examines cache-info to check the availability of tuples

An Example (3) Probe Query q 1  q 2 = ((displacement  1500)  (price  8000))  ((displacement  1200)  (price + tax  10000)) = (displacement  1500)  (price  8000)  (price + tax  10000) 8000 price tax

An Example (3) Probe Query q 1  q 2 = ((displacement  1500)  (price  8000))  ((displacement  1200)  (price + tax  10000)) = (displacement  1500)  (price  8000)  (price + tax  10000) price tax

An Example (3) Probe Query q 1  q 2 = ((displacement  1500)  (price  8000))  ((displacement  1200)  (price + tax  10000)) = (displacement  1500)  (price  8000)  (price + tax  10000) price tax semantic region for the probe query

An Example (4) Probe Query q 1  q 2 = (displacement  1500)  (price  8000)  (price + tax  10000) Reminder Query  q 1  q 2 = ((displacement 8000))  ((displacement  1200)  (price + tax  10000)) cache-info

Constraint Data Model _ Incorporates the notion of constraints directly into the data model _ Can represent infinite information in terms of finite representation _ A constraint data model is a combination of –Base data model: relational data model, datalog, etc. –Constraint domain: dense order, linear arithmetic, polynomials, etc.

Definition of the Data Model _ Constraint k-tuple  =  1 ...   N –  i : constraint (equality or inequality constraint) –In our case, linear constraints are used _ Linear constraint a 1 x a p x p  a 0 –a i : integer –   {=, ,,  } _ Constraint relation r = {  1,...,  M } –  i : constraint k-tuple –Also represented as r =  1 ...   M (disjunctive normal form)

Orthographic Partitioning _ Proposed by Grumbach et al. _ Partitions a constraint tuple into independent components _ Reduces computational complexity

Outline _ Background _ Our Approach _ Algorithms –Cache examination –Overlap computation –Cache replacement _ Future work and conclusion

Cache Examination Algorithm _ Checks the availability of cached base tuples _ Generates a probe query and a reminder query _ Takes orthographic partitioning into consideration t1t1 t2t2 q

Cache Examination Algorithm(1) _ Checks the availability of cached base tuples _ Generates a probe query and a reminder query _ Takes orthographic partitioning into consideration t1t1 t2t2 q probe query reminder query

Cache Examination Algorithm(2) _ The brief idea –For each tuple i in cache-info, compute pq i, its overlap with query q –The probe query is generated as pq := pq 1 ...  pq n –The reminder query is generated as rq := q   pq

Overlap Computation _ Requirement: delete redundant constraints from the overlap –e.g. (age > 30)  (age  50)  (age > 40) (age > 40)  (age  50) _ For this purpose, we applied a technique found in linear programming –Calculate all of the basic feasible solutions from the given constraints –If a solution does not exist, there is no overlap. –Resulting constraint is easily calculated

Cache Replacement _ A simple reference count-based algorithm –Sets a counter for each base tuple –If cache is full, it uses select-victim() function to select victims for the replacement (definition of the select-victim function is the future work). –If a reference counter becomes 0, its corresponding base tuple is deleted from the cache.

Outline _ Background _ Our Approach _ Algorithms –Cache examination –Overlap computation –Cache replacement _ Future work and conclusion

Future Work _ Efficient calculation of overlaps –Use of indexes –Minimum bounding box (MBB)-based approach _ Cache Replacement algorithm –Efficient replacement algorithm _ Simulation-based Evaluation

Conclusion _ A new approach to semantic caching –linear constraint-based approach _ A naive algorithm to compute a probe query and a reminder query –Overlap computation is the key factor –An overlap computation algorithm based on linear programming _ Proposal of replacement algorithm