色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用MaxCompute阿里大數據計算方法詳解

智能感知與物聯網技術研究所 ? 來源:互聯網 ? 作者:佚名 ? 2018-03-19 09:53 ? 次閱讀

給大家分享一下基于MaxCompute搭建社交好友推薦系統,使用MaxCompute阿里的大數據計算的方法可以做哪些事情,如果說是以社交好友的推薦,來給大家去演示一下。好友推薦系統它的一個場景介紹,現在大家都在講大數據,如果想去使用這些數據,我們認為它需要具備三個要素,第一個要素是海量的數據,數據量越多越好,只有數據量達到了足夠大,我們才能夠成為一個數據里面潛在去挖掘出來。第二個是處理數據的能力,有了這樣很高的快速處理數據的能力,可以讓我們更快的去把數據里面的信息挖掘出來。第三個是商業變現的一個場景,我們采集大數據的時候,并不是數據越多越好,一定要有一個具體的場景。以推薦系統為例來看一下大數據的一個應用。

左邊是支付寶,在支付寶一打開的時候,下面會有一欄推薦可能是你的好友,一般的話下面的那些人都是你認識的,可能還沒加他們為好友。右側是Linkin,它是一個求職社交網站,Linkin也會給你這樣的一個推薦,會告訴你哪一些用戶是你潛在的好友,而且Linkin會告訴你這個好友跟你是一度的關系的還是兩度的關系或者是三度的關系。潛在關聯性高的,會在前面直接顯示出來,潛在關聯性沒有那么高的也會在后面顯示出來,這兩個都是典型的一個好友推薦。

進行好友推薦的時候,怎么給用戶進行推薦,首先這兩個人是非好友的關系,接著我們去看一下他們倆潛在共同好友的處理,通過這種方式去給用戶推送,比方說潛在好友數量多,我就認為這兩個人是好友關系,就是通過這種方式來實現的。

上圖的右側是人與人之間的一個社交關系的服務,比如說A跟B是一個好友,我們可以通過這五個方式畫出來,讓機器去分析這些數據,需要把右邊這種社交的關系,轉換成機器可以識別的數據,轉換成左側這樣的二維表的數據,比如說A跟B、C、D他們之間是好友,我們左側是A跟B、C、D是好友關系,剩下這些也是類似的,這樣就可以把這個表傳到機器里面進行分析,比方說通過分析之后,發現A跟E有一個共同好友,B跟D有兩個共同好友,然后C跟E有一個共同好友。這個時候就可以推薦B跟D他兩個是一個潛在的好友,而排在前面,A跟E或者C跟E排在概率往下,稍微低一些,潛在好友多的排在前面,潛在好友少的排在后面,通過這種方式來進行排列,這個是我們期望的結果。

好友推薦系統的分析模型

我們怎么來去計算呢?我們一般使用方式是什么呢?使用的是MapReduce這樣的一個計算模型,MapReduce是一種編程模型,用于大規模數據集的并行運算,它由三部分組成分別是Map、Combine、Reduce。

以好友推薦這樣的一個場景為例。

首先輸入左側機器可以識別的數據,輸入之后,在Map端先把數據做一個拆分,拆分成兩份不同的數據,在拆分的同時把它轉換成key、value的類型,比方說A、B、D、E這幾行數據轉換成什么呢?A跟B,然后value是零,零代表他們兩個已經是好友。如果兩個不是好友的話,自定義這一行數據,B跟D不是好友,就把他的值視為1。下面的B、E,還有D跟E也是1。把原來一行數據轉換成Key、Value這個形式的數據,類似于右邊這樣的數據,上面是key、value的一個類型,下面也是類似的。這個是在Map做的事情,把這個數據通過兩個key、value進行一個拆分,轉化成key、value這樣的一個類型。

Combine是對數據先做一個本地的匯總,先看到有一些數據是重復的,比如說A跟B是零,A跟B是零,出現了兩次,這個時候就存一個就可以。其他類似的,這樣我把這些數據在本地做完匯總,類似于這張表,這兩個數據。

接著是第三步是Reduce階段,Reduce是對這些數據進行一個匯總,把兩邊數據匯總到一起,然后對每一個Key值對應唯一的一個value值做一個匯總,這個就是它最終計算的一個結果。如果兩個用戶已經是好友了,Value值是零的話,不需要再給他推薦。所以說A、B如果是零的話就剔掉,只需要知道它的value值是大于零的,有潛在好友,同時這兩個人目前還是非好友的關系,這個就達到了想要的效果。

好友推薦系統在阿里云上的實現方式

好友推薦阿里云實現整個的架構是怎么樣的呢?比方現在有一個社交軟件是一個業務系統,前端使用阿里云的云服務器ECS去部署整個的社交的軟件的應用,入庫的一些數據存到阿里的RDS,這個就是當前的一個社交應用系統。業務系統里面產生了一個數據,怎么來對數據進行分析,首先需要在數據庫里邊把這個數據提取出來,提取到阿里云的大計算服務MaxCompute里面,很類似于我們傳統做數倉的時候ETL的一個過程,會利用阿里云的大數據開發平臺對數據進行分析和處理。

使用它可以快速便捷的去開發我們數據植入或者數據這樣的一個流程,這個就是會使用大數據開發平臺和大數據制造,結果是一個數據分析結果,還需要前端的應用數據對分析出來的結果展示出來。

MaxCompute的技術特點

對于MaxCompute的一些技術特點主要有一下幾點:

  1. 分布式:分布式集群、跨集群技術、可靈活擴展。

  2. 安全性:從安全性來講具有自動存儲糾錯、沙箱機制、多分備份。

  3. 易用:具有標準API、全面支持SQL、上傳下載工具。

  4. 權限控制:多租戶管理、用戶權限策略、數據訪問策略。

MaxCompute的使用場景

對于MaxCompute的使用的場景,可以使用MaxCompute搭建自己的一個數據倉庫,同時,MaxCompute還可以提供一種分布式的應用系統,比方說可以通過圖計算,或者通過有效的寬幅的方式,可以搭建一個工作流;比方說數據分析并不是說只分析一天就不分析了,其實是周期性的。如果數據每天要分析一次,可以在MaxCompute里面生成那樣的任務工作流,設置一個周期性的調度,每天要讓它調度一次,MaxCompute可以按照設計好的工作流,調動周期,然后去運行;MaxCompute在機器學習里面也是有用的,因為機器學習會用到MaxCompute分析出來的數據,其他相類似的服務對數據進行分析處理,分析出來的結果數據放到機器學習平臺里面,讓機器通過一些算法一些模型,去學習這里邊的數據,生成一個希望達到的一個模型。

大數據開發套件DataIDE

另外一個除了MaxCompute之外還有一個會用到一個大數據開發操作DateIDE,大數據開發套件DataIDE(現名:數據工場DataWorks)提供一個高效、安全的離線數據開發環境。為什么介紹它呢?是因為DateIDE只是對數據任務工作流的一個開發,其實底層的數據處理,數據分析,都是在MaxCompute上完成,可以簡單理解為DateIDE就是一個圖象化的數據開發的服務,它是為了幫助我們更好去使用MaxCompute。也可以看到,這我們可以在DateIDE進行一個開發,不需要直接在MaxCompute里面進行開發了,在MaxCompute開發的一個效果,跟在DateIDE里面開發的效果對比。

這個是DateIDE整個應用的一個場景,我們在進行數據分析的時候,需要對里面的原數據進行整合統一保存,這個時候可以在DateIDE上實現,把所有的原數據的信息統一匯總到MaxCompute里面進行一個保存,同時還可以DateIDE進行數據的加工,存儲等操作都可以在DateIDE上完成。DateIDE在整個數據分析的過程中可以對數據存儲、分析、處理、集群等處理。

MaxCompute的應用開發流程

MaxCompute的應用開發流程一共需要六步分別是:

  1. 安裝配置環境

  2. 開發MR程序

  3. 本地模式測試腳本

  4. 導處jar包

  5. 上傳到MaxCompute項目空間

  6. 在MaxCompute中使用MR

下面我們以一個好友推薦的事例來詳細講解一下這個過程。首先需要去安裝MaxCompute客戶端,使用它的好處是可以在本地通過命令的方式去遠程使用阿里云的MaxCompute,在本地只需要配置MaxCompute信息就可以。另外還需要去配置自己的一個開發環境,因為現在阿里云的MaxCompute主要是兩種語言,一種是Java一種是Eclipse。然后新建項目,在開發新建項目的時候,大家可以看到這個紅包,這個紅包就是需要配置本地的客戶端的信息。在進入到寫代碼的過程。

接下來就是簡單的測試,開發之后要測試,這個代碼是不是按照設想的方式去工作的。接著這邊輸入的是一個測試數據,這個輸出的數據類別,就是輸出的這樣的一個表格,表格有三列,第一類是用戶A,第二類是用戶B,第三類是兩個潛在的共同好友的數量,只需要關注這三個數據就可以,然后就可以測試。接著第三個本地運行的數據的代碼,運行的結果就是通過本地的開發測試,在本地測試的時候這邊有一個數據,你第一步需要選擇是使用哪一個的一個項目處理。第二個要選擇輸入表和輸出表,要告訴他輸出表是哪個,輸出表的目的是什么,告訴這個程序,你輸出的結果保存在表里面,配置好點擊運行這個結果就出來了。

本地開發測試成功之后,接著要把它打成一個Jar包,然后上傳到阿里云上,就是上傳到MaxCompute的集群里邊。第二個打完Jar包以后添加資源,下面就把剛剛輸出的Jar包,通過資源的管理,把剛剛輸入的Jar包上傳上來。本地開發測試好的一個MR的Jar包已經上傳到MaxCompute集群里邊。

上傳好了之后就可以使用它,去新建一個任務,然后這個任務去起個名字,這個任務跟哪一個Jar包相關聯,接著是OPENBMR,我們選的是MR的程序,所以里面選的是OPENMR模塊,生成這樣的一個任務,進入到編輯頁面,在編輯頁面里面首先告訴它,這個OPENMR這樣的一個任務,使用的是上傳的好友推薦的一個Jar包,最下面告訴它Jar包里面的程序的邏輯是什么,在這個里面制定好之后點擊運行結果就會出來。這個就是我們在本地開發測試,把資源上傳到MaxCompute的集群里面,接著在集群里面去使用我在本地開發好的Jar包,這個就是整個的一個開發和部署的一個流程。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5087

    文章

    19145

    瀏覽量

    306135
  • 大數據
    +關注

    關注

    64

    文章

    8897

    瀏覽量

    137526

原文標題:基于大數據搭建社交好友推薦系統

文章出處:【微信號:tyutcsplab,微信公眾號:智能感知與物聯網技術研究所】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    電阻器的工作原理與計算方法

    散發出去,從而限制電流的大小。這一過程遵循歐姆定律,即電流I、電壓V和電阻R之間的關系為:I = V/R。 電阻器的計算方法 電阻器的計算方法有多種,根據具體需求和已知條件的不同,可以選擇合適的公式進行計算。以下是一些常見的
    的頭像 發表于 12-04 14:31 ?549次閱讀

    波特率的定義和計算方法 波特率與數據傳輸速度的關系

    。符號可以是數字、字母、聲音、圖像等,根據不同的符號來確定每個符號占據多長時間。 波特率的計算方法 波特率的計算方法通常有兩種: 基于傳輸速率和符號位數 : 波特率計算公式為:Baud rate = 傳輸速率 / log?(符號
    的頭像 發表于 11-22 09:49 ?2530次閱讀

    FPGA門數的計算方法

    我們在比較FPGA的芯片參數時經常說某一款FPGA是多少萬門的,也有的說其有多少個LE,那么二者之間有何關系呢? FPGA等效門數的計算方法有兩種,一是把FPGA基本單元(如LUT+FF
    的頭像 發表于 11-11 09:45 ?320次閱讀
    FPGA門數的<b class='flag-5'>計算方法</b>

    人工智能云計算大數據三者關系

    人工智能、云計算大數據之間的關系是緊密相連、相互促進的。大數據為人工智能提供了豐富的訓練資源和驗證環境;云計算大數據和人工智能提供了強大
    的頭像 發表于 11-06 10:03 ?481次閱讀

    計算大數據分析中的應用

    計算大數據分析中的應用廣泛且深入,它為用戶提供了存儲、計算、分析和預測的強大能力。以下是對云計算大數據分析中應用的介紹: 一、存儲和處
    的頭像 發表于 10-24 09:18 ?509次閱讀

    電流計算方法與配線法的區別

    電流計算方法與配線法是兩個不同的概念,它們在電氣工程和電子設計中扮演著重要的角色。電流計算方法主要涉及到電流的計算和分析,而配線法則是關于如何安全、有效地將電氣設備連接在一起的實踐。 電流計算
    的頭像 發表于 09-19 16:00 ?466次閱讀

    電荷放大電路的帶寬 和IV轉換電路帶寬計算方法不一樣嗎?

    ,帶寬會非常小,但實際中,電荷放大電路對輸入的陡峭脈沖還是可以完美響應,這與帶寬非常小矛盾。 電荷放大電路的帶寬 和IV轉換電路帶寬計算方法不一樣嗎?
    發表于 09-03 07:07

    使用位置傳感器輸出數據的角度計算方法

    電子發燒友網站提供《使用位置傳感器輸出數據的角度計算方法.pdf》資料免費下載
    發表于 08-30 10:37 ?0次下載
    使用位置傳感器輸出<b class='flag-5'>數據</b>的角度<b class='flag-5'>計算方法</b>

    DCS系統I/O點數計算方法與原則

    DCS系統通常涉及熱工檢測、模擬量控制、順序控制和邏輯控制等自動化控制內容,DCS系統點數是從AI模擬輸入點數、AO模擬輸出點數、DI開關量輸入點數、DO開關量輸出點數和DCS與其他系統通訊點數五個方面統計結果得出,下面介紹儀表專業和電氣專業DCS系統點數計算方法
    的頭像 發表于 08-08 15:20 ?654次閱讀
    DCS系統I/O點數<b class='flag-5'>計算方法</b>與原則

    【SOC的多種計算方法

    SOC的多種計算方法
    的頭像 發表于 06-05 09:34 ?2213次閱讀
    【SOC的多種<b class='flag-5'>計算方法</b>】

    儲能容量的計算方法

    隨著可再生能源的大規模應用和電力系統的日益復雜,儲能技術的重要性日益凸顯。儲能容量作為儲能技術的關鍵參數之一,其計算方法對于評估儲能系統的性能、優化儲能系統的配置以及提高電力系統的穩定性等方面具有重要意義。本文將對儲能容量的計算方法進行詳細介紹,并探討其在實際應用中的意義
    的頭像 發表于 05-20 15:20 ?4884次閱讀

    電壓探頭延遲計算方法及應用

    在電子測試和測量中,電壓探頭是一種常用的工具,用于測量電路中的電壓信號。然而,電壓探頭本身會引入一定的延遲,這可能會對測量結果產生影響。本文將介紹電壓探頭延遲的計算方法,并探討其在實際應用中的重要性
    的頭像 發表于 04-28 10:28 ?582次閱讀
    電壓探頭延遲<b class='flag-5'>計算方法</b>及應用

    阿里云在海外市場發布一系列AI大數據產品

    近日,阿里云宣布面向海外市場發布一系列AI計算大數據產品,進一步擴大其在全球市場的份額。這一系列新產品涵蓋了serverless模式的AI服務平臺、整合向量引擎技術的大數據產品等,旨
    的頭像 發表于 02-05 11:30 ?1084次閱讀

    電線安全載流量的計算方法

    電線的安全載流量是指電線能夠安全地承受的最大電流。計算電線的安全載流量需要考慮電線的材質、截面積、長度、散熱條件等因素。下面將詳細介紹電線安全載流量的計算方法。 電線的材質是影響安全載流量的重要因素
    的頭像 發表于 01-16 10:51 ?2867次閱讀

    耐壓測試中漏電流的計算方法

    耐壓測試是一種常用的電氣測試方法。在進行耐壓測試時,需要對漏電流進行計算,以確保測試過程中的安全。本文將詳細介紹耐壓測試中漏電流的計算方法。 一、漏電流的概念 漏電流是指在絕緣材料表面或內部
    的頭像 發表于 01-11 14:38 ?1.2w次閱讀
    耐壓測試中漏電流的<b class='flag-5'>計算方法</b>
    主站蜘蛛池模板: 樱花草在线影视WWW日本动漫| 玩50岁四川熟女大白屁股直播| 国产不卡无码高清视频| 99精品免费久久久久久久久日本| 又黄又湿免费高清视频| 亚洲视频在线免费| 亚洲精品在线免费| 亚洲一级毛片免费在线观看| 亚洲精品色播一区二区| 亚洲电影成人 成人影院| 雪恋电影完整版免费观看| 小玲被公扒开腿| 亚洲AV精品无码国产一区| 无人影院在线播放| 邪恶肉肉全彩色无遮盖| 亚洲高清毛片一区二区| 亚洲爆乳无码精品AAA片蜜桃| 性xxxx18公交车| 袖珍人与大黑人性视频| 亚洲 日韩 在线 国产 精品| 亚洲XXX午休国产熟女屁| 亚洲精品一二三| 伊人综合在线22| 中文字幕在线视频观看| 最近免费中文字幕完整版HD| 97国产精品人妻无码免费| 99久久综合| 动漫人物差差差30分钟免费看| 成人伦理影院| 国产成人免费在线| 国产亚洲视频中文字幕| 久久99国产精品二区不卡| 久久综合久综合久久鬼色| 蜜芽在线影片| 人妻少妇久久久久久97人妻| 日日夜夜天天操| 午夜福利试看120秒体验区| 亚洲精品久久国产高清| 最近2019中文字幕MV免费看| GAY空少被体育生开菊| 国产a级午夜毛片|