2017-02-07 12 views
0

ドリルとHbaseの初心者です。
私はHbase 1.2.1とDrill 1.9.0を両方とも組み込み(シングルホスト)設定にインストールしました。私はデフォルトパラメータでHBaseプラグインを有効にしました。Apache WHERE句を使用した場合のApacheドリルの空結果

私はに接続して取得するために、管理テーブルがあります。

SELECT CONVERT_FROM(row_key, 'UTF8') as key, 
     CAST(fogDecDB.Location.latitude AS FLOAT) as lat 
FROM fogDecDB LIMIT 10; 

私は、例えば、選択の種類を実行するためにWHEREステートメントを追加するときに問題がある

+-------------------------------------------------------------------+------------+ 
|        key        | lat  | 
+-------------------------------------------------------------------+------------+ 
| 00001e14dbf570471418f1c26384637a3154561bfc32062bbb416bedc165841d | 51.971  | 
| 0000c0ad64df90c8feebd4e191272413d01989c997d0e2aec34cf259f3207ddb | 52.276943 | 
| 00023c7cf936bd1933f8b0f690ae3f347d3fd3131278b4e0372d34dde9586b62 | 52.276943 | 
| 0003164d842b488a1a0d8572ae06b983ceb3a645f41531acfe4962ad7ede80a2 | 52.276943 | 
| 0003bd065e59d03f3907531279579025f49282a3aa1734d1c4d63df891420c58 | 52.1093 | 
| 0006963d79ccf3a71f086f77b26a4db7da09a77c8b2c523fc51e04df4087abbd | 52.1093 | 
| 00069cd1f16dde18f4b6944c81015e4f7113ae447c02743a903814c0e64bb2e8 | 52.1093 | 
| 00070d2b641fc506be01c4b0b15f102d01b43d34f0b98f054154d20ea1ad7aa1 | 52.1093 | 
| 0007fd3e7db369f258173e7d47c13f81e3cbb48ecf446dd6ad4fe49bda2abcf0 | 52.276943 | 
| 0009c8836878a0065a617ba066c5c6ba51a9e29d22c81a8df28be40352efd4bf | 52.1093 | 
+-------------------------------------------------------------------+------------+ 
10 rows selected (0.18 seconds) 

を与えますLAT> 52.0

を持つ行のみが、私は、次のコマンド

enter SELECT CONVERT_FROM(row_key, 'UTF8') as key, 
      CAST(fogDecDB.Location.latitude AS FLOAT) as lat 
     FROM fogDecDB 
     WHERE fogDecDB.Location.latitude>52 
     LIMIT 10; 

を行うには、空のテーブルを与える - 非常に奇妙な。

fogDecDB.Location.latitudeでもの文でもCASTを試しましたが、同じ結果です。

誰でも問題を明らかにしてください。私はもちろん運がないとたくさんのことを捜した。

事前に感謝します。

乾杯、

アンドレア

+0

コードを書式設定して読めるように時間を費やすことをおすすめします。現在の状態で私はあなたが提供しているものが不明です – Takarii

+0

コメントありがとう、コードの可視性が向上しました! –

答えて

0

私が問題と動作し、エラーの原因を特定している:私は選択しようとしているその列の

マイHBaseのスキーマは、実際には次のとおりです。

資本 "L" しかし

fogDecDB.Location.Latitute たとえ正しいものではなくても(Lexicographically/string matching with speech)、WHERE部分では何とか認識されなくなったとしても、ステートメントのSELECT部分​​で何らかの形で識別され、正しく解析されます。

この問題はDrillメーリングリストに報告されています。

関連する問題