DOC PREVIEW
UMD CMSC 424 - Misc Topics

This preview shows page 1-2-3-21-22-23-43-44-45 out of 45 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Misc TopicsTopicsDatabase System ArchitecturesSlide 4Parallel DatabasesSlide 6Slide 7Slide 8Distributed SystemsNext…MotivationHistoryObject-Relational: ExampleExampleSlide 15An Alternative: OODBMSOODBMSSummary, cont.XMLSlide 20AttributesAttributes Vs. SubelementsNamespacesDocument Type Definition (DTD)Bank DTDIDs and IDREFsBank DTD with AttributesXML data with ID and IDREF attributesQuerying and Transforming XML DataTree Model of XML DataXPathFunctions in XPathMore XPath FeaturesXSLTXSLT TemplatesCreating XML OutputXQueryFLWR Syntax in XQueryJoinsXML: SummarySlide 41OLAPData WarehousesData MiningInformation RetrievalMisc TopicsMisc TopicsAmol DeshpandeAmol DeshpandeCMSC424CMSC424TopicsTopicsTodayDatabase system architecturesClient-serverParallel and Distributed SystemsObject Oriented, Object RelationalXMLOLAPData WarehousesInformation RetrievalDatabase System ArchitecturesDatabase System ArchitecturesCentralized single-userClient-Server ArchitecturesConnected over a network typicallyBack-end: manages the databaseFront-end(s): Forms, report-writes, sqlplusHow they talk to each other ?ODBC:–Interface standard for talking to the server in CJDBC: –In JavaTransaction servers vs. data serversDatabase System ArchitecturesDatabase System ArchitecturesParallel DatabasesParallel DatabasesWhy ?More transactions per second, or less time per queryThroughput vs. Response TimeSpeedup vs. ScaleupDatabase operations are embarrassingly parallelE.g. Consider a join between R and S on R.b = S.b But, perfect speedup doesn’t happenStart-up costsInterferenceSkewParallel DatabasesParallel DatabasesShared-nothing vs. shared-memory vs. shared-diskParallel DatabasesParallel DatabasesDistributed transactions are complicated (deadlock detection etc);Transactions complicated; natural fault-tolerance.Cache-coherency an issueNotes Main useScalability ?Communication between processorsEverywhereNot used very oftenLow degrees of parallelismVery very scalableNot very scalable (disk interconnect is the bottleneck)Not beyond 32 or 64 or so (memory bus is the bottleneck)Over a LAN, so slowestDisk interconnect is very fastExtremely fastShared NothingShared DiskShared MemoryParallel DatabasesParallel DatabasesShared Memory Shared Disk Shared NothingCommunication between processorsExtremely fast Disk interconnect is very fastOver a LAN, so slowestScalability ?Not beyond 32 or 64 or so (memory bus is the bottleneck)Not very scalable (disk interconnect is the bottleneck)Very very scalableNotes Cache-coherency an issueTransactions complicated; natural fault-tolerance.Distributed transactions are complicated (deadlock detection etc);Main useLow degrees of parallelismNot used very oftenEverywhereDistributed SystemsDistributed SystemsOver a wide area networkTypically not done for performance reasonsFor that, use a parallel systemDone because of necessityImagine a large corporation with offices all over the worldAlso, for redundancy and for disaster recovery reasonsLot of headachesEspecially if trying to execute transactions that involve data from multiple sitesKeeping the databases in sync– 2-phase commit for transactions uniformly hatedAutonomy issues–Even within an organization, people tend to be protective of their unit/departmentLocks/Deadlock managementWorks better for query processingSince we are only reading the dataNext…Next…Object oriented, Object relational, XMLMotivationMotivationRelational model:Clean and simpleGreat for much enterprise dataBut lot of applications where not sufficiently richMultimedia, CAD, for storing set data etcObject-oriented models in programming languagesComplicated, but very usefulSmalltalk, C++, now JavaAllow Complex data typesInheritanceEncapsulationPeople wanted to manage objects in databases.HistoryHistoryIn the 1980’s and 90’s, DB researchers recognized benefits of objects. Two research thrusts:OODBMS: extend C++ with transactionally persistent objectsNiche MarketCAD etcORDBMS: extend Relational DBs with object featuresMuch more commonEfficiency + ExtensibilitySQL:99 supportPostgres – First ORDBMS Berkeley research projectBecame Illustra, became Informix, bought by IBMObject-Relational: ExampleObject-Relational: ExampleCreate User Defined Types (UDT)CREATE TYPE BarType AS (name CHAR(20),addr CHAR(20));CREATE TYPE BeerType AS (name CHAR(20),manf CHAR(20));CREATE TYPE MenuType AS (bar REF BarType,beer REF BeerType,price FLOAT);Create Tables of UDTsCREATE TABLE Bars OF BarType;CREATE TABLE Beers OF BeerType;CREATE TABLE Sells OF MenuType;ExampleExampleQuerying:SELECT * FROM Bars;Produces “tuples” such as:BarType(’Joe’’s Bar’, ’Maple St.’)Another query:SELECT bb.name(), bb.addr()FROM Bars bb;Inserting tuples:SET newBar = BarType();newBar.name(’Joe’’s Bar’);newBar.addr(’Maple St.’);INSERT INTO Bars VALUES(newBar);ExampleExampleUDT’s can be used as types of attributes in a tableCREATE TYPE AddrType AS (street CHAR(30),city CHAR(20),zip INT);CREATE TABLE Drinkers (name CHAR(30),addr AddrType,favBeer BeerType);Find the beers served by Joe:SELECT ss.beer()->nameFROM Sells ssWHERE ss.bar()->name = ’Joe’’s Bar’;An Alternative: OODBMSAn Alternative: OODBMSPersistent OO programmingImagine declaring a Java object to be “persistent”Everything reachable from that object will also be persistentYou then write plain old Java code, and all changes to the persistent objects are stored in a databaseWhen you run the program again, those persistent objects have the same values they used to have!Solves the “impedance mismatch” between programming languages and query languagesE.g. converting between Java and SQL types, handling rowsets, etc.But this programming style doesn’t support declarative queriesFor this reason (??), OODBMSs haven’t proven popularOQL: A declarative language for OODBMSsWas only implemented by one vendor in France (Altair)OODBMSOODBMSCurrently a Niche MarketEngineering, spatial databases, physics etc…Main issues:Navigational accessPrograms specify go to this object, follow this pointerNot declarativeThough advantageous when you know exactly what you want, not a good idea in general Kinda similar argument


View Full Document

UMD CMSC 424 - Misc Topics

Documents in this Course
Lecture 2

Lecture 2

36 pages

Databases

Databases

44 pages

Load more
Download Misc Topics
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 Misc Topics 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 Misc Topics 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?