public class TableTunnel.DownloadSession extends Object
DownloadSession 表示从 ODPS 表中下载数据的会话,一般通过TableTunnel来创建。
Session ID 是 Session 的唯一标识符,可通过 getId() 获取。
表中Record总数可通过 getRecordCount() 得到,用户可根据 Record 总数来启动并发下载。
DownloadSession 通过创建 RecordReader 来完成数据的读取,需指定读取记录的起始位置和数量
RecordReader 对应HTTP请求的超时时间为 300S,超时后 service 端会主动关闭。
| 限定符和类型 | 方法和说明 |
|---|---|
String |
getId()
获取会话ID
|
long |
getRecordCount()
获取可下载的记录总数
|
TableSchema |
getSchema()
获取数据对应的表结构
|
TableTunnel.DownloadStatus |
getStatus()
获取会话状态
|
RecordReader |
openRecordReader(long start,
long count)
打开
RecordReader用来读取记录 |
RecordReader |
openRecordReader(long start,
long count,
boolean compress)
打开
RecordReader用来读取记录 |
RecordReader |
openRecordReader(long start,
long count,
boolean compress,
List<Column> columns)
打开
RecordReader用来读取记录 |
RecordReader |
openRecordReader(long start,
long count,
com.aliyun.odps.tunnel.io.CompressOption compress)
打开
RecordReader用来读取记录 |
RecordReader |
openRecordReader(long start,
long count,
com.aliyun.odps.tunnel.io.CompressOption compress,
List<Column> columns)
打开
RecordReader用来读取记录 |
public RecordReader openRecordReader(long start, long count) throws TunnelException, IOException
RecordReader用来读取记录start - 本次要读取记录的起始位置count - 本次要读取记录的数量TunnelExceptionIOExceptionpublic RecordReader openRecordReader(long start, long count, boolean compress) throws TunnelException, IOException
RecordReader用来读取记录start - 本次要读取记录的起始位置count - 本次要读取记录的数量compress - 数据传输是否进行压缩;即使设置了压缩选项,如果server 不支持压缩,传输数据也不会被压缩TunnelExceptionIOExceptionpublic RecordReader openRecordReader(long start, long count, com.aliyun.odps.tunnel.io.CompressOption compress) throws TunnelException, IOException
RecordReader用来读取记录start - 本次要读取记录的起始位置count - 本次要读取记录的数量compress - 数据传输是否进行压缩;即使设置了压缩选项,如果server 不支持压缩,传输数据也不会被压缩TunnelExceptionIOExceptionpublic RecordReader openRecordReader(long start, long count, boolean compress, List<Column> columns) throws TunnelException, IOException
RecordReader用来读取记录start - 本次要读取记录的起始位置count - 本次要读取记录的数量compress - 数据传输是否进行压缩;即使设置了压缩选项,如果server 不支持压缩,传输数据也不会被压缩columns - 本次需要下载的列TunnelExceptionIOExceptionpublic RecordReader openRecordReader(long start, long count, com.aliyun.odps.tunnel.io.CompressOption compress, List<Column> columns) throws TunnelException, IOException
RecordReader用来读取记录start - 本次要读取记录的起始位置count - 本次要读取记录的数量compress - 数据传输是否进行压缩;即使设置了压缩选项,如果server 不支持压缩,传输数据也不会被压缩columns - 本次需要下载的列TunnelExceptionIOExceptionpublic TableSchema getSchema()
TableSchemapublic long getRecordCount()
public String getId()
public TableTunnel.DownloadStatus getStatus() throws TunnelException, IOException
Copyright © 2015 Alibaba Cloud Computing. All rights reserved.