自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

五億月活的 Pinterest 是如何優(yōu)化數(shù)據(jù)分析系統(tǒng)的?

系統(tǒng)
在本文中, Pinterest 將詳細(xì)探討 Pinterest 在 StarRocks 上進(jìn)行分析應(yīng)用構(gòu)建的經(jīng)歷,以及為何 Pinterest 需要一個(gè)新的系統(tǒng)。

介紹

Pinterest 是一個(gè)圖片發(fā)現(xiàn)平臺,用戶可以在這里找到各種創(chuàng)意,比如食譜、家居和風(fēng)格靈感等。平臺不僅為合作伙伴提供購物功能,還為廣告商提供了一個(gè)重要的廣告機(jī)會,擁有超過 5 億的月活躍用戶。廣告商可以直接在 Pinterest 上購買廣告,或者通過廣告代理機(jī)構(gòu)合作購買廣告。由于 Pinterest 的用戶規(guī)模龐大,廣告商可以從分析數(shù)據(jù)中了解他們的 Pins 和與 Pinterest 用戶的互動情況,從而優(yōu)化廣告效果。

在 Pinterest,實(shí)時(shí)洞察對于幫助廣告商和團(tuán)隊(duì)成員做出數(shù)據(jù)驅(qū)動的決策至關(guān)重要。這些決策會影響廣告活動的表現(xiàn)、實(shí)驗(yàn)結(jié)果以及政策制定(例如垃圾郵件檢測規(guī)則)。此前,他們一直依賴 Druid 來存儲和提供這些實(shí)時(shí)洞察,但隨著業(yè)務(wù)規(guī)模和需求不斷變化,Pinterest 開始評估不同的技術(shù)棧,并最終決定將這些數(shù)據(jù)遷移到 StarRocks。

在本文中, Pinterest 將詳細(xì)探討 Pinterest 在 StarRocks 上進(jìn)行分析應(yīng)用構(gòu)建的經(jīng)歷,以及為何 Pinterest 需要一個(gè)新的系統(tǒng)。

Pinterest 的需求

之前的系統(tǒng)在幾年前運(yùn)行得很順利,并且能夠擴(kuò)展到數(shù)百臺機(jī)器。但隨著時(shí)間的推移, Pinterest 的規(guī)模和需求不斷增加,因此 Pinterest 對企業(yè)分析端需求進(jìn)行了梳理:

  • 在規(guī)模不斷擴(kuò)大的同時(shí)保持低成本,以確保為內(nèi)部團(tuán)隊(duì)提供高效的解決方案。
  • 支持標(biāo)準(zhǔn)的 SQL 類型和模式,這是用戶最喜歡的接口。
  • 支持連接、子查詢和物化視圖,為用戶提供更多選擇。
  • 通過移除 MapReduce 作業(yè)等外部依賴簡化數(shù)據(jù)導(dǎo)入過程,使得入門和使用更加方便。

在評估了多個(gè)數(shù)據(jù)分析技術(shù)棧后, Pinterest 最終選擇了 StarRocks,因?yàn)樗鼜浹a(bǔ)了當(dāng)前系統(tǒng)的許多不足。

StarRocks 是一個(gè)實(shí)時(shí) OLAP 數(shù)據(jù)庫,能夠處理高并發(fā)的 OLAP 工作負(fù)載,非常適合面向客戶的分析。由于它兼容 MySQL, Pinterest 可以輕松地將 StarRocks 與現(xiàn)有工具集成。StarRocks 將數(shù)據(jù)存儲在本地磁盤上,還可以查詢 HDFS 或 S3 中的外部數(shù)據(jù)。它由兩個(gè)組件組成:前端和后端。前端將 SQL 編譯成執(zhí)行計(jì)劃,后端執(zhí)行這些計(jì)劃。

StarRocks 開源社區(qū)有數(shù)千名成員參與維護(hù)和開發(fā),社區(qū)活躍且支持良好,這也確保產(chǎn)品持續(xù)迭代能力和穩(wěn)定性。在 Pinterest 的測試中,StarRocks 相較于當(dāng)前系統(tǒng) Druid 及其他方案,在性能和成本上有明顯優(yōu)勢。它能夠在大規(guī)模下即時(shí)執(zhí)行快速的 JOIN 查詢,有效降低對復(fù)雜去規(guī)范化管道的需求。

場景遷移應(yīng)用

Pinterest 決定將 Partner Insights 作為遷移到 StarRocks 的第一個(gè)應(yīng)用場景。Partner Insights 是一個(gè)為廣告商提供實(shí)時(shí)洞察的工具,廣告商可以通過可定制的儀表板獲取這些洞察。

廣告商可以登錄 Partner Insights,并根據(jù)各種定制指標(biāo)了解他們廣告的表現(xiàn)。這些洞察幫助營銷人員理解廣告策略的有效性,并做出快速、數(shù)據(jù)驅(qū)動的調(diào)整。廣告活動越有效,廣告商在 Pinterest 平臺上的投資回報(bào)率 (ROI) 就越高。

應(yīng)用場景挑戰(zhàn)

提供 Partner Insights 面臨多方面的挑戰(zhàn)。一方面,Pinterest 服務(wù)于大量廣告商,每個(gè)廣告商都有其獨(dú)特的需求和指標(biāo)。另一方面,這些指標(biāo)不僅僅是單一維度的數(shù)據(jù)點(diǎn),而是跨越多個(gè)維度,需要實(shí)時(shí)聚合。由于平臺的高度可定制性,廣告商可以從眾多指標(biāo)中選擇,并根據(jù)具體目標(biāo)定制儀表板。這種定制能力帶來了復(fù)雜性——每個(gè)儀表板可能包含多個(gè)需要實(shí)時(shí)聚合的指標(biāo),跨越各種維度。

Partner Insights 的靈活性既是優(yōu)勢也是挑戰(zhàn),這要求數(shù)據(jù)庫解決方案能夠處理大量復(fù)雜的多維查詢,同時(shí)保持速度和準(zhǔn)確性。

架構(gòu)與實(shí)施過程

圖 3 展示了使用 StarRocks 的 Partner Insights 內(nèi)部架構(gòu)。架構(gòu)包括:

  • 前端 (FE) 節(jié)點(diǎn):StarRocks FE 節(jié)點(diǎn)負(fù)責(zé)元數(shù)據(jù)管理和查詢規(guī)劃。
  • 后端 (BE) 節(jié)點(diǎn):StarRocks BE 節(jié)點(diǎn)負(fù)責(zé)數(shù)據(jù)持久化、數(shù)據(jù)掃描及查詢執(zhí)行。
  • Archmage:一個(gè) Pinterest 服務(wù),旨在屏蔽用戶免受 StarRocks 集群的部署、版本升級和其他操作的復(fù)雜性,同時(shí)將 thrift 調(diào)用轉(zhuǎn)換為 StarRocks 的 SQL 調(diào)用。這個(gè)服務(wù)為不同的分析存儲系統(tǒng)提供統(tǒng)一的接口。
  • 負(fù)載均衡器:通過輪詢方法將查詢分配給四個(gè) StarRocks FE followers,而不是過載單個(gè)follower,以最大化并發(fā)性。

Pinterest 在 Archmage 中使用連接池來減少每個(gè)連接的成本,通過維護(hù)一個(gè)固定的連接池來最小化 JDBC 連接的設(shè)置時(shí)間,從而為每個(gè)用戶請求提供即時(shí)訪問連接的能力。這一優(yōu)化為每個(gè) JDBC 連接節(jié)省了平均 50 ms。目前,每個(gè)集群配置有 70 個(gè)后端引擎和 11 個(gè)前端引擎和觀察者,運(yùn)行在 AWS R6id.8xlarge 實(shí)例上,每個(gè)實(shí)例配備 32 核心、256GB 內(nèi)存和 1900 GB SSD 存儲。

結(jié)果與收益

遷移到 StarRocks 后, Pinterest 發(fā)現(xiàn)應(yīng)用端分析體驗(yàn)到了多項(xiàng)改進(jìn)。遷移將 p90 延遲減少了 50%,只需要之前系統(tǒng)的 32% 的實(shí)例。這使得成本性能效率提高了 3 倍。數(shù)據(jù)導(dǎo)入過程也得到了簡化,實(shí)現(xiàn)了僅 10 秒的數(shù)據(jù)新鮮度。

此外, Pinterest 能夠消除數(shù)據(jù)導(dǎo)入過程中使用的 JSON 配置,因?yàn)?Pinterest 使用了 SQL 進(jìn)行導(dǎo)入(在 StarRocks 中是可能的)。這簡化了客戶入門過程,節(jié)省了大量人工資源。

未來工作

目前,所有操作完全依賴于 StarRocks 的原始查詢性能,Pinterest 也正在探索而查詢緩存或物化視圖等功能,以進(jìn)一步優(yōu)化系統(tǒng)應(yīng)對高并發(fā)工作負(fù)載

責(zé)任編輯:趙寧寧 來源: 小技術(shù)君
相關(guān)推薦

2014-07-16 09:32:34

Pinterest

2019-09-12 09:21:06

數(shù)據(jù)分析游戲行業(yè)游戲設(shè)計(jì)

2016-11-08 09:16:54

數(shù)據(jù)倉庫優(yōu)化

2023-07-06 14:52:36

數(shù)據(jù)分析師SQL

2024-06-19 09:34:38

系統(tǒng)數(shù)據(jù)庫內(nèi)存

2016-09-09 12:28:12

大數(shù)據(jù)

2016-09-30 01:04:45

數(shù)據(jù)分析數(shù)據(jù)

2017-09-28 16:31:02

大數(shù)據(jù)數(shù)據(jù)分析漏斗模型

2024-11-08 12:36:35

2020-04-26 09:46:13

分析數(shù)據(jù)首席數(shù)據(jù)官CIO

2017-02-27 16:35:00

HDFS大數(shù)據(jù)分析

2012-08-24 10:02:53

Pinterest架構(gòu)工程師

2016-10-26 19:33:45

數(shù)據(jù)分析大數(shù)據(jù)

2017-01-16 15:44:38

數(shù)據(jù)分析大數(shù)據(jù)指標(biāo)體系

2022-04-02 06:20:48

IT領(lǐng)導(dǎo)者數(shù)據(jù)分析團(tuán)隊(duì)

2022-06-29 09:54:03

微服務(wù)數(shù)據(jù)

2015-03-04 11:01:36

大數(shù)據(jù)數(shù)據(jù)分析分析

2015-09-01 11:31:50

數(shù)據(jù)英雄

2015-07-29 16:19:54

大數(shù)據(jù)時(shí)代分析

2017-09-05 14:34:02

數(shù)據(jù)分析數(shù)據(jù)庫python
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號