中文字幕无码久久精品,13—14同岁无码A片,99热门精品一区二区三区无码,菠萝菠萝蜜在线观看视频高清1

您當(dāng)前的位置是:  首頁 > 資訊 > 文章精選 >
 首頁 > 資訊 > 文章精選 >

揭開AWS的Timestream數(shù)據(jù)庫的面紗

2021-06-09 09:23:15   作者:   來源:CTI論壇   評(píng)論:0  點(diǎn)擊:


  AWS至少提供15個(gè)數(shù)據(jù)庫,最新的一個(gè)是Amazon Timestream,9月開始面向一般用戶發(fā)布。Timestream主打 “物聯(lián)網(wǎng)”應(yīng)用,主要用于時(shí)間序列數(shù)據(jù)記錄的存儲(chǔ)和檢索,時(shí)間序列指一組與時(shí)間戳相關(guān)的數(shù)據(jù)點(diǎn)。
  AWS因不斷推出新的云計(jì)算服務(wù)而聞名業(yè)界,不過AWS云計(jì)算服務(wù)太多了,客戶往往難以了解所有的服務(wù),AWS的數(shù)據(jù)庫也不例外。
  AWS至少提供15個(gè)數(shù)據(jù)庫,最新的一個(gè)是Amazon Timestream,9月開始面向一般用戶發(fā)布。Timestream主打 “物聯(lián)網(wǎng)”應(yīng)用,主要用于時(shí)間序列數(shù)據(jù)記錄的存儲(chǔ)和檢索,時(shí)間序列指一組與時(shí)間戳相關(guān)的數(shù)據(jù)點(diǎn)。
  Timestream與其他時(shí)間序列數(shù)據(jù)庫一樣用于那些產(chǎn)生連續(xù)數(shù)據(jù)流的應(yīng)用,例如來自物聯(lián)網(wǎng)傳感器的測(cè)量數(shù)據(jù),這些數(shù)據(jù)的格式可以快速插入和檢索大量的時(shí)間序列事件,進(jìn)而可支持復(fù)雜的分析——每天事實(shí)上可以有數(shù)萬億的事件,而且其速度比標(biāo)準(zhǔn)關(guān)系數(shù)據(jù)庫快1000倍之多。
  簡(jiǎn)單一點(diǎn)的時(shí)間序列數(shù)據(jù)可以是跟蹤你每天走的步數(shù),該數(shù)據(jù)還可以與一段時(shí)間內(nèi)的體重聯(lián)系起來,一些企業(yè)則需要做諸如跟蹤和理解快速變化的數(shù)據(jù)(如股票價(jià)格、視頻流或操作機(jī)器的溫度)的業(yè)務(wù),時(shí)間序列數(shù)據(jù)就是必須的。而且,物聯(lián)網(wǎng)設(shè)備數(shù)目在不斷激增,這種數(shù)據(jù)庫也變得越來越重要,Timestream競(jìng)爭(zhēng)對(duì)手,例如如開源的Prometheus、InfluxData Inc.的InfluxDB和Timescale Inc.的TimescaleDB的迅速崛起也說明了這一點(diǎn)。
  亞馬遜首席技術(shù)官Werner Vogels在上周在一篇博文中談到Timestream背后的事情。他在接受記者采訪時(shí)表示,Timestream在一定程度上表明了兩點(diǎn),其一,亞馬遜的理念是為各種任務(wù)建立特定的云工具,而不是試圖把這些都放在一個(gè)平臺(tái)上,其二,它表明亞馬遜公司基本架構(gòu)的選擇。下面是訪談對(duì)話內(nèi)容(內(nèi)容經(jīng)過適當(dāng)編輯修改):
  記者:你那篇關(guān)于Timestream的博文好像有個(gè)更大的目標(biāo),而不是僅僅是為了展示它如何工作。
  Werner Vogels:我試圖提供一點(diǎn)關(guān)于Timestream數(shù)據(jù)庫背后的技術(shù)背景,以及一些我們正在建立的其他系統(tǒng)資料。在Timestream這一塊我們做了一些獨(dú)特的架構(gòu)決定,這些決定可能也適用于一般架構(gòu)。例如,我們用了基于單元的架構(gòu),可以減少影響半徑。
  另外,不要孤立地優(yōu)化系統(tǒng)。你只是測(cè)量信息傳遞,或只測(cè)量存儲(chǔ),或只測(cè)量查詢,這樣的想法并不能給你一個(gè)整體系統(tǒng)做到真正能優(yōu)化你想做的事情。
  記者:Timestream和背后的想法是如何融入到AWS的整體云計(jì)算方法呢?
  Werner Vogels:這是我們尋求建立專用數(shù)據(jù)庫的一部分。對(duì)于很多工程師來說,關(guān)系型數(shù)據(jù)庫是他們用來做各種事情的錘子。他們知道如何很好地使用這個(gè)工具。但在關(guān)系型數(shù)據(jù)庫里做時(shí)間序列是個(gè)非常令人頭痛的問題。而且很難做到實(shí)時(shí)性。畢竟,我們看到大多數(shù)時(shí)間序列應(yīng)用的實(shí)時(shí)性的作用都頗為重要。
  那我們一直在進(jìn)行這種探索,Jeff Bezos多年前說過的一些話真正推動(dòng)了我的架構(gòu)原則。我們?cè)跇?gòu)建工具,而不是構(gòu)建平臺(tái)。舊式平臺(tái)的定義就是,軟件公司發(fā)布下一個(gè)版本,給了你所有的東西,告訴你應(yīng)該如何開發(fā)軟件。
  過了一段時(shí)間我們了解到,如果你構(gòu)建的小工具真的是為了一個(gè)特定的目標(biāo)而設(shè)計(jì)的,你可以對(duì)其進(jìn)行優(yōu)化,使得其性能更好或更可靠或?qū)嶋H上更便宜,或確保你能提高開發(fā)人員的生產(chǎn)力。
  記者:時(shí)間序列數(shù)據(jù)庫的目的是什么呢?
  Werner Vogels:時(shí)間序列就是一個(gè)隨時(shí)間變化的數(shù)據(jù)點(diǎn)序列。如果看一看我們周圍的世界,大量的例子可以納入時(shí)間序列。在許多應(yīng)用里時(shí)間是個(gè)主導(dǎo)因素。例如點(diǎn)擊流分析。你可能想要一個(gè)儀表盤,能實(shí)時(shí)告訴你正在發(fā)生的事情。在這一類的應(yīng)用里,時(shí)間起的作用很重要。有個(gè)專門的數(shù)據(jù)庫實(shí)際上能夠讓你實(shí)時(shí)訪問當(dāng)前的、即時(shí)的內(nèi)存數(shù)據(jù)。
  記者:Timestream是如何工作的呢?
  Werner Vogels:Timestream下面有兩個(gè)不同的存儲(chǔ)引擎。其中一個(gè)在內(nèi)存里,基本上就是最新的記錄。時(shí)間序列數(shù)據(jù)庫里的大多數(shù)記錄都是當(dāng)前時(shí)間記錄。這一類用例涵括了許多當(dāng)前的用例。然后歷史數(shù)據(jù)則在磁性存儲(chǔ)或SSD里。你可以設(shè)置一個(gè)策略,根據(jù)這個(gè)策略確定什么東西需要從內(nèi)存中遷到歷史引擎里。
  內(nèi)存存儲(chǔ)的目標(biāo)是那些非?斓牟樵。基本上你可以在幾毫秒內(nèi)分析幾十GB的數(shù)據(jù)。歷史存儲(chǔ)更多考慮的是TB級(jí)、PB級(jí)以及那些需時(shí)數(shù)秒的查詢類型。對(duì)客戶來說,好處是他們不必考慮這個(gè)問題。他們不必考慮什么在內(nèi)存里,什么在磁盤上。這對(duì)他們來說是透明的。
  大多數(shù)查詢都可以及時(shí)從當(dāng)前數(shù)據(jù)上完成,你想在幾毫秒內(nèi)得到結(jié)果。如果是個(gè)預(yù)測(cè)引擎,用來查看你的冰箱里的液態(tài)天然氣故障,你不想明天再做,你想要現(xiàn)在就做。另外儀表盤、報(bào)警、點(diǎn)擊流分析等等,這一類至關(guān)重要的事情也是這樣。
  記者:Timestream與其他時(shí)間序列數(shù)據(jù)庫有什么不同呢?
  Werner Vogels: 我們亞馬遜這里有個(gè)原則,我們對(duì)客戶的平均延遲不感興趣,因?yàn)槠骄舆t意味著我們客戶的50%將經(jīng)歷更糟糕的體驗(yàn),而且你不知道有多糟糕。包含了90%、99%的客戶的體驗(yàn)才是我們真正關(guān)心的。你想要實(shí)時(shí)評(píng)測(cè)這個(gè)。在Timestream上建一個(gè)查詢很容易,可以查過去5分鐘或過去45分鐘或過去1小時(shí)或過去45秒的數(shù)據(jù),查詢那些含90%或99%客戶的體驗(yàn)數(shù)據(jù)。
  Timestream畢竟還是個(gè)無服務(wù)器數(shù)據(jù)庫,所以我們會(huì)照顧到性能和可靠性,我們會(huì)自動(dòng)在多個(gè)可用區(qū)進(jìn)行復(fù)制,會(huì)在背后進(jìn)行擴(kuò)展和縮減,安全方面也是。默認(rèn)情況下做了加密,但你也可以用你自己的密鑰?蛻舨槐乜紤]這個(gè)問題。Timestream是個(gè)獨(dú)特的數(shù)據(jù)庫,各種時(shí)間場(chǎng)合都可以用,但不是關(guān)系型數(shù)據(jù)庫。
  記者:為什么時(shí)間序列數(shù)據(jù)庫及其功能變得越來越重要而且現(xiàn)在至少更有可能實(shí)現(xiàn)了?
  Werner Vogels: 客戶正在建相當(dāng)復(fù)雜的架構(gòu),特別是在物聯(lián)網(wǎng)和DevOps管理領(lǐng)域。物聯(lián)網(wǎng)是個(gè)大的用例,時(shí)間在這一塊一直很重要。想象一下如果你有一個(gè)卡車車隊(duì),你想跟蹤車隊(duì)的載貨情況、速度和油耗。如果想實(shí)時(shí)看到哪輛卡車比其他卡車消耗更多的汽油,那么Timestream在這里就變得很有用了。利用Timestream建立這樣的系統(tǒng)可以非常簡(jiǎn)單。
  記者:還有哪些例子涉及到公司使用時(shí)間序列數(shù)據(jù)庫?
  Werner Vogels: 如果看一下我們的客戶,很大一部分是那些需要管理設(shè)備或客戶參與的客戶。Timestream大客戶之一是Disney Plus。Disney Plus每天記錄一批批數(shù)十億的數(shù)據(jù)點(diǎn),包括視頻質(zhì)量、緩沖、客戶體驗(yàn)。我們有許多工業(yè)客戶,如卡車運(yùn)輸或天然氣生產(chǎn)或建筑業(yè)的公司,這些公司都使用時(shí)間序列數(shù)據(jù)庫。
  所有這些的主導(dǎo)屬性是時(shí)間,特別是如果你想找到事情之間的相關(guān)性。Timestream自帶一個(gè)標(biāo)準(zhǔn)的相關(guān)功能。例如,昨天的點(diǎn)擊流比較你現(xiàn)在看到的點(diǎn)擊流,是否有很大的變化?或者你可能會(huì)想知道你的客戶今天怎么個(gè)來法,而你還把你的真實(shí)指標(biāo)與之放在一起,看看和你的預(yù)測(cè)有多大差距?
  Clean Air組織追蹤世界各地的空氣質(zhì)量。你可能對(duì)昨天的空氣質(zhì)量感興趣,但這是我所說的報(bào)告。它不只是一個(gè)數(shù)據(jù)點(diǎn)。例如,在時(shí)間序列數(shù)據(jù)庫中有一個(gè)功能名為窗口,基本上是一個(gè)滑動(dòng)窗口。比方說,你可以計(jì)算過去5分鐘或5秒鐘的平均空氣質(zhì)量……我們?cè)谡5腟QL里加了相當(dāng)多的函數(shù),使得我們具有做這種時(shí)間序列的能力,可以真正地在時(shí)間上滑動(dòng),或在一定的時(shí)間段內(nèi)找到相關(guān)性。
  記者:Timestream如何與其他亞馬遜數(shù)據(jù)庫一起使用呢?
  Werner Vogels: 時(shí)間序列數(shù)據(jù)庫有三個(gè)部分。一個(gè)部分是將數(shù)據(jù)送到寫入優(yōu)化的內(nèi)存存儲(chǔ)里,然后在一段時(shí)間內(nèi)遷移到到磁性存儲(chǔ)里,然后就是查詢引擎。但是需要將其放進(jìn)去。Kinesis和Managed Kafka Service是將數(shù)據(jù)移入Timestream的兩種方法。另外還有Apache Flink,是Timestream和其他數(shù)據(jù)庫之間的一種連接器。
  記者:那有些用戶,比如說Oracle用戶,有些用戶不想使用這么多不同種類的數(shù)據(jù)庫,他們?cè)趺崔k呢?
  Werner Vogels: 我認(rèn)為完成一件事需要使用合適的工具。我們的許多專業(yè)人員都有一系列工具,這些工具正好能滿足他們的這個(gè)目的。外科醫(yī)生不只是有一把刀。他們有一系列的手術(shù)刀。他們不會(huì)搞混,他們知道使用完全適合的那把刀。如果他們帶了一把鋸子,你不會(huì)很開心吧。
  我們作為軟件工程師也是處于這樣的處境。AWS現(xiàn)在有八或十種專用數(shù)據(jù)庫,是一套數(shù)據(jù)庫?蛻艨梢栽谶@么一套工具里準(zhǔn)確地挑選合適的工具。這可以為他們節(jié)省資金,最重要的是,可以為他們節(jié)省開發(fā)人員的時(shí)間。如果我需要在一個(gè)關(guān)系型數(shù)據(jù)庫的基礎(chǔ)上建立一個(gè)時(shí)間序列操作,那么會(huì)花費(fèi)我大量的精力和時(shí)間。即便這樣,你甚至也不會(huì)擁有正確的可觀察性工具,不能查看正在發(fā)生的事情。
  記者:亞馬遜是怎么想到會(huì)需要這么多不同的數(shù)據(jù)庫?
  Werner Vogels: 我們建的第一個(gè)新數(shù)據(jù)庫是個(gè)鍵值存儲(chǔ)數(shù)據(jù)庫。為什么呢?那時(shí)是2004年12月12日,整個(gè)亞馬遜都在關(guān)系型數(shù)據(jù)庫上運(yùn)行。有一次我們的大型機(jī)架集群發(fā)生故障,是一年里最繁忙的一天,整個(gè)網(wǎng)站都癱瘓了。這令我們想到,也許關(guān)系型數(shù)據(jù)庫并不是適合所有事情的工具。
  所以我們對(duì)所有的東西進(jìn)行了深入的研究,結(jié)果發(fā)現(xiàn)亞馬遜存儲(chǔ)的70%是鍵值類。就只是一些給個(gè)購物車給我,給我這個(gè),給我那個(gè)……就一個(gè)屬性,給我這個(gè)屬性的結(jié)果。所以我們想,等一下,我們可以為自己建立一個(gè)鍵值存儲(chǔ)服務(wù),實(shí)際上可以支持所有這些,并且服務(wù)還可以擴(kuò)大規(guī)模,比用關(guān)系型數(shù)據(jù)庫所能做到的可以更可靠。此外,要在三個(gè)不同的可用性區(qū)域或數(shù)據(jù)中心里維持關(guān)系型數(shù)據(jù)庫運(yùn)行真是一場(chǎng)噩夢(mèng)。
  我們?cè)?jīng)切斷一個(gè)數(shù)據(jù)中心看看會(huì)發(fā)生什么。結(jié)果發(fā)現(xiàn),所有的故障都是涉及關(guān)系型數(shù)據(jù)庫的故障。再要把這個(gè)數(shù)據(jù)中心重新接入到實(shí)時(shí)運(yùn)行就成了一場(chǎng)噩夢(mèng)。
  記者:亞馬遜為此做了什么呢?
  Werner Vogels: 我們建了DynamoDB。DynamoDB的一切服務(wù)都被管理,是第一個(gè)這樣的服務(wù)。內(nèi)部客戶不需要考慮這個(gè)問題。我們用DynamoDB推出的第一個(gè)服務(wù)是購物車。
  再舉個(gè)例子,QLDB是我們的量子數(shù)據(jù)庫分類帳服務(wù)。所有比特幣操作的核心部分基本上是個(gè)不可變賬本,是個(gè)分布式賬本。但是我們的很多客戶希望賬本處于一個(gè)地方。如果你想在關(guān)系型數(shù)據(jù)庫中做到這一點(diǎn),無疑是場(chǎng)噩夢(mèng)。
  而如果你用上了這些特制數(shù)據(jù)庫,開發(fā)就會(huì)變得非常簡(jiǎn)單。給了你所需要的正確工具,就可以提高開發(fā)速度,就是這么回事。
  來源:siliconANGLE

【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與CTI論壇無關(guān)。CTI論壇對(duì)文中陳述、觀點(diǎn)判斷保持中立,不對(duì)所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請(qǐng)讀者僅作參考,并請(qǐng)自行承擔(dān)全部責(zé)任。

專題

CTI論壇會(huì)員企業(yè)