大数据
yaoyaobird11
这个作者很懒,什么都没留下…
展开
-
java 任务cpu占用高排查
问题背景:DNS隧道检测app 在使用测试数据测试的时候,长时间cpu占用接近100%,flink webui显示反压 100%安全数据湖 > DNS隧道检测app CPU占用过高问题排查 > image2022-5-27_15-31-4.png问题排查:(1)下载arthas在官网上下载离线arthas包,或者直接用如下包(2)启动任务使用命令启动AlphaRunner/opt/flink/bin/flink run -c com.sangfor.alphasecurity.a原创 2022-05-27 16:11:29 · 477 阅读 · 0 评论 -
flink执行流程
Flink 中的执行图可以分成四层:StreamGraph -> JobGraph -> ExecutionGraph -> Physical Graph。首先StreamGraph:是根据用户通过 Stream API 编写的代码生成的最初的图。用来表示程序的拓扑结构。这是在客户端刚开始提交任务时生成的,然后客户端还要对StreamGraph优化生成JobGraphJobGraph:是提交给 JobManager 的数据结构。主要的优化为: 将多个符合条件的节点 chain 在一原创 2021-12-12 00:15:35 · 1907 阅读 · 0 评论 -
scala面试题
scala语言有什么特点?什么是函数式编程?有什么优点?scala的特点:面向对象,函数式编程函数式编程:是一种典范,将电脑的运算视作是函数的运算。函数式编程有点:与过程化编程相比,函数式编程里的函数计算可以随时调用。Scala数据类型Any和AnyRef的区别Scala 中什么是闭包?匿名函数 就是闭包说说Scala中隐式转换?及优缺点?Scala提供的隐式转换和隐式参数功能,是非常有特色的功能。是Java等编程语言所没有的功能。它可以允许你手动指定,将某种类型的对象转换..原创 2021-09-13 17:32:56 · 306 阅读 · 0 评论 -
Map Reduce中的排序
排序贯穿于Map任务和Reduce任务,是MapReduce非常重要的一环,排序操作属于MapReduce计算框架的默认行为,不管流程是否需要,都会进行排序。在MapReduce计算框架中,主要用到了两种排序方法:快速排序和归并排序快速排序:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据比另外一部分的所有数据都小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此使整个数据成为有序序列。归并排序:归并排序在分布式计算里面用的非常多,归并排序本身就是一个采用分转载 2021-09-13 15:16:17 · 552 阅读 · 0 评论 -
yarn任务运行流程
运行流程1、客户端向RM中提交程序2、RM向NM中分配一个container,并在该container中启动AM3、AM向RM注册,这样用户可以直接通过RM査看应用程序的运行状态(然后它将为各个任务申请资源,并监控它的运行状态,直到运行结束)4、AM采用轮询的方式通过RPC协议向RM申请和领取资源,资源的协调通过异步完成5、AM申请到资源后,便与对应的NM通信,要求它启动任务6、NM为任务设置好运行环境(包括环境变量、JAR包、二进制程序等)后,将任务启动命令写到一个脚本中,并通过运行该脚本启动原创 2021-09-13 07:08:45 · 784 阅读 · 0 评论 -
sparkstreaming和flink的区别
sparkstreaming和flink的区别参考 https://blog.csdn.net/b6ecl1k7BS8O/article/details/81350587–组件:sparkstreaming:Master:主要负责整体集群资源的管理和应用程序调度;Worker:负责单个节点的资源管理,driver 和 executor 的启动等;Driver:用户入口程序执行的地方,即 SparkContext 执行的地方,主要是 DGA 生成、stage 划分、task 生成及调度;Exe原创 2021-09-10 17:31:42 · 2584 阅读 · 0 评论 -
spark任务运行源码
spark任务运行源码spark是一个分布式计算引擎,任务的运行是计算引擎的核心。一个spark任务怎么能运行起来呢?1 spark服务启动(Master,Worker):2 应用程序提交3 启动driver,executor4 driver构建DAG,划分stage,task set分发5 executor创建task执行,汇报执行状态...原创 2021-09-10 11:06:02 · 101 阅读 · 0 评论 -
数仓开发和数据治理
数据痛点及其解决方案:数据孤岛 - 划分主题域数据库名,表名不规范 - 制定规范,统一命名管理指标定义混乱 - 数据字典找数据困难 - 数据地图,元数据管理,血缘业务方自建数据仓库 - 开放ODS,DW层,自建ADS层DB全量数据同步慢 - 增量同步binlog信息敏感数据不安全 - 权限控制数据存储空间不够 - 数据生命周期管理数仓分层:ODS 数据采集 flume sqoop canal dbus - 按照业务主题域进行划分DWD/DWS 数据计算 hive flink spar原创 2021-09-10 11:01:45 · 521 阅读 · 0 评论 -
spark rpc 简单示例
spark rpc 简单示例假设我们要开发一个Hello服务,客户端可以传输string,服务端响应hi或者bye,并echo回去输入的string。第一步,定义一个HelloEndpoint继承自RpcEndpoint表明可以并发的调用该服务,如果继承自ThreadSafeRpcEndpoint则表明该Endpoint不允许并发。class HelloEndpoint(override val rpcEnv: RpcEnv) extends RpcEndpoint { override def转载 2021-08-18 15:41:23 · 218 阅读 · 0 评论 -
spark启动源码架构
原创 2021-08-17 21:48:39 · 113 阅读 · 0 评论 -
kafka面试题
1.Kafka数据积压如何处理?1. 实时/消费任务挂掉导致的消费滞后a. 任务重新启动后直接消费最新的消息,对于"滞后"的历史数据采用离线程序进行"补漏"。b. 任务启动从上次提交offset处开始消费处理如果积压的数据量很大,需要增加任务的处理能力,比如增加资源,让任务能尽可能的快速消费处理,并赶上消费最新的消息2. Kafka分区少了如果数据量很大,合理的增加Kafka分区数是关键。如果利用的是Spark流和Kafka direct approach方式,也可以对KafkaRDD进行repa原创 2021-08-16 10:05:07 · 1195 阅读 · 0 评论 -
HDFS源码架构图
HDFS源码架构图(1)HDFS namenode启动(2)HDFS datanode启动(3)HDFS datanode注册(4)HDFS 元数据管理(5)HDFS 写数据/上传文件原创 2021-08-15 21:32:46 · 150 阅读 · 0 评论 -
Supervisor安装
单机的airflow scheduler很容易挂掉,出现服务故障,所以使用supervisor监控进程,实现服务故障发生时,自动重启服务。Supervisor安装1 使用pip安装安装supervisor安装后的执行文件会默认安装在pip的执行文件目录。进入这个目录,会看到新生成的三个文件,2 生成配置文件./echo_supervisord_conf > supervisored.conf设置配置文件mkdir -p /etc/supe.原创 2021-07-13 10:10:24 · 347 阅读 · 0 评论 -
Airflow安装
1 安装python略。2 安装pip略。3 安装数据库airflow支持mysql postgrey oracle等,我们使用的数据库是mysql。安装步骤略。4 安装airflowpip3 install apache-airflow5 数据库配置连接mysql,执行如下命令:create user 'airflow'@'%' identified by 'yourpassword';grant all privileges on airflow.* to '原创 2021-07-13 09:32:05 · 127 阅读 · 0 评论