
hive
明月不归尘
这个作者很懒,什么都没留下…
展开
-
2020-12-16
spark-sql 读取hive报出Caused by: java.lang.NullPointerException**20/12/16 14:37:27 ERROR SparkSQLDriver: Failed in [select student_id from tmp.tmp_user_device_log_info_temp where dt = '2020-10-02' limit 10]java.lang.RuntimeException: serious problem** at or原创 2020-12-16 14:59:01 · 497 阅读 · 0 评论 -
linux ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES) 安装mysql
一般这个错误是由密码错误引起,解决的办法自然就是重置密码。我使用的是root账户。1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:#vi/etc/my.cnf在[mysqld]后面第一行添加“skip-grant-tables”用来跳过密码验证的过程保存文档并退出:#:wq2.接下来我们需要重启MySQL:/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)3.重启之后...原创 2020-07-25 23:20:40 · 458 阅读 · 0 评论 -
Hive中关于日期函数使用
1.时间戳函数 日期转时间戳:从1970-01-01 00:00:00 UTC到指定时间的秒数 获得当前时区的UNIX时间戳: select unix_timestamp(); 1533716607将指定的时间转为UNIX时间戳 :select unix_timestamp('2018-08-08 16:22:01'); 1533716521将指定的时间转为UNIX时间戳: sele...原创 2018-08-08 16:43:41 · 5490 阅读 · 0 评论 -
hive函数大全
hive的内置方法很多,特被容易忘,记录在次方便使用。 1.内置运算符 1.1关系运算符 运算符 类型 说明 A = B 所有原始类型 如果A与B相等,返回TRUE,否则返回FALSE 。 A <> B 所有原始类型 如果A不等于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。 A != B 所有原始类型 如果A不等于B返回TRU...转载 2018-08-02 11:18:50 · 582 阅读 · 0 评论 -
Hive修改表语句
1.ALTER TABLE table_name RENAME TO new_table_name; 上面这个命令可以重命名表,数据所在的位置和分区都没有改变。2:改变列名/类型/位置/注释1.ALTER TABLE table_name CHANGE[CLOUMN] col_old_name col_new_name column_type[CONMMENT col_conmment]...转载 2018-08-09 15:42:52 · 2105 阅读 · 0 评论 -
hive 和spark sql 中日期相关使用技巧(一)
hive 和spark sql 中日期相关使用技巧 常用日期/时间相关字段、类型、及示例:类型包括:BIGINT,TIMESTAMP和STRING 下面是这几种类型之间相互转换的方法:BIGINT转TIMESTAMP:from_unixtime(time/1000) TIMESTAMP转BIGINT:unix_timestamp(time)*1000 BIGINT转STRING(y...原创 2018-07-30 13:11:17 · 3141 阅读 · 0 评论 -
sparksql减少输出数据中的小文件数量
由于项目中开发用到sparksql ,将一个大表的数据查询后插入到另一种表中,此时数据令也不是太大,但是产生了200多个小文件,占用namenode资源,为了改善该情况使用,将hive中的表加载为一个df,然后重新分区+缓存+注册为临时表,在进行查询,插入操作,此时文件为20个关键代码如下:...........val aDF =hiveContext.原创 2017-11-30 14:19:53 · 9050 阅读 · 0 评论 -
Hive动态分区需要注意的参数
使用Hive动态分区需要注意设定以下参数:1.是否开启动态分区功能,默认false关闭。 默认值:falsehive.exec.dynamic.partition =false使用动态分区时候,该参数必须设置成true;hive.exec.dynamic.partition =true2.动态分区的模式: 默认值:stricthive.exec.dynamic.part...原创 2018-07-05 16:56:17 · 1835 阅读 · 0 评论 -
hive表的建表语句批量获取
有时hive中的一个数据库中有大量的表,对表的建表语句备份就显得重要和麻烦了,但是是使用hive的命令和shell脚本会很容易实现1.导出所有表的名称(可以指定数据库名称)hive -e "use dbName;show tables;" &gt; tablesName.txt2.使用hive内置语法导出hive表的建表语句,这里使用的是一个shell#!/bin/bash ...原创 2018-07-05 15:44:47 · 4570 阅读 · 0 评论 -
Hive计算引擎的切换方法
1、配置mapreduce计算引擎set hive.execution.engine=mr;2、配置spark计算引擎set hive.execution.engine=spark;3、配置tez 计算引擎set hive.execution.engine=tez;原创 2018-07-05 15:28:16 · 15668 阅读 · 0 评论 -
Hive外部表误删后的恢复
Hive中的外部表是比较安全的一种数据管理方式,有时也会误删使用外部表有一个很好的好处,如果不小心将表误删了,只需要重新创建外部表然后使用下面的语句修复分区即可。MSCK REPAIR TABLE table_name;...原创 2018-03-01 15:56:55 · 4201 阅读 · 0 评论 -
更新HIVE表格的简单方法
第一部分,用于如何更容易地更新Hive表从历史上看,在Apache Hive中保持数据最新,需要定制应用程序开发,这是复杂的,非高性能的,难以维护的。HDP 2.6通过在Hive中引入SQL MERGE从根本上简化了数据维护,补充了现有的INSERT,UPDATE和DELETE功能。这个博客展示了如何解决常见的数据管理问题,包括:Hive插件,将Hive数据与源RD翻译 2017-12-16 15:37:51 · 5562 阅读 · 1 评论 -
更新HIve表的简单方法2
这是系列的第二部分。管理缓慢变化的维度在第1部分中,我们展示了使用SQL MERGE,UPDATE和DELETE更新Hive中的数据是多么容易。让我们把事情做好,看看Hive中用于管理缓慢变化维度(SCD)的策略,这些维度可以让您随时分析数据的整个变化。在数据仓库中,缓慢变化的维度(SCD)捕获的数据在不规则和不可预知的时间间隔内变化。根据不同的业务需求,管理SCD翻译 2017-12-16 17:07:47 · 9829 阅读 · 0 评论 -
spark sql 中的细节,判断字段是否为null
开始用的 是'字段'=null'字段'!=null执行后的的数据表中没有数据后改为'字段' is null'字段' is not null执行的结果正确自己真是记性差.........原创 2017-12-13 10:34:50 · 20964 阅读 · 2 评论 -
Hive四种数据导入方式
Hive的几种常见的数据导入方式这里介绍四种:(1)、从本地文件系统中导入数据到Hive表;(2)、从HDFS上导入数据到Hive表;(3)、从别的表中查询出相应的数据并导入到Hive表中;(4)、在创建表的时候通过从别的表中查询出相应的记录并插入到所创建的表中。一、从本地文件系统中导入数据到Hive表先在Hive里面创建好表,如下:转载 2017-12-11 15:18:18 · 347 阅读 · 0 评论