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

网站建设情况登记表能力建设和继续教育中心网站

网站建设情况登记表,能力建设和继续教育中心网站,个人申请网址什么条件,php网站开发看什么书文章目录 openGauss学习笔记-52 openGauss 高级特性-LLVM52.1 适用场景52.2 非适用场景52.3 其他因素对LLVM性能的影响52.4 LLVM使用建议 openGauss学习笔记-52 openGauss 高级特性-LLVM openGauss借助LLVM#xff08;Low Level Virtual Machine#xff09;提供的库函数Low Level Virtual Machine提供的库函数依据查询执行计划树将原本在执行器阶段才会确定查询实际执行路径的过程提前到执行初始化阶段从而规避原本查询执行时候伴随的函数调用、逻辑条件分支判断以及大量的数据读取等问题以达到提升查询性能的目的。 LLVM动态编译技术可以为每个查询生成定制化的机器码用于替换原本的通用函数。通过减少实际查询时冗余的条件逻辑判断、虚函数调用并提高数据局域性从而达到提升查询整体性能的目的。 由于LLVM需要消耗额外的时间预生成IR中间态表示并编译成机器码因此在小数据量场景或查询本身耗时较少时可能引起性能的劣化。 52.1 适用场景 支持LLVM的表达式 查询语句中存在以下的表达式支持LLVM优化 Case…when… 表达式In表达式Bool表达式 AndOrNot BooleanTest表达式 IS_NOT_UNKNOWN对应SQL语句IS NOT UNKNOWNIS_UNKNOWN对应SQL语句IS UNKNOWNIS_TRUE对应SQL语句IS TRUEIS_NOT_TRUE对应SQL语句IS NOT TRUEIS_FALSE对应SQL语句IS FALSEIS_NOT_FALSE对应SQL语句IS NOT FALSE NullTest表达式 IS_NOT_NULLIS_NULL Operator表达式Function表达式 lpadsubstringbtrimrtrimlength Nullif表达式 表达式计算支持的数据类型包括bool, tinyint, smallint, int, bigint, float4, float8, numeric, date, time, timetz, timestamp, timestamptz, interval, bpchar, varchar, text, oid。 仅当表达式出现在向量化执行引擎中Scan节点的filter、Hash Join节点中的complicate hash condition、hash join filter、hash join target, Nested Loop节点中的filter、join filter, Merge Join节点的merge join filter, merge join target, Group节点中的filter表达式时才会考虑是否使用LLVM动态编译优化。 支持LLVM的算子 Join HashJoinAgg HashAggSort 其中HashJoin算子仅支持Hash Inner Join对应的hash cond仅支持int4、bigint、bpchar类型的比较HashAgg算子仅支持针对bigint、numeric类型的sum及avg操作且group by语句仅支持int4、bigint、bpchartextvarchartimestamp类型操作同时支持count(*)聚集操作。Sort算子仅支持对int4bigintnumericbpchartextvarchar数据类型的比较操作。除此之外无法使用LLVM动态编译优化具体可通过explain performance工具进行显示。 52.2 非适用场景 不支持小数据量表使用LLVM动态编译优化。不支持生成非向量化执行路径的查询作业。 52.3 其他因素对LLVM性能的影响 LLVM优化效果不仅依赖于数据库内部具体的实现还与当前所选择的硬件环境等有关。 表达式调用C-函数个数 数据库内部针对表达式计算并未实现全codegen即在整个表达式计算中部分表达式实现了codegen部分直接调用原本的C代码。如果整个表达式计算中后者占据了主要部分使用LLVM动态编译优化可能会导致性能劣化。通过设置log_min_message的级别为DEBUG1可以查看到哪些表达式直接调用了C代码实现。 内存资源 LLVM特性的一个重要思想是保障数据的局域特性即数据应尽可能的存放在寄存器中。同时应减少数据加载因此在使用LLVM优化时应设置足够大的work_mem保证对应使用LLVM优化的执行代码整个过程在内存中实现否则可能引起性能劣化。 优化器代价估算 LLVM特性实现了简易的代价估算模型即依据当前参与节点运算的表大小决定当前节点是否考虑使用LLVM动态编译优化。如果优化器低估了实际参与运算的行数则原本可获得收益的未正常获得收益。反之亦然。 52.4 LLVM使用建议 目前LLVM在数据库内核侧已默认打开用户可结合上述的分析进行配置总体建议如下 设置合理的work_mem在允许的条件下尽可能设置较大的work_mem如果出现大量下盘则建议关闭LLVM动态编译优化(通过设置enable_codegenoff实现)。 设置合理的codegen_cost_threshold(默认值为10000)确保小数据量场景下避免使用LLVM动态编译优化。当codegen_cost_threshold的值设定后因使用LLVM动态编译优化引入性能劣化则建议增加codegen_cost_threshold的取值。 对于表达式计算使用LLVM动态编译优化如果存在大量的调用C-函数的场景建议关闭LLVM动态编译优化。 说明 在资源许可的情况下数据量越大可获得的性能提升效果越好。 点赞你的认可是我创作的动力 ⭐️ 收藏你的青睐是我努力的方向 ✏️ 评论你的意见是我进步的财富
http://wiki.neutronadmin.com/news/242991/

相关文章:

  • 网站简单设计中南路网站建设公司
  • 在哪查找网站的建设者做网站灵宝
  • 三亚网站制作公司昆明网站建站推广
  • 汕头模板建站流程中建集团招聘信息官网
  • 网站备案期间访问手机网站开发模拟
  • 建立门户公司网站最流行的网站开发语言
  • 空间设计网站大全网站开发技术课程设计总结
  • 汕头公众号建设网站正规电商平台
  • 网站优化什么意思wordpress怎么修改网页
  • 西部数码助手网站后台管理0735郴州网
  • 建网站不花钱免费建站紫色网站模板
  • 众v创业营网站建设塘沽网站建设优化
  • 郑州市做网站的wordpress 标签生成图片
  • 免费的毕业设计网站建设wordpress centos安装教程
  • 网页设计项目案例网站沃尔玛公司网站建设案例分析
  • 不同网站相似的页面百度不收录吗网络网站关键词
  • 网站跳出率怎么计算wordpress搭建后域名打不开
  • 售后服务 网站建设卸载 wordpress
  • 网站里网格怎么做重庆新闻经典论坛
  • 东莞化工网站建设wordpress cos-html-cache
  • 网页制作与网站建设的发展趋势设想seo在线网站诊断推推蛙
  • 怎么和其它网站做友情链接养殖网站模版
  • 网站程序源码深圳网站开发网站
  • 企业做网站哪家网站好茂名网站建设解决方案
  • 中铁建设集团有限公司董事长广东seo网站推广
  • 网站建设 仿站404页面模板
  • 上海个人做网站如何建设网站兴田德润可以吗
  • 张家港网站制作哪家好wordpress版本推荐
  • 做网站需要审批不vultr建站wordpress
  • 做网站策划书吧阿里巴巴官网首页方块鱼饵