VDM Connector

There are use cases that multiple data sources need to be managed and visited together in one single session or view. Also, users may not care about the distribution and source of data at all. The VDM (Virtualize Data Market) connector is aimed at bringing in this feature to openLooKeng.

The VDM connector supports to:

  • Create, update and delete views that combines multiple catalogs
  • Visit real data through the views
  • Manage user previlege through the views
  • Log the use of VDM views by each user

Usage

VDM uses openLooKeng metastore to store its database information. It can be stored either on HDFS or relational database, depending on the implementation of openLooKeng metastore.

Therefore metastore must be configured first. Here is a example of using RDBMS as metastore, create etc/hetu-metastore.properties:

  1. hetu.metastore.type=jdbc
  2. hetu.meatstore.db.url=jdbc:mysql://....
  3. hetu.metastore.db.user=root
  4. hetu.metastore.db.password=123456

For user interface, the connector can be accessed from JDBC or command line interface. Currently VDM only supports schemas and views. Tables are NOT supported.

Schema operations are the same as usual openLooKeng catalogs, including create schema, drop schema, rename schema and show schemas.

Views can be created under a specific schema: create view as ..., drop view.

Example usage:

Configure a data source vdm1 by creating vdm1.properties in etc/catalogs with following contents:

  1. connector.name=vdm

This example creates a schema schema1 in vdm1 catalog, and creates two views from two other different data sources. Note that metastore must be configured in advance (See usage section).

  1. create schema vdm1.schema1;
  2. use vdm1.schema1;
  3. create view view1 as select * from mysql.table.test;
  4. create view view2 as select * from hive.table.test;
  5. select * from view1;

VDM datasource can also be managed through dynamic catalog API. See Dynamic Catalog topic for more information.

All supported CLI queries

Support operationExternal interface (SQL command)
Add VDMcreate catalog(resulful)
Remove VDMdrop catalog(resulful)
Query all VDMshow catalogs
Create schemacreate schema
Delete schemadrop schema
Rename schemarename schema
Query all schemas under VDMshow schemas
Query all views in the schemashow tables
Create/Update Viewcreate [or replace] view
Delete viewdrop view
Query data by viewselect * from view
Query view creation informationshow create view
Query view column informationdesc view