摘要:本地數據導入本地數據導入本地數據導入本篇目錄注意事項注意事項操作步驟操作步驟注意事項注意事項注意事項用于將本地文件導入到中。建議一個導入請求的數據量控制在以內。
創建csv文件lineorder.csv放到之前創建的云主機數據盤/data目錄下
1|2|28720|133109|1289|19960502|3-MEDIUM|0|44|5025240|11485668|8|4623220|68526|0|19960722|RAIL
2|3|28720|152761|373|19960502|3-MEDIUM|0|3|544128|11485668|4|522362|108825|1|19960602|MAIL
3|1|6415|176345|1060|19970713|4-NOT SPECI|0|50|7106700|6890656|4|6822432|85280|1|19970907|FOB
4|1|11090|25360|43|19930728|3-MEDIUM|0|24|3084864|9275090|2|3023166|77121|3|19931007|MAIL
5|2|11090|10463|1321|19930728|3-MEDIUM|0|46|6317916|9275090|8|5812482|82407|6|19930921|RAIL
6|1|22681|7272|1235|19930725|1-URGENT|0|32|3773664|6321665|7|3509507|70756|1|19930930|REG AIR
7|2|22681|6452|1387|19930725|1-URGENT|0|7|950915|6321665|4|912878|81507|0|19930923|SHIP
8|3|22681|37131|1202|19930725|1-URGENT|0|18|1922634|6321665|4|1845728|64087|1|19930828|FOB
9|1|22013|32255|305|19960831|2-HIGH|0|5|593625|3762529|4|569880|71235|3|19961119|MAIL
10|2|22013|96127|478|19960831|2-HIGH|0|28|3144736|3762529|1|3113288|67387|2|19961001|AIR
創建數據庫及數據表通過mysql-client連接集群
mysql -uroot -h<任一frontend節點IP地址> -P9030 -p<創建集群時設置的密碼>
建庫建表CREATE DATABASE IF NOT EXISTS ssb;
CREATE TABLE `lineorder` (
`lo_orderkey` bigint(20) NOT NULL COMMENT "",
`lo_linenumber` bigint(20) NOT NULL COMMENT "",
`lo_custkey` int(11) NOT NULL COMMENT "",
`lo_partkey` int(11) NOT NULL COMMENT "",
`lo_suppkey` int(11) NOT NULL COMMENT "",
`lo_orderdate` int(11) NOT NULL COMMENT "",
`lo_orderpriority` varchar(16) NOT NULL COMMENT "",
`lo_shippriority` int(11) NOT NULL COMMENT "",
`lo_quantity` bigint(20) NOT NULL COMMENT "",
`lo_extendedprice` bigint(20) NOT NULL COMMENT "",
`lo_ordtotalprice` bigint(20) NOT NULL COMMENT "",
`lo_discount` bigint(20) NOT NULL COMMENT "",
`lo_revenue` bigint(20) NOT NULL COMMENT "",
`lo_supplycost` bigint(20) NOT NULL COMMENT "",
`lo_tax` bigint(20) NOT NULL COMMENT "",
`lo_commitdate` bigint(20) NOT NULL COMMENT "",
`lo_shipmode` varchar(11) NOT NULL COMMENT ""
)
PARTITION BY RANGE(`lo_orderdate`)
(PARTITION p1992 VALUES [("-2147483648"), ("19930101")),
PARTITION p1993 VALUES [("19930101"), ("19940101")),
PARTITION p1994 VALUES [("19940101"), ("19950101")),
PARTITION p1995 VALUES [("19950101"), ("19960101")),
PARTITION p1996 VALUES [("19960101"), ("19970101")),
PARTITION p1997 VALUES [("19970101"), ("19980101")),
PARTITION p1998 VALUES [("19980101"), ("19990101")))
DISTRIBUTED BY HASH(`lo_orderkey`) BUCKETS 10
PROPERTIES (
"replication_num" = "3"
);
使用以下命令在之前創建的云主機導入本地數據curl --location-trusted -u root:<創建集群時設置的密碼> -H "column_separator:|" -T /data/lineorder.csv http://<任一Frontend節點IP地址>:8030/api/ssb/lineorder/_stream_load
Java 代碼示例(這里通過一個簡單的 JAVA 示例來執行 Stream Load)package demo.doris;
import org.apache.commons.codec.binary.Base64;
import org.apache.http.HttpHeaders;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPut;
import org.apache.http.entity.FileEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.DefaultRedirectStrategy;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
/*
這是一個 Doris Stream Load 示例,需要依賴
org.apache.httpcomponents
httpclient
4.5.13
*/
public class DorisStreamLoader {
//可以選擇填寫 frontend 地址以及 frontend 的 http_port,但須保證客戶端和 BE 節點的連通性。
private final static String HOST = "your_host";//集群詳情給出的連接地址,也就是Frontend的master角色對應的ip
private final static int PORT = 8030;
private final static String DATABASE = "ssb"; // 要導入的數據庫
private final static String TABLE = "lineorder"; // 要導入的表
private final static String USER = "root";
private final static String PASSWD = ""; // 創建集群時的密碼
private final static String LOAD_FILE_NAME = "/path/to/1.txt"; // 要導入的本地文件路徑
private final static String loadUrl = String.format("http://%s:%s/api/%s/%s/_stream_load",
HOST, PORT, DATABASE, TABLE);
private final static HttpClientBuilder httpClientBuilder = HttpClients
.custom()
.setRedirectStrategy(new DefaultRedirectStrategy() {
@Override
protected boolean isRedirectable(String method) {
// 如果連接目標是 frontend,則需要處理 307 redirect。
return true;
}
});
public void load(File file) throws Exception {
try (CloseableHttpClient client = httpClientBuilder.build()) {
HttpPut put = new HttpPut(loadUrl);
put.setHeader(HttpHeaders.EXPECT, "100-continue");
put.setHeader(HttpHeaders.AUTHORIZATION, basicAuthHeader(USER, PASSWD));
// 可以在 Header 中設置 stream load 相關屬性,這里我們設置 label 和 column_separator。
put.setHeader("label","label1");
put.setHeader("column_separator",",");
// 設置導入文件。
// 這里也可以使用 StringEntity 來傳輸任意數據。
FileEntity entity = new FileEntity(file);
put.setEntity(entity);
try (CloseableHttpResponse response = client.execute(put)) {
String loadResult = "";
if (response.getEntity() != null) {
loadResult = EntityUtils.toString(response.getEntity());
}
final int statusCode = response.getStatusLine().getStatusCode();
if (statusCode != 200) {
throw new IOException(
String.format("Stream load failed. status: %s load result: %s", statusCode, loadResult));
}
System.out.println("Get load result: " + loadResult);
}
}
}
private String basicAuthHeader(String username, String password) {
final String tobeEncode = username + ":" + password;
byte[] encoded = Base64.encodeBase64(tobeEncode.getBytes(StandardCharsets.UTF_8));
return "Basic " + new String(encoded);
}
public static void main(String[] args) throws Exception{
DorisStreamLoader loader = new DorisStreamLoader();
File file = new File(LOAD_FILE_NAME);
loader.load(file);
}
}
使用mysql-client非交互模式查詢驗證mysql -uroot -h<任一Frontend節點IP地址> -P9030 -p<創建集群時設置的密碼> -e "select * from ssb.lineorder";
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/127003.html
摘要:概覽概覽概覽產品動態產品介紹什么是云數據倉庫產品優勢應用場景基本概念使用限制快速上手操作指南管理集群配置升降級節點擴容重啟實例重置管理員密碼刪除集群連接集群數據導入本地數據導入數據導入通過導入開發指南數據類型語法創建庫創建表創建視圖插入數 概覽概覽產品動態產品介紹什么是云數據倉庫UDoris產品優勢應用場景基本概念使用限制快速上手操作指南管理集群Backend配置升降級Frontend節點擴...
摘要:重啟集群重啟集群重啟集群當您需要重啟集群時,登錄賬號進入到用戶控制臺,在全部產品下搜索或者數據倉庫下選擇數據倉庫,進入到數據倉庫控制臺下,選擇操作重啟注意重啟集群為高危操作,集群將處于重啟中持續數秒,建議無必要時不要隨意重啟實例,這將會 重啟集群當您需要重啟集群時,登錄UCloud賬號進入到用戶控制臺,在全部產品下搜索或者數據倉庫下選擇數據倉庫 UDW Doris,進入到數據倉庫UDoris...
摘要:如何連接云數據倉庫如何連接云數據倉庫如何連接云數據倉庫為保證安全,云數據倉庫僅提供內網網絡,您連接集群時可以配合同一地域的云主機或者網絡產品使用。 產品購買與使用本篇目錄為什么只提供一種云盤類型?配置升降級對集群有什么影響?配置升級有什么建議?如何連接云數據倉庫UDoris?為什么只提供一種云盤類型?Doris的存儲特性對磁盤吞吐量要求很高,為保證Doris的性能優勢, 因此僅提供RSSD云...
摘要:聚合函數函數名稱描述語法統計行數或者非值個數求最小值求最大值統計行數或者非值個數去重計算輸入的并集,返回新的計算輸入的并集,返回其基數計算和類型的列中不同值的個數,返回值和相同非精確快速去重列的類型不能是或者且表為模型聚合函數函數名稱描述語法 sum統計行數或者非NULL值個數sum(expr)min求最小值min(column)max求最大值max(column)count統計行數或...
摘要:數據排序使用的列數,取最前面幾列,不能超過總的列數。示例創建一個動態分區表。創建外部表創建外部表在創建外部表的目的是可以通過訪問外部數據庫。創建表時,關于和的數量和數據量的建議。 建表(Create Table)創建表語法:CREATE TABLE [IF NOT EXISTS] [database.]table ( column_definition_list, [inde...
摘要:概覽概覽概覽產品動態產品介紹什么是云數據倉庫產品優勢應用場景基本概念使用限制快速上手操作指南管理集群配置升降級重啟實例重置管理員密碼刪除集群連接集群數據同步本地數據導入數據導入數據導入間數據導入開發指南數據類型語法創建庫創建表創建視圖插入 概覽概覽產品動態產品介紹什么是云數據倉庫 UClickHouse產品優勢應用場景基本概念使用限制快速上手操作指南管理集群配置升降級重啟實例重置管理員密碼刪...
閱讀 291·2024-11-07 18:25
閱讀 130367·2024-02-01 10:43
閱讀 868·2024-01-31 14:58
閱讀 828·2024-01-31 14:54
閱讀 82768·2024-01-29 17:11
閱讀 3052·2024-01-25 14:55
閱讀 1985·2023-06-02 13:36
閱讀 3033·2023-05-23 10:26