Package | Description |
---|---|
com.aliyun.odps |
提供操作ODPS基本资源的类
|
com.aliyun.odps.ml |
提供机器学习相关操作类
|
com.aliyun.odps.sqa | |
com.aliyun.odps.task |
提供ODPS支持的Task定义
|
Modifier and Type | Method and Description |
---|---|
Instance |
Instances.create(Job job)
|
Instance |
Instances.create(String projectName,
Task task)
为给定的
Task 创建Instance |
Instance |
Instances.create(String projectName,
Task task,
int priority)
为给定的
Task 创建Instance |
Instance |
Instances.create(String projectName,
Task task,
Integer priority,
String runningCluster)
为给定的
Task 创建Instance |
Instance |
Instances.create(String projectName,
Task task,
Integer priority,
String runningCluster,
String jobName)
为给定的
Task 创建Instance |
Instance |
Instances.create(String projectName,
Task task,
int priority,
String runningCluster)
为给定的
Task 创建Instance |
Instance |
Instances.create(Task task)
|
Instance |
Instances.create(Task task,
int priority)
为给定的
Task 创建Instance |
Instance |
Instances.create(Task task,
int priority,
String runningCluster)
为给定的
Task 创建Instance |
Instance |
XFlows.execute(XFlows.XFlowInstance xFlowInstance) |
Instance |
XFlows.execute(XFlows.XFlowInstance xFlowInstance,
String project) |
Instance |
Instances.get(String id)
获取指定Instance
|
Instance |
Instances.get(String projectName,
String id)
获取指定Instance
|
Instance |
Session.getInstance()
返回 odps instance 对象
|
Modifier and Type | Method and Description |
---|---|
Iterable<Instance> |
Instances.iterable()
获得Instance的 iterable 迭代器
|
Iterable<Instance> |
Instances.iterable(InstanceFilter filter)
获得
Instance iterable 迭代器 |
Iterable<Instance> |
Instances.iterable(String project)
获得指定Project下,Instance iterable迭代器
|
Iterable<Instance> |
Instances.iterable(String project,
InstanceFilter filter)
|
Iterator<Instance> |
Instances.iterator()
获得Instance的迭代器
|
Iterator<Instance> |
Instances.iterator(InstanceFilter filter)
获得
Instance 迭代器 |
Iterator<Instance> |
Instances.iterator(String project)
获得指定Project下,Instance迭代器
|
Iterator<Instance> |
Instances.iterator(String project,
InstanceFilter filter)
|
Modifier and Type | Method and Description |
---|---|
abstract void |
OdpsHook.after(Instance instance,
Odps odps)
instance 结束后,框架会将 Instance 和 odps 对象传入 hook
|
void |
OdpsHooks.after(Instance instance,
Odps odps)
调用 Hook 的 after
|
String |
LogView.generateInstanceToken(Instance instance,
long hours)
生成带有 instance 访问权限的 token
|
String |
LogView.generateLogView(Instance instance,
long hours)
生成 logview 链接
|
XFlows.XFlowInstance |
XFlows.getXFlowInstance(Instance instance) |
Map<String,XFlows.XResult> |
XFlows.getXResults(Instance xInstance) |
String |
XFlows.getXSource(Instance xInstance) |
boolean |
XFlows.isXFlowInstance(Instance instance) |
void |
OdpsHook.onInstanceCreated(Instance instance,
Odps odps)
向远程提交 job 并产生 instance 时,将 Instance 和 Odps 对象传入 Hook
|
void |
OdpsHooks.onInstanceCreated(Instance instance,
Odps odps)
调用 Hook 的 ready
|
Constructor and Description |
---|
Session(Odps odps,
Instance instance) |
Modifier and Type | Method and Description |
---|---|
Instance |
OfflineModels.copy(String project,
OfflineModelInfo modelInfo)
创建离线模型, 返回负责复制离线模型的XmodelTask的instance
|
Instance |
OfflineModels.create(OfflineModelInfo modelInfo)
创建离线模型, 返回负责创建离线模型的XmodelTask的instance
|
Instance |
OfflineModels.create(String project,
OfflineModelInfo modelInfo)
创建离线模型, 返回负责创建离线模型的XmodelTask的instance
|
Modifier and Type | Method and Description |
---|---|
Instance |
SQLExecutor.getInstance()
获取当前查询Instance
|
Modifier and Type | Method and Description |
---|---|
SQLExecutorBuilder |
SQLExecutorBuilder.recoverFrom(Instance instance) |
Modifier and Type | Method and Description |
---|---|
static Instance |
SQLTask.run(Odps odps,
String sql)
运行 SQL.
特别注意,在执行数据读取操作时: 正常情况下的 task 执行后,task 的状态为 SUCCESS,并正常返回数据结果。 但是,当读取数据量超过 10MB,task 的状态将是 FAILED,返回的数据结果为 error message。 因此,大量数据的获取建议使用 TableTunnel 进行操作。示例代码: |
static Instance |
SQLCostTask.run(Odps odps,
String sql)
通过匿名Instance运行SQLCostTask
|
static Instance |
LOTTask.run(Odps odps,
String input,
boolean runSQL)
通过匿名Instance运行LOTTask
|
static Instance |
GraphTask.run(Odps odps,
String project,
GraphTask graphTask,
int priority,
String runningCluster) |
static Instance |
LOTTask.run(Odps odps,
String project,
String input,
boolean runSQL,
Map<String,String> hints,
Map<String,String> aliases)
通过匿名Instance运行LOTTask
|
static Instance |
LOTTask.run(Odps odps,
String project,
String input,
boolean runSQL,
String taskName,
Map<String,String> hints,
Map<String,String> aliases)
运行LOTTask
|
static Instance |
MoyeTask.run(Odps odps,
String project,
String plan,
Map<String,String> hints) |
static Instance |
CupidTask.run(Odps odps,
String project,
String plan,
Map<String,String> hints) |
static Instance |
SQLCostTask.run(Odps odps,
String project,
String sql,
Map<String,String> hints)
通过匿名Instance运行SQLCostTask
|
static Instance |
MoyeTask.run(Odps odps,
String project,
String plan,
Map<String,String> hints,
int priority) |
static Instance |
CupidTask.run(Odps odps,
String project,
String plan,
Map<String,String> hints,
int priority) |
static Instance |
CupidTask.run(Odps odps,
String project,
String plan,
Map<String,String> hints,
Integer priority,
String runningCluster,
String jobName) |
static Instance |
SQLTask.run(Odps odps,
String project,
String sql,
Map<String,String> hints,
Map<String,String> aliases)
运行SQL
|
static Instance |
SQLCostTask.run(Odps odps,
String project,
String sql,
String taskName,
Map<String,String> hints)
运行SQLCostTask
|
static Instance |
SQLTask.run(Odps odps,
String project,
String sql,
String taskName,
Map<String,String> hints,
Map<String,String> aliases) |
static Instance |
SQLTask.run(Odps odps,
String project,
String sql,
String taskName,
Map<String,String> hints,
Map<String,String> aliases,
int priority)
运行SQL
|
Modifier and Type | Method and Description |
---|---|
static List<Record> |
SQLTask.getResult(Instance instance)
Return 1W records at most.
|
static List<Record> |
SQLTask.getResult(Instance instance,
String taskName)
Return 1W records at most.
|
static List<Record> |
SQLTask.getResultByInstanceTunnel(Instance instance)
使用 instance tunnel 的方式获取 Anonymous task 的结果
|
static List<Record> |
SQLTask.getResultByInstanceTunnel(Instance instance,
Long limit)
使用 instance tunnel 的方式获取 Anonymous task 的结果
|
static List<Record> |
SQLTask.getResultByInstanceTunnel(Instance instance,
String taskName)
使用 instance tunnel 的方式获取 instance 结果
当数据量不大于
#SQL_TASK_RESULT_LIMIT 条时,成功;
若数据量量大于 #SQL_TASK_RESULT_LIMIT 条, 返回 SQL_TASK_RESULT_LIMIT 条结果;
可使用 SQLTask.getResultByInstanceTunnel(Instance, String, Long) 接口调整 limit 参数, 来获取更多数据; |
static List<Record> |
SQLTask.getResultByInstanceTunnel(Instance instance,
String taskName,
Long limit)
Return 1W records with completed schema info at most.
|
static ResultSet |
SQLTask.getResultSet(Instance instance)
通过instance获取记录迭代器,从而可以让用户通过迭代器逐条获取记录来避免一次性获取全量数据到本地时撑爆内存的问题
注:本接口使用 instance tunnel 实现,没有记录数限制,可获取instance对应query结果集的全量数据。
但是只有instance的owner本人可以使用本接口,且当对应project打开protection时,
需要提前在policy中为对应SQL中涉及的相应表和视图添加exception,否则无权下载
|
static ResultSet |
SQLTask.getResultSet(Instance instance,
Long limit)
通过instance获取记录迭代器,从而可以让用户通过迭代器逐条获取记录来避免一次性获取全量数据到本地时撑爆内存的问题
注:本接口使用 instance tunnel 实现,没有记录数限制,可获取instance对应query结果集的全量数据。
但是只有instance的owner本人可以使用本接口,且当对应project打开protection时,
需要提前在policy中为对应SQL中涉及的相应表和视图添加exception,否则无权下载
|
static ResultSet |
SQLTask.getResultSet(Instance instance,
String taskName)
通过instance获取记录迭代器,从而可以让用户通过迭代器逐条获取记录来避免一次性获取全量数据到本地时撑爆内存的问题
注:本接口使用 instance tunnel 实现,没有记录数限制,可获取instance对应query结果集的全量数据。
但是只有instance的owner本人可以使用本接口,且当对应project打开protection时,
需要提前在policy中为对应SQL中涉及的相应表和视图添加exception,否则无权下载
|
static ResultSet |
SQLTask.getResultSet(Instance instance,
String taskName,
Long limit)
通过instance获取记录迭代器,从而可以让用户通过迭代器逐条获取记录来避免一次性获取全量数据到本地时撑爆内存的问题
注:本接口使用 instance tunnel 实现,没有记录数限制,可获取instance对应query结果集的全量数据。
但是只有instance的owner本人可以使用本接口,且当对应project打开protection时,
需要提前在policy中为对应SQL中涉及的相应表和视图添加exception,否则无权下载
|
static ResultSet |
SQLTask.getResultSet(Instance instance,
String taskName,
Long limit,
boolean limitHint)
通过instance获取记录迭代器,从而可以让用户通过迭代器逐条获取记录来避免一次性获取全量数据到本地时撑爆内存的问题
注:
1.只有instance的owner本人可以使用本接口
2.当limitHint为true时,结果最多只能获得1条记录,超过将截断,但无需进行逐表的权限检查
3.当limitHint为false时,没有记录数限制,可获取instance对应query结果集的全量数据。但前提是需要逐表(SQL中
涉及的表与视图)对用户进行权限检查,所以当查询涉及表所在project打开protection时,需要提前在policy中为相应表
和视图添加exception,否则无权下载
|
static ResultSet |
SQLTask.getResultSet(Instance instance,
String taskName,
Long limit,
boolean limitHint,
URI tunnelEndpoint)
通过instance获取记录迭代器,从而可以让用户通过迭代器逐条获取记录来避免一次性获取全量数据到本地时撑爆内存的问题
注:本接口使用 instance tunnel 实现,没有记录数限制,可获取instance对应query结果集的全量数据。
1.只有instance的owner本人可以使用本接口
2.当limitHint为true时,结果最多只能获得1条记录,超过将截断,但无需进行逐表的权限检查
3.当limitHint为false时,没有记录数限制,可获取instance对应query结果集的全量数据。但前提是需要逐表(SQL中
涉及的表与视图)对用户进行权限检查,所以当查询涉及表所在project打开protection时,需要提前在policy中为相应表
和视图添加exception,否则无权下载
|
static List<String> |
SQLTask.getSqlWarning(Instance instance)
获取运行 SQL 的编译警告信息,可能有多条.
|
static List<String> |
SQLTask.getSqlWarning(Instance instance,
String taskName)
获取运行 SQL 的编译警告信息,可能有多条.
|
Copyright © 2020 Alibaba Cloud Computing. All rights reserved.