๐ปTech/๐HIVE17 [Hive,Impala] sqlํ์ผ ์คํํ ๋ ๋ณ์ ๋๊ธฐ๋ ๋ฐฉ๋ฒ โพ Hive hive 3.0๋ถํฐ๋ hiveconf ์ฌ์ฉ์ด ์ ๋ผ์ hivevar๋ฅผ ์ฌ์ฉํฉ๋๋ค. -hivevar ์ฌ์ฉ hive --hivevar dt=20190923 -f hive.sql -hive.sql ํ์ผ ๋ด์์ ๋ณ์ ๋ฐ๋ ๋ฐฉ๋ฒ (ํํฐ์ ์์ฑ ์์ ) ALTER TABLE dbnm.tblnm ADD PARTITION(dt='${hivevar:dt}'); โพ Impala impala-shell -k --var="dt=20230821" -f impala.sql 2023. 8. 21. hive/impala udf ๋ฑ๋ก ๋ฐฉ๋ฒ hdfs ํ์ผ ์ ๋ก๋ ํ impala, hive SQL์์ ๊ฐ๊ฐ function ์์ฑํด์ฃผ๊ณ , function์ด db ๊ธฐ์ค์ผ๋ก ์์ฑ๋๊ธฐ ๋๋ฌธ์, db๋ช ์๋ฅผ ํด์ค์ผ ํฉ๋๋ค. โพ Impala create function default.count_date(string) returns string location 'hdfs:///user/hive/udf/udf-0.1.0.jar' symbol='udf.count_date'; โพ Hive create function default.count_date as 'udf.count_date' using jar 'hdfs:///user/hive/udf/udf-0.1.0.jar'; 2023. 1. 16. [Hive] multi delimiter ํ ์ด๋ธ DDL create external table txt_test( a string, b string, c string, d string, e string ) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.MultiDelimitSerDe' WITH SERDEPROPERTIES ("field.delim"="|\001|") LOCATION 'hdfs://name/tmp/test'; 2023. 1. 11. [Hive] sequence ์ปฌ๋ผ ์์ฑ ๋ฐฉ๋ฒ ๐โ๏ธ ROW_NUMBER() OVER() ๊ตฌ๋ฌธ์ ์ฌ์ฉํด์ seq ๋ฒํธ๋ฅผ ์ ์ฅ ## ๊ธฐ์กด ํ ์ด๋ธ์์ seq ์ปฌ๋ผ์ ์ถ๊ฐํ ํ ์ด๋ธ ์์ฑ CREATE TABLE new_table( seq int, code string, description string, total_emp int, salary int ) STORE AS parquet; ## ๊ธฐ์กด ํ ์ด๋ธ์ ROW_NUMBER() OVER() ํฉ์ ์ฌ์ฉํด์ seq ์ปฌ๋ผ ์ถ๊ฐํ ๋ฐ์ดํฐ insert insert overwrite table new_table select * from ( select ROW_NUMBER() OVER() as RNUM, * from old_table) a where a.RNUM 2021. 4. 28. [Hive] metastore ์คํค๋ง ๋ฒ์ ์ ๊ทธ๋ ์ด๋ ์ฌ์ฉ ์ค์ด๋ hive ๋ฒ์ ์ ์ฌ๋ ธ์ ๋ metastore ์คํค๋ง๊ฐ ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ ์คํค๋ง๋ ์ ๊ทธ๋ ์ด๋ ํ์ํฉ๋๋ค. ์ ๊ทธ๋ ์ด๋ํ์ง ์์ผ๋ฉด hive ์๋น์ค ์คํํ ๋ ์๋์ ๊ฐ์ด ํด๋น ์ปฌ๋ผ์ ์ฐพ์ ์ ์๋ค๋ ์๋ฌ๊ฐ ๋ฐ์ํฉ๋๋ค. java.sql.BatchUpdateException: Unknown column 'DB_MANAGED_LOCATION_URI' in 'field list' ๐น ์ ๊ทธ๋ ์ด๋ ๋ฐฉ๋ฒ hive์์ ์ง์ํ๋ schemaTool์ ์ฌ์ฉํ์ฌ ์ ๊ทธ๋ ์ด๋ ์งํํด ์ค๋๋ค. โพ ๋ฒ์ ํ์ธ ๋ช ๋ น์ด hive --service schemaTool -url jdbc:mysql://[HOSTNAME]:3306/metastore -userName hive --passWord hive -dbType mysql -info.. 2020. 6. 2. [Hive] ํ ์ด๋ธ JSON ํฌ๋งท ์ฌ์ฉ ๋ฐฉ๋ฒ 1. JSON ๋ฐ์ดํฐ ํ์ธ 2. Hive ๋ฐ์ดํฐ๋ฒ ์ด์ค/ํ ์ด๋ธ ์์ฑ json ์ค์ฒฉ ๊ฐ์ฒด๊ฐ ์กด์ฌํ ๊ฒฝ์ฐ string์ผ๋ก ์ฒ๋ฆฌ json ์ปฌ๋ผ type ์ฃผ์ (arrary) - ์ปฌ๋ผ List type์ String์ผ๋ก ์ค์ ํด์ ์๋ ์๋ฌ๊ฐ ๋ฐ์ํจ. org.apache.hadoop.hive.serde2.SerDeException: java.io.IOException: Field name expected CREATE DATABASE IF NOT EXISTS db_nm; CREATE EXTERNAL TABLE IF NOT EXISTS db_nm.tb_nm ( repotype string, repo string, requser string, tags array ) PARTITIONED BY (dt string) ROW.. 2020. 3. 27. [Hive] ์ ์ session timeout ์ค์ hive.server2.idle.operation.timeout = 2h hive.server2.idle.session.timeout = 3h hive.server2.session.check.interval = 3600000 (1h) 2019. 11. 21. [Hive] ์ฟผ๋ฆฌ ์กฐํ์ ํํฐ์ ํ์ ์ ๋ ฅ ์ต์ hive ์ฟผ๋ฆฌ ์คํ ์ ํํฐ์ ์กฐ๊ฑด์ ์ฃผ์ง ์๊ณ ์คํํ ๊ฒฝ์ฐ YARN ์์์ ๋ง์ด ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ํด๋ฌ์คํฐ์ ๋ถํ๋ฅผ ์ค๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ์๋ฐฉํ๊ธฐ ์ํด hive ํํฐ์ ํ ์ด๋ธ ๊ฒฝ์ฐ where ๊ตฌ๋ฌธ ํ์ ์ ๋ ฅ ์กฐ๊ฑด์ ์ค์ ํ ์ ์์ต๋๋ค set hive.mapred.mode=strict 2019. 9. 30. ์ด์ 1 2 3 ๋ค์