01 2021 档案

摘要:最近同事聊起所谓面向对象,这里使用Python实现一个搜索引擎的小功能,来作为对面向对象的理解。相关概念网上很多,这里不再多复述,先从代码走起,再代入概念。 代码功能:根目录下有1.txt 2.txt 3.txt 三个文件,实现输入文件名,返回是否有该文件及该文件的文件大小 代码要实现的功能很简单, 阅读全文
posted @ 2021-01-29 19:38 Rango_lhl 阅读(158) 评论(0) 推荐(0) 编辑
摘要:一、sqoop同步oracle数据非clob字段: 要处理换行符,在sqoop脚本中,参数使用下面任意一个即可 #替换为空 --hive-delims-replacement "" #删除 --hive-drop-import-delims 二、sqoop同步oracle数据clob字段 clob字 阅读全文
posted @ 2021-01-26 18:18 Rango_lhl 阅读(911) 评论(0) 推荐(0) 编辑
摘要:Syslog日志内一般包括产生日志的时间、主机名、程序模块、进程名、进程ID、严重性和日志内容。日志一般会通过Kafka等有容错保障的源发送,本实验为了简化,直接将Syslog通过Socket源发送。新建一个终端,执行如下命令:$tail -n+1 -f /var/log/syslog | nc - 阅读全文
posted @ 2021-01-25 17:28 Rango_lhl 阅读(840) 评论(0) 推荐(0) 编辑
摘要:一、Spark中水印作用 Spark内部引擎的实现是保留内部状态的,以便让基于事件时间的窗口聚合可以更新旧的数据,但是如果一个查询持续运行多天,那么系统绑定中间状态累积的数量也会随之增加,为了释放资源,用户可以通过自定义水印来告知系统可以丢弃哪些在内存中旧状态的数据。自定义水印可以使用withWat 阅读全文
posted @ 2021-01-22 20:04 Rango_lhl 阅读(670) 评论(0) 推荐(0) 编辑
摘要:本文将会谈一谈在数据仓库中拉链表相关的内容,包括它的原理、设计、以及在我们大数据场景下的实现方式。 全文由下面几个部分组成: 1.先分享一下拉链表的用途、什么是拉链表。 2.通过一些小的使用场景来对拉链表做近一步的阐释,以及拉链表和常用的切片表的区别。 3.举一个具体的应用场景,来设计并实现一份拉链 阅读全文
posted @ 2021-01-21 21:24 Rango_lhl 阅读(722) 评论(0) 推荐(0) 编辑
摘要:一、hive.groupby.skewindata set hive.groupby.skewindata=true; 数据倾斜时负载均衡,当选项设定为true,生成的查询计划会有两个MRJob。第一个MRJob 中,Map的输出结果集合会随机分布到Reduce中,每个Reduce做部分聚合操作,并 阅读全文
posted @ 2021-01-20 20:00 Rango_lhl 阅读(2871) 评论(0) 推荐(0) 编辑
摘要:Hive中的Join可分为Common Join(Reduce阶段完成join)和Map Join(Map阶段完成join) 一、Map Join作用及原理 作用简单来说,在Map阶段进行join,而不是Common Join那样在Reduce阶段按照join列进行分发后在每个Reduce节点上进行 阅读全文
posted @ 2021-01-19 17:51 Rango_lhl 阅读(1981) 评论(0) 推荐(0) 编辑
摘要:一、区别 ①本质上相同,都是把Map端数据分类处理后交由Reduce的过程。 ②数据流有所区别,MR按map, spill, merge, shuffle, sort, reduce等各阶段逐一实现。Spark基于DAG数据流,可实现更复杂数据流操作(根据宽/窄依赖实现) ③实现功能上有所区别,MR 阅读全文
posted @ 2021-01-18 14:52 Rango_lhl 阅读(1399) 评论(0) 推荐(0) 编辑
摘要:搭建宽表作用,就是为了让业务部门的数据分析人员,在日常工作可以直接提取所需指标,快速做出对应专题的数据分析。在实际工作中,数据量及数据源繁多,如果每个数据分析人员都从计算加工到出报告,除了工作效率巨慢也会导致服务器资源紧张。因此建设数据集市层,包含了该宽表层并在非工作时间做自动生成。 本文引用CDN 阅读全文
posted @ 2021-01-14 11:29 Rango_lhl 阅读(380) 评论(0) 推荐(0) 编辑
摘要:把Flume Source(netcat类型),从终端上不断给Flume Source发送消息,Flume把消息汇集到Sink(avro类型),由Sink把消息推送给Spark Streaming并处理后输出 版本信息:spark2.4.0 Flume 1.7.0 (基于pyspark) 一、Flu 阅读全文
posted @ 2021-01-12 16:28 Rango_lhl 阅读(240) 评论(0) 推荐(0) 编辑
摘要:数据库小知识学习系列 问题: MySQL InnoDB中,select where xxx=123 for update;该xxx没有索引,是使用表锁还是全部数据加行锁? 答: InnoDB引擎(默认RR隔离级别)中的行级锁是依赖索引实现的,问题条件xxx为非索引字段,所以使用的是表锁。 如若隔离级 阅读全文
posted @ 2021-01-11 14:04 Rango_lhl 阅读(373) 评论(0) 推荐(0) 编辑