Hive
CaptainDing
努力成为互联网行业的一名成功的技术人才!
展开
-
hive表增量更新到elasticsearch方案
1. 背景2. sql#!/bin/shversion_now=$(date -d"-2 day" +%Y-%m-%d)version_pre=$(date -d"-3 day" +%Y-%m-%d)hive -e "DROP TABLE IF EXISTS app.tmp_xz_jimi3_sku_description_delete"hive -e "CREATE TABLE app.tmp_xz_jimi3_sku_description_delete ASSELECT原创 2020-07-11 22:48:38 · 930 阅读 · 0 评论 -
hive小文件的问题弊端以及合并
小文件的弊端 1、HDFS中每个文件的元数据信息,包括位置大小分块信息等,都保存在NN内存中,在小文件数较多的情况下,会造成占用大量内存空间,导致NN性能下降; 2、在读取小文件多的目录时,MR会产生更多map数,造成GC频繁,浪费集群资源; 3、现在大数据平台文件总数超过30亿,单个NS文件数超过4亿的时候,读写性能会急剧下降,影响到所有读写该...原创 2019-11-13 10:10:33 · 1349 阅读 · 0 评论 -
查看Hive 表 所有信息
目录1. 查询创建表信息(show create table)2. 查询表的字段信息(desc)3. 查看表的详细属性信息(desc formatted)4. 查看表的delimiter信息(describe extended)5. 查看表的partitions信息(show partitions ) a.表不是partition表 b. 表有partitio...原创 2018-11-16 10:17:04 · 11283 阅读 · 0 评论 -
Hive表删除表部分数据
背景:1、hive表删除数据不能使用DELETE FROM table_name 中SQL语句2、hive表删除数据要分为不同的粒度:table、partition、partition内一、有partition表1. 删除具体partitionalter table table_name drop partition(partiton_name='value'))2. ...原创 2018-11-16 11:18:56 · 39631 阅读 · 2 评论 -
hive 表插入、导入数据
1. 向有分区的表插入数据 (1) 覆盖现有分区数据,如果没有该指定分区,新建该分区,并且插入数据INSERT OVERWRITE TABLE 库名.表名 PARTITION(dt='2018-09-12',name='Tom', ...)SELECT ... FROM 库名.表名 where...(2)向现有的分区插入数据 (之前的数据不会被覆盖)INSERT INTO ...原创 2018-12-21 17:30:24 · 5354 阅读 · 0 评论 -
向hive表插入数据如何自动分区
首先强调一下,分区的名称不能是中文,只能是英文!不然会报错。 1. 本地文件导入到分区表LOAD DATA 【LOCAL】 INPATH ‘....’ 【OVERWRITE】 INTO TABLE t1 【PARTITION (...)】 eg: load data local inpath '/usr/local/data/user' into table jiuye par...原创 2018-12-11 15:50:03 · 4103 阅读 · 0 评论 -
Hive表数据出库到elasticsearch(ES)速度
项目背景 每天需要批量更新商品属性相关的数据用来检索,由于数据量比较大,每天的数据都是上亿量级的记录,考虑到检索速度的要求,选用ES来检索。但是数据都是在hadoop上,索引用hive到同步到ES的技术来完成。此篇主要是对任务完成速度的介绍图1是hive同步的任务,一共6个任务,上面有任务开始时间、结束时间。图2是ES集群的监控,监控数据插入到ES的速度。下面结合这两幅图简要对数据...原创 2019-09-05 10:05:00 · 1158 阅读 · 0 评论