自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(221)
  • 收藏
  • 关注

原创 doris tips

例如 limit 4, 2 结果为。b: 从第a-1行开始返回总共b行。必须带order by查询。a: 从0开始到第a-1行。

2023-06-20 17:11:45 771

原创 动态规划类题目

【代码】动态规划类题目。

2022-10-17 15:40:15 177 1

原创 Flink intervalJoin 使用和原理分析

Flink中基于DataStream的join,只能实现在同一个窗口的两个数据流进行join,但是在实际中常常会存在数据乱序或者延时的情况,导致两个流的数据进度不一致,就会出现数据跨窗口的情况,那么数据就无法在同一个窗口内join。这两个方法调用的都是processElement方法。(1)获取记录的值和时间戳,判断是否延时,当到达的记录的时间戳小于水位线时,说明该数据延时,不去处理,不去关联另一条流的数据。假设目前流到达的数据的时间戳为10s,between传进去的时间分别为1s,5s,...

2022-08-16 18:06:05 1434

原创 单例模式的演进

单例模式的演进过程 DCL

2022-08-13 13:52:05 153

原创 flink uv计算方案

flink去重

2022-07-18 19:25:15 819

原创 mac idea快捷键

操作tips mac idea

2022-06-07 16:01:21 213

原创 Flink实战: 窗口TopN分析与实现1

flink topN 红黑树 性能优化

2022-06-07 14:44:54 154

原创 doris 常用操作收集

1、添加bit map索引CREATE INDEX biz_name_v0 ON user_analysis_common.app_fact_ord_company_cross_bu_aggr_v1 (biz_name) USING BITMAP COMMENT 'biz_name索引';2、

2022-04-01 20:43:28 514

原创 【无标题】

queue.clear() themeIterator.foreach(row => { val buCodeList = row.getAs[String](ColumnEnum.BuCodeList) val mapIndex = row.fieldIndex(ColumnEnum.LabelMap) val labelMap: Map[Int, Map[String, String]] = Map(row.getMap(mapIndex).to...

2022-03-06 15:03:01 125

原创 doris-查询原理

目录一.查询简介二.查询流程1.Query 接收2.Query Parse3.Query Analyze4.Query Rewrite5.Plan5.1 Query 单机Plan5.2 Query 分布式Plan6.Query Schedule7.Query ExecuteOlapScanNodeAggregationNodePartitionedAggregationNodeExchangeNodeHashJoinNode三.总结一.

2021-12-24 21:02:37 3422

原创 几种数据倾斜处理

1、 count(distinct ) 倾斜处理分三层处理with t1 as ( select 1 as f1, 2 as f2 union all select 1 as f1, 21 as f2 union all select 1 as f1, 22 as f2 union all select 1 as f1, 23 as f2 union all select 1 as f1, 24 as f2 union all selec

2021-12-21 20:15:17 107

原创 flink窗口机制分享

1 应用场景2 什么是窗口dataStreamSource.flatMap(new MyFlatMapFunction()) .keyBy("") .timeWindow(Time.seconds(10)) .allowedLateness(Time.seconds(12)) //允许多大的延迟[00:00:00,00:00:10)[00:00:10,00:00:20)...[00:00:50,00:01:00)3 窗口分

2021-11-26 15:56:55 1300

原创 doris tips

1 schema表格式字段长度如果是数字+字母这种的长度等于hivesql里面length(variable)的长度如果是中文要占3-4个Char

2021-11-22 15:06:06 1860

原创 Spark SQL参数调优指南

目录1 运行行为1.1 动态生成分区1.2 broadcast join使用hint强制做broadcastjoin:1.3 动态资源分配1.4 Shuflle相关1.5 读ORC表优化2 executor能力2.1内存2.2 executor并发度2.3 executor读取hive表时单task处理数据量/无shuffle作业小文件合并2.4 GC优化(使用较少,当尝试其他调优方法均无效时可尝试此方法)3 driver指标:3.1 内存3.2

2021-11-19 11:06:54 9632

原创 mac idea spark运行报错WARN Utils: Service ‘sparkDriver‘ could not bind on port 0. Attempting port 1.

报错截图如下:在hosts里加入 本机ip 机器名如:192.168.22.22 centos7解决...原因是sparkDriver会根据主机名去找地址,找不到就报错..增加环境变量即可SPARK_LOCAL_IP=127.0.0.1也可以在idea Edit Configurations里修改即可...

2021-11-14 19:35:02 1330

原创 一些好的大数据博客

olap1、编程小梦|Apache Doris 基于 Bitmap的精确去重和用户行为分析

2021-11-11 14:29:17 1562

原创 spark应用tips

1 正常sprkui会在scan和exchange都有数据显示,前者是条数,后者是存储。如果不显示说明这个阶段没有数据。

2021-10-19 16:00:17 226

原创 sql 易错点(重点)

with t1 as( select null as f1, 21 as f2 union all select 1 as f1, 22 as f2 union all select 11 as f1, 23 as f2)select * from t1 where f1 <> 1with t1 as ( select null as f1, 21 as f2 union all select 1 as.

2021-09-28 16:01:25 184

原创 spark内存模型

Spark 1.6 开始使用了统一内存管理模块(UnifiedMemoryManager),并引入了堆外内存(Off-heap memory),1.6之前的内存管理就不进行介绍了。spark堆内和堆外内存模型的示意图(注意:堆外内存是依赖于worker的,而不是executor)spark堆外:(之所以叫spark堆外,是因为后续要和jvm堆外进行区别,也是大家容易弄混淆的地方),为了进一步优化内存的使用以及提高 Shuffle 时排序的效率,Spark 引入了堆外(Off-heap)内

2021-09-19 16:30:12 1690

原创 Spark Hive 小文件合并

背景小文件带来的问题对于HDFS从 NN RPC请求角度,文件数越多,读写文件时,对于NN的RPC请求就越多,增大NN压力。从 NN 元数据存储角度,文件数越多,NN存储的元数据就越大。对于下游流程下游流程,不论是MR、Hive还是Spark,在划分分片(getSplits)的时候,都要从NN获取文件信息。这个过程的耗时与文件数成正比,同时受NN压力的影响。在NN压力大,上游小文件多的情况下,下游的getSplits操作就会比较慢。作业生成的文件数为了简化问题,假设:

2021-09-18 18:05:11 2630

原创 hbase compaction

minor compaction会真正删除 ttl的内容major compactionttl多余version

2021-09-02 21:39:28 569

原创 spark 参数

输入:1、 spark.hadoop.hive.exec.orc.split.strategy含义:参数控制在读取ORC表时生成split的策略:BI策略以文件为粒度进行split划分;ETL策略会将文件进行切分,多个stripe组成一个split;HYBRID策略当文件的平均大小大于hadoop最大split值(默认256M)时使用ETL策略,否则使用BI策略。建议: 由于读orc文件时默认按文件划分task(BI模式), 有数据倾斜的表(这里的数据倾斜指大量stripe存

2021-08-16 16:14:24 1760

原创 spark参数配置

参考链接https://spark.apache.org/docs/2.2.0/configuration.html 分类 参数 含义 平台默认值 建议 资源申请&并行度 spark.executor.cores 一个Executor中同时可以执行的task数目(在Executor内存不变的情况下,executor-cores数越大,平.

2021-07-28 20:08:39 899

原创 spark adaptive shuffle

https://www.sohu.com/a/344074120_315839

2021-06-16 18:01:12 482 3

原创 druid 概述

1什么样的业务适合用 Druid?时序化数据:Druid 可以理解为时序数据库,所有的数据必须有时间字段。实时数据接入可容忍丢数据(tranquility):目前 tranquility 有丢数据的风险,所以建议实时和离线一起用,实时接当天数据,离线第二天把今天的数据全部覆盖,保证数据完备性。OLAP 查询而不是 OLTP 查询:Druid 查询并发有限,不适合 OLTP 查询。非精确的去重计算:目前 Druid 的去重都是非精确的。无 Join 操作:Druid 适合处理星型模型的数据,不支.

2021-06-15 14:08:53 810

原创 flink kafka 消费以及生产并行度设置

1 flink consumer kafka数据2 flink producer kafka数据刚确认了下:配置keyby ,走fixed策略 ,保证消息有序; 不用keyby, 用robin策略

2021-05-30 17:30:54 4382

原创 yarn中mr参数配置

一、nodemanager/ratio yarn.nodemanager.resource.memory-mb集群中某个计算节点分配给nodemanager的最大可用内存,这个最大可用内存不是该节点最大内存,而是该节点最大内存划分出来的给nodemanager使用的内存,该配置项在集群启动后,无法动态改变。比如一个节点最大内存为128G,计划给nodemanager80%的内存资源,则设置yarn.nodemanager.resource.memory-mb为103G,其余25G用作该节点其他资源调

2021-05-16 13:59:59 824

原创 hive sql tips

1 map arrayint size(Map<K.V>)Returns the number of elements in the map type.int size(Array<T>)Returns the number of elements in the array type.boolean array_contains(Array<T>, value)Returns TRUE if the array contains value.arr

2021-04-06 19:34:05 68

原创 hive常用操作1

1重命名分区ALTER TABLE table_name PARTITION partition_spec RENAME TO PARTITION partition_spec;partition_spec: :(partition_col = partition_col_value, partition_col = partiton_col_value, ...)实例:hive> showpartitions people;OKdepartment=1/sex=0/h..

2021-03-31 14:17:48 105

原创 python中编解码以及sys.setdefaultencoding(‘utf-8‘)的作用

在python中,编码解码其实是不同编码系统间的转换,默认情况下,转换目标是Unicode,即编码unicode→str,解码str→unicode,其中str指的是字节流,而str.decode是将字节流str按给定的解码方式解码,并转换成utf-8形式,u.encode是将unicode类按给定的编码方式转换成字节流str。注意调用encode方法的是unicode对象,生成的是字节流;调用decode方法的是str对象(字节流),生成的是unicode对象。若str对象调用encode会默认先按系统默

2021-02-19 16:23:40 675 1

原创 Adaptive Execution如何让Spark SQL更高效更好用?

文章目录背景 动态设置 Shuffle Partition Spark Shuffle 原理 原有 Shuffle 的问题 自动设置 Shuffle Partition 原理 使用与优化方法 动态调整执行计划 固定执行计划的不足 SortMergeJoin 原理 BroadcastJoin 原理 动态调整执行计划原理 使用与优化方法 自动处理数据倾斜 解决数据倾斜典型方案 自动解决数据倾斜 使用与优化方法 本文转发自技术世界,原文

2021-01-31 15:35:20 120

原创 CompletableFuture使用详解

https://blog.csdn.net/admin123404/article/details/111168902

2021-01-15 19:59:14 172

原创 ReentrantLock之NonfairSync源码分析

/** * Performs lock. Try immediate barge, backing up to normal * acquire on failure. */final void lock() { if (compareAndSetState(0, 1)) setExclusiveOwnerThread(Thread.currentThread()); else acquire(1);}public final void acquire(int arg) {.

2020-12-14 19:39:54 133

原创 ReentrantLock之FairSync源码分析

final void lock() { acquire(1);}public final void acquire(int arg) { if (!tryAcquire(arg) && acquireQueued(addWaiter(Node.EXCLUSIVE), arg)) selfInterrupt();}protected final boolean tryAcquire(int acquires) { final Thread current = ...

2020-12-14 19:38:37 137

原创 flink 多种trigger及其应用场景分析

https://www.bilibili.com/video/BV1n54y1976u/12

2020-12-08 19:46:33 328

原创 spark启动流程1

1 standalone模式1.Driver端启动SparkSubmit进程,启动后开始向Master进行通信,此时创建了一个对象(SparkContext),接着向Master发送任务消息2.Master接收到任务信息后,开始资源调度,此时会和所有的Worker进行通信,找到空闲的Worker,并通知Worker来拿取任务和启动相应的Executor3.Executor启动后,开始与Driver进行反向注册,接下来Driver开始把任务发送给相应的Executor,Executor开始计算任.

2020-12-04 14:07:47 1230 1

原创 flink源码阅读---Flink intervalJoin 使用和原理分析

1.前言Flink中基于DataStream的join,只能实现在同一个窗口的两个数据流进行join,但是在实际中常常会存在数据乱序或者延时的情况,导致两个流的数据进度不一致,就会出现数据跨窗口的情况,那么数据就无法在同一个窗口内join。Flink基于KeyedStream提供的interval join机制,intervaljoin 连接两个keyedStream, 按照相同的key在一个相对数据时间的时间段内进行连接。2.代码示例将订单流与订单品流通过订单id进行关联,获得订单流中的会员

2020-11-30 23:36:24 462

原创 Java的Object.wait(long)

Java的Object.wait(long)在等待时间过去后会继续往后执行吗Object.wait(long)方法相比于wait,多了个等待时长,那么当等待时长过去后,线程会继续往下执行吗?单个线程执行多个线程并发执行public class ThreadWaitDemo {public static final int WAIT_IN_SECONDS = 2;public static final int NOTIFY_IN_SECONDS = 6;public static v

2020-11-27 00:58:39 736 1

原创 Flink之state processor api实践

前不久,Flink社区发布了FLink 1.9版本,在其中包含了一个很重要的新特性,即state processor api,这个框架支持对checkpoint和savepoint进行操作,包括读取、变更、写入等等。savepoint的可操作带来了很多的可能性:作业迁移  1.跨类型作业,假如有一个storm作业,将状态缓存在外部系统,希望更好的利用flink的状态机制来增加作业的稳定和减少数据的延迟,但如果直接迁移,必然面临状态的丢失,这时,可以将外部系统的状态转换为flink作业的savepo

2020-11-26 00:46:33 1105

原创 flink监控1---延时监控

什么是延时监控?延时监控,简单理解监控算子到算子的延迟时间。记录算子间或者源流入到算子时间,监控系统健康以及调节。流式计算中处理延迟是一个非常重要的监控metricflink中通过开启配置 metrics.latency.interval 来开启latency后就可以在metric中看到askManagerJobMetricGroup/operator_id/operator_subtask_index/latency指标了如果每一条数据都打上时间监控 输出时间- 输入时间,会大量...

2020-11-25 23:34:07 1357

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除