Help us understand the problem. What is going on with this article?

Hiveのパーティションを10分単位で切るときのFlume設定

More than 1 year has passed since last update.

Flumeのバージョンは1.8.0を想定。
公式リファレンスにも例が載っているが、sinkの設定で日付の丸めに関わるパラメータを設定する。
https://flume.apache.org/FlumeUserGuide.html

HDFS Sinkの場合 (external tableの作成時)

hdfs.round, hdfs.roundValue, hdfs.roundUnitの3つを設定する。以下、エージェントa1における設定例。

a1.sinks.k1.hdfs.round = true
a1.sinks.k1.hdfs.roundValue = 10
a1.sinks.k1.hdfs.roundUnit = minute

hdfs.round (デフォルトfalse) をtrueにすることで日付の丸め (round downするとあるので日本語的には切り捨てが正しいか) を有効化する。
hdfs.roundValueを10にすることでtimestampの切り捨て値を10にする。
hdfs.rountUnitをminuteにすることでtimestampの切り捨て単位を分にする。

これで、10分単位で切ったパーティションのフォルダに転送を設定できる。

a1.sinks.k1.hdfs.path = /flume/events/%y-%m-%d/%H%M

Hive Sinkの場合

round, roundValue, roundUnitを設定する。以下、エージェントa1における設定例。

a1.sinks.k1.round = true
a1.sinks.k1.roundValue = 10
a1.sinks.k1.roundUnit = minute

それぞれ、HDFSの場合と同様である。
パーティションは以下のように記述する。

a1.sinks.k1.hive.partition = asia,%{country},%y-%m-%d-%H-%M
Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away