[
https://issues.apache.org/jira/browse/CALCITE-1259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15305660#comment-15305660
]
Julian Hyde commented on CALCITE-1259:
--------------------------------------
Please review
https://github.com/julianhyde/calcite/commit/fe5b0009fdc03aeb255ee5ad86aff50978738a48.
> Allow connecting to a single schema without writing a model
> -----------------------------------------------------------
>
> Key: CALCITE-1259
> URL: https://issues.apache.org/jira/browse/CALCITE-1259
> Project: Calcite
> Issue Type: Bug
> Reporter: Julian Hyde
> Assignee: Julian Hyde
>
> Allow connecting to a single schema without writing a model. Currently, to
> use a SchemaFactory you need to write a model.json file, but with this
> feature, you could specify the same information as connect string parameters.
> Examples
> 1. JDBC (built-in). Instead of writing a model with
> {code}
> {
> type: 'jdbc',
> name: 'FOODMART',
> jdbcUser: 'FOODMART',
> jdbcPassword: 'FOODMART',
> jdbcUrl: 'jdbc:hsqldb:res:foodmart',
> jdbcSchema: 'foodmart'
> }
> {code}
> use the connect string {{jdbc:calcite:schema_type=jdbc;
> schema.jdbcUser=FOODMART; schema.jdbcPassword=FOODMART;
> schema.jdbcUrl='jdbc:hsqldb:res:foodmart'; schema.jdbcSchema=foodmart}}
> 2. Mongo (user-defined). Instead of writing a model with
> {code}
> {
> type: 'custom',
> name: 'mongo_raw',
> factory: 'org.apache.calcite.adapter.mongodb.MongoSchemaFactory',
> operand: {
> host: 'localhost',
> database: 'test'
> }
> }
> {code}
> use the connect string
> {{jdbc:calcite:schemaFactory=org.apache.calcite.adapter.mongodb.MongoSchemaFactory;
> schema.host=localhost; schema.database=test}}
> 3. Cassandra (user-defined). Instead of writing a model with
> {code}
> {
> type: 'custom',
> name: 'twissandra',
> factory: 'org.apache.calcite.adapter.cassandra.CassandraSchemaFactory',
> operand: {
> host: 'localhost',
> keyspace: 'twissandra'
> }
> }
> {code}
> use the connect string
> {{jdbc:calcite:schemaFactory=org.apache.calcite.adapter.cassandra.CassandraSchemaFactory;
> schema.host=localhost; schema.keyspace=twissandra}}
> You can supply any operand supported by the adapter, as long as you prefix
> its name with "schema.".
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)