dairui130

导航

03 2019 档案

shell 命令之 jps
摘要:中华石衫老师说过,java是一个生态,几乎所有框架都对java 有很好的支持。 正是这句话,让我坚定了持续学习java的信念。 说回jps,jps是java 提供的,功能等于 的shell命令。作用是输出所有jvm的进程和进程号。可以方便查询所有jvm进程。 如下: 阅读全文

posted @ 2019-03-31 19:35 dairui130 阅读(597) 评论(0) 推荐(0)

python 读取hive数据
摘要:话不多说,直接上代码 部署时遇到一个问题: 解决方法是: 原因是某些包没有关联上,装包时,加上[hive]后缀 阅读全文

posted @ 2019-03-31 16:44 dairui130 阅读(7950) 评论(1) 推荐(0)

shell 命令 查看本机ip
摘要:结果有很多,查看env0的inet,就是本机的ip地址 阅读全文

posted @ 2019-03-27 15:07 dairui130 阅读(473) 评论(0) 推荐(0)

shell 命令 修改hosts文件
摘要:hosts文件管理http地址和物理ip地址的映射关系。 开发spring cloud 项目时,遇到不能连接服务器部署的zk问题。 排查后发现,是本地的hosts文件没有添加这台机器的ip映射关系。 添加的方法如下: 可以看到所有的映射关系, 另起一行,添加映射,注意ip和http地址之间用tab隔 阅读全文

posted @ 2019-03-27 15:00 dairui130 阅读(1503) 评论(1) 推荐(0)

shell 命令 mkdir -p
摘要:开发中我们会遇到嵌套创建文件目录的需要,这时需要用到 mkdir -p 比如我要在本地嵌套创建 /Users/dairui/Downloads/zookeeper/dataLogDir目录 直接使用 会报错,缺少zookeeper文件。 这时加上 -p参数 就可以嵌套创建了。创建好后,记得修改目录的 阅读全文

posted @ 2019-03-27 14:44 dairui130 阅读(1074) 评论(0) 推荐(0)

kettle学习
摘要:https://www.cnblogs.com/zxbzl/p/5853035.html 阅读全文

posted @ 2019-03-26 15:20 dairui130 阅读(86) 评论(0) 推荐(0)

调用azkaban接口,upload 本地zip文件
摘要:使用azkaban部署任务,可以将job文件打成zip包,通过web页面上传。 如图 但是当我们实践CI持续化部署的时候,要实现自动的部署上线。 这时就要调用azkaban提供的api。 地址如下:https://azkaban.github.io/azkaban/docs/latest/#ajax 阅读全文

posted @ 2019-03-26 10:13 dairui130 阅读(888) 评论(0) 推荐(0)

shell 命令 ls -a
摘要:接手其他人的shell脚本时,遇到了一个"."开头的文件目录, 始终找不到。 咨询了一下,才知道,"."开头的是隐藏文件。 这时候用 就可以显示全部的文件了。 阅读全文

posted @ 2019-03-25 16:37 dairui130 阅读(667) 评论(0) 推荐(0)

Gitlab 赋予某台机器git clone的权限 Deploy key
摘要:开发项目CI(持续化部署)的时候,需要赋予jeckins所在的机器从gitlab远程仓库克隆代码到本地的权限。 之前我们基本都是通过管理gitlab某个项目的成员的方式,管理gitlab的权限。 但是gitlab还支持另一种方式,赋予git clone的权限,就是配置Deploy key。 Depl 阅读全文

posted @ 2019-03-25 16:16 dairui130 阅读(4174) 评论(0) 推荐(0)

kettle学习
摘要:数据etl工具,主要用做数据采集和清洗 待续。。。 阅读全文

posted @ 2019-03-21 14:55 dairui130 阅读(117) 评论(0) 推荐(0)

CI、CD和dev-ops概念
摘要:传统的开发方式是:需求方提供文档,实现方按照文档一步步开发,中间很少变动和修改。 但是随着市场的变化,产品更新迭代的加快,也要求开放方更快的响应变化,用最短的时间开发,部署上线。 这样,持续集成(CI coutinuous integration),持续部署(continuous delivery) 阅读全文

posted @ 2019-03-21 13:40 dairui130 阅读(953) 评论(0) 推荐(0)

shell 命令 netstat 查看端口占用
摘要:查看 8888端口的占用情况 阅读全文

posted @ 2019-03-20 14:29 dairui130 阅读(2653) 评论(0) 推荐(0)

hive 修复分区、添加二级分区
摘要:我们在之前的文章中,介绍了二级分区,混合分区,静态分区,动态分区的区别和建表。 今天我们聊下,当我们建好分区表。并且通过程序在表的分区目录(location)下,写入了文件。 如何在hive中查询到插入的分区数据。 假如我们直接查表,会发现因为没有在表的元数据中加入新增的分区信息,导致查不到数据。 阅读全文

posted @ 2019-03-19 20:44 dairui130 阅读(2884) 评论(0) 推荐(0)

hive sql 查询一张表的数据不在另一张表中
摘要:有时,我们需要对比两张表的数据,找到在其中一张表,不在另一张表中的数据 hql 如下: 阅读全文

posted @ 2019-03-18 15:26 dairui130 阅读(6501) 评论(0) 推荐(0)

shell 命令 bc linux下的计算器
摘要:bc命令 在linux环境下的计算器。 阅读全文

posted @ 2019-03-18 14:49 dairui130 阅读(181) 评论(0) 推荐(0)

shell 命令 grep -v
摘要:grep -v shell命令中,grep命令,是对文本行的搜索命令。grep -v就是反向文本行搜索。 当控制台输出很多时,有很多是我们不想看到的,就可以用到grep -v命令 举个栗子:ls -l 结果如下: 我们不想看到包含repair的行,执行如下的命令: 结果如下: 结合管道,grep - 阅读全文

posted @ 2019-03-17 17:31 dairui130 阅读(12352) 评论(0) 推荐(1)

shell 命令 -- 漂亮的资源查看命令 htop
摘要:htop 相较top,htop更加直接和美观。 阅读全文

posted @ 2019-03-15 15:58 dairui130 阅读(234) 评论(0) 推荐(0)

shell 命令 --ps aux | grep
摘要:ps aux | grep 要查询的进程名 查询当前进程,如 确认过需要查询的进程,就可以进行 kill -9 进程号等操作了。 阅读全文

posted @ 2019-03-15 15:51 dairui130 阅读(1268) 评论(0) 推荐(0)

presto调研和json解析函数的使用
摘要:presto简单介绍 presto是一个分布式的sql交互式查询引擎。可以达到hive查询效率的5到10倍。支持多种数据源的秒级查询。 presto是基于内存查询的,这也是它为什么查询快的原因。除了基于内存,presto还使用了 向量计算, 动态编译执⾏计划 优化的ORC和Parquet Reade 阅读全文

posted @ 2019-03-15 14:35 dairui130 阅读(23181) 评论(0) 推荐(0)

shell wc -l
摘要:shell 命令之 wc -l 给出一个比较常用的命令: 查询当前文件夹下的文件的总行数。 原理就是统计了文件中换行符的数量。 阅读全文

posted @ 2019-03-14 21:31 dairui130 阅读(731) 评论(0) 推荐(0)

hive 动态分区与混合分区
摘要:hive的分区概念,相信大家都非常了解了。通过将数据放在hdfs不同的文件目录下,查表时,只扫描对应分区下的数据,避免了全表扫描。 提升了查询效率。 关于hive分区,我们还会用到多级分区、动态分区、混合分区,这些概念是什么含义,又该在何时使用呢? 静态分区 先说下静态分区。静态分区就是人为指定分区 阅读全文

posted @ 2019-03-13 10:26 dairui130 阅读(2682) 评论(0) 推荐(0)

shell 命令之 crontab
摘要:crontab是shell命令中的定时任务: crontab -e 进入当前定时任务的vim页面 每行是一个独立的定时脚本,使用和vim的语法部署定时任务 如下图: 脚本执行周期设置 可以用下面的网页做周期的验证: https://tool.lu/crontab 阅读全文

posted @ 2019-03-11 20:41 dairui130 阅读(221) 评论(0) 推荐(0)

shell 中的 && 和 ||
摘要:shell 中的 && 和 || 简言之,shell 中 && --左边的命令执行成功才会执行右边的命令。 || -- 左边的命令执行失败才会执行右边的命令。 阅读全文

posted @ 2019-03-11 20:25 dairui130 阅读(215) 评论(0) 推荐(0)

hive 桶表
摘要:转自:https://blog.csdn.net/csdnliuxin123524/article/details/81052974 桶表(bucket table): 原理: 分区表是按照经常查询的字段做不同的分区,查询时就可以按分区进行查了.这样可以减小全局扫描提高查询的速度.分区表的缺陷就是选 阅读全文

posted @ 2019-03-11 14:00 dairui130 阅读(242) 评论(0) 推荐(0)

大数据之路 读书笔记
摘要:阿里的《大数据之路》记录了阿里的大数据系统的产生,演化和设计思路。是大数据进阶的经典书籍。 本篇读书笔记会按照《大数据之路》的目录结构,记录我在阅读这本书的时候, 第一章:总述 待更新。。。 阅读全文

posted @ 2019-03-11 12:44 dairui130 阅读(445) 评论(0) 推荐(0)

hive-内部表和外部表 对比
摘要:建表时,需要考虑究竟建内部表还是外部表,内部表和外部表都有哪些不同? 内部表: 1. 数据存储位置:数据最终会被移动到 hive.metastore.warehouse.dir指定的路径下,以表名创建一个文件夹,之后所有有关该表的数据都会存储到此文件夹中。 2.删除表时,表中的数据和元数据信息都会被 阅读全文

posted @ 2019-03-11 11:33 dairui130 阅读(372) 评论(0) 推荐(0)

Anaconda的使用
摘要:解释&背景 Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows, 包含了众多流行的科学计算、数据分析的 Python 包。 python2会在2020年1月1日正式停止服务。由于语法的不兼容,很多大公司也在做Python2向python3的代码 阅读全文

posted @ 2019-03-11 10:38 dairui130 阅读(351) 评论(0) 推荐(0)

Git和SourceTree配合使用
摘要:Git介绍 git是当今最强大的本地的分布式代码版本管理工具。 git的核心概念与操作:开发环境,本地仓库,远程仓库。他们的关系如下图: 与CVS及SVN的比较: CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统。 集中式版本控制系统是指:代码仅放中央服务器上,每次开发时必须联网 阅读全文

posted @ 2019-03-10 21:42 dairui130 阅读(3823) 评论(0) 推荐(0)

hive中数据存储格式对比:textfile,parquent,orc,thrift,avro,protubuf
摘要:这篇文章我会从业务中关注的: 1. 存储大小 2.查询效率 3.是否支持表结构变更既数据版本变迁 5.能否避免分隔符问题 6.优势和劣势总结 几方面完整的介绍下hive中数据以下几种数据格式:textfile,parquent,orc,thrift,avro,protubuf 更新中... 预计3月 阅读全文

posted @ 2019-03-07 17:58 dairui130 阅读(845) 评论(1) 推荐(0)

hive 实现类似 contain 包含查询
摘要:如何用hive sql 实现 contain 查询? 需求:判断某个字符串是否在另一个字符串中? 方法: 可以自定义函数,但是用正则匹配regexp更方便 代码如下: 首先,查看regexp正则函数的用法: 那么用正则实现包含功能的代码是: 表示 'QQqq' 匹配 '.*qq.*' 为真。QQqq 阅读全文

posted @ 2019-03-07 15:09 dairui130 阅读(26197) 评论(0) 推荐(0)

hive函数 parse_url的使用
摘要:hive提供了直接处理url的函数 parse_url desc funtion 的解释是: partToExtract的选项包含[HOST,PATH,QUERY,REF,PROTOCOL,FILE,AUTHORITY,USERINFO] 使用方法 常用的参数有 "HOST" 和 "PATH" 阅读全文

posted @ 2019-03-07 14:47 dairui130 阅读(981) 评论(0) 推荐(0)

hive函数 get_json_object的使用
摘要:hive提供了json的解析函数:get_json_object 使用方法 对于jsonArray(json数组),如person表的xjson字段有数据: 取出第一个json对象,那么hive sql为: 结果是: 取出第一个json的age字段的值: 结果 总结 param1:需要解析的json 阅读全文

posted @ 2019-03-06 21:16 dairui130 阅读(71678) 评论(1) 推荐(5)

kafka groupid
摘要:kafka 分组 简言之,就是相同分组的消费者,会分摊消费kafka中同一个topic中的数据。 阅读全文

posted @ 2019-03-06 19:08 dairui130 阅读(1028) 评论(0) 推荐(0)

excel设定备选值
摘要:excel设定备选值 有的时候我们要人为向excel中某一列添加数据,可以通过下面的方法,为这列设定备选值。 操作方法 2.来源中添加备选值,注意用英文逗号分隔。 3. 再选中这列的某个单元格,可以直接点击填入备选值了。 注意:这种方式,这一列只允许输入备选值中的内容,手动输入其他内容会报错。 阅读全文

posted @ 2019-03-06 15:03 dairui130 阅读(1926) 评论(0) 推荐(0)

mac快捷键
摘要:公司统一要求用mac办公,总结下常用的程序的快捷键 MacOS 删除文件:command + Delete 截图:command + shift + 4 退出最大化: control + command + f 修改文件名 : enter(选中然后回车) 切换输入法:control + comman 阅读全文

posted @ 2019-03-06 10:35 dairui130 阅读(321) 评论(0) 推荐(0)

数据统计--union all 执行多条sql
摘要:需求--统计hive某张表type字段不同取值的数据量 我们已知某张表的type的取值是1,2,3,4,5,想要统计不同type的数据量,并清晰的展现出来。可以通过union all 的方式,sql如下: 得到的结果如下: 阅读全文

posted @ 2019-03-05 21:07 dairui130 阅读(528) 评论(0) 推荐(0)

sqoop快速入门
摘要:转自http://www.aboutyun.com/thread-22549-1-1.html 阅读全文

posted @ 2019-03-04 21:22 dairui130 阅读(115) 评论(0) 推荐(0)

linux中cat、more、less命令区别详解
摘要:待做 阅读全文

posted @ 2019-03-04 19:17 dairui130 阅读(282) 评论(0) 推荐(0)

flume遇到的问题
摘要:原因:checkpoint文件夹,不为空。 解决:设置空的checkpoint文件夹。或删除checkpoint文件夹下的内容。 原因:java堆内存默认20m,数据量大时oom。 解决: export JAVA_OPTS="-Xms2048m -Xmx2048m -Xss256k -Xmn1g - 阅读全文

posted @ 2019-03-04 16:57 dairui130 阅读(1198) 评论(0) 推荐(0)

excel查找某一列的值在、不在另一列中
摘要:统计中遇到找出一列的值不在另一列的需求: 找出A列中不在B列的值 方法如下: 使用countif函数 比如找出A列中不在B列的值: 在C1中输入 下拉单元格,在首行添加筛选 筛选的方法,在我另一篇博客中。 得到如下结果 结果为1则表示,A列的值在B中。0则表示不在B中。 阅读全文

posted @ 2019-03-03 20:19 dairui130 阅读(16297) 评论(1) 推荐(0)

kafka的分区
摘要:待做 阅读全文

posted @ 2019-03-03 17:18 dairui130 阅读(89) 评论(0) 推荐(0)

hive的 order by & distribute by & cluter by
摘要:我们应该都清楚order by 的含义: 根据某个字段对输出的数据排序,因为只有一个reducer,所以查询效率较慢。 那么hive中,另外两个排序,distribute by和cluster by的含义是什么呢? distribute by 分区排序 直接上例子,hive中有张工资表:salary 阅读全文

posted @ 2019-03-03 17:17 dairui130 阅读(310) 评论(0) 推荐(0)

什么是码表,什么是维度表?
摘要:整理业务库的库表字段和字段含义的时候,遇到了码表的概念,码表是什么,和维度表又是什么关系呢? 首先,码表没有明确的定义。 百度搜索码表,可以看到和数据处理相关的解释是:码表是 编码表(或代码表)的简称。 编码表: 是一种代码说明表格。 用来帮助用户明确无解释数据和字符 代码的含义。 例如:性别码表的 阅读全文

posted @ 2019-03-03 15:20 dairui130 阅读(11052) 评论(0) 推荐(0)

Spark streaming java代码
摘要:待做 阅读全文

posted @ 2019-03-03 11:15 dairui130 阅读(137) 评论(0) 推荐(0)

Mysql分库分表
摘要:待做 阅读全文

posted @ 2019-03-03 11:14 dairui130 阅读(122) 评论(0) 推荐(0)

Hive ORC + SNAPPY
摘要:Hive orc 格式 + snappy 压缩是比较常用的存储加压缩格式。 今天处理下面的场景时,解决了一些问题,记录下来: flume消费kafka的数据实时写入hdfs,通过创建分区表,t + 1 时,需要看到昨天的数据: flume 通过snappy 将数据写入hdfs,可以通过在fliume 阅读全文

posted @ 2019-03-01 19:02 dairui130 阅读(6031) 评论(0) 推荐(0)