2017-06-22 20 views
0

SAP BWインフォプロバイダのデータがHDFSに書き込まれています。今、私はそのデータをVora 1.3での報告に利用できるようにしようとしています。SAP Voraテーブルの列のスラッシュ(/)文字

私は、ボラツールSQLコンソールでステートメントを実行しようとし始めている:

CREATE TABLE F002_5_F (calyear string, 
    calmonth string, 
    /bic/zfiscweek string, 
    doc_currcy string, 
    co_area string, 
    /bic/zbillamt decimal(17,2), 
    ......) 
USING com.sap.spark.vora 
OPTIONS (..... 

と実行時にボラは、「/ BIC /」の部分を含む名前のフィールドのラインの構文エラーを報告します。回避策として、フィールド名を引用してみました。 "/ bic/zfiscweek"しかし、Voraは "USING com.sap.spark.vora"という行に構文エラーを報告しました。

"/"文字を持つフィールド名をVoraモデリングで扱う方法についてのコメントはありますか?

+0

ただ、ボラ1.4でこれを試してみました。 HiveとSpark SQLでサポートされていても、 "/"文字はまだサポートされていません。真剣にも、これは大きな機能のギャップです。私は顧客の側のBWアーキテクトがこれを不信に笑っているのを見ました。彼らは、BW社の企業のメモリデータをVoraに転送するようになり、これが修正されるまでこれを行うことはできません。 @FrankLegler – Roman

答えて

0

引用符付きの列名はサポートされていません。列名が有効なSQL識別子になるようにスラッシュ「/」を別の文字に置き換える必要があります。

+0

SAP BWアーカイブプロセス(Hadoop上のNLS)によって生成されたORCファイルからデータをロードするはずですが、フォワードスラッシュを何かに置き換える選択肢はありません。これはVoraの機能的なギャップのようです。 – Roman

0

バックテックで列名を囲んでみてください。

CREATE TABLE SLASHTABLE (`/A1` double, `/A2` int, `/A3` string) 
USING com.sap.spark.vora 
OPTIONS (files "/user/vora/test.csv"); 

これはまた、SELECTクエリで動作します。私はそれが働いてしまったよう

SELECT `/A1` from SLASHTABLE; 
関連する問題