注意:實時計算支援使用rds/drds作為維表(注意:目前僅支援mysql資料儲存型別),示例**如下。雲資料庫(rds/drds)外掛程式中的with引數一致,可以通用。
在使用雲資料庫(rds/drds)作為維表時,rds或drds中必須要有真實的表存在。
create
table rds_dim_table
(
id
int,
len
int,
content varchar
,
primary key (id
),
period for system_time
--定義維表的變化週期,表明該表是一張會變化的表。
)
with
(
type
='rds'
,
url
='jdbc:mysql:*********x'
,
tablename
='test4'
,
username
='test'
,
password
='******'
);
注意:宣告乙個維表時,必須要指名主鍵。維表join的時候,on的條件必須包含所有主鍵的等值條件。rds/drds的主鍵可以定義為表的主鍵或是唯一索引列。引數
注釋說明
備註url
位址rds的url鏈結位址
tablename表名無
username
使用者名稱無
password密碼無
maxretrytimes
最大嘗試插入次數
可選,預設為3
引數注釋說明
備註cache
快取策略
預設none
, 可選lru
,all
。
cachesize
快取大小
當選擇lru
快取策略後,可以設定快取大小,預設 10000 行。
cachettlms
快取超時時間,單位毫秒。
cachereloadtimeblacklist
all
cache 時啟用,更新時間黑名單,防止在此時間內做cache 更新(如雙11場景)。
可選,預設空,格式為2017-10-24 14:00 -> 2017-10-24 15:00, 2017-11-10 23:30 -> 2017-11-11 08:00
。用逗號(,)來分隔多個黑名單,用箭頭(->)來分割黑名單的起始結束時間。
目前rds/drds提供如下三種快取策略。
create
table datahub_input1
(
id bigint
,
name varchar
,
age bigint
)
with
(
type
='datahub'
);
create
table phonenumber
(
name varchar
,
phonenumber bigint
,
primary key
(name
),
period for system_time
--定義維表的變化週期
)
with
(
type
='rds'
);
create
table result_infor
(
id bigint
,
phonenumber bigint
,
name varchar
)
with
(
type
='rds'
);
insert
into result_infor
select
t
.id
,w.
phonenumber
,t.
name
from datahub_input1
ast
join phonenumber for system_time as of proctime
()as
w --維表
join
必須指定
on t
.name =w
.name
;
關於維表詳細語法請參見維表join語法。
本文**實時計算——
建立雲資料庫(rds/drds)維表
資料庫建立表
use jy go1 建立reader讀者表create table reader reader id varchar 8 not null primary key,第一種主鍵約束方式 reader name nvarchar 50 not null,姓名 reader char 2 not nul...
資料庫表建立
慣例 我是溫浩然 建立資料庫表的時候,要充分考慮表與表之間的關係,否則,會一直改。最近在做乙個網路論壇的專案,最開始的時候,沒有充分考慮論壇版塊,與版主之間的關係,所以,在版塊表中,加入乙個版主id的字段,在使用者表中,角色字段,設定了乙個版主。但是後來考慮,版主,是一種許可權,而不是乙個角色。角色...
建立資料庫表
usr bin python3 import pymysql 開啟資料庫連線 db pymysql.connect localhost root 123456 test 使用 cursor 方法建立乙個游標物件 cursor cursor db.cursor 使用 execute 方法執行 sql,...