Menu

FAQ

takeshi.miao Dean

Frequently Asked Questions as listed as follows...

  1. Why we use Metadata Store ?
  2. Can i change the Metadata Store to other RDB(or even it is not) ?
  3. How do i pass the noSQL bound parameters via JackHare ?

\1. Why we use Metadata Store ?

The Metadata Datastore is a store for the meta data or DB schema (at present, is apache derby). it is like a bridge for maintaining schema between the ANSI-SQL schema and noSQL DB schema (or schemaless). following are the reasons why we use an extra-metadata store.

  • Some noSQL DB is schemaless design (like HBase), we need to mitigate this gap between ANSI-SQL schema and these noSQL DB.
  • JackHare can help the data type check and transformation based on the metadata in the metadata store.
  • We choose the RDB technology to mitigate metadata change transaction issues.

\2. Can I change the Metadata Store to other RDB(or even it is not)?

Derby will play a role as a MetaData Store for JackHare by default, but this not limit to this RDB only, you can extend the class net.jackhare.sql.metadata.MetaDataRepository, for using other RDB as you like :)

\3. How do I pass the noSQL bound parameters via JackHare ?

You can use java.sql.DriverManager.getConnection method to create java.sql.Connection, and also put your noSQL bound parameters with Properties object.

Connection conn = null;
Properties props = new Properties();
props.setProperty("user", USER_NAME);
props.setProperty("password", PASSWORD);
//sample for passing noSQL bound parameter
props.setProperty("hbase.client.scanner.caching", "20000");
conn = DriverManager.getConnection(CONNECTION_STRING, props);

Related

Wiki: Home