The 6Th World Multiconference on Systemics, Cyb Ernetics and Informatics
Total Page:16
File Type:pdf, Size:1020Kb
- The 6th World Multiconference on Systemics, Cyb_ernetics and Informatics July 14-18, 2002 Orlando, Florida, USA Volume VII Information Systems Development II Organized by IllS EDITED BY International N agib Callaos Institute of John Porter Informatics and Naphtali Rishe Systemics Member of International Federation of Systems Research IFSR Data Extractor Wrapper System* Dmitriy BERYOZA, Naphtali RISHE, Scott GRAHAM, Ian DE FELIPE High-performance Database Research Center School of Computer Science Florida International University University Park, Miami, FL 33199, USA ABSTRACT 2. DATA EXTRACTOR We describe a Data Extractor system for retrieving data from Heterogeneous database Integration Web sites. This system represents Web sites as data tables that can be both integrated in a heterogeneous database framework The majority of existing methods for accessing data on the Web and serve as data sources for standalone applications. We specialize in extraction and purification of data, and channeling address issues involved in selection and analysis of Web data it to external applications and users. Some researchers ([1 0], sources, and construction of wrappers for them. Data Extractor [15]) approach Web data extraction as a part of a bigger system design and implementation issues are discussed. problem of heterogeneous database integration. Such integration would let users access resources of multiple Keywords databases of different types via a unified interface. It will also allow them to pose queries over a unified schema of multiple Web Information Retrieval, Data Extraction, Web-based data sources. Interaction, Distributed I Heterogeneous Database Systems, Scripting Languages In our research we are also investigating ways of integrating data extraction into a heterogeneous database system. We 1. INTRODUCTION developed MSemODB [21 ), a heterogeneous database The explosive growth of the World Wide Web in recent years management system, whose general architecture is shown in has provided users worldwide with unprecedented volumes of Figure I. information. This wealth of information is, however, The system is using the Semantic Binary Object-oriented Data underutilized, because mechanisms for accessing it are limited. Model (Sem-ODM) [20] for data representation and the SQL Users can browse Web pages, search for information and query interface for communication between its components. perform a predefined set of transactions on Web sites, but in the Sem-ODM combines the simplicity of relational and power of majority of cases, generated data is provided only for visual consumption. No convenient mechanisms exist for analysis and processing of the found data, DBA because users can only read what is shown in Web pages. There is no way for users to, for example, create complex queries to a travel agent's Web site-for each such query a special program would have to be implemented inside the agent's Web server. Even if the queries that are available meet user's needs there is no way to work with the data that they return. The stock quotes that are available on the financial Web sites most of the time cannot be imported into a spreadsheet for further analysis. The sites that do provide data in an easy-to-process form, such as XML, are still rare. Although this is expected to change in the future, large volumes of data are likely to remain in HTML for quite some time. In this work we describe a Data Extractor system that provides a mechanism for accessing data scattered across Web sites and using it in a variety of applications, such as database management systems, spreadsheets, and analytical tools. Figure 1 MSemODB architecture 'This research was supported in part by NASA (under grants NAGS-9478, NAGW-4080, NAG5-5095, NAS5-97222, and NAG5-6830), NSF (CDA-9711582, ffil-9409661, HRD-9707076, and ANI-9876409}, ONR (NOOOI4-99-1-0952), and the FSGC. 425 object-oriented data models. A major advantage of this model is Data Extractor system consists of several components (see its ability to use the standard SQL-92 query language Figure 2). interpreted over Sem-ODM schemas (called Semantic SQL) in a variety of relational and object-oriented databases. This feature makes MSemODB compatible with a number of existing tools developed for standard SQL. The communication between components in the system is done in CORBA, which is an efficient cross-platform and language-independent communication medium. The main module that controls execution in the system and flow tJf data is Query Coordinator. Its function is to collect database schemas from all member databases and dispatch user queries to the appropriate database sites. It gives a common user interface to all the databases in the system. Through it, users enter queries using SemSQL and view resulting datasets in a single data model. Query Coordinator consists of Integrator & Knowledge Reconciliator, Schema Catalog and Query Dispatcher. Schema Catalog collects schemas of individual relational, semantic and Web database sites. Integrator & Knowledge Reconciliator coordinates schemas to resolve conflicts. Database administrator can use it to manage and modify Schema Catalog, and to introduce new relations that are not apparent from mere collection of member schemas. Query Dispatcher optimizes and executes queries. It decomposes queries posed by user into sub queries based on the knowledge stored in the Schema Catalog and dispatches these sub-queries to appropriate sites for execution. When the results are available, it assembles them and Figure 2 Data Extractor system structure presents them to the user. The database sites are exposed in the system through their • Wrapper Controller. This is the main component, whose individual Semantic SQL and Semantic Schema modules. For responsibility is to control and coordinate execution of the Relational Site a special knowledgebase and a reverse other parts of the system. It is the entry point for engineering tool facilitate relational-to-semantic schema communications with the Data Extractor from the outside. translation and storage. The majority of translation tasks are It loads, executes, and controls behavior of wrappers and performed automatically. The database administrator can step in redirects data that they generate to the user. It accesses the and make modifications and enhancements to the schema after knowledgebase to become aware of the configuration and the automatic convers\on is completed. The Semantic SQL schema changes in the system. module of the Relational Site implements an algorithm which • Knowledgebase. This module stores system configuration automates conversion from Semantic SQL queries to relational information. It contains data on what wrappers are SQL queries. With this functionality, virtually any RDBMS available, where they can be loaded from, what parameters available today can be integrated with MSemODB. are required to execute them, and what kinds of data they In the Semantic Site that wraps around Semantic Databases, generate. integration is far more natural. The Semantic Object-oriented • Wrappers . Wrappers are lightweight modules that execute Database engine (Sem-ODB) already has Semantic Schema and in response to user requests. They extract data from Web Semantic SQL query facilities implemented. This database sites and return it to the user in an easy-to-process form. system is a multi-platform, distributed, fully functional client server implementation that is suitable both for standard database • Data Extraction Library. This library contains extensive applications and for large-volume data and spatial data network access and HTML processing functionality. This applications. functionality simulates behavior of the Web browser, allowing wrappers to traverse Web sites and extract data Web Data Site is built around a Data Extractor system and from HTML pages. provides a framework for data extraction from the Web. Data Extractor is implemented in several versions: standalone, Data Extractor architecture embedded, or mobile. As a standalone server it serves clients The Semantic SQL and Semantic Schema modules access Data through a simple browser-based user interface, executes user Extractor through a standard interface that allows schema queries, and delivers raw or processed data directly to the user. discovery, query execution and data retrieval. Together with When embedded inside another application (as is the case with these modules the system works as an integral part of an the MSemODB framework), Data Extractor acts as a data MSemODB system, capable of executing SQL queries and provider for that application. A lightweight mobile returning result datasets. Using Data Extractor external implementation of Data Extractor is shipped to the client side applications pose queries to Web sites and extract data from over the Internet and is executed there on behalf of the user. them. Data Extractor presents extracted data in two-dimensional tables that can be further processed and returned to the user. 426 document. A location marker is any HTML element or 3. WRAPPER CONSTRUCTION group of elements that is uniquely identifiable and that is Wrappers in Data Extractor execute on behalf of users and located close to the data that we are extracting. Once the extract data from Web sites. Wrappers essentially simulate a wrapper finds such a marker inside the document, it could user working with the site through the Web browser. They fill then "move" through the page relative to marker's location out and submit forms, "click" on links, or find data of interest in order to find data. inside of pages. To support this behavior, special functionality Data identification markers. These markers are unique was developed that emulates browser interaction with the Web • characteristics of an HTML document that point to data site. It allows us to create and play back a "scenario" of user elements and delimit distinct data records. Such markers navigation through the site. are usually unique only inside some part of an HTML The process of creating a wrapper for a Web data source document and they must be used together with location consists of multiple steps. It includes source selection, site markers and other search techniques.