摘要: 下图是RocksDB的工作流程,一共进行三个步骤, ①将数据写入内存中的活跃表 Active MenTable ②将活跃表转化成只读表 ReadOnlyMemTable ③将只读表flush到本地磁盘上 LocalDish 具体调优方法 ①增大整块缓存,减小刷写的频率。 该块内存为flink的管理内 阅读全文
posted @ 2022-04-14 23:13 肥仔佳文猪 阅读(1271) 评论(0) 推荐(1) 编辑
摘要: 压测合理并行度的方法: ①获得高峰期的qps,如每秒5w条 ②消费该高峰期的数据,达到反压状态后查看每秒处理的数据量y,就是单并行度的处理上限 ③x除以y,增加一点富余: 乘以1.2,就是合理的并行度。 在flink中,设置并行度的地方有: ①配置文件 ②提交任务时的参数 ③代码env ④代码算子 阅读全文
posted @ 2022-04-14 22:03 肥仔佳文猪 阅读(3162) 评论(0) 推荐(0) 编辑
摘要: 一、开启监控 RocksDB是基于LSM Tree实现的,写数据都是先缓存到内存中,所以RocksDB的写请求效率比较高。RocksDB使用内存结合磁盘的方式来存储数据,每次获取数据时,先从内存中blockcache中查找,如果内存中没有再去磁盘中查询。使用 RocksDB时,状态大小仅受可用磁盘空 阅读全文
posted @ 2022-04-10 19:42 肥仔佳文猪 阅读(3988) 评论(0) 推荐(0) 编辑
摘要: 由于yarn默认容器资源为最小核心数,即一个cpu, 所以我们要根据并行度去调整分配的cpu资源 程序如下:指定并行度为5,指定每个TM的slot数为2 -p 5 \ -Dtaskmanager.numberOfTaskSlots=2 \ 所以虽然配置了2个slot(并发度为2),但是两个task不 阅读全文
posted @ 2022-03-31 21:23 肥仔佳文猪 阅读(1371) 评论(0) 推荐(1) 编辑
摘要: 任务提交时的一些yarn设置(通用客户端模式) 指定并行度 -p 5 \ 指定yarn队列 -Dyarn.application.queue=xxx \ 指定JM总进程的大小 -Djobmanager.memory.process.size=1024mb \ 指定每个TM的总进程大小,一般是 2-8 阅读全文
posted @ 2022-03-31 20:36 肥仔佳文猪 阅读(1648) 评论(0) 推荐(0) 编辑
摘要: 生产者producer TPS:每秒吞吐量 阅读全文
posted @ 2021-11-14 17:27 肥仔佳文猪 阅读(255) 评论(0) 推荐(0) 编辑
摘要: hologres的数据有四种索引,分别是分区,分布,segmentKey,ClusteringKey 每命中一个都可以提高查询效率。 segmentKey和ClusteringKey的区别是什么呢? ClusteringKey是文件内排序。而segmentKey是文件之间归并的排序。segmentK 阅读全文
posted @ 2021-10-20 21:56 肥仔佳文猪 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 通过解析一个sql得到一个树形图,得到字段和表的血缘关系,还有计算逻辑。将所有的树形图连接起来。可以绘制如下:1.查看一个应用指标的整体血缘和计算逻辑。从ods到最后。<单个查看>2.查看一个范围内所有字段的血缘和计算逻辑,如按表查看每个字段的链路,是否链路规范。如查看某一群相似指标的链路,是否存在 阅读全文
posted @ 2021-07-30 17:50 肥仔佳文猪 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 以阿里云的maxcompute的数据仓库架构为例, 从上往下定义, dwp的数据,来源是dws+dim,最主要是dws。这里不讨论dim的作用。 dws的数据来源于dwd。 dwd的数据来源于ods。 接下来我们定义原子指标和派生指标。 派生指标定义在dws层。并且绑定原子指标。所有的应用数据由派生 阅读全文
posted @ 2021-07-23 17:37 肥仔佳文猪 阅读(955) 评论(0) 推荐(0) 编辑
摘要: 先定义4个节点:master worker executor driver, 通信链路如下图所示 worker与master创建了通信的路径1, driver分别创建了与master和executor通信的endpoint,此为路径2和3 一、路径1的具体执行类为 两个实现了RpcEndpoint接 阅读全文
posted @ 2021-06-08 22:20 肥仔佳文猪 阅读(132) 评论(0) 推荐(0) 编辑