問題タブ [apache-calcite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1301 参照

apache-calcite - apache calcite、jdbc api を使用しないクエリ

jdbc 接続を使用せずに apache calcite api raw を使用したいと思います。jdbc API は問題なく使用できますが、API を使用しようとすると null ptr 例外が発生します。私がこれまでに行ったことは次のとおりです。

しかし、これを実行すると

MyDataContext name=v0stashed

コンテキストから v0stashed を取得しようとしていることに注意してください。これはどうあるべきかわかりません。私が目にする唯一の CalcitePrepare.Context impl は、使用を避けようとしている CalciteConnection を使用するものです。また、方解石のドキュメントからコードのスニペットを取得しましたが、方解石 1.7 では古くなっています。

アイデア?

0 投票する
2 に答える
2552 参照

java - apache calciteは列名とテーブル名を区別します

SQL ステートメントで列名を変更する (テーブル名はそのままにする) シンプルなアプリを実装しています。ステートメントは として渡され、String変更されたものも として返されStringます。データベース接続は関係ありません。

これを実現するために、Apache Calcite の SQL パーサーを使用しています。SQL 文字列を に解析し、名前を変更した を作成する をSqlNode受け入れ、すべてを( を使用して) に書き戻します。SqlVisitorSqlNodeStringSqlNode.toSqlString()

SqlNode問題は、を受け入れながら、解析されたオブジェクトの列とテーブルの違いを見分ける方法がわからないことSqlVisitorです。どちらも として表されSqlIdentifier、同じ を持ちSqlKindます。したがって、が にSqlVisitorアクセスするSqlIdentifierと、それが列であろうとテーブルであろうと名前が変更されます。

例えば

に変更されます

SqlIdentifier与えられたものが列かテーブルかをどうやって見分けることができますか?

0 投票する
1 に答える
1103 参照

sql - SqlNode式(クエリではない!)をRelNodeに変換するにはどうすればよいですか?

0 投票する
2 に答える
119 参照

java - Mavenに特定のパッケージの2つの異なるバージョンをインストールするには?

私は 2 つの異なる DB に接続しており、それらの JDBC クライアントはどちらもパッケージを必要としorg.apache.calcite.avatica、1 つはバージョン 1.6 を使用し、もう 1 つはバージョン 1.8 を使用しているため、両方のバージョン (1.6 と 1.8) をインストールする必要があり、バージョンは1.8 はバージョン 1.6 と互換性がありません。1.6 ではなくバージョン 1.8 を使用している場合、次の例外がスローされました。

そして、Mavenはそのように使用するようには設計されていないようです。

では、この問題を解決するにはどうすればよいでしょうか。

0 投票する
1 に答える
274 参照

apache-calcite - アプリケーションで方解石 cassandra アダプターを使用する方法

Javaコードの方解石cassandraアダプタに関する例はありますか? 方解石サイトには sqlline の例しかありません。どうもありがとう

0 投票する
2 に答える
284 参照

kylin - Kylin - ロールアップとキューブによるグループ化

ROLLUP および CUBE 演算子を使用して、サンプル キューブを使用してデータを集計しようとしています。クエリを実行すると、次のエラー メッセージが返されます。

内部エラー: ルール OLAPAggregateRule の適用中にエラーが発生しました。args [rel#1246:LogicalAggregate.NONE.[](input=rel#1245:Subset#1.NONE.[],group={0, 1},groups=[{0 , 1}, {0}, {}],indicator=true,SUMOFPRICE=SUM($2))].

http://calcite.apache.org/docs/reference.htmlのドキュメントを使用してクエリを作成しています。

テスト クエリ:

キューブを使用しない単純なクエリ

a, b, sum(c) from (values (1, 2, 3, 4)) as t(a, b, c, d) group by rollup(a, b)

このクエリは期待される結果を返します

ROLLUP 演算子を使用した KYLIN_SALES テーブルを使用したクエリ

ロールアップ(seller_id、leaf_categ_id)によってkylin_salesグループからSumOfPriceとしてseller_id、leaf_categ_id、sum(price)を選択します

このクエリを実行すると、質問の冒頭で述べたエラーが返されます。

エラーが発生すると、Kylin ログには次のように表示されます。 麒麟丸太

0 投票する
2 に答える
1520 参照

java - CSV を使用して Calcite でストリーミングの例を作成する

データソースに CSV を使用して Calcite で基本的なストリーム プログラムを作成しようとしています。sqlline でクエリを実行できますが、プログラムで実行できません。私のコードは次のとおりです。

example.json

SORDERS.csv

SimpleQuery.java

最後に、calcite-core 1.8.0、net.sf.opencsv 2.3、calcite-avatica 1.6.0、calcite-linq4j 1.8.0、sqlline 1.1.9、hamcrest-core 1.3、com.github.stephenc.jcip の依存関係があります。 1.0-1 、commons-lang3 3.4、guava 19.0、およびインポートされた calcite-example-csv-1.9.0-SNAPSHOT (github バージョンの maven でパックしました)。

コードを実行しようとすると、次のようになります。

それを修正する方法についてのアイデアはありますか?

0 投票する
2 に答える
714 参照

sql-server - SQLサーバーに接続するCalcite

SQLサーバーに接続するためにCalciteを試しています。person テーブルからデータを取得するための非常に単純な例を実行しようとしています。

スキーマを使用しているコードは次のとおりです。

メインコードはこちら

SQLサーバーの設定はこんな感じ。サーバー - SPG DB - 部門スキーマ - dbo

問題:

  1. テーブルが見つからないため、スキーマを読み取っていないようです。
  2. リアルタイム SQL は多くの結合でより複雑になるため、方解石でのスキーマ作成を理解したいと思います。
  3. SQLサーバーに接続する最良の方法は何ですか. 正しい方向のコードの上にあります。

前もって感謝します。

リシ