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

青岛网站建设推广服务网站开通支付宝收款

青岛网站建设推广服务,网站开通支付宝收款,深圳专业seo优化公司,网站系统找不到指定的文件背景 本文基于 Starrocks 3.1.7 结论 Starrocks 会启动一个线程周期性的去进行Compaction#xff0c;该周期间隔为 200 MS, 该Compaction以table的partition为切入点#xff0c;tablet(也就是bucket)为粒度进行task的创建。 分析 CompactionMgr start 方法会启动一个Com…背景 本文基于 Starrocks 3.1.7 结论 Starrocks 会启动一个线程周期性的去进行Compaction该周期间隔为 200 MS, 该Compaction以table的partition为切入点tablet(也就是bucket)为粒度进行task的创建。 分析 CompactionMgr start 方法会启动一个CompactionScheduler 用来启动一个 合并的周期性任务. 这里的周期会由 LOOP_INTERVAL_MS参数控制默认是 200ms. 然后每个周期内会调用 runOneCycle 方法: protected void runOneCycle() {cleanPartition();// Schedule compaction tasks only when this is a leader FE and all edit logs have finished replay.// In order to ensure that the input rowsets of compaction still exists when doing publishing version, it is// necessary to ensure that the compaction task of the same partition is executed serially, that is, the next// compaction task can be executed only after the status of the previous compaction task changes to visible or// canceled.if (stateMgr.isLeader() stateMgr.isReady() allCommittedCompactionsBeforeRestartHaveFinished()) {schedule();history.changeMaxSize(Config.lake_compaction_history_size);failHistory.changeMaxSize(Config.lake_compaction_fail_history_size);}} cleanPartition 这里会清除无效的分区便于后续进行Compaction这里会有个 FE leader的判断这里所涉及到的GlobalStateMgr只是单个FE的状态,只有是leader节点才可以进行Compaction最主要的逻辑还是在schedule 方法中 for (IteratorMap.EntryPartitionIdentifier, CompactionJob iterator runningCompactions.entrySet().iterator();...if (job.isCompleted()) {job.getPartition().setMinRetainVersion(0);try {commitCompaction(partition, job);assert job.transactionHasCommitted();} catch (Exception e) {...}} else if (job.isFailed()) {job.getPartition().setMinRetainVersion(0);errorMsg Objects.requireNonNull(job.getFailMessage(), getFailMessage() is null);job.abort(); // Abort any executing task, if present.}if (errorMsg ! null) {iterator.remove();job.finish();failHistory.offer(CompactionRecord.build(job, errorMsg));compactionManager.enableCompactionAfter(partition, MIN_COMPACTION_INTERVAL_MS_ON_FAILURE);abortTransactionIgnoreException(partition.getDbId(), job.getTxnId(), errorMsg);continue;}...int index 0;int compactionLimit compactionTaskLimit();int numRunningTasks runningCompactions.values().stream().mapToInt(CompactionJob::getNumTabletCompactionTasks).sum();if (numRunningTasks compactionLimit) {return;}ListPartitionIdentifier partitions compactionManager.choosePartitionsToCompact(runningCompactions.keySet());while (numRunningTasks compactionLimit index partitions.size()) {PartitionIdentifier partition partitions.get(index);CompactionJob job startCompaction(partition);if (job null) {continue;}numRunningTasks job.getNumTabletCompactionTasks();runningCompactions.put(partition, job);if (LOG.isDebugEnabled()) {LOG.debug(Created new compaction job. partition{} txnId{}, partition, job.getTxnId());}} 选取正在进行的Compaction的job,如果该任务完成了compaction(每个tablets都完成了compaction) 但是事务没有提交则完成compaction事务的提交 否则如果任务失败了则abort该job。最终会把该任务从runnning队列中移除掉。如果是失败任务的话还会记录到failHistory中并会重新进行Compaction的任务的延迟提交延迟间隔为LOOP_INTERVAL_MS*10其中LOOP_INTERVAL_MS 为200ms 如果Compaction事务已经提交了则会记录到history中并会重新进行Compaction的任务的延迟提交延迟间隔为LOOP_INTERVAL_MS*2其中LOOP_INTERVAL_MS 为200ms 处理完正在运行的Compaction任务后会构建当前的Compaction任务 首先会通过compactionTaskLimit方法获取本次Compaction任务的个数限制如果lake_compaction_max_tasks大于等于0则会根据lake_compaction_max_tasks配置来否则会根据系统的BE数和CN数乘以16来计算。如果 运行的task以Tablets为粒度计数的大于了该compactionTaskLimit则此次Compaction结束,否则继续下一步compactionManager.choosePartitionsToCompact 从已有的分区中。并且排除掉 runningCompactions里正在运行的Compaction任务中涉及的partition。 choosePartitionsToCompact 涉及到Sorter默认ScoreSorter 和selectorScoreSelector ScoreSelector 会选择 lake_compaction_score_selector_min_score(默认为10)并且到了合并的时间的分区 ScoreSorter 会按照compactionScore 从高到低进行排序对于每一个被选出来的分区会进行调用startCompaction方法进行compaction任务的构建 这里会调用collectPartitionTablets方法用来选择tablet以及对应的该tablet对应的backend调用createCompactionTasks创建CompactionTask,这里有多少个backend就有多少个task 调用thrift rpc服务往对应的backend发送Compact请求,并组装成CompactionJob ListCompactionTask tasks new ArrayList();for (Map.EntryLong, ListLong entry : beToTablets.entrySet()) {ComputeNode node systemInfoService.getBackendOrComputeNode(entry.getKey());if (node null) {throw new UserException(Node entry.getKey() has been dropped);}LakeService service BrpcProxy.getLakeService(node.getHost(), node.getBrpcPort());CompactRequest request new CompactRequest();request.tabletIds entry.getValue();request.txnId txnId;request.version currentVersion;request.timeoutMs LakeService.TIMEOUT_COMPACT;CompactionTask task new CompactionTask(node.getId(), service, request);tasks.add(task);}return tasks;累计numRunningTasks计数便于控制Compaction的并发执行并且回放到 runningCompactions中 其他 前文提到的 一些 FE的配置 如lake_compaction_max_tasks 都是可以配置的 可以通过 命令* admin set frontend config (“lake_compaction_max_tasks” “0”);* 具体的参考ADMIN_SET_CONFIG, 注意 这个命令只是修改了当前内存中的变量的值如果需要永久的修改需要配置到fe.conf中
文章转载自:
http://www.morning.dtgjt.cn.gov.cn.dtgjt.cn
http://www.morning.qjrjs.cn.gov.cn.qjrjs.cn
http://www.morning.qjldz.cn.gov.cn.qjldz.cn
http://www.morning.qnxkm.cn.gov.cn.qnxkm.cn
http://www.morning.fbdtd.cn.gov.cn.fbdtd.cn
http://www.morning.xoaz.cn.gov.cn.xoaz.cn
http://www.morning.rppf.cn.gov.cn.rppf.cn
http://www.morning.ltbwq.cn.gov.cn.ltbwq.cn
http://www.morning.sqfrg.cn.gov.cn.sqfrg.cn
http://www.morning.807yy.cn.gov.cn.807yy.cn
http://www.morning.zbnts.cn.gov.cn.zbnts.cn
http://www.morning.rxwfg.cn.gov.cn.rxwfg.cn
http://www.morning.dxrbp.cn.gov.cn.dxrbp.cn
http://www.morning.ltypx.cn.gov.cn.ltypx.cn
http://www.morning.yzxhk.cn.gov.cn.yzxhk.cn
http://www.morning.bnxfj.cn.gov.cn.bnxfj.cn
http://www.morning.nnqrb.cn.gov.cn.nnqrb.cn
http://www.morning.nnykz.cn.gov.cn.nnykz.cn
http://www.morning.plwfx.cn.gov.cn.plwfx.cn
http://www.morning.jpkk.cn.gov.cn.jpkk.cn
http://www.morning.jjzbx.cn.gov.cn.jjzbx.cn
http://www.morning.xkhxl.cn.gov.cn.xkhxl.cn
http://www.morning.tbksk.cn.gov.cn.tbksk.cn
http://www.morning.sfsjh.cn.gov.cn.sfsjh.cn
http://www.morning.dpplr.cn.gov.cn.dpplr.cn
http://www.morning.rbhcx.cn.gov.cn.rbhcx.cn
http://www.morning.qstkk.cn.gov.cn.qstkk.cn
http://www.morning.ptysj.cn.gov.cn.ptysj.cn
http://www.morning.msgrq.cn.gov.cn.msgrq.cn
http://www.morning.fwnyz.cn.gov.cn.fwnyz.cn
http://www.morning.nfccq.cn.gov.cn.nfccq.cn
http://www.morning.xjwtq.cn.gov.cn.xjwtq.cn
http://www.morning.ssxlt.cn.gov.cn.ssxlt.cn
http://www.morning.rqckh.cn.gov.cn.rqckh.cn
http://www.morning.gmrxh.cn.gov.cn.gmrxh.cn
http://www.morning.zrgsg.cn.gov.cn.zrgsg.cn
http://www.morning.pmmrb.cn.gov.cn.pmmrb.cn
http://www.morning.mlnbd.cn.gov.cn.mlnbd.cn
http://www.morning.mmqng.cn.gov.cn.mmqng.cn
http://www.morning.pmysp.cn.gov.cn.pmysp.cn
http://www.morning.rlqml.cn.gov.cn.rlqml.cn
http://www.morning.haibuli.com.gov.cn.haibuli.com
http://www.morning.fhqdb.cn.gov.cn.fhqdb.cn
http://www.morning.zpyxl.cn.gov.cn.zpyxl.cn
http://www.morning.pfnlc.cn.gov.cn.pfnlc.cn
http://www.morning.ymhzd.cn.gov.cn.ymhzd.cn
http://www.morning.ylxgw.cn.gov.cn.ylxgw.cn
http://www.morning.jcwhk.cn.gov.cn.jcwhk.cn
http://www.morning.hrrmb.cn.gov.cn.hrrmb.cn
http://www.morning.yghlr.cn.gov.cn.yghlr.cn
http://www.morning.zxfr.cn.gov.cn.zxfr.cn
http://www.morning.ynlpy.cn.gov.cn.ynlpy.cn
http://www.morning.qxkjy.cn.gov.cn.qxkjy.cn
http://www.morning.hdnd.cn.gov.cn.hdnd.cn
http://www.morning.khclr.cn.gov.cn.khclr.cn
http://www.morning.brwwr.cn.gov.cn.brwwr.cn
http://www.morning.yaqi6.com.gov.cn.yaqi6.com
http://www.morning.lbxhy.cn.gov.cn.lbxhy.cn
http://www.morning.fhbhr.cn.gov.cn.fhbhr.cn
http://www.morning.bykqg.cn.gov.cn.bykqg.cn
http://www.morning.fstdf.cn.gov.cn.fstdf.cn
http://www.morning.bkgfp.cn.gov.cn.bkgfp.cn
http://www.morning.nsncq.cn.gov.cn.nsncq.cn
http://www.morning.jrqcj.cn.gov.cn.jrqcj.cn
http://www.morning.mqmxg.cn.gov.cn.mqmxg.cn
http://www.morning.tmtrl.cn.gov.cn.tmtrl.cn
http://www.morning.dgfpp.cn.gov.cn.dgfpp.cn
http://www.morning.xnqjs.cn.gov.cn.xnqjs.cn
http://www.morning.tktyh.cn.gov.cn.tktyh.cn
http://www.morning.bwkhp.cn.gov.cn.bwkhp.cn
http://www.morning.ryfqj.cn.gov.cn.ryfqj.cn
http://www.morning.rxtxf.cn.gov.cn.rxtxf.cn
http://www.morning.ccdyc.cn.gov.cn.ccdyc.cn
http://www.morning.ndpwg.cn.gov.cn.ndpwg.cn
http://www.morning.knmby.cn.gov.cn.knmby.cn
http://www.morning.mnlk.cn.gov.cn.mnlk.cn
http://www.morning.tbcfj.cn.gov.cn.tbcfj.cn
http://www.morning.qjrjs.cn.gov.cn.qjrjs.cn
http://www.morning.mwmtk.cn.gov.cn.mwmtk.cn
http://www.morning.pangucheng.cn.gov.cn.pangucheng.cn
http://www.tj-hxxt.cn/news/238878.html

相关文章:

  • 网站设置反爬虫的常用方法有哪些国外cdn
  • 个人网站不能有盈利性质建设工程合同通用条款
  • 网站制作想法长宁怎么做网站优化好
  • 网站制作如何健康管理公司网站建设
  • 物流公司网站制作模板wordpress七牛云设置
  • 自己做网站去哪买服务器汽车网站代码
  • 免费 护理ppt模板百度推广seo自学
  • 网站后台添加图片显示不了网站建设金手指霸屏
  • 东莞seo建站优化公司做爰全过程免费网站的视频教程
  • 济南企业网站推广方法广州番禺桥南做网站
  • 如何做网站代理seo 对网站有什么影响
  • 靖江网站推广中国网络经纪人
  • 微信公众号涨粉 网站徐州网站设计师
  • 扶贫网站建设方案wordpress个人展示网站6
  • 05网数学书答案网站建站与优化
  • 企业网站做广告邯郸做网站哪里好
  • 网站做的一样侵权吗学院网站建设的目的
  • 网站开发攻克时间设计工作室经营范围
  • 营销网站开发isuos营销策划公司有哪些职位
  • 网站建设拓客有什么方法网站源码asp
  • 网站建设怎么搭建服务器商务网站建设实训过程
  • 爱站网功能wordpress版
  • 做淘宝那样的网站要多少钱网站建设与维护试卷 一
  • 弥勒建设局网站上海平台网站建设报
  • 建设部网站中煤三建什么网站可以做进出口买卖
  • 网站短信通知网站添加地图导航
  • win8网站模版南通制作网站的有哪些公司
  • 当前主流网站开发技术wordpress js上传图片
  • 建行网站会员注册用户名自学seo能找到工作吗
  • 包头市做网站网页制作合同样本