780 likes | 1.13k Views
Multimedia Databases. Eran Stiller Omer Gertel. In this presentation …. Introduction What is a Multimedia Database? Why do we need it? Modeling Multimedia Databases Design Methodology Modeling the WWW as a Multimedia Database WebSQL Using the Multimedia Design Methodology
E N D
Multimedia Databases Eran Stiller Omer Gertel
In this presentation… • Introduction • What is a Multimedia Database? • Why do we need it? • Modeling Multimedia Databases • Design Methodology • Modeling the WWW as a Multimedia Database • WebSQL • Using the Multimedia Design Methodology • Graphical extension to SQL: SQL+D Multimedia Databases
What is a Multimedia Database? • Multimedia Data-types • Movies, Pictures, Sound Clips, Documents etc… • Advanced Querying Possibilities Multimedia Databases
Why Do We Need It? • Tremendous Amounts of Digitized Multimedia Content • Video servers, Ifilms, IMDB, AllMusic, etc… • Querying for Digitized Information • “A Picture is Worth a Thousand Words” Multimedia Databases
The Leading Concept • Extracting Information from Multimedia Objects “On the Fly” • Creating a Design Methodology • Simple, Intuitive, Upward Compatible • Unbound by Data-type, Application, Usage Multimedia Databases
Modeling Multimedia Databases • Using Object Relational Data Models • Data Description Language Multimedia Databases
Data Description Language • Example: • Movie Database: • MOVIE(Title, Year, Director, Length) • What About the Movie? • Add It to the Database • Create Additional Functions Multimedia Databases
Data Description Language • First Approach: • Complex Type: • Create Type Movie_t( Title varchar(20), Year int, Director varchar(20), Length int, MV blob); • Create Table Movie of type Movie_t; Multimedia Databases
Data Description Language • Second Approach: • Extended Type: • Create Table Movies( Title varchar(20), Year int, Director varchar(20), Length int, MV movie_blob); Multimedia Databases
Data Description Language • Concerns • Distinguishing the Digitized Information • Conclusion • Naming Convention • The ‘Core’ Special Attribute Multimedia Databases
Data Description Language • Example – Continued: • A New Relation: • MOVIE(Title, Year, Director, Length, Core) • What About Querying? • “Show the opening sequence of all movies directed by Spielberg in 1993.” Multimedia Databases
Data Description Language • SQL-like Language: • Select Movie.opening_seq From Movie Where Year=1993 AND Director=“Spielberg”; Multimedia Databases
Data Description Language • SQL Solution: • Declare External opening_seq(movie_blob) Returns movie_blob Language C; • Smart Interpreter Multimedia Databases
A Design Methodology • Core-ER Diagram • Core-ORDB schema Multimedia Databases
Core-ER Diagram • Entities • Abstract Entities • Core Entities Multimedia Databases
Core-ER Diagram • Attributes • Conventional Attributes • Unconventional Attributes Multimedia Databases
Core-ER Diagram • Methods • Core as Input • Entity as Input Multimedia Databases
Core-ER Diagram • Keys and Relationships • Exactly as in ER Diagrams Multimedia Databases
Core-ER Diagram • Example Multimedia Databases
CER to Core-ORDB Schema • We Need Rules For: • Abstract Entities • Core Entities • Methods • Relationships • Embedded ER Diagram • Keys • Core Can Be a Key • Example Multimedia Databases
Employee(SSN, name, picture, position, salary, Dept) Multimedia Databases
EMail(EMailID, From, To, Date, Date R, Size, RespTo, Core) Multimedia Databases
Declare External Keyword(Email, string) Returns BOOLEAN <Function Definition>; Multimedia Databases
Has(SSN, EMailID) Multimedia Databases
Note: Core Can Be A Key! Multimedia Databases
A Design Methodology • Conclusion • Full Upward Compatibility • An Easy to Use Solution Multimedia Databases
Modeling the WWW • WebSQL • Using the Multimedia Design Methodology Multimedia Databases
WebSQL • SQL-Like Language • Minimal Relational Approach • Queries Based Both On The Content And On The Hypertext Structure Of The Web Multimedia Databases
WebSQL • Content Based Queries • Document(url, title, text, type, length, lastModify) Multimedia Databases
WebSQL • Example: • Find All HTML Documents About “Hypertext” • Select D.url, D.title, D.length, D.lastModify From Document D such that D mentions“Hypertext” Where D.type = “text/html”; Multimedia Databases
WebSQL • Hypertext Structure Based Queries • Document(url, title, text, type, length, lastModify) • Anchor(base, href, label) Multimedia Databases
WebSQL • Example: • Find All Links to Applet from Documents About “Java” • Select Y.label, Y.href From Document X such that X mentions “Java” Anchor Y such that base = X Where Y.label contains“Applet”; Multimedia Databases
WebSQL • Hypertext Link Classification • Interior () • Local () • Global () • Empty Path (=) • Path Regular Expressions • Alternation ( | ) • Repetition ( * ) • Concatenation ( . ) Multimedia Databases
WebSQL • Example: • Select D.url, D.title From Document D such that “http://www.cs.huji.ac.il”= | | . D Where D.title contains “database” Multimedia Databases
WebSQL • Example: • Select X.url, X.title, Y.url, Y.title From Document X such that X mentions “Computer Science”, Document Y such that X = | | . Y; Multimedia Databases
Modeling the WWW • WebSQL • Already Implemented in Java • Specific Solution • Refers Only To Documents • Using the Multimedia Design Methodology Multimedia Databases
Multimedia Databases We’ll Be Back, Right After The Break…
Modeling the WWW • WebSQL • Already Implemented in Java • Specific Solution • Refers Only To Documents • Using the Multimedia Design Methodology Multimedia Databases
Multimedia Design Methodology • Entities • HTMLdoc(h_url, title, type, length, lastModify, core) • Links(l_url, label) • Include(h_url, l_url) Multimedia Databases
Multimedia Design Methodology • Methods • Contains(HTMLdoc.title, string) • Reach_by(HTMLdoc.url, url_to, by_n, l_type) • Mentions(HTMLdoc, string) • Linktype(HTMLdoc, url) Multimedia Databases
Multimedia Design Methodology • Example: • Find All HTML Documents About “Hypertext” • Select HTMLdoc.h_url From HTMLdoc Where Contains(HTMLdoc.title, “Hypertext”); Multimedia Databases
Multimedia Design Methodology • Example: • Find All Links to Applet from Documents About “Java” • Select Links.l_url From HTMLdoc, Links, Include Where mentions(HTMLdoc, “java”) AND HTMLdoc.h_url = Include.h_url AND Links.l_url = Include.l_url AND substring(“applet”, Links.label); Multimedia Databases
Multimedia Design Methodology • Example: • Select Links.l_url From HTMLdoc, Links, Include Where substring(“database”, HTMLdoc.title) AND HTMLdoc.h_url = Include.h_url AND Links.l_url = Include.l_url AND reach_by(“http://www.cs.huji.ac.il”, Links.l_url, 2, local); • Hint: We’ve seen it before… Multimedia Databases
Multimedia Design Methodology • Example: • Select HTMLdoc.h_url, Links.l_url From HTMLdoc, Links Where mentions(HTMLdoc, “Computer Science”) AND reach_by(HTMLdoc.h_url, Links.l_url, 2, local); Multimedia Databases
Multimedia Design Methodology • Simplified Model, But… • Complicated Real World • Taking Another Step Multimedia Databases
Multimedia Design Methodology • Entities • HTMLdoc(h_url, title, type, length, lastModify, core) • WebObject(w_url, label, objectType, interactive, core) • Properties(position, size, props) • Include(h_url, w_url, position, size, props) Multimedia Databases
Multimedia Design Methodology • Methods • Contains(HTMLdoc.title, string) • Reach_by(HTMLdoc.url, url_to, by_n, l_type) • Mentions(HTMLdoc, string) • Linktype(HTMLdoc, url) • And Additional Methods • DisplayDoc(HTMLdoc) • DisplayObj(WebObject, Properties.position, Properties.size, Properties.props) Multimedia Databases
Multimedia Design Methodology • Example: • List All Documents That Have a Video-Clip Or a Picture Labeled “Sharon” • Select HTMLdoc.h_url From HTMLdoc, WebObject, Include Where HTMLdoc.h_url = Include.h_url AND WebObject.w_url = Include.w_url AND (WebObject.objectType = “Image” OR WebObject.objectType = “Video”) AND WebObject.label = “Sharon”; Multimedia Databases
Multimedia Design Methodology • Still Not Complicated Enough… • The Last Step Multimedia Databases
Modeling the WWW • WebSQL • Already Implemented in Java • Specific Solution • Refers Only To Documents • Using the Multimedia Design Methodology • General Methodology Used • Doesn’t Require a Special Web SQL-Like Language • Easily Expandable Multimedia Databases