在快消領(lǐng)域,Daltix 是提供完整、透明、高質(zhì)量零售數(shù)據(jù)的先行者。GFK 和聯(lián)合利華等全球行業(yè)領(lǐng)導(dǎo)者依靠他們的定價、產(chǎn)品、促銷和位置數(shù)據(jù)來制定入市策略并做出關(guān)鍵決策,對 Daltix 來說,維護一個可靠的數(shù)據(jù)生態(tài)系統(tǒng)勢在必行。
自 2016 年成立以來,隨著公司的發(fā)展,Daltix 處理的數(shù)據(jù)量呈指數(shù)級增長。他們目前管理著大約 250TB 的數(shù)據(jù),分散在數(shù)十億個文件中,很快就造成了巨大的時間和資源消耗。Daltix 的基礎(chǔ)設(shè)施幾乎完全是圍繞 AWS 構(gòu)建,因為需要管理數(shù)十億個極小的文件,所以在可擴展性和成本效益方面,AWS 的存儲選項已經(jīng)開始無法滿足他們的需求。
比利時的Daltix團隊
我們與 Daltix 首席軟件工程師 Charlie Orford 進行了交流,了解他們?nèi)绾芜w移到 Backblaze B2 云存儲以及他們從那個過程中得出了什么結(jié)論。以下是其中的一些要點:
請繼續(xù)閱讀,看看他們是如何做到的。
Daltix 在公司創(chuàng)立初期創(chuàng)建的基于 S3 的基礎(chǔ)設(shè)施,大部分還完好無損。過去,數(shù)據(jù)管道將從網(wǎng)絡(luò)上抓取的資源直接寫入 Amazon S3,經(jīng)由基于 Lambda 的提取器進行標(biāo)準化后,再發(fā)送回 S3。然后,由 AWS Batch 選取要使用其他數(shù)據(jù)源進行補充和豐富的資源。
所有這些步驟都是在 Daltix 的分析師團隊準備好數(shù)據(jù)之前進行的。為了優(yōu)化流程并提高效率,Orford 開始將該流程的部分環(huán)節(jié)納入到 Kubernetes 中,但數(shù)據(jù)存儲仍然存在問題;Daltix 每天生成大約 300GB 的壓縮數(shù)據(jù),而且這個數(shù)值還在迅速增長?!半S著數(shù)據(jù)收集規(guī)模的擴大,我們必須更加關(guān)注成本控制、數(shù)據(jù)可移植性和可靠性,”O(jiān)rford 說,“這些都是顯而易見的,但規(guī)模大了,就更加重要了。”
到 2020 年,Daltix 開始意識到,在 AWS 中構(gòu)建這么多基礎(chǔ)設(shè)施存在局限性。例如,圍繞 S3 元數(shù)據(jù)進行的大量定制使得移動對象的能力完全受制于目標(biāo)系統(tǒng)與 S3 的兼容性。Orford 還擔(dān)心,在 S3 中永久存儲如此巨大的數(shù)據(jù)湖的成本。如他所言,“很明顯,沒有必要把所有東西都永遠存在 S3 中。如果不采取任何措施,那么我們的 S3 成本將繼續(xù)上升,并最終遠遠超出我們使用其他 AWS 服務(wù)的成本?!?/p>
服務(wù)器成本對比
因為 Daltix 要處理數(shù)十億個小文件,所以不可能使用 Glacier,因為它的定價模式是基于檢索費用的。即使是使用 Glacier 即時檢索,Daltix 所處理的文件數(shù)量也會使他們每年額外支付 20 萬美元的費用。因此,Daltix 的數(shù)據(jù)收集團隊(公司 85% 以上的數(shù)據(jù)都來自這個團隊)推動實施了一種可替代的解決方案,解決了一些相互矛盾的問題:
Daltix 決定使用 Amazon S3 進行熱存儲,并將暖存儲轉(zhuǎn)移到新的歸檔解決方案中,這可以降低成本,同時保持重要數(shù)據(jù)可訪問——即使目的是將文件存儲在別處。Orford 說:“重要的是要找到某個非常容易集成而且開發(fā)風(fēng)險低的東西,并且有助于降低我們的成本。對我們來說,Backblaze 確實可以滿足所有要求?!?/p>
在開始全面遷移之前,Orford 和他的團隊做了概念驗證(POC),以確保解決方案解決了他們重點關(guān)注的問題:
“早期,我們與 Backblaze 合作,定制了一個可以滿足我們所有需求的遷移工具,”O(jiān)rford 說,“這給了我們繼續(xù)前進的信心?!盉ackblaze 為我們定制了一個遷移引擎,可以保證遷移過程能夠可靠地傳輸整個數(shù)據(jù)湖,并且保證對象級元數(shù)據(jù)完好無損。在成功遷移了一開始的 POC 存儲桶之后,Daltix 就擁有了開始建模和預(yù)測未來成本所需的一切。Orford 說道:“在開始接觸 Backblaze 之后,我們便不再尋找其他選項“。
2021 年 8 月,Daltix 將一個包含 22 億個對象的 120TB 的存儲桶從 S3 的標(biāo)準存儲轉(zhuǎn)移到 Backblaze B2 云存儲。僅最初的遷移就立即節(jié)省了 2000 美元 / 月或 24000 美元 / 年的成本。
寧靜的數(shù)據(jù)湖
現(xiàn)在,Daltix 每天從 Amazon S3 向 Backblaze B2 遷移 320 萬個數(shù)據(jù)對象(大約 160GB 的數(shù)據(jù))。他們在 S3 中保存了 18 個月的熱數(shù)據(jù),一旦一個對象存在達 18 個月零一天,就會被歸檔到 B2 中。在少數(shù)情況下,Daltix 也會接收到請求 18 個月窗口期之外的數(shù)據(jù)的請求,由于 Backblaze 的 API 兼容 S3 且數(shù)據(jù)永遠可用,所以他們可以直接將數(shù)據(jù)從 Backblaze B2 拉到 Amazon S3。
每日審計日志會匯總已傳輸?shù)臄?shù)據(jù)量,整個遷移過程每天自動執(zhí)行。Orford 說:“它在后臺運行,我們不需要管理任何東西,什么都可以看到,而且很劃算。對我們來說,Backblaze B2 是一個理想的解決方案。”
隨著每日數(shù)據(jù)收集量的增加,會有越來越多的數(shù)據(jù)從熱存儲窗口中遷出,Orford 預(yù)計成本會進一步降低。據(jù) Orford 估計,日遷移量將在大約一年半后接近目前水平的三倍:這意味著 Daltix 每天將向 Backblaze B2 備份 900 萬個對象(約 450GB 數(shù)據(jù))。長遠來看,從 Amazon S3 切換到 Backblaze B2 為 Daltix 節(jié)省的成本都令人難以置信。Orford 說:“因為使用了 Backblaze B2,預(yù)計到 2023 年,我們在存儲支出上將累計節(jié)省 7.5 萬至 10 萬美元,每年至少節(jié)省 3 萬美元?!?/p>