xml databases
TRANSCRIPT
XML Databases and Effective Search Engine
XML
● Extensible Markup Language is a meta-language that describes the contents of the document
(Self-describing data)
● JAVA=Portable CodeXML=Portable Data
Applications of XML
● Configuration Filesused extensively in J2EE architectures
● Media for data interchangeA better alternative to proprietary data formats
● B2B Transactions on the WebElectronic Business orders (ebXML)Financial Exchange Message Exchange (SOAP)
Four tasks of data management
The basic tasks of data management do not change simply because the data are stored in
XML ● Store ● Search ● Retrieve ● Display
XML a Database ?
● Only in the strictest sense of the term● It is self-describing● It is portable● It can describe data in tree or graph structures
XML a “ Sort of ” Database ?● Storage -- XML documents
● Schemas -- DTDs, XML Schemas, and so on
● Query languages -- XQuery, XQL, etc.
● Programming interfaces -- SAX, DOM
XML lacks........
● Efficient storage ● Indexes● Security● Transactions and data integrity● Multi-user access● Triggers● Queries across multiple documents
XML Database Architecture
XML Databases
1. RDBMS s that support XML e.g. Oracle , DB2
2. Native XML Database e.g. Apache Xindice, Stanford XMLDB
Relational Databases Vs XML Databases
Relational database XML database
A relational database contains tables.
An XML database contains collections.
A relational table contains records with the same schema.
A collection contains XML documents with the same schema.
A relational record is an unordered list of named values.
An XML document is a tree of nodes.
A SQL query returns an unordered set of records.
An XQuery returns an ordered sequence of nodes.
Technologies
● Java - Servlets, JAXP● Apache Tomcat web server● Apache Xindice XML DB● RDBMS - MS-Access, MY-SQL or ORACLE● IDE - Eclipse
Modules
● Parse XML Insert into Database
● Convert Database table into XML
● Reflect changes in Database to XML and Vice versa
Parse XML Insert into Database
Database Table to XML
Java ResultsetMetadata
● An object that can be used to get information about the types and properties of the columns in a Resultset object
Modules- to be Implemented
● Convert Text files to XML
● Convert HTML to XML
● Implementing Searching
● Implementing Indexing
Searching XML
● Search process begins in the root node ● Search proceeds comparing characters in
the search key to edge labels● Entering a wrong block may lead to
backtracking
Indexing XML
● The goal of indexing is to optimize the speed and performance of finding relevant documents
● Without an index, the search engine would scan every document
● It will take a considerable amount of time and computing power
Conclusions
● XML can enable Effective searching
● As the XML document describes itself (meta-language) it will speedup finding relevant documents
Thank you
XML is everywhere