支撐無服務(wù)器計(jì)算,傳統(tǒng)存儲(chǔ)方案已經(jīng)行不通了-創(chuàng)新互聯(lián)

   什么是無服務(wù)器存儲(chǔ)/無服務(wù)器數(shù)據(jù)庫?它與其他的存儲(chǔ)/數(shù)據(jù)庫服務(wù)有什么不同?這篇文章將介紹無服務(wù)器存儲(chǔ)服務(wù)應(yīng)具有的基本屬性,并通過無服務(wù)器計(jì)算中的一些用例,舉例說明不同的無服務(wù)器存儲(chǔ)和無服務(wù)器數(shù)據(jù)庫之間的區(qū)別。最后,我們將繼續(xù)討論尚未出現(xiàn)的無服務(wù)器存儲(chǔ)服務(wù),并展望這一領(lǐng)域的未來。

創(chuàng)新互聯(lián)建站主要從事網(wǎng)站制作、成都做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)豐鎮(zhèn),10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

   無服務(wù)器(Serverless )就是沒有服務(wù)器?

支撐無服務(wù)器計(jì)算,傳統(tǒng)存儲(chǔ)方案已經(jīng)行不通了

  來源 - http://www.commitstrip.com/en/2017/04/26/servers-there-are-no-servers-here/

  “無服務(wù)器”這個(gè)用詞其實(shí)并不合適。無服務(wù)器并不是說不再需要服務(wù)器,而是采用了使技術(shù)抽象化、遠(yuǎn)離用戶的概念,讓用戶不需要再擔(dān)心服務(wù)器,其他人(云提供商)將幫助用戶完成相關(guān)的工作。

   無服務(wù)器計(jì)算

  如今,無服務(wù)器是一個(gè)非常流行的詞匯。盡管“無服務(wù)器”這個(gè)術(shù)語已經(jīng)存在了一段時(shí)間,但它變得如此流行詞的主要原因是2014年AWS Lambda的推出。隨著2015年7月亞馬遜API網(wǎng)關(guān)的推出,無服務(wù)器得到進(jìn)一步普及。一般來說,無服務(wù)器(或者說無服務(wù)器計(jì)算)指的是服務(wù)器端邏輯由開發(fā)人員編寫,在無狀態(tài)計(jì)算容器中運(yùn)行的應(yīng)用程序——這些容器是事件觸發(fā)的,短暫的(可能只持續(xù)一次調(diào)用),并由第三方全面管理。這也稱為功能即服務(wù)(FaaS)。

   無服務(wù)器計(jì)算的無狀態(tài)性以及存儲(chǔ)的需求

  無服務(wù)器計(jì)算或FaaS的一個(gè)特性是,它是無狀態(tài)的。因此,在一般設(shè)計(jì)中不可能出現(xiàn)在相同功能的兩次執(zhí)行之間保持狀態(tài)。這就是無服務(wù)器存儲(chǔ)引入的原因,如果需要在兩個(gè)FaaS功能執(zhí)行之間保持狀態(tài),則應(yīng)將其存儲(chǔ)在外部存儲(chǔ)服務(wù)中。

   傳統(tǒng)存儲(chǔ)的問題

  傳統(tǒng)存儲(chǔ)解決方案被設(shè)計(jì)于在單個(gè)地理位置的一組固定服務(wù)器上持續(xù)運(yùn)行,要正確使用這些存儲(chǔ)解決方案,開發(fā)人員需要了解很多有關(guān)配置的詳細(xì)信息。在最壞的情況下,高可用性和性能的優(yōu)劣取決于開發(fā)人員對(duì)數(shù)據(jù)庫內(nèi)部的了解。開發(fā)人員需要弄清楚且配置好區(qū)域、空間、卷、內(nèi)存、計(jì)算容量和軟件版本等內(nèi)容。開發(fā)團(tuán)隊(duì)必須花費(fèi)數(shù)小時(shí)的時(shí)間考慮容量規(guī)劃、配置、分片、備份、性能調(diào)整和監(jiān)控。當(dāng)你需要花80%的時(shí)間來設(shè)置和操作數(shù)據(jù)庫,而且只是為了支持無服務(wù)器功能時(shí),這就有點(diǎn)不合適了。雖然無服務(wù)器計(jì)算為計(jì)算層增加了彈性,但當(dāng)存儲(chǔ)層無法提供與之相當(dāng)?shù)膹椥詴r(shí),你可能就無法完全發(fā)揮其優(yōu)勢(shì)。

   真正的無服務(wù)器存儲(chǔ)

  理想情況下,真正無服務(wù)器的存儲(chǔ)應(yīng)具有以下屬性:

   · 無需配置

   · 真正有彈性(無需運(yùn)營(yíng)人員干預(yù)的縱向擴(kuò)展)

   · 按需付費(fèi)

  使用無服務(wù)器存儲(chǔ)時(shí),開發(fā)人員不必?fù)?dān)心任何基礎(chǔ)架構(gòu)細(xì)節(jié),如節(jié)點(diǎn)大小,內(nèi)存或存儲(chǔ)大小等。與AWS Lambda按單個(gè)功能調(diào)用進(jìn)行收費(fèi)的方式相同,無服務(wù)器存儲(chǔ)中的資源消耗應(yīng)根據(jù)不同工作負(fù)載使用的計(jì)算和存儲(chǔ)量來衡量。這是無服務(wù)器數(shù)據(jù)庫的本質(zhì),用戶永遠(yuǎn)不會(huì)為閑置容量付費(fèi),存儲(chǔ)使用情況反映了功能調(diào)用和工作負(fù)載。

  使用傳統(tǒng)存儲(chǔ)產(chǎn)品,過度資源配置是準(zhǔn)備應(yīng)對(duì)流量高峰的唯一策略,無服務(wù)器存儲(chǔ)的彈性可防止可能帶來浪費(fèi)的過度配置。由于無服務(wù)器存儲(chǔ)能夠在沒有用戶干預(yù)的情況下進(jìn)行彈性擴(kuò)展,因此開發(fā)人員無需進(jìn)行容量規(guī)劃即可啟動(dòng),并且應(yīng)用程序始終具有足夠的容量。此外,按需付費(fèi)定價(jià)模式將確保沒有閑置資源增加用戶的成本,無服務(wù)器存儲(chǔ)的成本只隨著使用而擴(kuò)展,你永遠(yuǎn)不會(huì)為未使用的容量付錢。

   無服務(wù)器存儲(chǔ)可選項(xiàng)

  如今,有多種無服務(wù)器存儲(chǔ)類別,通常會(huì)有多個(gè)云供應(yīng)商提供或多或少的相同服務(wù)。在本節(jié)中,我們將介紹這些不同的無服務(wù)器存儲(chǔ)類別,以及每個(gè)類別的示例和它們的一些用例。

   無服務(wù)器對(duì)象存儲(chǔ)

  對(duì)象存儲(chǔ)是一種無層次結(jié)構(gòu)的數(shù)據(jù)存儲(chǔ)方法,通常用于云中。與其他數(shù)據(jù)存儲(chǔ)方法不同,基于對(duì)象的存儲(chǔ)不使用目錄樹。離散的數(shù)據(jù)單元(對(duì)象)存在于存儲(chǔ)池中的同一級(jí)別。每個(gè)對(duì)象都有一個(gè)唯一的標(biāo)識(shí)名稱,應(yīng)用程序使用該名稱來檢索它。此外,每個(gè)對(duì)象可能都有的用于檢索的元數(shù)據(jù)。無服務(wù)器對(duì)象存儲(chǔ)的一些常見示例是Amazon S3,Google云存儲(chǔ),Azure存儲(chǔ)和IBM云存儲(chǔ)。在無服務(wù)器計(jì)算環(huán)境中使用無服務(wù)器對(duì)象存儲(chǔ)的一個(gè)常見示例是縮略圖生成。

支撐無服務(wù)器計(jì)算,傳統(tǒng)存儲(chǔ)方案已經(jīng)行不通了

  1、移動(dòng)應(yīng)用程序?qū)D像上傳到對(duì)象庫。

  2、無服務(wù)器對(duì)象存儲(chǔ)在上傳映像后觸發(fā)更改事件,從而執(zhí)行無服務(wù)器功能。

  3、無服務(wù)器功能基于上傳的圖像創(chuàng)建縮略圖。

  4、在將縮略圖上傳到無服務(wù)器存儲(chǔ)之后,無服務(wù)器功能向移動(dòng)應(yīng)用程序發(fā)送推送通知。

  5、移動(dòng)應(yīng)用程序下載縮略圖并相應(yīng)地更新用戶界面。

   無服務(wù)器關(guān)系型數(shù)據(jù)庫

  無服務(wù)器關(guān)系數(shù)據(jù)庫的一個(gè)例子是2017年最后一個(gè)季度推出的Amazon Aurora Serverless,它有兩個(gè)分別與MySQL和PostgreSQL兼容的不同版本,但它也與MariaDB,Oracle等其他已知系統(tǒng)兼容。Amazon Aurora Serverless是一種按需自動(dòng)擴(kuò)展數(shù)據(jù)庫服務(wù),數(shù)據(jù)庫將根據(jù)應(yīng)用程序的需要自動(dòng)啟動(dòng)、關(guān)閉以及擴(kuò)展容量。它使用戶能夠在云中運(yùn)行其數(shù)據(jù)庫,而無需實(shí)際管理任何數(shù)據(jù)庫實(shí)例。對(duì)于不常見、間歇性或不可預(yù)測(cè)的工作負(fù)載,它是一種簡(jiǎn)單、經(jīng)濟(jì)高效的選擇,因此非常適用于無服務(wù)器計(jì)算。

   無服務(wù)器NoSQL數(shù)據(jù)庫

   無服務(wù)器Key-value和文檔存儲(chǔ)

  目前有多個(gè)不同類型的無服務(wù)器NoSQL數(shù)據(jù)庫,最常見的是Key-value存儲(chǔ)和文檔存儲(chǔ)。Key-value數(shù)據(jù)庫是一種數(shù)據(jù)存儲(chǔ)范例,用于存儲(chǔ)、檢索和管理關(guān)聯(lián)數(shù)組,這種數(shù)據(jù)結(jié)構(gòu)現(xiàn)在通常被稱為辭典或哈希表。辭典包含一組對(duì)象或記錄,這些對(duì)象或記錄又包含許多不同的字段,每個(gè)字段都包含數(shù)據(jù)。這些對(duì)象通過使用唯一標(biāo)識(shí)記錄的Key被存儲(chǔ)和檢索,并用于快速查找數(shù)據(jù)庫中的數(shù)據(jù)。面向文檔的數(shù)據(jù)庫或文檔存儲(chǔ)是用于存儲(chǔ)、檢索和管理面向文檔的信息的存儲(chǔ),也稱為半結(jié)構(gòu)化數(shù)據(jù)。舉幾個(gè)例子:Amazon DynamoDB,Google Cloud Datastore和IBM Cloudant NoSQL DB。此前,亞馬遜宣布推出了DynamoDB on-demand,它為按需付費(fèi)模式的DynamoDB提供按需讀/寫容量選項(xiàng)。這種無服務(wù)器Key-value和文檔存儲(chǔ)有各種用途,其中一個(gè)簡(jiǎn)單的用例是使用無服務(wù)器功能處理“聯(lián)系我們”(Contact Us)表單。

   無服務(wù)器時(shí)間序列數(shù)據(jù)庫

  時(shí)間序列數(shù)據(jù)庫(TSDB)是一種優(yōu)化用于處理時(shí)間序列數(shù)據(jù)的軟件系統(tǒng),時(shí)間序列數(shù)據(jù)是按時(shí)間(日期時(shí)間或日期時(shí)間范圍)索引的數(shù)字?jǐn)?shù)組。時(shí)間序列數(shù)據(jù)具有特定的特征,例如通常以時(shí)間順序形式到達(dá),數(shù)據(jù)是只追加(Append-only)的,并且查詢總是在一個(gè)時(shí)間間隔內(nèi)。雖然關(guān)系數(shù)據(jù)庫可以存儲(chǔ)這些數(shù)據(jù),但在處理這些數(shù)據(jù)時(shí)效率很低,因?yàn)樗鼈內(nèi)狈?yōu)化,例如按時(shí)間間隔存儲(chǔ)和檢索數(shù)據(jù)。無服務(wù)器時(shí)間序列數(shù)據(jù)庫的一個(gè)例子是最近公布的Amazon Timestream,它是一個(gè)專用的時(shí)間序列數(shù)據(jù)庫,可以按時(shí)間間隔有效地存儲(chǔ)和處理記錄。

支撐無服務(wù)器計(jì)算,傳統(tǒng)存儲(chǔ)方案已經(jīng)行不通了

  來源-https://aws.amazon.com/timestream/

   無服務(wù)器圖數(shù)據(jù)庫

  很簡(jiǎn)單,圖數(shù)據(jù)庫(Graph Database)的設(shè)計(jì),將數(shù)據(jù)之間的關(guān)系視為與數(shù)據(jù)本身同等重要,它在保存數(shù)據(jù)時(shí)不會(huì)將其限制為預(yù)定義的模型。相反,數(shù)據(jù)就像繪制出來一樣被存儲(chǔ)——顯示每個(gè)實(shí)體如何與其他實(shí)體連接或相關(guān)。FaunaDB是一個(gè)無服務(wù)器圖數(shù)據(jù)庫,它是一個(gè)通用的、事務(wù)性的、時(shí)態(tài)的、地理上分布的、強(qiáng)一致的和關(guān)系型的數(shù)據(jù)庫。FaunaDB還支持文檔存儲(chǔ)和時(shí)間序列數(shù)據(jù)庫功能。

   展望未來,還缺乏什么?

   無服務(wù)器內(nèi)存數(shù)據(jù)存儲(chǔ)/緩存

  無服務(wù)器存儲(chǔ)中尚未提供的存儲(chǔ)類型之一是內(nèi)存數(shù)據(jù)存儲(chǔ)。我們目前用于緩存的選項(xiàng)之一是在API Gateway進(jìn)行緩存。Amazon DynamoDB具有單位數(shù)毫秒延遲,如果用戶需要稍微減少延遲,那么即使尚未完全實(shí)現(xiàn)無服務(wù)器,也可以使用DynamoDB加速器(DAX)。此外,AWS ElastiCache提供Redis和Memcached,但尚未將它們作為完全托管服務(wù)提供。另外,Google App Engine提供Memcache作為內(nèi)存緩存服務(wù),但是只能在App Engine本身中訪問。

   結(jié)論

  隨著IT行業(yè)中無服務(wù)器計(jì)算的增長(zhǎng)和高度適應(yīng),無服務(wù)器存儲(chǔ)正在快速增長(zhǎng)。我們希望這些服務(wù)能夠得到不斷的優(yōu)化和進(jìn)步,從而幫助開發(fā)人員實(shí)現(xiàn)真正的無服務(wù)器應(yīng)用程序開發(fā)。

  原文來源:Medium 作者:Rajind Ruparathna

  原文鏈接:https://medium.com/@rajindruparathna/what-makes-a-storage-service-truly-serverless-93987826039e

網(wǎng)站標(biāo)題:支撐無服務(wù)器計(jì)算,傳統(tǒng)存儲(chǔ)方案已經(jīng)行不通了-創(chuàng)新互聯(lián)
標(biāo)題路徑:http://muchs.cn/article26/pdejg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航做網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、微信公眾號(hào)、企業(yè)網(wǎng)站制作、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)