摘要: 由于业务需要调研数据湖的使用,这里以Hudi0.10为例,使用的是CDH6.2.1的集群。 一、编译Hudi0.10 在centos7上编译,需要配置maven,安装scala环境和docker环境,使用集群环境为CDH6.2.1 maven配置 tar -zxvf apache-maven-3.6 阅读全文
posted @ 2021-12-14 17:47 Shydow 阅读(901) 评论(0) 推荐(0) 编辑
摘要: 一、SPARK SQL的执行流程 二、spark支持的join包括:inner join,left outer join,right outer join,full outer join,left semi join,left anti join spark的join是将两张表抽象为遍历表和查找 s 阅读全文
posted @ 2021-12-14 11:51 Shydow 阅读(405) 评论(0) 推荐(0) 编辑
摘要: 在实际工作中统计uv时,一般会使用count(distinct userId)的方式去统计人数,但这样效率不高,假设你是统计多个维度的数据,当某天你想要上卷维度,此时又需要从原始层开始统计,如果数据量大的时候将会耗费很多时间,此时便可以使用最细粒度的聚合结果进行上卷统计,即需要自定义聚合函数进行统计 阅读全文
posted @ 2021-12-14 08:29 Shydow 阅读(1113) 评论(0) 推荐(0) 编辑
摘要: 一、SPARK 其中top算子调用的takeOrdered算子,takeOrdered算子底层使用的是优先队列(BoundedPriorityQueue),首先进入的是mapPatition,然后使用reduce将每个分区数据进行合并 sortBy + take val url: URL = Lau 阅读全文
posted @ 2021-12-13 14:44 Shydow 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 一般在使用mapPartition时,往往会跟随着文件的创建或者数据库的连接等,此时我们需要在创建一个容器,用于存储维表关联后的数据,但这有一个问题,创建的容器会占用内存的,这时我们可以使用迭代器进行优化。 一、普遍方法 package org.shydow import java.sql.{Con 阅读全文
posted @ 2021-12-13 11:29 Shydow 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 一、CDH6.2中自带访问阿里云OSS的jar包,只需要将相应的jar放到./spark/jars目录下即可: cd /opt/cloudera/parcels/CDH/jarsmv aliyun-sdk-oss-2.8.3.jar ../lib/spark/jars/mv hadoop-aliyu 阅读全文
posted @ 2021-12-13 10:22 Shydow 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 一、分布式架构 1)集中式:指由一台或者多台主计算机组成的中心节点,数据其中存储在这个中心节点中,并且整个业务单元都集中部署在这个中心节点上,系统的所有功能均由其集中处理。但是由于采用单机部署,难于维护,容易发生单点故障,扩展性差; 2)分布式:一个硬件或者软件分布在不同的网络计算机上,彼此之间仅仅 阅读全文
posted @ 2021-12-11 23:54 Shydow 阅读(647) 评论(0) 推荐(0) 编辑
摘要: 一、Spark的两种核心Shuffle Shuffle涉及磁盘的读写和网络的IO,因此shuffle性能的高低直接影响整个程序的性能。Spark也有map阶段和reduce阶段,因此也有Shuffle。 1)基于hash的shuffle 在每个Map阶段的task会为每个reduce阶段的task生 阅读全文
posted @ 2021-12-07 08:55 Shydow 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 一、DataStream API 这里以通过Flink CDC采集MySQL的binlog日志实时写入ClickHouse中: package com.shydow; import com.alibaba.fastjson.JSONObject; import com.bangdao.bigdata 阅读全文
posted @ 2021-12-06 14:50 Shydow 阅读(1636) 评论(0) 推荐(0) 编辑
摘要: 一、Kafka主要组件 1)producer(生产者):主要用于生产消息,是kafka当中的消息生产者,生产的消息通过topic进行归类,保存到kafka的broker里面去; 2)topic(主题):kafka将消息以topic为单位进行归类,主题始终支持多用户的订阅; 3)partition(分 阅读全文
posted @ 2021-12-06 08:52 Shydow 阅读(51) 评论(0) 推荐(0) 编辑