大數(shù)據(jù)系統(tǒng)的技術(shù)龐大而復(fù)雜?;A(chǔ)技術(shù)包括數(shù)據(jù)采集、數(shù)據(jù)預(yù)處理、分布式存儲(chǔ)、NoSQL數(shù)據(jù)庫、數(shù)據(jù)倉庫、機(jī)器學(xué)習(xí)、并行計(jì)算、可視化等技術(shù)類別和不同的技術(shù)層次。首先,本文給出了一個(gè)通用的大數(shù)據(jù)處理框架,主要分為以下幾個(gè)方面:數(shù)據(jù)采集與預(yù)處理、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)清洗、數(shù)據(jù)查詢分析和數(shù)據(jù)可視化。
一、數(shù)據(jù)采集和預(yù)處理
對(duì)于來自不同來源的數(shù)據(jù),包括移動(dòng)互聯(lián)網(wǎng)數(shù)據(jù)、社交網(wǎng)絡(luò)數(shù)據(jù)等,這些結(jié)構(gòu)化和非結(jié)構(gòu)化的海量數(shù)據(jù)是分散的,即所謂的數(shù)據(jù)孤島,這些數(shù)據(jù)在此時(shí)是沒有意義的。數(shù)據(jù)采集是將這些數(shù)據(jù)寫入數(shù)據(jù)倉庫,將分散的數(shù)據(jù)集成在一起,并對(duì)數(shù)據(jù)進(jìn)行分析。數(shù)據(jù)采集包括文件日志采集、數(shù)據(jù)庫日志采集、關(guān)系數(shù)據(jù)庫訪問和應(yīng)用程序訪問。當(dāng)數(shù)據(jù)量較小時(shí),可以編寫常規(guī)腳本將日志寫入存儲(chǔ)系統(tǒng),但隨著數(shù)據(jù)量的增長(zhǎng),這些方法不能提供數(shù)據(jù)安全性,且操作維護(hù)困難,需要較強(qiáng)的解決方案。
作為實(shí)時(shí)日志收集系統(tǒng),F(xiàn)lume NG支持日志系統(tǒng)中的各種類型的數(shù)據(jù)發(fā)送器來收集數(shù)據(jù)。同時(shí),數(shù)據(jù)被簡(jiǎn)單地處理并寫入各種數(shù)據(jù)接收器(例如文本,HDFS,Hbase等)。 。 Flume NG使用三層架構(gòu):代理層,收集器層和存儲(chǔ)層,每個(gè)層都可以水平擴(kuò)展。代理包含Source,Channel和Sink。源用于將數(shù)據(jù)源消費(fèi)(收集)到通道組件。該通道用作中間臨時(shí)存儲(chǔ)器以保存所有源組件信息。接收器從通道讀取數(shù)據(jù)并在成功讀取后刪除它。頻道中的信息。
NDC(NeteaseDataCanal)被翻譯成NetEase Data Canal Syst em,它是NetEase的實(shí)時(shí)數(shù)據(jù)遷移、同步和結(jié)構(gòu)化數(shù)據(jù)庫訂閱的平臺(tái)解決方案。它集成了NetEase過去在數(shù)據(jù)傳輸領(lǐng)域的工具和經(jīng)驗(yàn),通過數(shù)據(jù)鏈接連接獨(dú)立數(shù)據(jù)庫、分布式數(shù)據(jù)庫、OLAP系統(tǒng)和下游應(yīng)用程序。NDC的設(shè)計(jì)除了保證數(shù)據(jù)的高效傳輸外,還遵循單元化和平臺(tái)化的設(shè)計(jì)思想。
logflash是一個(gè)開源的服務(wù)器端數(shù)據(jù)處理管道,可以同時(shí)從多個(gè)源收集數(shù)據(jù),轉(zhuǎn)換數(shù)據(jù),并將數(shù)據(jù)發(fā)送到您最喜愛的“存儲(chǔ)庫”。常用的儲(chǔ)存庫是彈性研究。Logflash支持多種輸入選項(xiàng),可以同時(shí)從許多常用的數(shù)據(jù)源中捕獲事件,并可以方便地以連續(xù)流方式從日志、度量、Web應(yīng)用程序、數(shù)據(jù)存儲(chǔ)和各種aws服務(wù)中收集數(shù)據(jù)。
Sqoop使用的一種工具,用于在關(guān)系數(shù)據(jù)庫和Hadoop中的數(shù)據(jù)之間傳輸數(shù)據(jù)??梢詫?shù)據(jù)從關(guān)系數(shù)據(jù)庫(如MySQL、Oracle)導(dǎo)入Hadoop(如HDFS、Hive、HBase)。還可以將Hadoop(如HDFS、Hive、HBase)中的數(shù)據(jù)導(dǎo)入到關(guān)系數(shù)據(jù)庫(如MySQL、Oracle)中。Sqoop允許MapReduce作業(yè)(非常容錯(cuò)的分布式并行計(jì)算)執(zhí)行任務(wù)。Sqoop的另一個(gè)優(yōu)點(diǎn)是它傳輸大量結(jié)構(gòu)化或半結(jié)構(gòu)化數(shù)據(jù)的過程是完全自動(dòng)化的。
流計(jì)算是業(yè)界的一個(gè)熱門話題。流式計(jì)算能夠?qū)崟r(shí)清理、聚合和分析多個(gè)高通量數(shù)據(jù)源,能夠快速處理和反饋社交網(wǎng)站、新聞等中存在的數(shù)據(jù)流。目前,有很多大型數(shù)據(jù)流分析工具,如開源Strom、火花流等。
Strom集群結(jié)構(gòu)是由一個(gè)主節(jié)點(diǎn)(Nimbus)和多個(gè)工作節(jié)點(diǎn)(Supervisor)組成的主從結(jié)構(gòu)。主節(jié)點(diǎn)是在運(yùn)行時(shí)靜態(tài)指定或動(dòng)態(tài)選擇的。Nimbus和Supervisor都是Storm提供的后臺(tái)守護(hù)程序。動(dòng)物園管理員之間的通信與狀態(tài)更改通知和監(jiān)視通知結(jié)合使用。Nimbus流程的主要職責(zé)是管理、協(xié)調(diào)和監(jiān)控集群上運(yùn)行的拓?fù)?包括拓?fù)浒l(fā)布、任務(wù)分配、在處理事件時(shí)重新分配任務(wù)等)。主管進(jìn)程等待Nimbus分配任務(wù)以生成并監(jiān)視工作者(JVM進(jìn)程)以執(zhí)行任務(wù)。主管和工作人員在不同的JVM上運(yùn)行,如果由主管啟動(dòng)的工作進(jìn)程退出(或由于錯(cuò)誤而退出),則主管嘗試重新生成新的工作進(jìn)程。
當(dāng)上游模塊的數(shù)據(jù)用于計(jì)算、統(tǒng)計(jì)和分析時(shí),可以使用消息系統(tǒng),特別是分布式消息系統(tǒng)。Kafka是用Scala編寫的,是一個(gè)基于發(fā)布/訂閱的分布式消息傳遞系統(tǒng)。Kafka的設(shè)計(jì)思想之一是提供離線處理和實(shí)時(shí)處理,以及將數(shù)據(jù)實(shí)時(shí)備份到另一個(gè)數(shù)據(jù)中心。卡夫卡可以讓許多生產(chǎn)者和消費(fèi)者共享多個(gè)主題,并在主題單元中總結(jié)消息??ǚ蚩òl(fā)布消息的程序稱為生產(chǎn)者,也稱為生產(chǎn)者,訂閱主題和消費(fèi)消息的程序稱為消費(fèi)者,也稱為消費(fèi)者。當(dāng)Kafka作為一個(gè)集群運(yùn)行時(shí),它可以由一個(gè)或多個(gè)服務(wù)組成,每個(gè)服務(wù)都稱為代理,在此期間,生產(chǎn)者通過網(wǎng)絡(luò)向Kafka集群發(fā)送消息,該集群向消費(fèi)者提供消息。Kafka通過ZooKeeper管理集群配置,選舉領(lǐng)導(dǎo)者,并在消費(fèi)者組發(fā)生變化時(shí)重新平衡。生產(chǎn)者使用推送模式將消息發(fā)布到代理,消費(fèi)者使用拉模式訂閱和使用來自代理的消息。大數(shù)據(jù)技術(shù)學(xué)習(xí)交換口裙,數(shù)字515數(shù)字269數(shù)字485。卡夫卡可以和水槽一起工作。如果需要將流數(shù)據(jù)從Kafka傳輸?shù)紿adoop,可以使用Flume Agent,以使用Kafka作為源。這允許您將數(shù)據(jù)從Kafka讀取到Hadoop。
動(dòng)物園管理員是提供數(shù)據(jù)同步服務(wù)的分布式、開源分布式應(yīng)用程序協(xié)調(diào)服務(wù)。其功能包括配置管理、名稱服務(wù)、分布式鎖定和集群管理。配置管理是指在一個(gè)地方修改配置,這樣所有對(duì)這個(gè)地方的配置感興趣的人都可以改變,消除了繁瑣的手動(dòng)復(fù)制配置,同時(shí)也確保了數(shù)據(jù)的可靠性和一致性。同時(shí)可以通過名稱獲得資源或服務(wù)的地址等信息,并可以監(jiān)視集群中機(jī)器的變化,實(shí)現(xiàn)類似于心跳機(jī)制的功能。
二、數(shù)據(jù)存儲(chǔ)
Hadoop作為一個(gè)開源框架,專為離線和大規(guī)模數(shù)據(jù)分析而設(shè)計(jì)。HDFS作為其核心存儲(chǔ)引擎,在數(shù)據(jù)存儲(chǔ)中得到了廣泛的應(yīng)用。
HBase是一個(gè)分布式的、面向列的開源數(shù)據(jù)庫,可以看作是HDFS的封裝,HDFS本質(zhì)上是一個(gè)數(shù)據(jù)存儲(chǔ)和NoSQL數(shù)據(jù)庫。HBase是一個(gè)關(guān)鍵/值系統(tǒng),部署在HDFS上,以克服HDFS在隨機(jī)讀寫方面的缺點(diǎn)。與Hadoop一樣,HBase的目標(biāo)主要依靠橫向擴(kuò)展,通過不斷增加廉價(jià)的商用服務(wù)器來增加計(jì)算和存儲(chǔ)容量。
Phoenix,相當(dāng)于Java中間件,可以幫助開發(fā)工程師訪問NoSQL數(shù)據(jù)庫HBase,就像他們使用JDBC訪問關(guān)系數(shù)據(jù)庫一樣。
SILE是一種Hadoop資源管理器,可以為上層應(yīng)用提供統(tǒng)一的資源管理和調(diào)度。它的引入為集群的利用、資源的統(tǒng)一管理和數(shù)據(jù)共享帶來了極大的好處。SILE由以下主要組件組成:全局資源管理器ResourceManager、ResourceManager的每個(gè)節(jié)點(diǎn)代理NodeManager、代表每個(gè)應(yīng)用程序的應(yīng)用程序,以及每個(gè)ApplicationMaster在NodeManager上運(yùn)行的多個(gè)容器。
Mesos是一款開源集群管理軟件,支持Hadoop、ElasticSearch、Spark、Storm和Kafka等應(yīng)用程序架構(gòu)。
REDIS是一種非常快速的非關(guān)系數(shù)據(jù)庫,它可以存儲(chǔ)鍵和五種不同類型的值之間的映射,將存儲(chǔ)在內(nèi)存中的鍵值對(duì)數(shù)據(jù)持久化到硬盤,并使用復(fù)制功能來擴(kuò)展性能。您還可以使用客戶端碎片來擴(kuò)展寫入性能。
Atlas是介于應(yīng)用程序和MySQL之間的中間件。在后端數(shù)據(jù)庫中,Atlas相當(dāng)于與其連接的客戶端,而前端應(yīng)用程序則等同于DB。作為服務(wù)器,Atlas與應(yīng)用程序進(jìn)行通信。實(shí)現(xiàn)了MySQL的客戶端和服務(wù)器協(xié)議,同時(shí)作為客戶端與MySQL進(jìn)行通信。它保護(hù)應(yīng)用程序不受數(shù)據(jù)庫細(xì)節(jié)的影響,并維護(hù)連接池以減少M(fèi)ySQL負(fù)擔(dān)。啟動(dòng)Atlas時(shí),將創(chuàng)建多個(gè)線程,其中一個(gè)線程是主線程,其余線程是輔助線程。主線程負(fù)責(zé)偵聽所有客戶端連接請(qǐng)求,輔助線程僅偵聽主線程發(fā)出的命令請(qǐng)求。
kudu是一個(gè)圍繞Hadoop生態(tài)系統(tǒng)構(gòu)建的存儲(chǔ)引擎。kudu與Hadoop生態(tài)系統(tǒng)有一個(gè)共同的設(shè)計(jì)概念。它運(yùn)行在普通服務(wù)器上,可以在分布式規(guī)模上部署,并且滿足業(yè)界的高可用性要求。它的設(shè)計(jì)思想是對(duì)快速數(shù)據(jù)進(jìn)行快速分析。作為一個(gè)開源的存儲(chǔ)引擎,它可以提供低延遲的隨機(jī)讀寫和高效的數(shù)據(jù)分析功能。kudu不僅提供行級(jí)插入、更新和刪除API,還提供接近實(shí)木地板性能的批掃描操作。使用相同的存儲(chǔ)空間,不僅可以實(shí)現(xiàn)隨機(jī)讀寫,而且可以滿足數(shù)據(jù)分析的要求。kudu有廣泛的應(yīng)用場(chǎng)景,如實(shí)時(shí)數(shù)據(jù)分析、數(shù)據(jù)可能發(fā)生變化的時(shí)間序列數(shù)據(jù)應(yīng)用程序等等。
在數(shù)據(jù)存儲(chǔ)過程中,涉及的表有數(shù)千列,包括各種復(fù)雜的查詢。建議使用列存儲(chǔ)方法,如parquent、orc等對(duì)數(shù)據(jù)進(jìn)行壓縮。拼花地板可以支持靈活的壓縮選項(xiàng),大大減少了磁盤上的存儲(chǔ)空間。
三、數(shù)據(jù)清洗
maprect作為hadoop的查詢引擎,用于大規(guī)模數(shù)據(jù)集的并行計(jì)算?!暗貓D”和“減少”是其主要思想。它極大地便利了程序員在不進(jìn)行分布式并行編程的分布式系統(tǒng)中運(yùn)行自己的程序。
隨著業(yè)務(wù)數(shù)據(jù)量的增加,需要進(jìn)行培訓(xùn)和清理的數(shù)據(jù)將變得越來越復(fù)雜。此時(shí),需要任務(wù)調(diào)度系統(tǒng)(如Oozie或Azkaban)來調(diào)度和監(jiān)視關(guān)鍵任務(wù)。
Oozie是面向Hadoop平臺(tái)的工作流調(diào)度引擎,它提供了RESTfulAPI接口來接受用戶提交請(qǐng)求(提交工作流作業(yè))。當(dāng)提交工作流時(shí),工作流引擎負(fù)責(zé)工作流執(zhí)行和狀態(tài)轉(zhuǎn)換。用戶在HDFS上部署作業(yè)(MR作業(yè)),然后提交工作流,Oozie以異步方式將作業(yè)(MR作業(yè))提交給Hadoop。這就是為什么在調(diào)用Oozie的RESTful界面提交作業(yè)后立即返回JobId,并且用戶程序不必等待作業(yè)完成(因?yàn)橐恍┐笮妥鳂I(yè)可能需要很長(zhǎng)時(shí)間(幾個(gè)小時(shí)甚至幾天)。Oozie在后臺(tái)以異步方式將與工作流相對(duì)應(yīng)的Action提交給Hadoop執(zhí)行。
Azkaban也是一個(gè)工作流控制引擎,可用于解決離線計(jì)算任務(wù)(如多個(gè)hadoop或spark)之間的依賴關(guān)系。 Azkaban主要由三部分組成:關(guān)系數(shù)據(jù)庫,Azkaban Web服務(wù)器和Azkaban Executor服務(wù)器。 Azkaban將大部分狀態(tài)信息保存在MySQL中。 Azkaban Web Server提供Web UI,它是azkaban的主要管理者,包括項(xiàng)目管理,身份驗(yàn)證,調(diào)度和工作流執(zhí)行期間的監(jiān)控; Azkaban Executor Server用于計(jì)劃工作流和任務(wù),以及記錄工作流或任務(wù)的日志。
作為流量計(jì)算任務(wù)的處理平臺(tái),SLOTH是NetEase第一個(gè)自主研發(fā)的流量計(jì)算平臺(tái),旨在解決公司各種產(chǎn)品對(duì)流量計(jì)算日益增長(zhǎng)的需求。作為一種計(jì)算服務(wù)平臺(tái),它具有易用性、實(shí)時(shí)性、可靠性等特點(diǎn),為用戶節(jié)省技術(shù)投入(開發(fā)、操作和維護(hù)),幫助用戶專注于解決產(chǎn)品本身的流程計(jì)算需求。
四、數(shù)據(jù)查詢分析
蜂巢的核心工作是將sql語句轉(zhuǎn)化為mr程序,將結(jié)構(gòu)化數(shù)據(jù)映射到數(shù)據(jù)庫表中,并提供hql(hellsql)查詢功能。蜂巢本身不存儲(chǔ)和計(jì)算數(shù)據(jù)。它完全依賴于hdfs和maprect。您可以將蜂巢理解為一個(gè)客戶端工具,將sql操作轉(zhuǎn)換為相應(yīng)的映射減少任務(wù),然后在hadoop上運(yùn)行。蜂巢支持標(biāo)準(zhǔn)的sql語法,消除了用戶編寫地圖程序的過程。它的出現(xiàn)使精通sql技能但不熟悉maprect、編程能力弱、不擅長(zhǎng)java語言的用戶可以輕松地使用sql語言查詢、聚合和分析hdfs大型數(shù)據(jù)集上的數(shù)據(jù)。
蜂巢是為大數(shù)據(jù)批量處理而誕生的。Hive的出現(xiàn)解決了傳統(tǒng)關(guān)系數(shù)據(jù)庫(MySQL、Oracle)在大數(shù)據(jù)處理方面的瓶頸。Hive將執(zhí)行計(jì)劃劃分為MAP->Shuffle->Reduce->MAP->Shuffle->Reduce。一個(gè)模型。如果一個(gè)查詢被編譯成多輪MapReduce,將會(huì)有更多的中間結(jié)果。由于MapReduce執(zhí)行框架本身的特點(diǎn),太多的中間進(jìn)程會(huì)增加整個(gè)查詢的執(zhí)行時(shí)間。在運(yùn)行Hive的過程中,用戶只需要?jiǎng)?chuàng)建表、導(dǎo)入數(shù)據(jù)和編寫SQL分析語句。該過程的其余部分由Hive框架自動(dòng)完成。
Impala是Hive的一個(gè)補(bǔ)充,用于實(shí)現(xiàn)高效的SQL查詢。利用Impala在Hadoop上實(shí)現(xiàn)SQL,實(shí)現(xiàn)對(duì)大數(shù)據(jù)的實(shí)時(shí)查詢和分析。大數(shù)據(jù)是通過熟悉的傳統(tǒng)關(guān)系數(shù)據(jù)庫的SQL風(fēng)格進(jìn)行操作的,數(shù)據(jù)也可以存儲(chǔ)在HDFS和HBase中。Impala不使用Slow Hive+MapReduce批處理,而是使用分布式查詢引擎(由查詢規(guī)劃器、查詢協(xié)調(diào)器和查詢執(zhí)行引擎組成),類似于商業(yè)并行關(guān)系數(shù)據(jù)庫中的查詢引擎。您可以通過SELECT、JOIN和STATISTICS函數(shù)直接從HDFS或HBASE查詢數(shù)據(jù),從而大大減少了延遲。Impala將整個(gè)查詢劃分為執(zhí)行計(jì)劃樹,而不是一系列MapReduce任務(wù),而Hive沒有MapReduce啟動(dòng)時(shí)間。
Hive適用于長(zhǎng)時(shí)間的批量查詢分析,而Impala適用于實(shí)時(shí)交互式SQL查詢。 Impala為數(shù)據(jù)工作者提供了快速實(shí)驗(yàn)和驗(yàn)證想法的重要想法。您可以使用Hive進(jìn)行數(shù)據(jù)轉(zhuǎn)換,然后使用Impala。對(duì)Hive的已處理數(shù)據(jù)集執(zhí)行快速數(shù)據(jù)分析。總結(jié):Impala將執(zhí)行計(jì)劃呈現(xiàn)為一個(gè)完整的執(zhí)行計(jì)劃樹,可以更自然地將執(zhí)行計(jì)劃分發(fā)到每個(gè)Impalad執(zhí)行查詢,而無需將其組合到管道類型map-> reduce模式(如Hive)。這可確保Impala具有更好的并發(fā)性,并避免不必要的中間排序和混洗。但是,Impala不支持UDF,并且對(duì)可以處理的問題存在某些限制。
SPARK具有HadoopMapReduce的特點(diǎn),它將Job中間輸出保存在內(nèi)存中,因此不需要讀取HDFS。SPARK使內(nèi)存分布數(shù)據(jù)集除了提供交互式查詢外,還可以優(yōu)化迭代工作負(fù)載。SPARK是用Scala語言實(shí)現(xiàn)的,并使用Scala作為其應(yīng)用框架。與Hadoop不同,Spark和Scala可以緊密集成,Scala可以像處理本地集合對(duì)象一樣輕松地操作分布式數(shù)據(jù)集。
Nutch 是一個(gè)開源Java 實(shí)現(xiàn)的搜索引擎。它提供了我們運(yùn)行自己的搜索引擎所需的全部工具,包括全文搜索和Web爬蟲。
Solr是一個(gè)全文搜索服務(wù)器,用于用Java編寫并運(yùn)行在ApacheTomcat或Jetty等servlet容器中的獨(dú)立企業(yè)搜索應(yīng)用程序。它提供了一個(gè)類似于Web服務(wù)的API接口。用戶可以向搜索引擎服務(wù)器提交特定格式的XML文件,并通過http請(qǐng)求生成索引。您還可以通過http GET操作發(fā)出搜索請(qǐng)求,并以XML格式獲取返回的結(jié)果。
ElasticSearch是一個(gè)基于Lucene搜索服務(wù)器的開源全文搜索引擎,能夠快速存儲(chǔ)、搜索和分析海量數(shù)據(jù)。專為云計(jì)算而設(shè)計(jì),可實(shí)現(xiàn)實(shí)時(shí)搜索,穩(wěn)定可靠,速度快,安裝使用方便。
它還涉及一些機(jī)器學(xué)習(xí)語言。例如,Mahout的主要目標(biāo)是為開發(fā)人員創(chuàng)建一些可擴(kuò)展的機(jī)器學(xué)習(xí)算法,以便在Apache的許可下自由使用;深度學(xué)習(xí)框架Caffe和開源軟件庫,用于使用數(shù)據(jù)流圖進(jìn)行數(shù)值計(jì)算。 TensorFlow等常用的機(jī)器學(xué)習(xí)算法,如貝葉斯,Logistic回歸,決策樹,神經(jīng)網(wǎng)絡(luò),協(xié)同過濾等。
五、數(shù)據(jù)可視化
通過與一些BI平臺(tái)的對(duì)接,可以可視化分析得到的數(shù)據(jù),指導(dǎo)決策服務(wù)。主流的商務(wù)智能助推器,如國(guó)外的敏捷商務(wù)智能平臺(tái)、Qlikview、Powrerbi、國(guó)內(nèi)的smallbi和新興的網(wǎng)易等。
在上述各個(gè)階段,數(shù)據(jù)的安全是一個(gè)不容忽視的問題。
基于網(wǎng)絡(luò)身份認(rèn)證的Kerberos協(xié)議用于在非安全網(wǎng)絡(luò)中通過安全手段對(duì)個(gè)人通信進(jìn)行身份認(rèn)證。它允許實(shí)體在不安全的網(wǎng)絡(luò)環(huán)境中通信。以安全的方式向其他實(shí)體證明您的身份。
Ranger控制權(quán)限,是Hadoop群集權(quán)限框架,它為操作、監(jiān)視和管理提供復(fù)雜的數(shù)據(jù)權(quán)限。它提供了一種集中管理機(jī)制來管理基于紗線的Hadoop生態(tài)系統(tǒng)中的所有數(shù)據(jù)權(quán)限。細(xì)粒度的數(shù)據(jù)訪問控制可以在Hadoop生態(tài)系統(tǒng)的組件(如Hive、HBase)上執(zhí)行。通過運(yùn)行Ranger控制臺(tái),管理員可以輕松地配置策略,以控制用戶對(duì)HDFS文件夾、HDFS文件、數(shù)據(jù)庫、表和字段權(quán)限的訪問??梢詾椴煌挠脩艉徒M設(shè)置這些策略,并且可以與Hadoop無縫連接權(quán)限。
簡(jiǎn)單地說,有三種核心技術(shù):獲取數(shù)據(jù)、計(jì)算數(shù)據(jù)和銷售數(shù)據(jù)。
首先,由于大數(shù)據(jù),不能得到大量的數(shù)據(jù)都是徒勞的?,F(xiàn)在由于機(jī)器學(xué)習(xí)的興起,以及金油算法的興起,導(dǎo)致算法的地位下降,數(shù)據(jù)的狀態(tài)得到了改善。例如,由于教育的發(fā)展,個(gè)人智力的重要性降低了,教育背景變得更重要了,因?yàn)橐话闳硕寄馨凑諛?biāo)準(zhǔn)的程序閱讀一本書,這比牛頓好得多。Google說:在許多情況下,將強(qiáng)大的數(shù)據(jù)提供給通用算法比將愚蠢的數(shù)據(jù)提供給強(qiáng)大的算法要好。你知道要得到一個(gè)好的算法有多難嗎?大多數(shù)人甚至不知道有什么困難。拿數(shù)據(jù)來說是很重要的,大數(shù)據(jù)技術(shù)學(xué)習(xí)交換口裙,199427210,熟練的女人沒有飯就很難做飯??!那么為什么很多公司都想燒錢搶入口,搶用戶,是為了爭(zhēng)奪數(shù)據(jù)源??!但是操作,和產(chǎn)品更注重這一點(diǎn),我是一個(gè)程序員,我不在乎。
二是計(jì)算數(shù)據(jù)。如果數(shù)據(jù)是直接有價(jià)值的,那么公司就沒有必要。政府應(yīng)該直接獲利。蘋果可以看到秋天,人們牛頓可以所有的重力,我只能拿起吃,差距啊…所以有數(shù)據(jù),可以自己找出來的。計(jì)算數(shù)據(jù)需要一個(gè)計(jì)算平臺(tái)。如何存儲(chǔ)數(shù)據(jù)(hdfs,s3,hbase,卡珊德拉),如何計(jì)數(shù)(hadoop,spark)取決于程旭遠(yuǎn)……
三是,只有出售才能實(shí)現(xiàn),否則就是為了公共利益,如李思和大錘中的“疑犯追蹤”。預(yù)測(cè)未來,避免不利因素,是智能的最終目標(biāo)和意義,對(duì)嗎?每個(gè)人都應(yīng)該一起考慮這件事。
事實(shí)上,我認(rèn)為最后一個(gè)是“核心技術(shù)”,“星火、風(fēng)暴、深度學(xué)習(xí)”是第二梯隊(duì)。當(dāng)然,如果沒有強(qiáng)大的計(jì)算能力的支持,智能就不應(yīng)該能夠談?wù)撍?/p>