日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

大数据生态

發布時間:2023/12/20 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 大数据生态 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、什么是大數據?

????????大數據(big data),IT行業術語,是指無法在一定時間范圍內用常規軟件工具進行捕捉、管理和處理的數據集合,是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高增長率和多樣化的信息資產。由IBM提出的大數據的五個特征(5V):Volume(大量)、Velocity(高速)、Variety(多樣)、Value(價值)、Veracity(真實性)。

2、什么是大數據生態?

????????大數據生態(BigData Ecology)。網絡化數據社會與現實社會的有機融合、互動以及協調,形成大數據感知、管理、分析與應用服務的新一代信息技術架構和良性增益的閉環生態系統。

????????大數據的核心是Hadoop生態系統。我們通常可能會根據特定的用特來描述軟件工具,比如:Oracle是數據庫、Apache Tomcat 是 Web 服務器。不過,Hadoop就有些復雜,Hadoop 是大量工具集合,這些工具可以協同工作來完成特定的任務。可以說Hadoop是一個數據管理系統,將海量的結構化和非結構化數據聚集在一起,這些數據涉及傳統企業數據棧的幾乎每一個層次,其定位是在數據中心占據核心地位。也可以說,Hadoop 是大規模并行執行框架,把超級計算機的能力帶給大眾,致力于加速企業級應用的執行。由于 Hadoop 提供如此廣泛的功能,可以適用于解決大量問題,也可以說,Hadoop 是基礎框架。Hadoop 提供所有這些功能,因此應該將 Hadoop 歸類為一個生態系統,它包含大量的組件,從數據存儲到數據集成、數據處理以及數據分析師的專用工具。

2.1 大數據生態(Hadoop)

MapReduce

主要由Google Reduce而來,它簡化了大型數據的處理,是一個并行的,分布式處理的編程模型。

hadoop2.0它是基于YARN框架構建的。YARN的全稱是Yet-Another-Resource-Negotiator。Yarn可以運用在S3|Spark等上。

HDFS

它是由Google File System而來,全稱是Hadoop Distributed File System,是Hadoop的分布式文件系統,有許多機器組成的,可以存儲大型數據文件。

它是由NameNode和DataNode組成,NameNode可以配置成HA(高可用),避免單點故障。一般用Zookeeper來處理。兩個NameNode是同步的。

Hive

它是Hadoop的數據倉庫(DW),它可以用類似SQL的語言HSQL來操作數據,很是方便,主要用來聯機分析處理OLAP(On-Line Analytical Processing),進行數據匯總|查詢|分析。

HBase

它是由Google BigTable而來。是Hadoop的數據庫。HBase底層還是利用的Hadoop的HDFS作為文件存儲系統,可以利用Hadoop的MR來處理HBase的數據,它也通常用Zookeeper來做協同服務。

Zookeeper

它是一個針對大型分布式系統的可靠協調系統,在Hadoop|HBase|Strom等都有用到,它的目的就是封裝好復雜易出錯的關鍵服務,提供給用戶一個簡單|可靠|高效|穩定的系統。提供配置維護|分布式同步|名字服務等功能,Zookeeper主要是通過lead選舉來維護HA或同步操作等

Pig

它提供一個引擎在Hadoop并行執行數據流。它包含了一般的數據操作如join|sort|filter等,它也是使用MR來處理數據。

Mahout

它是機器學習庫。提供一些可擴展的機器學習領域經典算法的實現,目的是幫助開發人員更加方便快捷地創建智能應用程序。Mahout包含許多實現,包括聚類、分類、推薦算法等。

2.2? 大數據架構

大數據架構師,是架構師的一種。如何學習才能成為大數據架構師?從數據庫SQL到NoSQL,從新手到大師?我們來看這篇現身說法的文章。

先扯一下大數據的4V特征:

????????1、數據量大,TB->PB

????????2、數據類型繁多,結構化、非結構化文本、日志、視頻、圖片、地理位置等;

????????3、商業價值高,但是這種價值需要在海量數據之上,通過數據分析與機器學習更快速的挖掘出來;

????????4、處理時效性高,海量數據的處理需求不再局限在離線計算當中。

現如今,正式為了應對大數據的這幾個特點,開源的大數據框架越來越多,越來越強,先列舉一些常見的:

· 文件存儲:Hadoop HDFS

· 離線計算:Hadoop MapReduce、Spark

· 流式、實時計算:Storm、Spark Streaming

· K-V、NOSQL數據庫:HBase、Redis、MongoDB

· 資源管理:YARN、Mesos

· 日志收集:Flume、Scribe、Logstash、Kibana

· 消息系統:Kafka、StormMQ、ZeroMQ、RabbitMQ

· 查詢分析:Hive、Impala、Presto、Phoenix、SparkSQL、Flink、Kylin、Druid

· 分布式協調服務:Zookeeper

· 集群管理與監控:Ambari、Ganglia、Nagios、Cloudera Manager

· 數據挖掘、機器學習:Mahout、Spark MLLib

· 數據同步:Sqoop

· 任務調度:Oozie

2.3 Hadoop快速入門(官方有文檔說明最新版本)

?Apache Hadoop 3.3.1?

支持的平臺:?

  • GNU/Linux作為開發和生產平臺受到支持。Hadoop已經在具有2000個節點的GNU/Linux集群上進行了演示。
  • Windows也是一個受支持的平臺,但以下步驟僅適用于Linux。要在Windows上設置Hadoop,請參見wiki頁面。

所需軟件:

Linux所需的軟件包括:

  • JAVA? 必須安裝。HadoopJavaVersions中描述了推薦的Java版本。
  • 如果要使用可選的啟動和停止腳本,則必須安裝ssh并運行sshd才能使用管理遠程Hadoop守護進程的Hadoop腳本。此外,還建議安裝pdsh以更好地管理ssh資源。
  • 安裝軟件:

    如果您的集群沒有必要的軟件,則需要安裝它。
    例如,在Ubuntu Linux上:

    $ sudo apt-get install ssh $ sudo apt-get install pdsh

    下載:
    要獲得Hadoop發行版,請從一個Apache下載鏡像下載最近的穩定版本。

    準備啟動Hadoop集群:
    解壓縮下載的Hadoop發行版。在發行版中,編輯文件etc/hadoop/hadoop-env.sh,定義一些參數如下:

    # set to the root of your Java installationexport JAVA_HOME=/usr/java/latest

    請嘗試以下命令:

    $ bin/hadoop

    這將顯示hadoop腳本的用法文檔。
    現在,您可以使用以下三種支持的模式之一啟動Hadoop群集:

    • Local (Standalone) Mode
    • Pseudo-Distributed Mode
    • Fully-Distributed Mode

    獨立操作:
    ????????默認情況下,Hadoop被配置為在非分布式模式下作為單個Java進程運行。這對調試很有用。
    下面的示例復制解壓縮的conf目錄作為輸入,然后查找并顯示給定正則表達式的每個匹配項。輸出被寫入給定的輸出目錄。

    $ mkdir input $ cp etc/hadoop/*.xml input $ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.1.jar grep input output 'dfs[a-z.]+' $ cat output/*

    偽分布式操作:
    Hadoop還可以以偽分布式模式在單個節點上運行,其中每個Hadoop守護進程在單獨的Java進程中運行。

    配置
    使用以下選項:
    etc/hadoop/core-site.xml:

    <configuration><property><name>fs.defaultFS</name><value>hdfs://localhost:9000</value></property> </configuration>

    ?etc/hadoop/hdfs-site.xml:

    <configuration><property><name>dfs.replication</name><value>1</value></property> </configuration>

    安裝無密碼ssh:
    現在檢查您是否可以使用ssh連接到本地主機,而無需密碼短語:

    $ ssh localhost

    如果在沒有密碼短語的情況下無法ssh到localhost,請執行以下命令:

    $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys$ chmod 0600 ~/.ssh/authorized_keys

    執行
    以下說明用于在本地運行MapReduce作業。如果要在上YARN執行作業,參見?YARN on Single Node.?

    格式化文件系統:

    $ bin/hdfs namenode -format

    啟動NameNode守護程序和DataNode守護程序:

    $ sbin/start-dfs.sh

    hadoop守護程序日志輸出被寫入$hadoop\u log\u DIR目錄(默認為$hadoop\u HOME/logs)。

    瀏覽NameNode的web界面;默認情況下,它在以下位置可用:

    • NameNode -?http://localhost:9870/

    生成執行MapReduce作業所需的HDFS目錄:

    $ bin/hdfs dfs -mkdir /user$ bin/hdfs dfs -mkdir /user/<username>

    將輸入文件復制到分布式文件系統:

    $ bin/hdfs dfs -mkdir input$ bin/hdfs dfs -put etc/hadoop/*.xml input

    運行提供的一些示例:

    $ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.1.jar grep input output 'dfs[a-z.]+'

    檢查輸出文件:將輸出文件從分布式文件系統復制到本地文件系統并進行檢查:

    $ bin/hdfs dfs -get output output$ cat output/*

    或者查看分布式文件系統上的輸出文件:

    $ bin/hdfs dfs -cat output/*

    完成后,使用以下命令停止守護程序:

    $ sbin/stop-dfs.sh?

    YARN??在單個節點上

    通過設置一些參數并另外運行ResourceManager守護程序和NodeManager守護程序,可以在YARN上以偽分布式模式運行MapReduce作業。
    以下指令假設上述指令的1.~4.步驟已經執行。

  • 配置參數如下:

    etc/hadoop/mapred-site.xml:

    <configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.application.classpath</name><value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value></property> </configuration>

    etc/hadoop/yarn-site.xml:

    <configuration><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.nodemanager.env-whitelist</name><value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_HOME,PATH,LANG,TZ,HADOOP_MAPRED_HOME</value></property> </configuration>
  • 啟動ResourceManager守護程序和NodeManager守護程序:

    $ sbin/start-yarn.sh? ? ? ? ? ? ? ? ?
  • ?瀏覽ResourceManager的web界面;默認情況下,它在以下位置可用:ResourceManager -?http://localhost:8088/
  • 運行MapReduce作業。

  • 完成后,使用以下命令停止守護程序:

    $ sbin/stop-yarn.sh
  • ?全分布式操作:
    有關設置完全分布式的非平凡集群的信息,請參閱集群設置。

    總結

    以上是生活随笔為你收集整理的大数据生态的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。