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