BizQuery is package of servers and tools for application development in presence of heterogeneous data sources. The main component of the package is BizQuery Integration Server, which is for querying across multiple heterogeneous databases in a uniform way. BizQuery Integration Server supports the notion of global schema. A global schema is created to represent a particular application domain and data sources are mapped as views on the global schema. BizQuery supports virtual approach: the user asks a query over the global schema and the data integration system reformulates this into a query over the data sources and executes it.
The main features of BizQuery are as follows. First of all, BizQuery approach is based on the modern and promising technologies XML and UML. In particular, the XQuery language developed by W3C is supported. Second, cross-sources queries (which involve data from separate data sources) are supported in general way. The third distinguishing feature of BizQuery is great flexibility in defining global schema and its mapping to data sources.
BizQuery package includes the following components
BizQuery integration server is based on the virtual approach. The query to the integrated data is processed on the fly without preliminary data loading from the sources. The current version of BizQuery deals with two kinds of data sources: XML data sources with XQuery support and Relational DBMS with SQL support. BizQuery architecture allows new kinds of data sources to be supported via development of new adapters.
BizQuery integration server can be used as pure XML integration system. In this case global schema is defined in terms of XML and XQuery is used as the query language. BizQuery also provides high-level interface, when global schema is defined in terms of UML and data is queried in UML Query Language (UQL).
The low-level integration layer provides access to data sources via XQuery queries to global XML schema. The technique of view over the data sources is used to support queries to global schema. The view is expressed in XQuery language at the stage of the system deployment. As a result BizQuery server doesn’t store any data from the sources but deals with a virtual document, which is constructed on demand. The subset of XQuery supported by BizQuery can be used for view definition to full extent that allows transforming source data in flexible way to map them on the global schema.
In the BizQuery server the following techniques for efficient query processing have been implemented:
Development of most business applications might be more straightforward if access to data will be carried out in terms close to application domain. UML is a formalized language to capture semantics of application domain. BizQuery allows creating global schema in UML and supports queries to the integrated data in UML terms. UML Query Language (UQL) is a system specific language that is based on OCL and developed to express UML queries.
UML integration layer is the superstructure over the XML integration layer. Idea behind this superstructure lies on predefined principles of UML to XML schemas mapping, which allow supporting the two-level consistent interface to query data in terms of XML and UML as well.
User Interface Management Server (UIMS) provides web-based end-user interface to BizQuery Integration Server. Two kinds of interfaces are supported: navigational (Catalogs), declarative (Forms and Graphic Map). All this interfaces are generated dynamically according to UML schema. In response to user activity UIMS builds UQL query, which processed by BizQuery Integration Server. UIMS supports customization facilities based on XML technologies (XSLT and XML representation of the interface structure).