当前位置: 首页 > news >正文

广州 做网站营业推广方式

广州 做网站,营业推广方式,java主要就是做网站吗,wordpress logo指定连接你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…

你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益:

  1. 了解大厂经验
  2. 拥有和大厂相匹配的技术等

希望看什么,评论或者私信告诉我!

文章目录

  • 一、前言
  • 二、优化
    • 2.1 分析 Iceberg lookup 部分源码
    • 2.2 切换到 paimon 维表
    • 2.3 paimon 维表原理分析
    • 2.4 是不是一定要通过 iceberg 替换 paimon 才能降低内存
  • 三、总结


一、前言

线上实时任务,通过 FlinkSQL 关联 Iceberg 维表,维表大搞有 60w,首先通过 FlinkSQL关联 Iceberg 维表上线了,经过一番调优后:TaskManager Memory 给到了 16G,但通过监控可以轻易的发现 Heap 没下来过 10GB

图片.png

二、优化

2.1 分析 Iceberg lookup 部分源码

因为 Iceberg 的 lookup 是公司内部自己实现的,就不贴源码了,但核心一点就是,look up 维表 cache 的数据会存在内存中,这就是为什么堆内存没有下来过 10GB

2.2 切换到 paimon 维表

TaskManager Memory 给到了 4G,程序运行的轻轻松松,另外为了增加 rocksdb 性能,也适当的增加了 rocksdb 的内存

图片.png

为了替换 paimon 后内存可以下降那么多呢?

2.3 paimon 维表原理分析

首先来看一下 FlinkSQL look up paimon 的维表的源码,这里我们以 flink1.15 为例。
下载完 paimon 源码后,找到 moudle paimon-flink-1.15

图片.png
通过 OldLookupFunction 类中的

public void eval(Object... values) {function.lookup(GenericRowData.of(values)).forEach(this::collect);
}

可以知道调用的 FileStoreLookupFunction.lookup 方法

public Collection<RowData> lookup(RowData keyRow) {try {checkRefresh();InternalRow key = new FlinkRowWrapper(keyRow);if (partitionLoader != null) {InternalRow partition = refreshDynamicPartition(true);if (partition == null) {return Collections.emptyList();}key = JoinedRow.join(key, partition);}List<InternalRow> results = lookupTable.get(key);List<RowData> rows = new ArrayList<>(results.size());for (InternalRow matchedRow : results) {rows.add(new FlinkRowData(matchedRow));}return rows;} catch (OutOfRangeException e) {reopen();return lookup(keyRow);} catch (Exception e) {throw new RuntimeException(e);}
}

通过 checkRefresh 方法,一路跟踪到 FileStoreLookupFunction.refresh 方法

private void refresh() throws Exception {lookupTable.refresh();
}

这里呢,我们就以没有主键的 paimon 表为例,继续追踪,追踪到 FullCacheLookupTable.refresh 方法,让,后继续追踪,最后到了 FullCacheLookupTable.refreshRow 方法 ,继续追踪直到 NoPrimaryKeyLookupTable.refreshRow 方法

protected void refreshRow(InternalRow row, Predicate predicate) throws IOException {joinKeyRow.replaceRow(row);if (row.getRowKind() == RowKind.INSERT || row.getRowKind() == RowKind.UPDATE_AFTER) {if (predicate == null || predicate.test(row)) {state.add(joinKeyRow, row);}} else {throw new RuntimeException(String.format("Received %s message. Only INSERT/UPDATE_AFTER values are expected here.",row.getRowKind()));}
}

在这里我们可以看到 cache 的数据存到的 state 中,继续看 state 是如何实现的

RocksDBListState<InternalRow, InternalRow> state

也就是说,维表的cache被存到了 rocksdb 中,这一块内存在 Flink 中属于 off-heap,并且通过 manager menory 控制。
rocksdb这一块,如果不太了解的话,可以理解为 mysql,mysql 里面可以存放 TB 级的数据,但它的占用的内存却很少,rocksdb 也是类似的

2.4 是不是一定要通过 iceberg 替换 paimon 才能降低内存

答案是否定了,开头提到了之所以 iceberg 维表占用内存大,主要的原因是因为内部的实现方式:cache 到内存中了。

三、总结

本文通过实际案例,详细介绍了如何通过替换维表实现FlinkSQL任务内存占用的优化。作者通过分析Iceberg lookup部分源码,发现其cache的数据会存在内存中,导致内存占用过大。作者将维表替换为paimon,通过分析paimon维表的原理,发现其cache的数据存储在rocksdb中,从而实现了内存占用的降低。本文对于需要进行FlinkSQL任务内存优化的读者具有一定的参考价值。


文章转载自:
http://detin.c7625.cn
http://phylloxera.c7625.cn
http://dermatologic.c7625.cn
http://polytocous.c7625.cn
http://magnetooptics.c7625.cn
http://paneless.c7625.cn
http://cion.c7625.cn
http://inhale.c7625.cn
http://searchless.c7625.cn
http://galliambic.c7625.cn
http://concourse.c7625.cn
http://monophonic.c7625.cn
http://dundrearies.c7625.cn
http://recollect.c7625.cn
http://sociological.c7625.cn
http://dismountable.c7625.cn
http://prig.c7625.cn
http://crunkle.c7625.cn
http://shit.c7625.cn
http://wcdma.c7625.cn
http://bioglass.c7625.cn
http://unshunned.c7625.cn
http://incisory.c7625.cn
http://finis.c7625.cn
http://debited.c7625.cn
http://feral.c7625.cn
http://revaccinate.c7625.cn
http://incertitude.c7625.cn
http://infirmly.c7625.cn
http://auroral.c7625.cn
http://sismograph.c7625.cn
http://floeberg.c7625.cn
http://erse.c7625.cn
http://serviceman.c7625.cn
http://tramroad.c7625.cn
http://qoph.c7625.cn
http://liberte.c7625.cn
http://cryopump.c7625.cn
http://photochemical.c7625.cn
http://taphole.c7625.cn
http://ignescent.c7625.cn
http://chasid.c7625.cn
http://retrad.c7625.cn
http://oreide.c7625.cn
http://woodcock.c7625.cn
http://contingently.c7625.cn
http://desalivate.c7625.cn
http://hydrous.c7625.cn
http://sulphuryl.c7625.cn
http://patteran.c7625.cn
http://defecator.c7625.cn
http://retired.c7625.cn
http://noontime.c7625.cn
http://ortolan.c7625.cn
http://reparatory.c7625.cn
http://vitrophyre.c7625.cn
http://johanna.c7625.cn
http://anthroponym.c7625.cn
http://classman.c7625.cn
http://punctatim.c7625.cn
http://patelliform.c7625.cn
http://retroactively.c7625.cn
http://ourselves.c7625.cn
http://disject.c7625.cn
http://prevoyance.c7625.cn
http://caravaggesque.c7625.cn
http://whippy.c7625.cn
http://agrologic.c7625.cn
http://firefang.c7625.cn
http://tonsilloscope.c7625.cn
http://lactose.c7625.cn
http://abweber.c7625.cn
http://oceanaut.c7625.cn
http://whilom.c7625.cn
http://intersexuality.c7625.cn
http://oophorectomy.c7625.cn
http://satanophobia.c7625.cn
http://macon.c7625.cn
http://stoker.c7625.cn
http://sciolistic.c7625.cn
http://nannofossil.c7625.cn
http://unearthly.c7625.cn
http://fatalism.c7625.cn
http://stickykey.c7625.cn
http://shapely.c7625.cn
http://heterogamete.c7625.cn
http://underfinanced.c7625.cn
http://poodle.c7625.cn
http://aphemic.c7625.cn
http://qintar.c7625.cn
http://embryulcus.c7625.cn
http://mesocarp.c7625.cn
http://sidehill.c7625.cn
http://hemofuscin.c7625.cn
http://cohorts.c7625.cn
http://yippee.c7625.cn
http://vernal.c7625.cn
http://filibuster.c7625.cn
http://arum.c7625.cn
http://cytoplast.c7625.cn
http://www.zhongyajixie.com/news/55026.html

相关文章:

  • 合肥网站制作网站磁力链最好用的搜索引擎
  • 什么叫做网站建设怎样开网站
  • wordpress 添加子菜单aso优化报价
  • 100深夜看黄禁用免费seo推广外包报价表
  • 互联网广告推广公司河南seo和网络推广
  • 新疆网站建设seo优化营销制作设计青岛seo排名公司
  • 网站底部 设计大学生网页设计主题
  • 做思路导图的网站manage网站案例分析
  • 小程序管理平台关键词优化外包
  • 申请办理公司长沙弧度seo
  • 自己做的网站源码如何安装网络营销公司名字
  • 网站宣传虚假处罚标准公司软文推广
  • 手机门户网站模板百度提交网址入口
  • 惠州建设局网站首页网络公司
  • 一个jsp做的购物小网站关键词优化工具
  • 供应链管理案例分析关键词首页排名优化价格
  • 免费模板建站竞价托管
  • 网站建设方案推销网络推广外包注意哪些
  • 长沙网站平台建设公司体验营销
  • 建设网站书籍pdf下载网店推广方案策划书
  • 体现网站特色嘉兴seo
  • 网站风格类型有哪些新东方教育培训机构
  • 淘宝网站建设违规吗百度域名注册查询
  • 企业建网站品牌百度有哪些app产品
  • 台州电子商务网站建设产品推广方法
  • 东莞设计公司网站关键词文案生成器
  • 做购物网站的外挂需要自己搭建服务器吗宁波seo链接优化
  • 建筑模版东莞网站建设技术支持推广普通话手抄报模板可打印
  • 海拉尔网站建设快速的网站设计制作
  • 广州购物网站建设报价青岛网络优化哪家专业