0

次の Linux コマンドを使用しています。

hadoop jar phoenix-4.6.0-HBase-0.98-client.jar org.apache.phoenix.mapreduce.CsvBulkLoadTool --table TT --input /tmp/text.csv 

このコマンドは正常に機能しますが、csv ファイルからのデータは hbase テーブルにロードされませんが、データはインデックス テーブルに正常にロードされます (TT のインデックス テーブルの csv ファイルをインポートします)。

環境:</p>

HBASE 0.98.9

Hadoop 2.6.0

フェニックス 4.6-hbase-0.98

ケース 1:すべての列をカバーするインデックス

1)

CREATE TABLE example (
    my_pk bigint not null,
    m.first_name varchar(50),
    m.last_name varchar(50)
    CONSTRAINT pk PRIMARY KEY (my_pk))

2)

CREATE INDEX index_example on example(m.last_name ASC) include (m.first_name)
   or create index index_example on example(m.first_name,m.last_name)

3)

hadoop jar phoenix-4.6.0-HBase-0.98-client.jar org.apache.phoenix.mapreduce.CsvBulkLoadTool --table example --input /tmp/text1.csv --index-table INDEX_EXAMPLE

4)

select * from example

成功してデータを持っている

select * from index_example

成功してデータを持っている

テストケース: org.apache.phoenix.mapreduce.CsvBulkLoadToolIT.testImportWithIndex()

ケース 2:列のインデックスで覆われた部分

1)

CREATE TABLE example (
    my_pk bigint not null,
    m.first_name varchar(50),
    m.last_name varchar(50)
    CONSTRAINT pk PRIMARY KEY (my_pk))

2)

create index index_example on example(m.last_name ASC)

3)

hadoop jar phoenix-4.6.0-HBase-0.98-client.jar 
org.apache.phoenix.mapreduce.CsvBulkLoadTool --table example --input /tmp/text1.csv --index-table INDEX_EXAMPLE

4)

select * from example

成功しましたが、データがありません

select * from index_example

成功はデータを持っています

テストケース: org.apache.phoenix.mapreduce.CsvBulkLoadToolIT.testImportOneIndexTable()

4

1 に答える 1