❶ 大數據方面核心技術有哪些
簡單來說,從大數據的生命周期來看,無外乎四個方面:大數據採集、大數據預處理、大數據存儲、大數據分析,共同組成了大數據生命周期里最核心的技術,下面分開來說:
大數據採集
大數據採集,即對各種來源的結構化和非結構化海量數據,所進行的採集。
資料庫採集:流行的有Sqoop和ETL,傳統的關系型資料庫MySQL和Oracle 也依然充當著許多企業的數據存儲方式。當然了,目前對於開源的Kettle和Talend本身,也集成了大數據集成內容,可實現hdfs,hbase和主流Nosq資料庫之間的數據同步和集成。
網路數據採集:一種藉助網路爬蟲或網站公開API,從網頁獲取非結構化或半結構化數據,並將其統一結構化為本地數據的數據採集方式。
文件採集:包括實時文件採集和處理技術flume、基於ELK的日誌採集和增量採集等等。
大數據預處理
大數據預處理,指的是在進行數據分析之前,先對採集到的原始數據所進行的諸如「清洗、填補、平滑、合並、規格化、一致性檢驗」等一系列操作,旨在提高數據質量,為後期分析工作奠定基礎。數據預處理主要包括四個部分:數據清理、數據集成、數據轉換、數據規約。
數據清理:指利用ETL等清洗工具,對有遺漏數據(缺少感興趣的屬性)、噪音數據(數據中存在著錯誤、或偏離期望值的數據)、不一致數據進行處理。
數據集成:是指將不同數據源中的數據,合並存放到統一資料庫的,存儲方法,著重解決三個問題:模式匹配、數據冗餘、數據值沖突檢測與處理。
數據轉換:是指對所抽取出來的數據中存在的不一致,進行處理的過程。它同時包含了數據清洗的工作,即根據業務規則對異常數據進行清洗,以保證後續分析結果准確性。
數據規約:是指在最大限度保持數據原貌的基礎上,最大限度精簡數據量,以得到較小數據集的操作,包括:數據方聚集、維規約、數據壓縮、數值規約、概念分層等。
大數據存儲,指用存儲器,以資料庫的形式,存儲採集到的數據的過程,包含三種典型路線:
1、基於MPP架構的新型資料庫集群
採用Shared Nothing架構,結合MPP架構的高效分布式計算模式,通過列存儲、粗粒度索引等多項大數據處理技術,重點面向行業大數據所展開的數據存儲方式。具有低成本、高性能、高擴展性等特點,在企業分析類應用領域有著廣泛的應用。
較之傳統資料庫,其基於MPP產品的PB級數據分析能力,有著顯著的優越性。自然,MPP資料庫,也成為了企業新一代數據倉庫的最佳選擇。
2、基於Hadoop的技術擴展和封裝
基於Hadoop的技術擴展和封裝,是針對傳統關系型資料庫難以處理的數據和場景(針對非結構化數據的存儲和計算等),利用Hadoop開源優勢及相關特性(善於處理非結構、半結構化數據、復雜的ETL流程、復雜的數據挖掘和計算模型等),衍生出相關大數據技術的過程。
伴隨著技術進步,其應用場景也將逐步擴大,目前最為典型的應用場景:通過擴展和封裝 Hadoop來實現對互聯網大數據存儲、分析的支撐,其中涉及了幾十種NoSQL技術。
3、大數據一體機
這是一種專為大數據的分析處理而設計的軟、硬體結合的產品。它由一組集成的伺服器、存儲設備、操作系統、資料庫管理系統,以及為數據查詢、處理、分析而預安裝和優化的軟體組成,具有良好的穩定性和縱向擴展性。
四、大數據分析挖掘
從可視化分析、數據挖掘演算法、預測性分析、語義引擎、數據質量管理等方面,對雜亂無章的數據,進行萃取、提煉和分析的過程。
1、可視化分析
可視化分析,指藉助圖形化手段,清晰並有效傳達與溝通信息的分析手段。主要應用於海量數據關聯分析,即藉助可視化數據分析平台,對分散異構數據進行關聯分析,並做出完整分析圖表的過程。
具有簡單明了、清晰直觀、易於接受的特點。
2、數據挖掘演算法
數據挖掘演算法,即通過創建數據挖掘模型,而對數據進行試探和計算的,數據分析手段。它是大數據分析的理論核心。
數據挖掘演算法多種多樣,且不同演算法因基於不同的數據類型和格式,會呈現出不同的數據特點。但一般來講,創建模型的過程卻是相似的,即首先分析用戶提供的數據,然後針對特定類型的模式和趨勢進行查找,並用分析結果定義創建挖掘模型的最佳參數,並將這些參數應用於整個數據集,以提取可行模式和詳細統計信息。
3、預測性分析
預測性分析,是大數據分析最重要的應用領域之一,通過結合多種高級分析功能(特別統計分析、預測建模、數據挖掘、文本分析、實體分析、優化、實時評分、機器學習等),達到預測不確定事件的目的。
幫助分用戶析結構化和非結構化數據中的趨勢、模式和關系,並運用這些指標來預測將來事件,為採取措施提供依據。
4、語義引擎
語義引擎,指通過為已有數據添加語義的操作,提高用戶互聯網搜索體驗。
5、數據質量管理
指對數據全生命周期的每個階段(計劃、獲取、存儲、共享、維護、應用、消亡等)中可能引發的各類數據質量問題,進行識別、度量、監控、預警等操作,以提高數據質量的一系列管理活動。
以上是從大的方面來講,具體來說大數據的框架技術有很多,這里列舉其中一些:
文件存儲:Hadoop HDFS、Tachyon、KFS
離線計算:Hadoop MapRece、Spark
流式、實時計算:Storm、Spark Streaming、S4、Heron
K-V、NOSQL資料庫:HBase、Redis、MongoDB
資源管理:YARN、Mesos
日誌收集:Flume、Scribe、Logstash、Kibana
消息系統:Kafka、StormMQ、ZeroMQ、RabbitMQ
查詢分析:Hive、Impala、Pig、Presto、Phoenix、SparkSQL、Drill、Flink、Kylin、Druid
分布式協調服務:Zookeeper
集群管理與監控:Ambari、Ganglia、Nagios、Cloudera Manager
數據挖掘、機器學習:Mahout、Spark MLLib
數據同步:Sqoop
任務調度:Oozie