溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Data Lake Analytics中如何讀寫PolarDB的數(shù)據(jù)

發(fā)布時(shí)間:2021-12-23 17:46:02 來(lái)源:億速云 閱讀:109 作者:柒染 欄目:云計(jì)算

Data Lake Analytics中如何讀寫PolarDB的數(shù)據(jù),很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

Data Lake Analytics 作為云上數(shù)據(jù)處理的樞紐,最近加入了對(duì)于PolarDB的支持, PolarDB 是阿里云自研的下一代關(guān)系型分布式云原生數(shù)據(jù)庫(kù),100%兼容MySQL,存儲(chǔ)容量最高可達(dá) 100T,性能最高提升至 MySQL 的 6 倍。這篇教程帶你玩轉(zhuǎn) DLA 的 PolarDB 支持。

創(chuàng)建數(shù)據(jù)庫(kù)

在 DLA 里面創(chuàng)建一個(gè)底層映射到 PolarDB 的外表的語(yǔ)法如下:

CREATE SCHEMA porlardb_test WITH DBPROPERTIES (
  CATALOG = 'mysql', 
  LOCATION = 'jdbc:mysql://pc-bp1dlebalabala.rwlb.rds.aliyuncs.com:3306/dla_test',
  USER = 'dla_test_1',
  PASSWORD = 'the-fake-password',
  VPC_ID = 'vpc-2zeij924vxd303kwifake',
  INSTANCE_ID = 'rm-2zer0vg58mfo5fake'
);

跟普通的建表不同的是這里多了兩個(gè)屬性: VPC_IDINSTANCE_ID 。VPC_ID 是你的PolarDB所在VPC的ID。

建表需要這兩個(gè)額外信息是因?yàn)楝F(xiàn)在用戶的數(shù)據(jù)庫(kù)都是處于用戶自己的VPC內(nèi)部,默認(rèn)情況下 DLA 是訪問(wèn)不了用戶 VPC 里面的資源的,為了讓DLA能夠訪問(wèn)到用戶PolarDB面的數(shù)據(jù),我們需要利用阿里云的VPC反向訪問(wèn)技術(shù)。

權(quán)限聲明: 當(dāng)您通過(guò)上述方式建庫(kù),就視為您同意我們利用VPC反向訪問(wèn)的技術(shù)去讀寫您的PolarDB。

另外您還需要把 100.104.0.0/16 IP地址段加入到你的PolarDB的白名單列表,這是我們VPC反向訪問(wèn)的IP地段,如下圖:

Data Lake Analytics中如何讀寫PolarDB的數(shù)據(jù)cdn.com/7749f8bb0c3ef32d6d191a218f556c66c9ad8d0f.png">

同時(shí)細(xì)心的讀者可能注意到我們這里的 CATALOG 寫的是 mysql, 而不是 polardb, 這是因?yàn)?PolarDB 100%兼容MySQL,我們直接以MySQL協(xié)議去訪問(wèn)就好了。

創(chuàng)建表

數(shù)據(jù)庫(kù)建完之后,我們可以建表了,我們先在你的 PolarDB 里面建立如下的 person 表用來(lái)做測(cè)試:

create table person (
       id int,
       name varchar(1023),
       age int
);

并且向里面插入一下測(cè)試數(shù)據(jù):

insert into person 
  values (1, 'james', 10), 
         (2, 'bond', 20), 
         (3, 'jack', 30), 
         (4, 'lucy', 40);

然后就可以在 DLA 的數(shù)據(jù)庫(kù)里面建立相應(yīng)的映射表了:

create external table person (
       id int,
       name varchar(1023),
       age int
);

這樣我們通過(guò)MySQL客戶端連接到 DLA 數(shù)據(jù)庫(kù)上面,就可以對(duì) PolarDB 數(shù)據(jù)庫(kù)里面的數(shù)據(jù)進(jìn)行查詢了:

mysql> select * from person;
+------+-------+------+
| id   | name  | age  |
+------+-------+------+
|    1 | james |   10 |
|    2 | bond  |   20 |
|    3 | jack  |   30 |
|    4 | lucy  |   40 |
+------+-------+------+
4 rows in set (0.35 sec)

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI