色色一区二区三区,一本大道道久久九九AV综合,国产香蕉97碰碰视频va碰碰看,综合亚洲国产2020

    <legend id="mljv4"><u id="mljv4"><blockquote id="mljv4"></blockquote></u></legend>

    <sub id="mljv4"><ol id="mljv4"><abbr id="mljv4"></abbr></ol></sub>
      <mark id="mljv4"></mark>
      大數(shù)據(jù) > 國內(nèi)首個Serverless數(shù)據(jù)庫來了,技術(shù)架構(gòu)全揭秘!

      國內(nèi)首個Serverless數(shù)據(jù)庫來了,技術(shù)架構(gòu)全揭秘!

      2020-05-03 07:30閱讀(64)

      接頭| CSDN從Oriental ic 下載本文為企業(yè)節(jié)省成本,縮短產(chǎn)品上市時間,減少運維與維護之間的摩擦而開發(fā)團隊是無服務(wù)器的核心。 自AWS發(fā)布lambda以來,已經(jīng)有六年

      1

      接頭| CSDN從Oriental ic

      下載本文為企業(yè)節(jié)省成本,縮短產(chǎn)品上市時間,減少運維與維護之間的摩擦而開發(fā)團隊是無服務(wù)器的核心。 自AWS發(fā)布lambda以來,已經(jīng)有六年了,以使“無服務(wù)器”變得越來越為開發(fā)人員所熟悉。與此同時,它吸引了許多企業(yè)和開發(fā)團隊的青睞和后續(xù)行動。

      不久前,騰訊云發(fā)布了第一個國內(nèi)無服務(wù)器數(shù)據(jù)庫,PostgreSQL用于無服務(wù)器(serverlessdb),該數(shù)據(jù)庫已受到業(yè)界許多數(shù)據(jù)庫開發(fā)人員的廣泛關(guān)注。 它基于PostgreSQL數(shù)據(jù)庫,可以按需分配資源,實現(xiàn)安全隔離,彈性容量擴展,按需支付和本地SQL支持。 本文中,騰訊云serverlessdb的產(chǎn)品總監(jiān)從租戶隔離技術(shù),快速擴展和收縮能力,連接池管理等方面對數(shù)據(jù)庫背后的設(shè)計細節(jié)進行了詳細解密,希望能給所有開發(fā)人員帶來啟發(fā)。 如何實現(xiàn)

      真正的自動伸縮? 與傳統(tǒng)數(shù)據(jù)庫相比,

      通過彈性容量擴展和基于數(shù)量的云數(shù)據(jù)庫計費,可以幫助用戶按需使用云資源,可以避免資源浪費,節(jié)省成本。 從系統(tǒng)實現(xiàn)原理上看,云數(shù)據(jù)庫當前提供的“彈性方案”本質(zhì)上是一種戰(zhàn)略靈活性,也就是說,開發(fā)人員需要提前估計其產(chǎn)品負載,例如當游戲中有大量玩家時, 當人群退縮時。 設(shè)置數(shù)據(jù)庫需求方案后,請相應(yīng)地手動調(diào)整容量。

      越精細,該“彈性”就越接近“按需分配”。 為了最大程度地通過彈性伸縮來降低成本,有必要進行精細估算和自動分配,這對絕大多數(shù)開發(fā)人員構(gòu)成了挑戰(zhàn)。 從理論上講,

      -

      精細預(yù)測要求用戶的擴展和收縮應(yīng)該對內(nèi)存資源,CPU資源,IO資源,網(wǎng)絡(luò)資源和其他資源做出全面的判斷。 當用戶訪問請求增加時,數(shù)據(jù)庫根據(jù)用戶請求的特征使用不同的系統(tǒng)資源,這些資源需要動態(tài)響應(yīng),不會受到服務(wù)器的限制。 不同資源的縮放粒度需要小至一個數(shù)據(jù)塊-CPU內(nèi)核。 當前,常見云數(shù)據(jù)庫實例的擴展和收縮相對廣泛。 為了提高CPU性能,還必須擴展內(nèi)存大小。

      手動調(diào)節(jié)也是一個挑戰(zhàn)。 一旦用戶請求增加容量,就需要擴展容量。 但是,對于不可預(yù)測的業(yè)務(wù)場景,增加和減少是隨機的。 預(yù)測越精確,膨脹和收縮就會越頻繁。 如果能夠?qū)崿F(xiàn)細粒度的自動調(diào)節(jié),則整體效率將大大提高。

      擴展全文

      騰訊云serverlessdb它的最大優(yōu)點是,它可以實現(xiàn)自然,準確和靈活的擴展和收縮,而無需技術(shù)層面的人工干預(yù)。

      無服務(wù)器DB架構(gòu)圖

      上圖是該數(shù)據(jù)庫的技術(shù)架構(gòu)。 在騰訊云serverlessdb架構(gòu)中,客戶端訪問數(shù)據(jù)庫通過代理層轉(zhuǎn)發(fā)到數(shù)據(jù)庫,并且可以縮小或擴展數(shù)據(jù)庫。 騰訊云serverlessdb采用租戶隔離擴展和連接池管理技術(shù),從而在技術(shù)水平上實現(xiàn)真正的彈性擴展和收縮。

      租戶隔離技術(shù)

      了解數(shù)據(jù)庫應(yīng)該知道PostgreSQL可以創(chuàng)建多個數(shù)據(jù)庫,并且多個數(shù)據(jù)庫之間的數(shù)據(jù)可以互相訪問。 PostgreSQL的serverlessdb破壞了數(shù)據(jù)庫之間的相互訪問能力,并將單個數(shù)據(jù)庫分離到一個實例中以提供外部服務(wù),這類似于Oracle 12C中的PDB,但是騰訊云serverlessdb在技術(shù)層面的優(yōu)化遠不止于此。 。 當不同的用戶共享一組數(shù)據(jù)庫實例時,有必要確保用戶訪問不跨越邊界,因此需要將用戶隔離,這涉及到PostgreSQL內(nèi)核的轉(zhuǎn)換。 騰訊云serverlessdb在PostgreSQL內(nèi)核中增加了租戶的概念。 租戶只能管理一個數(shù)據(jù)庫,而其他數(shù)據(jù)庫與普通數(shù)據(jù)庫的使用沒有區(qū)別,并且可以有多個用戶。 這等效于用戶擁有自己的命名空間集,并且每個租戶都維護自己的元數(shù)據(jù)信息。 為了避免相互影響,系統(tǒng)表也被隔離,每個租戶的信息被分開存儲。

      無服務(wù)器DB邏輯架構(gòu)

      是騰訊云serverlessdb的租戶隔離。 從上圖可以看出,該實例用作容器,其中數(shù)據(jù)庫被分離為各個租戶,并且每個租戶處于隔離狀態(tài)。 數(shù)據(jù)庫實例負責公共操作,例如日志讀寫,配置文件讀取,控制文件刷新等。承租人維護數(shù)據(jù)文件和臨時文件,包括元數(shù)據(jù)信息,承租人類型和承租人的其他操作。 同一實例可以擴展多個租戶數(shù)據(jù)庫。

      相當于傳統(tǒng)的PostgreSQL實例曾經(jīng)是一個大型別墅,有一個家庭的多個房間(數(shù)據(jù)庫)。 無服務(wù)器改造后,將改造成占地100畝的大型公寓。 有許多房間供用戶使用。

      快速擴展和收縮能力

      在租戶隔離技術(shù)避免了不同租戶之間的訪問跨邊界問題之后,serverlessdb如何確保對用戶進行擴展和收縮的細粒度控制? 首先,serverlessdb將服務(wù)器計算資源分為三個區(qū)域:系統(tǒng)全局區(qū)域,數(shù)據(jù)庫全局區(qū)域和資源池。 每個區(qū)域彼此隔離。

      serverlessdb擴展和縮減原理

      ,其中系統(tǒng)全局區(qū)域的計算資源用于處理操作系統(tǒng)本身的任務(wù); 數(shù)據(jù)庫的全局區(qū)域負責數(shù)據(jù)庫共享的任務(wù),例如Autovault,滑動日志,存檔日志等; 租戶資源區(qū)負責其余租戶類別的操作,例如根據(jù)租戶打包工作過程,而一個租戶僅占用一個資源區(qū)。

      如果租戶沒有任何連接來訪問數(shù)據(jù)庫,則該租戶將沒有資源響應(yīng),并且資源池的計算資源也不會被占用。 當租戶建立數(shù)據(jù)庫連接時,管理和控制將自動為租戶分配最小資源區(qū)域單位。 一旦用戶對計算資源的訪問達到資源區(qū)域單位的80%,后端控件將自動調(diào)整資源區(qū)域中可用計算資源的上限,以提高容量擴展的閾值。 此時,容量擴展是完全不可察覺的,并且資源響應(yīng)也是實時的。 當用戶的資源利用率低于20%時,租戶資源區(qū)域?qū)⒆詣訙p少可用計算資源的上限,并將多余的計算資源重新分配到資源池中供其他租戶調(diào)用。 這是CPU和內(nèi)存的快速擴展。

      連接池管理當前的實現(xiàn)形式帶來了另一個問題:連接將添加一個進程,而多租戶模式將導致服務(wù)器創(chuàng)建大量新進程來消耗租戶的資源。 當多個租戶的連接數(shù)增加時,服務(wù)器的資源將很快被破壞。 我該怎么辦?

      serverlessdb引入了連接池的概念。 當一個租戶的多個連接訪問連接池時,同一租戶的連接通過連接綁定在一起以建立數(shù)據(jù)庫連接,這確保了租戶和數(shù)據(jù)庫端之間只有一個連接,相當于n: 1。 通過租戶之間的資源隔離技術(shù)將數(shù)據(jù)庫側(cè)建立的連接分開,避免了不同租戶的影響,解決了連接池管理的問題。

      因為是無狀態(tài)的,所以即使在連接池的性能達到瓶頸后,用戶也可以水平擴展容量并平衡請求的負載,從而避免了由于連接池的性能瓶頸而導致的整體服務(wù)不可用。 回到前面提到的示例中,當傳統(tǒng)的PostgreSQL數(shù)據(jù)庫是一個別墅時,每個來賓都需要為其提供一個單獨的車庫(會話過程)。 當游客人數(shù)增加時,停車位將不足。 裝修后,新建了地下停車場(連通游泳池)。 每個租戶都有一個電梯。 所有訪問同一租戶的訪客都可以通過此電梯直接進入房間。 如果同一租戶的訪客數(shù)量激增到一臺電梯不夠用的程度,則將為租戶專門建造一臺電梯,以避免單個租戶承受負荷太大的問題。

      應(yīng)用場景和實踐

      實際上,無服務(wù)器概念的核心價值在于快速部署和降低使用成本。 從這兩種觀點來看,serverlessdb的主要應(yīng)用場景是小程序。 對于某些簡單的應(yīng)用程序,甚至不需要開發(fā)背景。 在

      -

      流行期間,各種平臺都啟動了自己的流行監(jiān)測功能。 基于無服務(wù)器架構(gòu),可以快速實現(xiàn)流行病監(jiān)測。 PostgreSQL數(shù)據(jù)庫提供了豐富的插件擴展,例如具有招牌特征的PostGIS插件,它支持豐富的空間和地理數(shù)據(jù),并可以根據(jù)人群的位置自動避開危險區(qū)域。

      serverless只是產(chǎn)品形式和用途的改變,數(shù)據(jù)庫本身的功能沒有改變。 在使用此數(shù)據(jù)庫的過程中,用戶將數(shù)據(jù)庫的基礎(chǔ)功能用作無服務(wù)器服務(wù),而無需關(guān)心基礎(chǔ)數(shù)據(jù)庫的操作和維護。 今天的

      福利

      認識大人物

      CSDN為技術(shù)人員創(chuàng)建的新的高端對話專欄“大人物來了”!

      CSDN創(chuàng)始人兼極客幫助風險投資公司董事長兼董事長姜濤,與京東集團技術(shù)副總裁,IEEE Fellow,京東人工智能研究所執(zhí)行副總裁,深度學習與演講負責人 語言實驗室何曉東,來到中國首席技術(shù)官胡義川,探討了中國AI應(yīng)用第一年中開發(fā)商和企業(yè)的發(fā)展道路和發(fā)展方向!

      相關(guān)問答推薦