Unformatted text preview:

Object-relational database systemsContentIntroductionTaxonomy of DBMS ApplicationSimple dataOODBMSORDBMSFeaturesInclusion of New Types in Relational Database SystemsExampleExample (cont’d)Operators for BoxesMotivationConditionsDefinition of New TypesDefinition of New OperatorsSafety loopholeNew access methodsExample: B-treeInformation on the data types of operators (B-tree)New set of operators (B-tree)Implementing New Access MethodsHard problem- work with transaction managementAccess path selectionGenerate query processing planSummaryThe POSTGRES Next-Generation Database Management SystemThree kinds of services for DBMSExample- newspaper layoutPOSTGRES Data Model-Design criteriaDesign criteriaSlide 32Data Model - ClassData model - InheritanceThree kinds of classesVersion ExampleData model - TypesComposite typesData Model - FunctionsFunctionsPOSTQUELThe Rules SystemSyntax of rulesForward and Backward chainingImplementation of RulesWhen rules are activatedStorage SystemPerformanceButCommentsPREDATOR DESIGN AND INPLEMENTATIONSystem overviewServer ArchitectureEnhanced Data TypesImprovementE-ADTThank YouObject-relational database systemsYong YaoCS632April 17, 2001ContentIntroductionMichael Stonebraker: Inclusion of New Types in Relational Data Base Systems. Michael Stonebraker, Greg Kemnitz: The Postgres Next Generation Database Management System.PREDATOR System Design Document: A detailed description of internal design decisions and implementation details.IntroductionThe relational modelDominant mainstream approachWork well on business data processingBut things have changed drastically, nontraditional problems.Taxonomy of DBMS ApplicationYesNoUse SQL data Simple ComplexcomplexitySimple data YesNoUse SQL data Simple Complexcomplexity Relational DBMSFile SystemOODBMSYesNoUse SQL data Simple Complexcomplexity Relational DBMSFile SystemOODBMS•A programming language with a type system•Persistent objectORDBMSYesNoUse SQL data Simple Complexcomplexity Relational DBMSORDBMSFile SystemOODBMSFeatures Base type extensionInheritanceComplex objectInclusion of New Types in Relational Database SystemsMichael StonebrakerEECS Dept.University of California, BerkeleyExampleRepresent a set of boxes in the DBMS and a simple query- find all the boxes that overlap the unit square(0,1,0,1).RDBMS:Create box(id=i4, x1=f8, x2=f8,y1=f8,y2=f8)select * from boxwhere ! (box.x2<=0 or box.x1>=1 or box,y2<=0 or box.y1>=1)Too hard to understandToo complex to optimize Too many clauses to checkExample (cont’d)Create box(id=i4,desc=box)select *from boxwhere box.desc!!”0,1,0,1”Box: new data type“!!”: overlap operator with two operands of data type box, return a booleanOperators for BoxesMotivation Needs of business data processing applicationsGeographic Information SystemNew Types: Point, Line, Polygon;New operators: distance, intersection ;New access methods: R-trees, KDB trees;Conditions 1. The definition of user-defined data types2. The definition of new operators for these data types3. The implementation of new access methods for data types4. Optimized query processing for commands containing new data types and operatorsDefinition of New TypesFollow a registration processdefine type-name length = value, input = file-name, output = file-nameOccupy a fixed amount of spaceConversion routinesDefinition of New OperatorsSafety loopholeProblem: an ADT routine which has an error can overwrite DBMS data structuresUnclear whether such errors are due to bugs in the user routines or in the DBMSSolutions:Run in separate address spaceBuild a language processorProvide two environmentsNew access methodsUsers can add new access methods to support user-defined data typesGoal: extensibilityInterface:Conditions for the operatorsInformation on the data types of operators Define set of operatorsExample: B-treeConditions for operators:Information on the data types of operators (B-tree)•“<=“ is required•Type: specific type, fixed, variable, fix-var, type1, type2New set of operators (B-tree) F1=(value - low-key) / (high-key – low-key)F2=(high-key – value) / (high-key – low-key)Implementing New Access MethodsA collection of procedure callsopen (relation-name)close (descriptor)get-next(descriptor, OPR, value, tuple-id)insert (descriptor,tuple)delete(descriptor, tuple-id)replace(descriptor, tuple-id, new-tuple)build(descriptor,keyname,OPR)Hard problem- work with transaction managementlog pages – simple, but may suffer from performance penaltylog events Event-oriented interfaceREDO(T)UNDO(T)LOG(event-type, event-data)Access path selectionFour pieces of information for optimizationStups: estimate the expected number of records…where rel-name.field-name OPR valueA second selectivity factor S: …where relname-1.field-1 OPR relname-2.field-2Feasibility of merge-sortFeasibility of hash-joinDefine operator token= AE, …… Stups=1 S= min(N1.N2). merge-sort with AL, hash-joinGenerate query processing planrelname-1.field-1 OPR relname-2.field-2Merge sortIterative substitutionHash JoinRelname.field-name OPR valueany access method with field-name as a keySecondary indexSequential searchSummaryHow to extend an abstract data typeHow to define new access methodIntegrate new access method with transaction managementGeneration of optimized query processing planThe POSTGRES Next-GenerationDatabase Management SystemMichael StonebrakerGreg KemnitzThree kinds of services for DBMSTraditional data managementSimple data typeObject managementComplex data types, e.g. bitmaps, icons, text…Knowledge managementStore and enforce a collection of rulesExample- newspaper layoutstore and manipulate text and graphics, Bill customers for advertisement.Data: customer informationObject: text, pictures and iconsRules: control newspaper layoutPOSTGRES Data Model-Design criteriaTraditional relational DBMSs data model: a collection of named relationsOrientation toward database access from a query languageInteract with database by query language-POSTQUELUser defined functionsDesign criteriaOrientation toward multilingual accessTwo selectionsOne language tightly coupled to the systemMultilingualPOSTGRES is programming


View Full Document

CORNELL CS 632 - Database Systems

Download Database Systems
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Database Systems and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Database Systems 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?