2

ハイブテーブルを作成し、固定オフセットを介して値を分離することは可能です。たとえば、ファイル: col1 col2 col3 この場合、1 ~ 4 文字が表の最初の列、5 ~ 8 文字が 2 番目の列、8 ~ 12 文字が 3 番目の列になります。

どうもありがとう!

4

2 に答える 2

3

ストリーミングと python を回避することもできますが、これらすべてをアプローチに従って行うこともできますが、hive substr() を使用します。

CREATE TABLE IF NOT EXISTS input_raw(line STRING);

LOAD DATA LOCAL INPATH '${hiveconf:input}' OVERWRITE INTO TABLE input_raw;

CREATE TABLE IF NOT EXISTS processed_data(
field1 STRING,
field2 STRING
field3 STRING);

INSERT INTO TABLE processed_data
SELECT
substr(line,1,4) as field1,
substr(line,5,4) as field2,
substr(line,9,4) as field3
FROM input_raw;

DROP TABLE input_raw;
于 2013-03-07T06:21:01.760 に答える