0

私はkafka-connectを使用して、プロセス中にハイブ統合を使用してHDFSにデータをストリーミングしようとしました。kafka-connectを使用した複数のハイブパーティション

私の使用例では、「FieldPartioner」をパーティショナークラスとして使用する必要があります。

私の問題は、複数のパーティションを取得できないということです。

例:

私の例JSON

{ 
    "_id": "582d666ff6e02edad83cae28", 
    "index": "ENAUT", 
    "mydate": "03-01-2016", 
    "hour": 120000, 
    "balance": "$2,705.80" 
} 

私は 'MyDateに該当' と '時間' に基づいてパーティションを持つようにしたい

私は次のように

name=hdfs-sink 
connector.class=io.confluent.connect.hdfs.HdfsSinkConnector 
tasks.max=1 
topics=fieldPartition_test_hdfs 
hdfs.url=hdfs://quickstart.cloudera:8020 
flush.size=3 

partitioner.class=io.confluent.connect.hdfs.partitioner.FieldPartitioner 
partition.field.name={mydate,hour} 

locale=en 
timezone=GMT 

hive.database=weblogs 
hive.integration=true 
hive.metastore.uris=thrift://quickstart.cloudera:9083 
schema.compatibility=BACKWARD 
を試してみました

partition.field.nameを

と指定して試してみましたの
partition.field.name={'mydate','hour'} 

partition.field.name=mydate,hour 

と、より多くのそのような組み合わせ

問題に関するすべてのヘルプは大

おかげでいただければ幸いです。

答えて

1

私はこれをあらゆる方法で試してみましたが、後でソースコードを掘り下げ始めました。

FieldPartitonerのコードはhereです!

そして、ここでのファイルへの最後のコミットは、「3ヶ月前に元に戻すの支援マルチパーティションフィールド "を」

を示し君たちは他のソリューションを持っているなら、私に知らせてください。

関連する問題