![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
工作实践
文章平均质量分 59
大数据中自己工作实践,
lianchaozhao
这个作者很懒,什么都没留下…
展开
-
linux 下命令杂记
linux 命令自己杂记原创 2022-12-08 10:54:54 · 493 阅读 · 0 评论 -
hive with as的测试使用记录
with table1 as(select 1 as t1_id, ‘小满t1_1’ as name, 100 as oldunion allselect 2 as t1_id, ‘小满t1_2’ as name, 100 as oldunion allselect 3 as t1_id, ‘小满t1_3’ as name, 100 as oldunion allselect 4 as t1_id, ‘小满t1_4’ as name, 100 as old),table2 as(sel原创 2021-12-28 19:37:13 · 856 阅读 · 0 评论 -
LSM思想在大数据生态圈中应用
LSM 思想广泛应用在大数据生态圈中,被人们广泛知道包含了 Hbase 、kudu 、druid 的设计思想(注:此文章根据自己的经验总结得出,如果错误之处欢迎指出,不胜感激)原创 2021-01-12 10:31:41 · 471 阅读 · 2 评论 -
数据仓库建模 事件杂记
dwd 建议用范式建模 mid dws 应用维度建模原创 2021-01-08 19:42:07 · 289 阅读 · 0 评论 -
hive array类型转成多行
1、explode(array)函数接受array类型的参数,其作用恰好与collect_set相反https://my.oschina.net/u/3204727/blog/1571101原创 2020-12-30 18:13:49 · 3887 阅读 · 0 评论 -
hive 相同key 多行多列合并 处理
概述在join 的过程中我们很容易出现数据膨胀现象,即一行变成多行情况。面对这种情况,一般会有两种处理方式第一种:用row_number 等分窗函数,根据不同策略取不同行的数据第二种:将相同key对应多行的情况合并成一行,(如果一行有多个字段,还有可能合并为一个字段中)实现方式如源表结构:pcgid string mobilegid string原创 2020-12-22 15:16:22 · 4242 阅读 · 0 评论 -
druid 关键技术点回顾
一、druid 的设计原则方式1、快速查询:(1)、实现技术点,内存使用上精细设计,(例如在druid中使用bitMap 压缩技术)(2)、维护一些倒排索引(可以加快And和 Or 的计算操作)2、水平扩展能力:(1)、druid 查询性能很大晨读依赖于内存的优化使用,数据可以分布在多个节点的内存中。数据增长的时候,可以通过简单增加机器的方式进行扩容。只是按照时间切分有时候是不够的(druid 的每个segment 不超过2000万行),故druid 还支持对segment进一步分区。(2)、历原创 2020-12-16 17:37:31 · 429 阅读 · 1 评论 -
hive group by 的高级用法
roup by 作为一种分组查询,在sql中用处十分广泛。原创 2020-11-12 20:27:08 · 1989 阅读 · 0 评论 -
flink 端到端的一致性 实现
一、综述flink 通过内部依赖checkpoint 并且可以通过设置其参数exactly-once 实现其内部的一致性。但要实现其端到端的一致性,还必须保证1、source 外部数据源可重设数据的读取位置2、sink端 需要保证数据从故障恢复时,数据不会重复写入外部系统(或者可以逻辑实现写入多次,但只有一次生效的数据sink端)幂等操作:一个操作,可以重复执行多次,但只导致一次结果更改,豁免重复操作执行就不起作用了(逻辑与、逻辑或等)具体理解参照自己以前写的文章。事务写入:事务应该具有四个属性原创 2020-11-03 20:37:06 · 1714 阅读 · 0 评论 -
hive的数据倾斜解决(Map端、reduce 端 、join中)
hive 的数据倾斜一般我们可以分为 Map倾斜、reduce 倾斜和join 倾斜这几种。原创 2020-11-02 15:24:08 · 6520 阅读 · 3 评论 -
java阻塞队列SynchronousQueue
综述再线程池的源码分析中我们经常对比两个线程池的实现 newCacheThreadPool和newFixedThreadPool原创 2020-10-19 18:01:29 · 208 阅读 · 0 评论 -
flink checkpoint源码分析一
FlinK CheckPoint 是程序故障恢复以及数据一致性的效果的基础,checkpoint是一种分布式快照:对一个Flink作业的所有task做一个快照且将快照保存在 memory / file system 等存储系统中。这样,在任务进行故障恢复的时候,就可以还原到任务故障前最近一次检查点的状态,从而保证数据的一致性。当然,为了保证 exactly-once / at-least-once 的特性,还需要数据源支持数据回放。todo 结合源码分析:https://blog.jrwang.me/20原创 2020-09-11 16:40:31 · 934 阅读 · 0 评论 -
java阻塞队列LinkedBlockingQueue源码分析
一、概要阻塞队列与我们平时接触的普通队列(LinkedList 和ArrayList)的最大的不同点,在于阻塞队列支持阻塞添加和阻塞删除方法。阻塞队列常常应用于大数据框架源码和线程池源码中。1、阻塞添加:阻塞添加指的时当组设队列元素已经满时候。队列会阻塞加入元素的线程,直到对垒元素不满时才会重新唤醒线程执行元素加入。2、阻塞删除:是指在队列元素为空时,删除队列元素的线程被阻塞,直到队列不为空再执行删除操作。ArrayList 和ArrayBlockingQueue一样,内部基于数组来存放元素,而li原创 2020-08-17 15:17:18 · 437 阅读 · 0 评论 -
flink windows窗口 应用范例
概述:流式数据处理中,很多操作要依赖于时间属性进行,因此时间属性也是流式引擎能够保证准确处理数据的基石,window提供了一种处理无界数据的一种手段。flink的windows包含了很多的组件: 例如出发器trigger,触发器上下文triggerContext,内部状态windowState。窗口分配器windowassigner,内部时间服务器internalTimerService。其中每个组件都是winows 完成功能不可缺失的一部分。具体每个组件的作用。1.Time在 Flink 的流式处理原创 2020-08-14 12:59:07 · 618 阅读 · 0 评论 -
flink window窗口函数 源码分析
概述:流式数据处理中,很多操作要依赖于时间属性进行,因此时间属性也是流式引擎能够保证准确处理数据的基石。在这篇文章中,我们将对 Flink 中时间属性和窗口的实现逻辑进行分析。原创 2020-08-13 19:48:29 · 283 阅读 · 0 评论 -
linux 快速定位 占用cpu过多代码
问题背景:随让cpu时可以压缩的资源,可以短时间存在高位。但是长时间cpu 总是在高位就需要定位问题原因,避免线上事故发生。1、负载评判标准?在linux系统下通过top命令或者uptime命令来观察load average的值,这里我们关注的是三个值,即系统1分钟、5分钟、15分钟内的平均负载,判断一个系统负载是否偏高需要计算单核CPU的平均负载,等于这里uptime命令显示的系统平均负载 / CPU核数,一般以2以下为比较合适的值。偏高说明有比较多的进程在等待使用CPU资源。2、CPU负载怎么理原创 2020-08-05 16:39:47 · 1295 阅读 · 0 评论 -
window10 python 3.6 安装tensorflow的坑
安装过程中选择 whl 安装其中错误Traceback (most recent call last): File "<stdin>", line 1, in <module> File "E:\Python3.6\lib\site-packages\tensorflow\__init__.py", line 24, in <module> ...原创 2019-08-26 17:46:22 · 1237 阅读 · 0 评论 -
presto cli 命令行使用
1、在 http://prestodb.github.io/docs/current/installation/cli.html 下载Download presto-cli-0.223-executable.jar, rename it to presto, make it executable with chmod +x, then run it:./presto --server emr-...原创 2019-08-12 16:50:42 · 10977 阅读 · 0 评论 -
clickhouse和druid实时分析性能总结
clickhouse 应用总结调研:概述:clickhouse 是俄罗斯的“百度”Yandex公司在2016年开源的,一款针对大数据实时分析的高性能分布式数据库,与之对应的有hadoop生态hive,Vertica和百度出品的palo。其作为分析型数据库,有三大特点:一是跑分快,二是功能多,三是文艺范。背景:Hadoop 生态体系解决了大数据界的大部分问题,当然其也存在缺点。Hadoop...原创 2020-04-12 11:09:06 · 11700 阅读 · 2 评论 -
cdh6.2.1+flink1.9+druid1.8搭建实践
1、CDH版本调研和相应依赖整理综述一般组件版本管理工具包含两种方式,第一种ambari 第二种为cloudra 两种各有优缺点,但立足公司实际情况,需要一种相对来说,比较稳定,并且易于管理监控更加方便,一般不用二次开发的集群。并且cloudera相对ambari市场占有率比较大解决方案相对比较成熟。因此决定采用cloudera manager 去监控管理公司的集群。版本选择Clouder...原创 2020-05-13 19:36:12 · 1043 阅读 · 0 评论 -
flink 的interval join源码分析
flink在流与流的join中,与其他window join相比,window中的关联通常是两个流中对应的window中的消息可以发生关联, 不能跨window,Interval Join则没有window的概念,直接用时间戳作为关联的条件,更具表达力。由于流消息的无限性以及消息乱序的影响,本应关联上的消息可能进入处理系统的时间有较大差异,一条流中的消息,可能需要和另一条流的多条消息关联,因此流流关联时,通常需要类似如下关联条件:等值条件如 a.id = b.id时间戳范围条件 : a.timesta原创 2020-05-22 11:13:35 · 723 阅读 · 0 评论 -
flume集群实现高可用集群
本人采用双节点的方式其中两个节点都存活时 :两个节点做负载均衡使用其中一个节点宕机 : 一个节点承担从前两个节点的流量 (做到高可用)channel 直接对接kafka 节省资源其中配置为 (两份)tier1.sources = source1 #对应sources名字tier1.channels = kafka-mobile-channel #对应channel 名...原创 2020-08-05 15:56:13 · 325 阅读 · 0 评论 -
CDH环境HDFS权限问题(root 赋值hdfs 用户权限)
CDH环境下Hadoop平台最高权限用户是hdfs,属于supergroup组。默认HDFS会开启权限认证,所以操作时,需要将root用户切换到hdfs用户,否则会报错。解决问题 :1、单独安装的软件没有(root 用户安装 没有hdfs权限)2、Hive和HBase读写hdfs,也很容易因为权限问题导致出错。解决方式但是关闭权限检查,任何用户都可以操作HDFS数据,数据安全性又没有保障...原创 2020-08-05 15:56:41 · 2953 阅读 · 0 评论 -
cm 修改 cdh集群域名
背景公司搬迁新到新大楼IP地址发生变化以及需要搭建线上数据中心需要重新规划主机名称,便于维护环境centos 6.5 CDH 5.131.梳理修改相关IP与HostName对应关系和新域名与旧域名的对应关系2.cm 停止所有服务3 停止cm 大数据监控(所有节点)service cloudera-scm-agent stop#需要停止所有的agentservice cloud...原创 2020-08-05 15:57:18 · 303 阅读 · 0 评论 -
cloudera Management service 启动失败
启动失败发现下日志agnet 日志中报编码错误的日志发现 /opt/cloudera/parcels有很多的 乱码文件将乱码文件删除 成功启动原创 2020-08-05 15:58:12 · 782 阅读 · 0 评论