プロセス中に、ハイブ統合をオンにして、kafka-connect を使用して HDFS にデータをストリーミングしようとしました。
私のユースケースでは、「FieldPartioner」をパーティショナー クラスとして使用する必要があります。
私の問題は、複数のパーティションを取得できないことです。
例:
私の例のJSON
{
"_id": "582d666ff6e02edad83cae28",
"index": "ENAUT",
"mydate": "03-01-2016",
"hour": 120000,
"balance": "$2,705.80"
}
「mydate」と「hour」に基づいてパーティションを作成したい
私は次のことを試しました
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
そして、より多くのそのような組み合わせ
この問題に関するヘルプは大歓迎です
ありがとう。