hive 日常技巧】的更多相关文章

--删除表中重复数据 delete from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1) --建表 hadoop fs -put data.tx…
hive默认查询不会显示列名, 当一个表字段比较多的时候,往往看不出值与列之间的对应关系,对日常查错及定位问题带来不便,像下面这样. hive> >select * from example_table where dt='2012-03-31-02' limit 2; OK NULL    315103  2012-12-24_month NULL    10106   2013-01-07_day NULL    15368   2013-01-14_day NULL    356742 …
今天总结本人在使用Hive过程中的一些优化技巧,希望给大家带来帮助.Hive优化最体现程序员的技术能力,面试官在面试时最喜欢问的就是Hive的优化技巧. 技巧1.控制reducer数量 下面的内容是我们每次在hive命令行执行SQL时都会打印出来的内容: In order to change the average load for a reducer (in bytes): set hive.exec.reducers.bytes.per.reducer=<number> In order…
将set hive.limit.optimize.enable=true 时,limit限制数据时就不会全盘扫,而是根据限制的数量进行抽样. 同时还有两个配置项需要注意: 1.hive.limit.row.max.size    我理解这个是控制最大的抽样数量 2. hive.limit.optimize.limit.file 我理解这个是抽样的最大文件数量…
可以通过修改set hive.exec.parallel=true来修改并行度.如果job中并行执行的阶段增多,那么集群利用率会增加.…
批量注释: :<<COMMENT code COMMENT 循环: #!/bin/bash  for varible1 in {1..5}  #for varible1 in 1 2 3 4 5   do        echo "Hello, Welcome $varible1 times “   done   Linux 核数查询 # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理…
1.日期格式转换(将yyyymmdd转换为yyyy-mm-dd) select from_unixtime(unix_timestamp('20180905','yyyymmdd'),'yyyy-mm-dd') 2..hive去掉字段中除字母和数字外的其它字符 select regexp_replace(a, '[^0-9a-zA-Z]', '') from tbl_name 3.hive解析json字段 content字段存储json {"score":"100"…
一. 先上干货 解决问题 1.1 安装工具alsa-tools-gui sudo apt-get install alsa-tools-gui 1.2 通过hdajackretask设置 直接执行命令,然后在图形界面中操作, 将“Green headphone, Front side” 选中Override, 并设置为“Not connected”, 然后选择 “Apply Now”, 之后就没有这个烦恼的问题了. hdajackretask 如下图: 二.问题描述 2.1 问题版本Ubuntu…
[背景]: 配置Ubuntu 虚拟机双网卡,一个是Host-Only网络,一个是桥接网络.当在虚拟机中同时连接到两个网络后,虚拟机能够ping通内部网络,不能ping通外部网络,如www.baidu.com.…
其实就是from表时,可以插入到多个表. sql语句的模板如下: from history insert overwrite sales select * where actino='purchased' inesrt overwrite credits select * where action = 'returened';…
jupyter notebook 本地开启jupyter,画图需打开限制:jupyter notebook --NotebookApp.iopub_data_rate_limit=2147483647 不显示警告:import warnings  warnings.filterwarnings("ignore”) Pandas 选择列:data.loc[:,['column1','column2']] 多列groupby,分列操作:df.groupby('A').agg({'B': ['min'…
hive在大数据套件中占很的地位,分享下个人经验. 1.在hive日常开发中,我们首先面对的就是hive的表和库,因此我要先了解库,表的命名规范和原则 如 dwd_whct_xmxx_m 第1部分为表数据仓库分层:可能取值为ods,dwd(dw明细层),dws(dw汇总层),ads(应用层)等. 第2部分为业务领域 可能为whct(文化传统),whcp文化产品等. 第3层为用户自定义标签 比如项目信息为xmxx,用户可以可以自己定义业务,项目和产品标签 第4层为时间标签:比如d为天,m为月,y为…
目录 课程大纲(HIVE增强) 3 1. Hive基本概念 4 1.1 Hive简介 4 1.1.1 什么是Hive 4 1.1.2 为什么使用Hive 4 1.1.3 Hive的特点 4 1.2 Hive架构 5 1.2.1 架构图 5 1.2.2 基本组成 5 1.2.3 各组件的基本功能 5 1.3 Hive与Hadoop的关系 6 1.4 Hive与传统数据库对比 6 1.5 Hive的数据存储 6 2. Hive基本操作 7 2.1 DDL操作 7 2.1.1 创建表 7 2.1.2…
郑昀(微博:http://weibo.com/yunzheng) 去年在上市前后,我不止一次跟大家说过如下内容: 我们这帮兄弟第一精通业务,第二有丰富的战斗经验和规范,你们都是中流砥柱,都要带兵打仗. 我还希望大家要有“舍我其谁”的精英意识: 我们的干部终有一天将成为领军者,组团单干,过去有不少员工离开后成为创业公司的技术合伙人,大家都需要随时随地构建专业技术形象. 什么是专业技术形象? 爱惜羽毛,珍惜自己的职场形象和职场荣誉. 很多很多年前,我离开掌上灵通之后,交接者打电话给我说:你走了,才发…
我先说一下ubuntu和windows双系统安装的几种方法,最后总结kali linux的安装,想起什么写什么,所以有点乱.然后记录一下自己的使用过程中遇见的问题和解决的方法,还有我的个人建议. 我个人安装的是目前最新的ubuntu16.04LTS.windows是10.kali linux是2.0. 首先比较一下虚拟机和双系统,我以前一直用的是虚拟机,因为觉得虚拟机可以保存快照,很方便,也可以在windows和ubuntu中方便的切换,开始用VMVare很卡,后来用virtualbox,虽然不…
数据倾斜是指,map /reduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时间很长,这是因为某一个key的条数比其他key多很多(有时是百倍或者千倍之多),这条key所在的reduce节点所处理的数据量比其他节点就大很多,从而导致某几个节点迟迟运行不完. 阿里的这篇比较实用,通俗易懂:数据倾斜总结 http://www.tbdata.org/archives/2109 有篇分析比较详细,如果需要使用可以细读:http://blo…
C# C#中 Thread,Task,Async/Await,IAsyncResult 的那些事儿!https://www.cnblogs.com/doforfuture/p/6293926.htmlAsp.net缓存技术(HttpRuntime.Cache)https://www.cnblogs.com/fengxuehuanlin/p/5358219.htmlCache及(HttpRuntime.Cache与HttpContext.Current.Cache)https://www.cnbl…
表关系的实现   预备知识 ORM的正向操作和反向操作: 1.正向操作:一个模型中定义了一个外键,通过该模型对该外键操作的操作叫做正向操作. 2.反向操作:被外键所关联的模型,通过该模型对外键所在模型的操作叫做反向操作.   表关系的操作 我们通过下面的案例,来了解表关系的操作 首先我们需要几张表:学生表,学生信息表,班级表,报名表,课程表 他们的关系是:学生表和学生信息表  一对一 班级表和学生表         一对多 学生表和课程表         多对多 下面是Django 模型代码:…
Nginx日常维护技巧 Nginx配置正确性检查 nginx提供了配置文件调试功能,可以快速定义配置文件存在的问题.执行如下命令检测配置文件的正确性: [root@localhost 桌面]# which nginx /usr/local/nginx/sbin/nginx 我把nginx命令的路径写入到PATH里面,所以在执行nginx这条命令的时候我就不需要写绝对路径: [root@localhost 桌面]# nginx –t                                 …
日常运维管理技巧一(查看负载 W) 今天针对Linux系统管理做一个专题的记录,以后会用的几率也是很大的,只要掌握必备的基础知识,做初级系统管理员是不成问题的. 作为一个运维工程师.系统管理员,如果对自己的系统不了解的话,那怎么排查问题呢?如果出现问题的话,肯定要查一下是什么问题,哪里的问题,系统的资源的耗费情况如何查看. 一.使用w命令查看当前系统的负载 1.1 系统时间查看,使用date命令也可以查看当前时间 1.2 系统运行时间,uptime 1.3  登陆了几个用户 从上面可以看到登录了…
hive中select中DISTINCT的技巧和使用 单表的唯一查询用:distinct 多表的唯一查询用:group by 在使用MySQL时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重复记录的所有值.其原因是distinct只能返回它的目标字段,而无法返回其它字段,用distinct不能解决的话,我只有用二重循环查询来解决,而这样对于一个数据量非常大的站来说,无疑…
Hive的配置详解和日常维护 一.Hive的参数配置详解 1>.mapred.reduce.tasks  默认为-1.指定Hive作业的reduce task个数,如果保留默认值,则Hive 自己决定应该使用多少个task. 2>.hive.mapred.mode  2.x下的默认值为strict,1.x以及之前的版本默认值为nonstrict.如果 设为strict,Hive将禁止一些危险的查询:分区表未用分区字段筛选: order by语句后未跟limit子句:join后没有on语句从而形…
Shell提供了很多字符串和文件处理的命令,如awk.expr.grep.sed等命令,还有文件的排序.合并和分割等一系列的操作命令.下面重点总结下Shell字符串处理.文本处理以及各类命令及函数用法. 先从expr命令开始梳理,expr 引出通用求值表达式,可以实现算术操作.比较操作.字符串操作和逻辑操作等功能. 1) 计算字符串长度字符串名为string,可以使用命令 ${#string} 或 expr length ${string} 两种方法来计算字符串的长度.若string中包括空格,…
date: 2019-03-22 17:02:37 updated: 2020-04-08 16:00:00 Hive Sql的日常使用笔记 1. distinct 和 group by distinct 只能返回去重的列 group by 理论上是需要在 select 后面配合聚合函数(sum, avg, max, min, count)来使用的 select 后面没有在聚合函数中的列都需要写在 group by 的后面,eg: select A1, A2, A3, max(B) from t…
日常使用mobx的小技巧 由于自己开发的项目都是中小型项目,所以在技术选型上使用了mobx.但是使用过程中发现关于mobx的技术文章并不多.于是萌发出写这篇文章的想法.请轻喷. 更新控制store渲染的方法 mobx一些有关资料 中文文档 github仓库 npm地址 添加mobx npm i mobx npm i mobx-react mobx用来操作store(也就是数据操作层,model层),而mobx-react则是用来操作view(也就是视图层,Component层). mobx常用操…
配置启动时的登录用户名和密码 这是个有争议的功能,因为记住密码会给带来数据安全的问题. 但假如是开发用的库,密码甚至可以和用户名相同,每次输入密码实在没什么意义,可以考虑让PLSQL Developer记住密码. 1.如果只登录一个数据库,用户名密码都是固定的,可以修改执行程序的快捷方式: 在桌面上建立plsqldev的快捷方式,然后点击右键,打开属性对话框,在目标后的文本框中输入: "D:\Program Files\PLSQL Developer\plsqldev.exe" use…
一. 常用操作 常用的操作如查看.复制.移动.删除退出已经在Total Commander下方列出,选择好文件后单击相应的按钮或是按下相应的快捷键(F3~F7)就可以完成操作.也可以像Windows中那样用鼠标拖动完成,用左键直接在两个窗口间拖运是复制,用右键可以像资源管理器中一样先拖动 后选择自己的操作. 二. 目录切换 1)在每一个文件窗口的右上方有两个按钮,"\"按钮转入根目录(快捷键Ctrl + \),".."按钮到上一级目录(快捷键Back Space).…
使用Hive可以高效而又快速地编写复杂的MapReduce查询逻辑.但是一个”好”的Hive程序需要对Hive运行机制有深入的了解,像理解mapreduce作业一样理解Hive QL才能写出正确.高效的HQL.长期观察hadoop处理数据的过程,有几个显著的特征: 1.不怕数据多,就怕数据倾斜. 2.对jobs数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联多次汇总,产生十几个jobs,没半小时是跑不完的.map reduce作业初始化的时间是比较长的. 3.对sum,cou…
转自:http://www.vaikan.com/linux-shell-tips-and-tricks/ 原文:http://www.techbar.me/linux-shell-tips/ 使用Linux shell是一些程序员每天的基本工作,但我们经常会忘记一些有用的shell命令和技巧.当然,命令我能记住,但我不敢说能记得如何用它执行某个特定任务.需要注意一点的是,有些用法需要在你的Linux系统里安装额外的软件. Trim http or https from URL variable…
高效管理服务器一直离不开有效的服务器管理技巧,尽管你已经掌握了不少这方面的技巧,但服务器还有许许多多的技巧在等着你的总结,等着你的挖掘;这不,下面的一些服务器管理窍门就是笔者在最近的工作中总结出来的,相信有不少是你很少遇到过的! 拒绝服务器重新启动 一般情况下,在Windows 2003 Server系统中安装完补丁程序后,系统总会提示你要重新启动一下服务器.可是许多急性子的朋友,他们往往无法容忍Windows 2003 Server服务器"慢吞吞"的启动操作,于是希望打完安全补丁之后…