1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        今日頭條技術(shù)架構(gòu)千字分析,

        共 2957字,需瀏覽 6分鐘

         ·

        2021-04-23 13:46

        點擊“開發(fā)者技術(shù)前線”,選擇“星標(biāo)??”

        讓一部分開發(fā)者看到未來


        ??今日頭條創(chuàng)立于2012年3月,到目前僅4年時間。從十幾個工程師開始研發(fā),到上百人,再到200余人。產(chǎn)品線由內(nèi)涵段子,到今日頭條,今日特賣,今日電影等產(chǎn)品線。
        一、產(chǎn)品背景
        ??今日頭條是為用戶提供個性化資訊客戶端。下面就和大家分享一下當(dāng)前今日頭條的數(shù)據(jù)(據(jù)內(nèi)部與公開數(shù)據(jù)綜合):
        • 5億注冊用戶
        • 2014年5月1.5億,2015年5月3億,2016年5月份為5億。幾乎為成倍增長。
        • 日活4800萬用戶
        • 2014年為1000萬日活,2015年為3000萬日活。
        • 日均5億PV
        • 5億文章瀏覽,視頻為1億。頁面請求量超過30億次。
        • 用戶停留時長超過65分鐘以上
        1、文章抓取與分析
        ??我們?nèi)粘.a(chǎn)生原創(chuàng)新聞在1萬篇左右,包括各大新聞網(wǎng)站和地方站,另外還有一些小說,博客等文章。這些對于工程師來講,寫個Crawler并非困難的事。
        ??接下來,今日頭條會用人工方式對敏感文章進(jìn)行審核過濾。此外,今日頭條頭條號目前也有為數(shù)不少的原創(chuàng)文章加入到了內(nèi)容遴選隊列中。
        ??接下來我們會對文章進(jìn)行文本分析,比如分類,標(biāo)簽、主題抽取,按文章或新聞所在地區(qū),熱度,權(quán)重等計算。
        2、用戶建模
        ??當(dāng)用戶開始使用今日頭條后,對用戶動作的日志進(jìn)行實時分析。使用的工具如下:
        • Scribe
        • Flume
        • Kafka
        ??
        我們對用戶的興趣進(jìn)行挖掘,會對用戶的每個動作進(jìn)行學(xué)習(xí)。主要使用:

        •  Hadoop
        •  Storm


        ??產(chǎn)生的用戶模型數(shù)據(jù)和大部分架構(gòu)一樣,保存在MySQL/MongoDB(讀寫分離)以及Memcache/Redis中。
        ??隨著用戶量的不斷擴(kuò)展大,用戶模型處理的機(jī)器集群數(shù)量較大。2015年前為7000臺左右。其中,用戶推薦模型包括以下維度:


        • 1 用戶訂閱

        • 2 標(biāo)簽

        • 3 部分文章打散推送


        此時,需要每時每刻做推薦。
        3、新用戶的“冷啟動”
        ??今日頭條會通過用戶使用的手機(jī),操作系統(tǒng),版本等“識別”。另外,比如用戶通過社交帳號登錄,如新浪微博,頭條會對其好友,粉絲,微博內(nèi)容及轉(zhuǎn)發(fā)、評論等維度進(jìn)行對用戶做初步“畫像”。
        ??分析用戶的主要參數(shù)如下:
        •  關(guān)注、粉絲關(guān)系
        • 關(guān)系
        • 用戶標(biāo)簽
        ??除了手機(jī)硬件,今日頭條還會對用戶安裝的APP進(jìn)行分析。例如機(jī)型和APP結(jié)合分析,用小米,用三星的和用蘋果的不同,另外還有用戶瀏覽器的書簽。頭條會實時捕捉用戶對APP頻道的動作。另外還包括用戶訂閱的頻道,比如電影,段子,商品等。
        4、推薦系統(tǒng)
        ??推薦系統(tǒng),也稱推薦引擎。它是今日頭條技術(shù)架構(gòu)的核心部分。包括自動推薦與半自動推薦系統(tǒng)兩種類型:
        1) 自動推薦系統(tǒng)
        • 自動候選
        •  自動匹配用戶,如用戶地址定位,抽取用戶信息
        •  自動生成推送任務(wù)


        這時需要高效率,大并發(fā)的推送系統(tǒng),上億的用戶都要收到。
        2)半自動推薦系統(tǒng)
        •  自動選擇候選文章
        •  根據(jù)用戶站內(nèi)外動作
        ??頭條的頻道,在技術(shù)側(cè)劃分的包括分類頻道、興趣標(biāo)簽頻道、關(guān)鍵詞頻道、文本分析等,這些都分成相對獨立的開發(fā)團(tuán)隊。目前已經(jīng)有300+個分類器,仍在不斷增加新的用戶模型,原來的用戶模型不用撤消,仍然發(fā)揮作用。
        ??在還沒有推出頭條號時,內(nèi)容主要是抓取其它平臺的文章,然后去重,一年幾百萬級,并不太大。主要是用戶動作日志收集,興趣收集,用戶模型收集。
        ??資訊App的技術(shù)指標(biāo),比如屏幕滑動,用戶是不是對一篇都看完,停留時間等都需要我們特別關(guān)注
        5、數(shù)據(jù)存儲
        ??今日頭條使用MySQL或Mongo持久化存儲+Memched(Redis),分了很多庫(一個大內(nèi)存庫),亦嘗試使用了SSD的產(chǎn)品。
        ??今日頭條的圖片存儲,直接放在數(shù)據(jù)庫中,分布式保存文件,讀取的時候采用CDN。
        6、消息推送
        ??消息推送,對于用戶: 及時獲取信息。對運(yùn)營來講,能夠 提??用戶活躍度。比如在今日頭條推送后能夠提升20%左右的DAU,如果沒有推送,會影響10%左右 DAU(2015年數(shù)據(jù))。
        ??推送后要關(guān)注的ROI:點擊率,點擊量。能夠監(jiān)測到App卸載和推送禁用數(shù)量。
        ??今日頭條推送的主要內(nèi)容包括突發(fā)與熱點咨訊,有人評論回復(fù),站外好友注冊加入。
        ??在頭條,推送也是個性化:
        •  頻率個性化
        • 內(nèi)容個性化
        •  地域
        •  興趣
        比如:
        ??按照城市:遼寧朝陽發(fā)生的某個新聞事件,發(fā)給朝陽本地的用戶。
        ??按照興趣:比如京東收購一號店,發(fā)給互聯(lián)網(wǎng)興趣的用戶。
        ??推送平臺的工具和選擇,需要具備如下的標(biāo)準(zhǔn):
        • 通道,首先速度要快,但是要可控,可靠,并且節(jié)省資源
        • 推送的速度要快,有不同維度的策略支持,可跟蹤,開發(fā)接口要友好
        • 推送運(yùn)營的后臺,反饋也要快,包括時效性,熱度,工具操作方便
        • 對于運(yùn)營側(cè),清晰是否確定推薦,包括推送的文案處理
        ??因此,推送后臺應(yīng)該提供日報,完整的數(shù)據(jù)后臺,提供A/B Test方案支持。
        ??推送系統(tǒng)一部分使用自有IDC,在發(fā)送量特別大,消耗帶寬較嚴(yán)重??梢允褂妙愃瓢⒗镌频姆?wù),可有效節(jié)省成本。


        二、今日頭條系統(tǒng)架構(gòu)



        三、頭條微服務(wù)架構(gòu)


        ??今日頭條通過拆分子系統(tǒng),大的應(yīng)用拆成小應(yīng)用,抽象通用層做代碼復(fù)用。



        系統(tǒng)的分層比較典型。重點在基礎(chǔ)設(shè)施,希望通過基礎(chǔ)設(shè)施提高快速迭代、容災(zāi)和一系列的工作,希望各個業(yè)務(wù)團(tuán)隊能更快做業(yè)務(wù)上的迭代以及架構(gòu)上的調(diào)整。

        四、今日頭條的虛擬化PaaS平臺規(guī)劃

        通過三層實現(xiàn),通過 PaaS 平臺統(tǒng)一管理。提供通用 SaaS 服務(wù),同時提供通用的 App 執(zhí)行引擎。最底層是 IaaS 層。
        ??IaaS 管理所有的機(jī)器,把公有云整合起來,頭條有一些熱點事件會全國推廣推送,對網(wǎng)絡(luò)帶寬比較高,我們借助公有云,需要哪一種類型計算資源,統(tǒng)一抽象起來。基礎(chǔ)設(shè)施結(jié)合服務(wù)化的思路,比如日志,監(jiān)控等等功能,業(yè)務(wù)不需要關(guān)注細(xì)節(jié)就可以享受到基礎(chǔ)設(shè)施提供的能力。


        五、總結(jié)


        今日頭條重要的部分在于:
        數(shù)據(jù)生成與采集
        數(shù)據(jù)傳輸。Kafka做消息總線連接在線和離線系統(tǒng)。
        數(shù)據(jù)入庫。數(shù)據(jù)倉庫、ETL(抽取轉(zhuǎn)換加載)
        數(shù)據(jù)計算。數(shù)據(jù)倉庫中的數(shù)據(jù)表如何能被高效的查詢很關(guān)鍵,因為這會直接關(guān)系到數(shù)據(jù)分析的效率。常見的查詢引擎可以歸到三個模式中,Batch 類、MPP 類、Cube 類,頭條在 3 種模式上都有所應(yīng)用。
        鏈接:
        https://blog.csdn.net/mucaoyx/article/details/84498468
        版權(quán)申明:內(nèi)容來源網(wǎng)絡(luò),版權(quán)歸原創(chuàng)者所有。除非無法確認(rèn),我們都會標(biāo)明作者及出處,如有侵權(quán)煩請告知,我們會立即刪除并表示歉意。謝謝。
        PS:后臺回復(fù) “666” 領(lǐng)取程序員大禮包哦~


        在看點一下



        瀏覽 85
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            男女深夜福利 | 国产三级电影在线免费观看 | 大黑屄| 免费靠逼网站 | 中文字幕欧美精品一区二区三区 | 十八毛片18女人18毛片免费观看 | 看黄色小说的软件 | 三级片国产在线看 | 国产你懂得 | 女人18毛片水多毛片久久1 |