
hive
mtj66
这个作者很懒,什么都没留下…
展开
-
hive分区锁问题导致insert overwrite table 卡死
hiveshow locks ;可以展示表以及分区级别的锁show locks table_name; 展示表级别的锁当分区写数据异常失败之后,采用unlock table table_name;并不能解决insert overwrite table partition卡死问题采用show locks,结果如下示例:7 db_name@table_name S...原创 2020-05-06 18:36:40 · 1620 阅读 · 0 评论 -
Hive文件存储格式 :Parquet sparksql ,impala的杀手锏
Hive文件存储格式1.textfiletextfile为默认格式存储方式:行存储磁盘开销大 数据解析开销大压缩的text文件 hive无法进行合并和拆分2.sequencefile二进制文件,以的形式序列化到文件中存储方式:行存储可分割 压缩一般选择block压缩优势是文件和Hadoop api中的mapfile是相互兼容的。3.rcfile存储方式:数据按行分块 每原创 2017-01-01 22:50:40 · 6291 阅读 · 0 评论 -
hive下UDF函数的使用
hive下UDF函数的使用 1、编写函数package com.example.hive.udf; import org.apache.hadoop.hive.ql.exec.UDF; import org.apache.hadoop.io.Text; public final class LowerCase extends UDF { public Text evaluate(fin原创 2016-09-08 23:49:55 · 1226 阅读 · 0 评论 -
superset + KYLIN + HIVE AND IMPALA
# kylin SQLAlchemy URI kylin://ADMIN:XXXXXXXXXX@qing-spark-srv4:7070/learn_kylin # impala SQLAlchemy URIimpala://qing-spark-srv4:21050/test Extra engine_params { "metadata_params": {}, "eng...原创 2018-04-20 13:59:27 · 2031 阅读 · 0 评论 -
hive string 转数组:抽取数组中的key 然后列转行
-- | 1110 | [{"content":"全部内容。" }, { "content":"无其它特别约定。"}] | select id,concat_ws('||',collect_set(content)) as contents from ( select id, get_json_object(cl,'$.content') as content from ( select id,...原创 2018-06-28 21:18:34 · 21851 阅读 · 0 评论 -
当left outer join 的时候,你应该选择on 还是where
select a.* from a left outer join b on a.id = b.aidleft outer join c on a.id = c.cid -- and c.code = b.code -- where c.code=b.code ; 其中 c.code=b.code 在left join的时候回保留a中的空值但是放到where中 c或者是d的code在left jo...原创 2018-07-06 10:03:05 · 4586 阅读 · 0 评论 -
有没有 更简便的根据最大值和最小值的差值 等距分组的方法
分组的小技巧,不知道有没现成的函数可以计算出来各自对应的分组select policy_id ,reserve_amount_first ,min_coins_indemnity_fee ,max_coins_indemnity_fee,round((reserve_amount_first-min_coins_indemnity_fee + line_space/10)/(lin...原创 2018-12-13 16:33:32 · 1275 阅读 · 0 评论 -
sql 采样
方式1. 随机采样,抽取百分之5 的数据 rand(id)<0.05-- 随机采样-- create table tmp_info_ycf as-- select * from info_ycf where rand(policy_id )< 0.03 limit 20000 ;-- ;方式2. 根据某个字段进行统计,数据尽量均匀,create table...原创 2019-02-28 11:43:44 · 3770 阅读 · 0 评论 -
基于Solr的Hbase二级索引
关于Hbase二级索引HBase 是一个列存数据库,每行数据只有一个主键RowKey,无法依据指定列的数据进行检索。查询时需要通过RowKey进行检索,然后查看指定列的数据是什么,效率低下。在实际应用中,我们经常需要根据指定列进行检索,或者几个列进行组合检索,这就提出了建立 HBase 二级索引的需求。二级索引构建方式:表索引、列索引、全文索引表索引是将索引数据单独存储为一转载 2017-11-10 14:17:09 · 594 阅读 · 0 评论 -
hive中if和coalesce 去除null值,case when
ref http://blog.youkuaiyun.com/mtj66/article/details/52629876###################################### if usageselect * from (select *,if (b.name is null ,true,false ) as bo from test1 a left join test2原创 2017-11-08 13:47:51 · 5049 阅读 · 0 评论 -
flatMap功能不只是wordcount,不知不觉用flatmap实现了hive的自带函数explode功能
// 不知不觉用flatmap实现了hive的自带函数explode功能。import org.apache.spark.SparkConfimport org.apache.spark.SparkContextimport org.apache.spark.sql.SQLContextimport org.apache.spark.sql.RowFactoryimport org...原创 2016-10-17 11:24:00 · 1584 阅读 · 0 评论 -
sparksql 过滤出null值
过滤出空的值 : by_car_score_id.filter("type is not null") by_car_score_id.filter("type is null")下面的方法试了可是不行:df.where(df.col("type").isNull()) df.where(df.col("type").isNotNull())df.filter(d原创 2016-10-17 18:00:59 · 12721 阅读 · 0 评论 -
使用hive来分析flume收集的日志数据
flume学习(六):使用hive来分析flume收集的日志数据转自:http://blog.youkuaiyun.com/xiao_jun_0820/article/details/38119123前面已经讲过如何将log4j的日志输出到指定的hdfs目录,我们前面的指定目录为/flume/events。如果想用Hive来分析采集来的日志,我们可以将/flume/even原创 2016-12-18 13:24:16 · 481 阅读 · 0 评论 -
hive 各种join使用实例
hive (test)> CREATE TABLE tmp_a( > aID int, > aNum String > ) ;hive (test)> CREATE TABLE tmp_b( > bID int, > bName String原创 2016-12-31 11:48:31 · 5965 阅读 · 0 评论 -
hive优化之——控制hive任务中的map数和reduce
一、 控制hive任务中的map数:1. 通常情况下,作业会通过input的目录产生一个或者多个map任务。主要的决定因素有: input的文件总个数,input的文件大小,集群设置的文件块大小(目前为128M, 可在hive中通过set dfs.block.size;命令查看到,该参数不能自定义修改);2. 举例:a) 假设input目录下有1个文件a,大转载 2017-01-01 15:49:15 · 504 阅读 · 0 评论 -
Kylin实践之使用Hive视图
为什么需要使用视图 Kylin在使用的过程中使用Hive作为cube的输入,但是有些情况下,hive中的表定义和数据并不能满足分析的需求,例如有些列的值需要进行处理,有些列的类型不满足需求,甚至有时候在创建hive表时为了图方便,hive中的所有列都被定义成了string,因此很多情况下在使用Kylin之前需要对hive上的数据格式进行适当的修剪,但是使用alter tab转载 2017-03-03 11:00:25 · 595 阅读 · 0 评论 -
hive小表与大表join提升运行效率
问题描述:一小表 1000 row一大表 60w row方案一:在运行的时候发现会自动转为map join本以为会很快,但是只起了一个map ,join 的计算量 : 单机计算6 亿次,结果一直map 0% 最后运行 1800s 方案二:采用关闭map join :但是依旧会很慢 what,why? 因为mapper的数量还是太小了,并行度不够啊。Laun原创 2017-06-23 13:45:52 · 5858 阅读 · 1 评论 -
一文搞定数据仓库之拉链表,流水表,全量表,增量表
1. 全量表:每天的所有的最新状态的数据,2.增量表:每天的新增数据,增量数据是上次导出之后的新数据。3.拉链表:维护历史状态,以及最新状态数据的一种表,拉链表根据拉链粒度的不同,实际上相当于快照,只不过做了优化,去除了一部分不变的记录而已,通过拉链表可以很方便的还原出拉链时点的客户记录。4. 流水表: 对于表的每一个修改都会记录,可以用于反映实际记录的变更。 拉链表通常是对账户信原创 2017-09-18 15:09:07 · 42075 阅读 · 1 评论 -
hive 动态加载数据到指定分区,以及其他hive使用的技巧
hive修改分隔符:alter table tableName set SERDEPROPERTIES('field.delim'='\t'); hive根据数据创建分区,并且动态加载数据到分区insert into table device_status_log partition( date ) select `vin`,`obd_原创 2016-10-26 13:23:02 · 7579 阅读 · 0 评论