您的位置:首頁>正文

DSP系統技術架構參考

前面基本已經將DSP的典型模式、主要機制及要點都介紹了。 可能有些同學會好奇DSP系統內部的技術架構。 下面截取部分DSP系統的技術架構圖供大家參考, 同樣對於非技術的同學對此有個感性認識即可。 也不做大篇幅的展開了。

1. 技術架構概要

如圖7-22所示, DSP系統從技術架構上涉及:投放平臺、投放設置使用者交互模組(setup UI)、報表(Report)、演算法引擎等等模組。 演算法引擎模組主要是大資料及演算法的機器學習大量採用分散式技術(例如hadoop), 對使用者日誌、人群資料進行建模及機器智慧處理。 演算法引擎模組處理好的人群資料、演算法模型等等資料通過海量記憶體技術(例如redis)暫存在記憶體中,

便於Bid投放引擎快速查詢使用, 全部暫存在記憶體中的目的是為了在100ms完成競價過程, 確保在DSP方<30ms處理完成, 為網路通訊流出時間。 Bid投放引擎是典型的大集群模式用於回應大併發的請求, 且確保每個請求<30ms處理完成。 Bid投放引擎的投放規則(預算、頻次、投放策略設置等等資料)也都是存在記憶體中的便於快速查詢。 投放策略設置的資料內容都是使用者通過投放設置使用者交互模組中的介面完成的。 另外還有一些十分重要的輔助模組, 例如:廣告曝光點擊資料回收模組、idmapping模組、大資料包表模組、內置DMP模組等等。

圖7-22 技術架構概要示例

2. DSP內部技術處理流程概要

DSP內部技術處理主要依賴一些關鍵技術處理設施, 主要的包括:原始海量log系統、海量消息並行處理佇列(例如採用spark技術)、海量記憶體系統(例如採用redis技術)、業務系統關聯式資料資料庫等等。 如圖7-23所示, 一條技術處理線路是廣告請求處理線:廣告競價Bidder海量的即時廣告請求處理會產生海量的原始log、同時Bidder也頻繁的同海量記憶體系統交互讀寫廣告請求相關的頻次、消耗等等資料,

然後廣告請求log經過過並行處理佇列處理灌入報表資料庫及相應的大資料人群及模型資料庫。 另一條技術處理線路是廣告曝光、點擊等等監測資料的回收, 開始也是產生大量的原始log、同時資料回收引擎同海量記憶體系統交互寫如廣告曝光、點擊相關的頻次、消耗等等資料。 然後廣告曝光、點擊log經過過並行處理佇列處理灌入相應報表資料庫及相應的大資料人群及模型資料庫, 同時並行處理佇列進行大量的機器智慧分析更新部分人群資料及模型資料, 同時同步更新到Bidder資料庫及內容系統中供Bidder即時競價時使用。

圖7-23 DSP內部技術處理流程概要示例

3. DSP競價核心處理流程概要(<30ms)

如圖7-24所示, DSP的Bidder競價模組設計約束核心處理時間極短, <30ms。 為了解決適配不同ADX流量的不同介面。 在接受廣告請求, 及輸出返回時, 會針對不同ADX平臺介面使用適配器設計模式採用不同適配器予以處理。

但整體處理流程不變。 中間業務處理部分也使用篩檢程式的設計模式, 增加新業務時根據業務需要增加篩檢程式實現即可。 這樣做的好處是整體的Bidder競價核心模組處理流程框架相對穩定, 不會隨這業務的變化而變化。 具備十分強大的業務靈活性和應對高性能的水準擴充性。

圖7-24 DSP競價核心處理流程概要示例

4. 競價程式處理過程概要

如圖7-25所示,Bidder競價處理器內部也會依據業務處理依次分為:索引子快速過濾廣告(採用索引子的好處是檢索效率極高,當然索引子僅能用戶簡單的過濾條件,例如:尺寸索引、平臺及廣告位元索引、流覽器索引、作業系統索引、地域索引等等)。廣告過濾(投放策略相關規則需計算的過濾條件是無法使用索引子,例如:預算、曝光、日期、頻次、人群定向、創意類型等等)。上述這兩層過濾都是為了廣告請求過濾可供投放的候選廣告列表,然後通過出價演算法的處理給出該廣告列表中各廣告的出價(這裡可能會用到動態出價演算法,也可能使用的固定出價策略(採用何種出價策略及是否使用演算法都是在投放設置介面中有人工設設置的))。然後會進行低價過濾(根據廣告請求中的底價過濾掉出價低於底價的那些候選廣告)。最後排序並決策勝出(根據各候選廣告的出價及演算法附帶給出的優先順序權重綜合排序,排名第一的勝出,即將以該廣告內容準備競價返回)。曝光點擊動態代碼生成(以上一步勝出的廣告內容生成曝光點擊動態代碼,生成動態曝光點擊代碼有很多目的,例如防作弊,全程攜帶投放參數追蹤等等)。Bid/Unbid日誌記錄(結束處理時非同步啟動)。

圖7-25競價程式處理過程概要示例

5. 分散式集群概要

如圖7-26所示,為了應對海量的廣告競價業務需要,及大資料的分散式運算基礎設施的需要。DSP在系統架構設計上需要支援分散式支援水準擴容,架構支援大併發、大資料、高可用、高容錯等等特徵。

圖7-26 分散式集群概要示例

文字表現力有限,歡迎參加《9月9日“DSP上”專題【線下大課堂】》面對面為您答疑解惑講透您關心的問題。現場福利:可以為您的新書定制個性的簽名題詞。

網上文章較零散,若想系統化學習,可考慮考慮作者剛出版的原版新書《程式化廣告實戰》,各大電商網站(如:京東)均有售。

圖7-24 DSP競價核心處理流程概要示例

4. 競價程式處理過程概要

如圖7-25所示,Bidder競價處理器內部也會依據業務處理依次分為:索引子快速過濾廣告(採用索引子的好處是檢索效率極高,當然索引子僅能用戶簡單的過濾條件,例如:尺寸索引、平臺及廣告位元索引、流覽器索引、作業系統索引、地域索引等等)。廣告過濾(投放策略相關規則需計算的過濾條件是無法使用索引子,例如:預算、曝光、日期、頻次、人群定向、創意類型等等)。上述這兩層過濾都是為了廣告請求過濾可供投放的候選廣告列表,然後通過出價演算法的處理給出該廣告列表中各廣告的出價(這裡可能會用到動態出價演算法,也可能使用的固定出價策略(採用何種出價策略及是否使用演算法都是在投放設置介面中有人工設設置的))。然後會進行低價過濾(根據廣告請求中的底價過濾掉出價低於底價的那些候選廣告)。最後排序並決策勝出(根據各候選廣告的出價及演算法附帶給出的優先順序權重綜合排序,排名第一的勝出,即將以該廣告內容準備競價返回)。曝光點擊動態代碼生成(以上一步勝出的廣告內容生成曝光點擊動態代碼,生成動態曝光點擊代碼有很多目的,例如防作弊,全程攜帶投放參數追蹤等等)。Bid/Unbid日誌記錄(結束處理時非同步啟動)。

圖7-25競價程式處理過程概要示例

5. 分散式集群概要

如圖7-26所示,為了應對海量的廣告競價業務需要,及大資料的分散式運算基礎設施的需要。DSP在系統架構設計上需要支援分散式支援水準擴容,架構支援大併發、大資料、高可用、高容錯等等特徵。

圖7-26 分散式集群概要示例

文字表現力有限,歡迎參加《9月9日“DSP上”專題【線下大課堂】》面對面為您答疑解惑講透您關心的問題。現場福利:可以為您的新書定制個性的簽名題詞。

網上文章較零散,若想系統化學習,可考慮考慮作者剛出版的原版新書《程式化廣告實戰》,各大電商網站(如:京東)均有售。

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示