The JSON schema files have the same information content as the model you’d build in “the POJO way” so you should be just fine.
Julian > On Jul 28, 2020, at 23:06, Andreas Eberhart <[email protected]> > wrote: > > Thanks for the pointers. We're building a system that lets you register > multiple DBs (SQL & NoSQL) and compose queries graphically. The plan is to > allow users to select some of the DBs and add them to a Calcite federation > which in turn shows up as another DB. For this use case, I'd prefer not > having to work with model files so we'll probably go with the Schema SPI / > POJO way. > > Cheers > > Andi > > >> Am Di., 28. Juli 2020 um 20:12 Uhr schrieb Julian Hyde < >> [email protected]>: >> >> I can’t quite tell whether Andreas wants to connect to Calcite via JDBC, >> or have Calcite’s adapter connect to a JDBC source. >> >> For the former, there is not much variation in connect string parameters >> available. Any of the parameters can be put into the “info” map or included >> as part of the URL. So, using the “lex” property as an example, >> >> info.set(“lex”, “JAVA”); >> >> is the same as adding >> >> “&lex=JAVA” to the connect string. >> >> For the latter, as Michael says, there is a lot of variation among >> adapters. >> >> Julian >> >> >>>> On Jul 28, 2020, at 7:31 AM, Michael Mior <[email protected]> wrote: >>> >>> 1) The options specified in the connection string are unique to the >>> specific adapter being used. >>> 2) Unfortunately, I don't believe such a summary exists. (Although >>> there is documentation on what can be in the model JSON file.) >>> 3) Configuring with the connecting string is fine where possible, but >>> some options cannot be configured this way. When you need to use one >>> of those options, it makes sense to move to a JSON configuration. >>> 4) No. Only simple options can be expressed as part of the connecting >>> string which may or may not be sufficient for your use case. >>> >>> -- >>> Michael Mior >>> [email protected] >>> >>> Le mar. 28 juil. 2020 à 04:01, Andreas Eberhart >>> <[email protected]> a écrit : >>>> >>>> Hi, >>>> >>>> I'm new in the Calcite Community (hope this is the right place to ask >> this >>>> kind of question). >>>> >>>> It found the following options to configure Calcite JDBC clients so far: >>>> >>>> This tutorial uses a JSON file: >>>> jdbc:calcite:model=src/test/resources/model.json >>>> https://calcite.apache.org/docs/tutorial.html >>>> >> https://github.com/apache/calcite/blob/master/example/csv/src/test/resources/model.json >>>> >>>> >>>> This StackOverflow answer uses options separated by semicolons directly >> in >>>> the JDBC URL: >>>> >> jdbc:calcite:schemaFactory=org.apache.calcite.adapter.csv.CsvSchemaFactory; >>>> schema.directory=/path/to/csv/files >>>> >> https://stackoverflow.com/questions/61695163/packaging-apache-calcite-csv-example-into-a-jdbc-driver >>>> >>>> >>>> The background page constructs schema pojos directly: >>>> https://calcite.apache.org/docs/ >>>> (I do not understand the purpose of the line "info.setProperty("lex", >>>> "JAVA")" in the code) >>>> >>>> Questions: >>>> >>>> 1) Are there other options? >>>> 2) Is there a summary of the different ways Calcite JDBC clients can be >>>> configured? >>>> 3) Is there a best practise? >>>> 4) Can every connection option be expressed in all mechanisms? >>>> >>>> Thanks! >>>> >>>> Andi >> >>
