簡單上傳示例__SDK示例_批量數據通道_大數據計算服務-阿裏雲
import java.io.IOException;
import java.util.Date;
import com.aliyun.odps.Column;
import com.aliyun.odps.Odps;
import com.aliyun.odps.PartitionSpec;
import com.aliyun.odps.TableSchema;
import com.aliyun.odps.account.Account;
import com.aliyun.odps.account.AliyunAccount;
import com.aliyun.odps.data.Record;
import com.aliyun.odps.data.RecordWriter;
import com.aliyun.odps.tunnel.TableTunnel;
import com.aliyun.odps.tunnel.TunnelException;
import com.aliyun.odps.tunnel.TableTunnel.UploadSession;
public class UploadSample {
private static String accessId = "<your access id>";
private static String accessKey = "<your access Key>";
private static String odpsUrl = "https://service.odps.aliyun.com/api";
private static String project = "<your project>";
private static String table = "<your table name>";
private static String partition = "<your partition spec>";
public static void main(String args[]) {
Account account = new AliyunAccount(accessId, accessKey);
Odps odps = new Odps(account);
odps.setEndpoint(odpsUrl);
odps.setDefaultProject(project);
try {
TableTunnel tunnel = new TableTunnel(odps);
PartitionSpec partitionSpec = new PartitionSpec(partition);
UploadSession uploadSession = tunnel.createUploadSession(project,
table, partitionSpec);
System.out.println("Session Status is : "
+ uploadSession.getStatus().toString());
TableSchema schema = uploadSession.getSchema();
RecordWriter recordWriter = uploadSession.openRecordWriter(0);
Record record = uploadSession.newRecord();
for (int i = 0; i < schema.getColumns().size(); i++) {
Column column = schema.getColumn(i);
switch (column.getType()) {
case BIGINT:
record.setBigint(i, 1L);
break;
case BOOLEAN:
record.setBoolean(i, true);
break;
case DATETIME:
record.setDatetime(i, new Date());
break;
case DOUBLE:
record.setDouble(i, 0.0);
break;
case STRING:
record.setString(i, "sample");
break;
default:
throw new RuntimeException("Unknown column type: "
+ column.getType());
}
}
for (int i = 0; i < 10; i++) {
recordWriter.write(record);
}
recordWriter.close();
uploadSession.commit(new Long[]{0L});
System.out.println("upload success!");
} catch (TunnelException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
構造器舉例說明:PartitionSpec(String spec):通過字符串構造此類對象。參數:spec: 分區定義字符串,比如: pt=’1’,ds=’2’。因此程序中應該這樣配置:private static String partition = “pt=’XXX’,ds=’XXX’”;
最後更新:2016-07-12 15:32:02
上一篇:
示例概要__SDK示例_批量數據通道_大數據計算服務-阿裏雲
下一篇:
簡單下載示例__SDK示例_批量數據通道_大數據計算服務-阿裏雲
查詢物理專線列表__高速通道相關接口_API 參考_雲服務器 ECS-阿裏雲
雲郵集團版創建郵件域__控製台操作_產品使用問題_企業郵箱-阿裏雲
登錄 Linux 實例__遠程連接_實例_用戶指南_雲服務器 ECS-阿裏雲
便捷的數據操作__應用場景_產品簡介_數據管理-阿裏雲
什麼是對象存儲 OSS_阿裏雲幫助中心-阿裏雲,領先的雲計算服務提供商
使用counter示例__示例程序_MapReduce_大數據計算服務-阿裏雲
刪除自定義轉碼模板__自定義轉碼模板接口_API使用手冊_媒體轉碼-阿裏雲
如何減少或杜絕違法信息出現?__規則FAQ_常見問題_阿裏雲規則-阿裏雲
[4]授權策略示例__子賬號訪問MNS_控製台使用幫助_消息服務-阿裏雲
開啟Pipeline__Pipeline管理_Console參考手冊_數據集成-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲