详情页标题前

阿里云云原生大数据计算服务 MaxComputeSET-云淘科技

详情页1

对当前Session设置MaxCompute系统变量。

命令格式

set =

参数说明

  • KEY:属性名称。

  • VALUE:属性值。

    Session级的常用属性如下。

    属性名称

    属性描述

    取值范围

    console.sql.result.instancetunnel

    InstanceTunnel开关。详情请参见使用说明。

    • True:打开

    • False:关闭

    odps.stage.mapper.mem

    设置每个Map Worker的内存大小。

    256 MB~12288 MB。默认值为1024 MB。

    odps.stage.reducer.mem

    设置每个Reduce Worker的内存大小。

    256 MB~12288 MB。默认值为1024 MB。

    odps.stage.joiner.mem

    设置每个Join Worker的内存大小。

    256 MB~12288 MB。默认值为1024 MB。

    odps.stage.mem

    设置MaxCompute指定任务下所有Worker的内存大小。优先级低于odps.stage.mapper.mem、odps.stage.reducer.mem和odps.stage.joiner.mem属性。

    256 MB~12288 MB。无默认值。

    odps.stage.mapper.split.size

    修改每个Map Worker的输入数据量,即输入文件的分片大小,从而间接控制每个Map阶段下Worker的数量。

    说明

    SQL语句中使用Limit,会限制Limit作用的Worker单并发运行。因此在设置该配置项的时候,SQL语句中应避免使用Limit。

    单位MB,默认值为256 MB。

    odps.stage.reducer.num

    修改每个Reduce阶段的Worker数量。

    说明

    SQL语句中使用Limit,会限制Limit作用的Worker单并发运行。因此在设置该配置项的时候,SQL语句中应避免使用Limit。

    无默认值。

    odps.stage.joiner.num

    修改每个Join阶段的Worker数量。

    说明

    SQL语句中使用Limit,会限制Limit作用的Worker单并发运行。因此在设置该配置项的时候,SQL语句中应避免使用Limit。

    无默认值。

    odps.stage.num

    修改MaxCompute指定任务下所有Worker的并发数,优先级低于odps.stage.mapper.split.size、odps.stage.reducer.mem和odps.stage.joiner.num属性。

    说明

    SQL语句中使用Limit,会限制Limit作用的Worker单并发运行。因此在设置该配置项的时候,SQL语句中应避免使用Limit。

    无默认值。

    odps.sql.reshuffle.dynamicpt

    动态分区开关,以避免拆分动态分区时产生过多小文件。

    • True:打开

    • False:关闭

    说明

    如果生成的动态分区个数很少,建议将值设为False,以避免数据倾斜。

    odps.sql.type.system.odps2

    2.0新数据类型开关。2.0数据类型详情请参见2.0数据类型版本。

    • True:打开

    • False:关闭

    odps.sql.hive.compatible

    Hive兼容模式开关。打开Hive兼容模式后,MaxCompute才支持Hive指定的各种语法,例如inputRecordReaderoutputRecordReaderSerde。Hive兼容数据类型详情请参见Hive兼容数据类型版本。

    • True:打开

    • False:关闭

    odps.sql.executionengine.coldata.deep.buffer.size.max

    设置MaxCompute在写表过程中,为复杂数据类型的列预先申请的缓存大小,以便提高写入性能。

    如果输出的表中的复杂数据类型过多或输出表中含有的某个单独的复杂类型变量大小过大,可以设置该参数。

    • 如果输出的表有3个列的Schema是复杂数据类型,例如列类型为(STRING、MAP、STRUCT、ARRAY或BINARY),则默认情况下MaxCompute将会为写表操作预留64 MB×3大小的内存。每一列预先申请的缓存将会用来存放这一列batch row count行的数据。

    • 如果预估表的复杂类型变量占用的空间比较小,建议调小此值。例如,如果每个复杂类型变量大小不会超过1024 Byte,同时batch row count值使用的是默认值(1024),则可以将属性值设置为1024×1024,示例如下。

      set odps.sql.executionengine.coldata.deep.buffer.size.max=1048576;
    • 如果您预先知道每个复杂类型的值都在7 MB~8 MB间,同时指定了batch row count为32,则该值可以被调整为8 MB×32。

    • 如果输出的表有复杂类型,或MAPJOIN小表有复杂类型,调整该值会影响到作业执行过程中使用的内存。根据前面的计算方法,值设的过大有可能导致OOM(Out Of Memory)内存溢出。

    单位Byte,默认值为67108864 Byte。

    odps.task.quota.preference.tag

    指定作业的Quota组(即MaxCompute管家中的配额组)。使用包年包月资源的项目空间可以通过该属性指定作业使用某个具体的二级Quota组。如果提交作业时设置的Quota Tag和某个Quota组属性中的Quota Tag相等,作业就会被优先调度到这个Quota组中。否则,会被调度到所属项目空间指定的Quota组中。

    执行如下语句进行设置。

    set odps.task.quota.preference.tag = tag_name;

    说明

    该属性当前仅支持SQL作业。

    tag_name为MaxCompute管家中配额组的配额组标签。配额组只能取作业所属项目空间Owner所在区域的配额组。tag_name只允许使用字母、数字和下划线(_)。

    说明

    仅当您在MaxCompute管家中为配额组设置了标签后,才可以使用odps.task.quota.preference.tag参数。

    odps.sql.udf.getjsonobj.new

    设置GET_JSON_OBJECT函数的返回行为是否开启保留原始字符串的方式。

    自2021年1月21日及之后新创建的MaxCompute项目中,GET_JSON_OBJECT函数的返回行为默认为保留原始字符串。2021年1月21日之前创建的MaxCompute项目中,GET_JSON_OBJECT函数的返回行为默认为JSON保留字符转义,以免行为变更对存量作业造成影响。

    更多GET_JSON_OBJECT函数信息,请参见GET_JSON_OBJECT。

    • True:打开

    • False:关闭

    odps.sql.udf.jvm.memory

    设置UDF JVM Heap使用的最大内存。

    某些UDF在内存计算、排序的数据量比较大时,会报内存溢出错误,这时候可以调大该参数,但该方法只能暂时缓解,您需要从业务上去优化UDF代码。

    256 MB~12288 MB。默认值为1024 MB。

    odps.sql.udf.timeout

    设置UDF超时时间。

    0s~3600s。默认值为600s。

    LabelSecurity

    设置是否开启LabelSecurity安全机制。更多LabelSecurity安全机制信息,请参见Label权限控制。

    • True:打开

    • False:关闭

    odps.sql.session.resources

    指定UDT引用的资源,可以指定多个,用英文逗号(,)分隔。更多引用资源信息,请参见UDT概述。

    上传的资源

    odps.sql.udt.display.tostring

    设置是否开启将所有以UDT为最终输出的列Wrap上java.util.Objects.toString(...)的机制。

    • True:打开

    • False:关闭

    odps.sql.session.java.imports

    指定UDT引用的Java Package,可以指定多个,用英文逗号(,)分隔。更多引用Java Package信息,请参见UDT概述。

    上传的Java Package

    CheckPermissionUsingACL

    设置是否开启ACL授权机制。更多ACL授权信息,请参见MaxCompute权限。

    • True:打开

    • False:关闭

    CheckPermissionUsingPolicy

    设置是否开启Policy授权机制。更多Policy授权信息,请参见Policy权限控制。

    • True:打开

    • False:关闭

    ObjectCreatorHasAccessPermission

    设置对象创建者是否默认拥有访问权限。

    • True:允许对象创建者默认拥有访问权限

    • False:禁止对象创建者默认拥有访问权限

    ObjectCreatorHasGrantPermission

    设置对象创建者是否默认拥有授权权限。

    • True:允许对象创建者默认拥有授权权限

    • False:禁止对象创建者默认拥有授权权限

    ProjectProtection

    设置是否开启数据保护机制。更多数据保护机制信息,请参见数据保护机制。

    • True:打开

    • False:关闭

    odps.output.field.formatter

    设置SQL查询结果的动态脱敏规则。更多动态脱敏信息,请参见MaxCompute数据动态脱敏。

    自定义的动态脱敏规则

    odps.isolation.session.enable

    设置是否在单Session级别开启动态脱敏。更多动态脱敏信息,请参见MaxCompute数据动态脱敏。

    • True:打开

    • False:关闭

    odps.sql.skewjoin

    设置是否开启SKEWJOIN功能,解决长尾问题。

    • True:打开

    • False:关闭

    odps.sql.skewinfo

    设置SKEWJOIN的目标Key及对应的值。更多信息,请参见数据倾斜调优。

    odps.sql.reducer.instances

    设置哈希桶的数量。更多哈希桶信息,请参见表操作。

    0~4000

    odps.sql.udf.ppr.deterministic

    设置是否在自定义函数中开启分区裁剪机制。更多分区裁剪信息请参见WHERE子句(where_condition)。

    • True:打开

    • False:关闭

    odps.sql.udf.ppr.to.subquery

    设置是否开启忽略分区裁剪回填报错问题机制。更多分区裁剪信息请参见WHERE子句(where_condition)。

    • True:打开

    • False:关闭

    odps.optimizer.enable.range.partial.repartitioning

    设置Range聚簇表是否开启Shuffle Remove机制。

    • True:打开

    • False:关闭

    odps.optimizer.skew.join.topk.num

    设置优化器运行Aggregate时获取的热值数量。详情请参见SKEWJOIN HINT。

    odps.optimizer.stat.collect.auto

    设置是否开启Freeride功能。开启后自动收集表的Column Stats。详情请参见优化器信息收集。

    • True:打开

    • False:关闭

    odps.optimizer.stat.collect.plan

    设置收集计划,收集指定列的指定Column Stats指标。详情请参见优化器信息收集。

    odps.sql.executionengine.batch.rowcount

    设置SQL引擎一次同时处理的数据行数。默认值是1024。一般不需要手动调整,遇到单行大字段导致OOM或UDF性能较差导致的超时场景需要手动调小。建议不要设置太小否则会影响性能。

    1~1024

    odps.sql.external.net.vpc

    设置是否开启外部表VPC支持。详情请参见HBase外部表(HBase标准版或增强版)、RDS外部表或Hologres外部表。

    • True:打开

    • False:关闭

    odps.sql.groupby.position.alias

    设置是否开启将groupby中的整型常量做为SELECT的列序号处理。

    • True:打开

    • False:关闭

    odps.sql.groupby.skewindata

    设置是否开启groupby防倾斜机制。

    • True:打开

    • False:关闭

    odps.sql.orderby.position.alias

    设置是否开启将orderby中的整型常量做为SELECT的列序号处理。

    • True:打开

    • False:关闭

    odps.sql.groupby.orderby.position.alias

    设置是否开启将group byorder by中的整型常量做为SELECT的列序号处理。推荐使用该参数。

    说明

    对于存量项目,如果在项目级别开启该参数,可能会对您已有的任务解析和执行操作造成影响,请确认并务必保证存量任务在此参数设置下仍可以按照原有逻辑正确执行后,再修改该参数。否则,请在Session级别设置。

    • True:打开

    • False:关闭

    odps.sql.mapjoin.memory.max

    设置MAPJOIN场景小表读入内存后的大小,单位MB。

    0 MB~8192 MB

    odps.sql.metering.value.max

    设置单SQL消费限制值。详情请参见消费监控告警。

    odps.sql.python.version

    设置运行SQL句的Python版本。

    • cp27

    • cp37

    odps.sql.select.output.format

    设置是否在MaxCompute客户端的返回结果中显示表头信息。详情请参见使用客户端(odpscmd)连接。

    • {""needHeader"":false,""fieldDelim"":""""}:不显示表头信息。

    • {""needHeader"":true,""fieldDelim"":""""}:显示表头信息

    odps.sql.timezone

    设置MaxCompute项目的时区。更多时区信息,请参见时区配置操作。

    odps.sql.unstructured.data.oss.use.https

    设置访问外部表时,是否需要开启底层通过HTTPS方式获取数据的机制。更多信息,请参见创建OSS外部表。

    • True:打开

    • False:关闭

    odps.sql.unstructured.oss.commit.mode

    设置是否开启通过OSS的分片上传功能向OSS外部表写入数据。详情请参见将数据写入OSS。

    • True:打开

    • False:关闭

使用示例

--调整每个Mapper读取数据的大小为256 MB。
set odps.stage.mapper.split.size=256;

相关命令

SHOW:显示set命令设置的属性。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/158465.html

(0)
上一篇 2023年12月10日 上午1:19
下一篇 2023年12月10日 上午1:20
详情页2

相关推荐

  • 阿里云RDS数据库数据迁移方案概览-云淘科技

    RDS提供了多种数据迁移方案,可满足不同上云或迁云的业务需求,使您可以在不影响业务的情况下将数据在其他数据库与阿里云云数据库RDS之间平滑迁移。 适用场景 文档链接 (迁移上云)自建数据库迁移至阿里云 MySQL 5.7、8.0自建数据库全量上云 从自建MySQL迁移至RDS MySQL实例 从通过专线、VPN网关或智能接入网关接入的自建MySQL迁移至RD…

    阿里云数据库 2023年12月9日
  • 阿里云日志服务SLS从MetricStore到MetricStore-云淘科技

    定时SQL功能用于定时分析数据、存储聚合数据、投影与过滤数据。日志服务支持源MetricStore中的数据通过定时SQL处理后存储到目标MetricStore中。 前提条件 已采集数据到源MetricStore。具体操作,请参见接入时序数据。 已创建目标MetricStore。具体操作,请参见创建MetricStore。 操作步骤 重要 目前,定时SQL功能…

    2023年12月10日
  • 阿里云对象存储OSS监控、诊断和故障排除-云淘科技

    相对于传统应用程序,开发云端应用虽然降低了用户在基础设施搭建、运维等方面的成本,但却增大了监控、诊断和故障排查的难度。OSS存储服务为您提供了丰富的监控和日志信息,帮助您深刻洞察程序行为,及时发现并快速定位问题。 本文主要描述如何使用OSS监控服务、日志记录功能以及其他第三方工具来监控、诊断和排查应用业务使用OSS存储服务时遇到的相关问题,帮助您达到如下目标…

    阿里云对象存储 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云日志服务SLS使用前须知-云淘科技

    阿里云日志服务联合云安全中心联合推出日志分析功能,提供风险威胁数据的实时采集、查询与分析、加工、消费等一站式服务,帮助您全面了解、有效处理服务器的安全隐患,实现对云上资产的集中安全管理。 本文介绍云安全中心日志分析功能相关的资产详情、费用及使用限制。 资产详情 专属Project和Logstore 开通日志分析功能后,系统默认创建一个名为sas-log-阿里…

    阿里云日志服务SLS 2023年12月10日
  • 阿里云RDS数据库功能概览-云淘科技

    本文介绍RDS PostgreSQL各版本支持的功能,便于您根据自身需要选购实例或查询已购实例的功能。 在售版本功能概览 功能 PostgreSQL 16 PostgreSQL 15、14 PostgreSQL 13 PostgreSQL 12、11 高可用系列 基础系列 高可用系列 基础系列 高可用系列 基础系列 高可用系列 基础系列 包年包月/按量付费 …

    阿里云数据库 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。