分析型資料庫(AnalyticDB)是阿裡巴巴自主研發的海量資料實時高并發線上分析(Realtime OLAP)雲計算服務。使得您可以在毫秒級時機關時間内針對千億級資料進行即時的多元分析透視和業務探索。分析型資料庫對海量資料的自由計算和極速響應能力,能讓您在瞬息之間進行靈活的資料探索,快速發現資料價值,并可直接嵌入業務系統,為終端使用者提供分析服務。
實時計算支援使用AnalyticDB作為結果輸出。示例代碼如下。
-
CREATE TABLE stream_test_hotline_agent (
-
id INTEGER,
-
len BIGINT,
-
content varchar,
-
primary key(id)
-
) WITH (
-
type='ads',
-
url='jdbc:mysql:/XXXXXXX/ads_test',
-
tableName='blink_test',
-
userName='DXP_6XXXXXXXyun.com',
-
password='1XXXXXX4',
-
batchSize='500'
-
);
注意:在聲明AnalyticDB primary key時一定要和資料庫裡的主鍵一緻,包括大小寫也要一緻。否則會出現數組索引越界的異常情況。
參數 | 注釋說明 | 備注 |
---|---|---|
url | jdbc連接配接位址 | AnalyticDB詳情位址 ,例如:(jdbc:mysql://mydbname-xxxx.ads-hz.aliyuncs.com:5544/my_ads_db) |
tableName | 表名 | 無 |
username | 賬号 | |
password | 密碼 | |
maxRetryTimes | 寫入重試次數 | 可選,預設為10 |
bufferSize | 去重的buffer大小 | 可選,預設為5000,表示輸入的資料達到5000條就開始輸出 |
batchSize | 每次寫的批次大小 | 可選,預設為1000 |
batchWriteTimeoutMs | 寫逾時時間 | 可選,機關毫秒,預設值5000:如果資料超過了5秒,還沒有往OTS寫入過,就會将緩存的資料都寫一次 |
connectionMaxActive | 單連接配接池最大連接配接數 | 可選,預設值30 |
ignoreDelete | 是否忽略delete操作 | 預設為false |
注意:如果錯代碼是20015,則表示batchSize設定的過大。AnalyticDB單次batch不能超過1M,如果batchSize設定為 1000
,平均每條記錄大小不能超過1Kb。您可以根據這個邏輯來合理的設定batchSize數目。
建議使用AnalyticDB和實時計算字段類型對應關系進行DDL聲明。
AnalyticDB字段類型 | 實時計算字段類型 |
---|---|
boolean | |
tinyint | int |
smallint | |
bigint | |
double | |
varchar | |
date |
本文轉自實時計算——
建立分析型資料庫(AnalyticDB)結果表