PyODPS提供了一系列的配置选项,可通过odps.options获得,如下面的例子。

from odps import options
# 设置所有输出表的生命周期(lifecycle 选项)
options.lifecycle = 30
# 使用Tunnel下载string类型时使用bytes(tunnel.string_as_binary选项)
options.tunnel.string_as_binary = True
# PyODPS DataFrame 用ODPS执行时,参照下面dataframe相关配置,sort时设置limit到一个比较大的值
options.df.odps.sort.limit = 100000000

下面列出了可配的ODPS选项。

通用配置

选项 说明 默认值
end_point ODPS Endpoint None
default_project 默认Project None
log_view_host LogView主机名 None
log_view_hours LogView保持时间(小时) 24
local_timezone 使用的时区,True表示本地时间,False表示UTC, 也可用pytz的时区 1
lifecycle 所有表生命周期 None
temp_lifecycle 临时表生命周期 1
biz_id 用户ID None
verbose 是否打印日志 False
verbose_log 日志接收器 None
chunk_size 写入缓冲区大小 1496
retry_times 请求重试次数 4
pool_connections 缓存在连接池的连接数 10
pool_maxsize 连接池最大容量 10
connect_timeout 连接超时 5
read_timeout 读取超时 120
api_proxy API代理服务器 None
data_proxy 数据代理服务器 None
completion_size 对象补全列举条数限制 10
notebook_repr_widget 使用交互式图表 True
sql.settings ODPS SQL运行全局hints None
sql.use_odps2_extension 启用MaxCompute 2.0语言扩展 False

数据上传/下载配置

选项 说明 默认值
tunnel.endpoint Tunnel Endpoint None
tunnel.use_instance_tunnel 使用Instance Tunnel获取执行结果 True
tunnel.limit_instance_tunnel 是否限制Instance Tunnel获取结果的条数 None
tunnel.string_as_binary 在string类型中使用bytes而非 unicode False

DataFrame 配置

选项 说明 默认值
interactive 是否在交互式环境 根据检测值
df.analyze 是否启用非ODPS内置函数 True
df.optimize 是否开启DataFrame全部优化 True
df.optimizes.pp 是否开启DataFrame谓词下推优化 True
df.optimizes.cp 是否开启DataFrame列剪裁优化 True
df.optimizes.tunnel 是否开启DataFrame使用tunnel优化执行 True
df.quote ODPS SQL后端是否用``来标记字段和表名 True
df.libraries DataFrame运行使用的第三方库(资源名) None
df.supersede_libraries 使用自行上传的numpy替换服务中的版本 False
df.odps.sort.limit DataFrame有排序操作时,默认添加的limit条数 10000

机器学习配置

选项 说明 默认值
ml.xflow_settings Xflow执行配置 None
ml.xflow_project 默认Xflow工程名 algo_public
ml.use_model_transfer 是否使用ModelTransfer获取模型 PMML False
ml.model_volume 在使用ModelTransfer时使用的 Volume名称 pyodps_volume