1. 程式人生 > >Hadoop學習篇 之 1初識Hadoop

Hadoop學習篇 之 1初識Hadoop

1 資料儲存與分析

為什麼要創造(發明/使用)Hadoop?Hadoop的存在有什麼意義?

資料的儲存面臨一系列的問題:

  1. 雖然磁碟儲存容量快速增加,但訪問速度並沒有太大的變化。

    • 一個簡單的解決辦法:從多個磁碟上讀取資料。例如,有100個磁碟,每個磁碟儲存1%的資料,進行並行讀取。
  2. 要實現對多個磁碟資料的並行讀寫,還有更多的問題要解決。

    • 硬體故障
      內容:使用多個硬體時,其中任一硬體發生故障的概率非常高。
      解決辦法:
      (1)備份,系統保資料的冗餘複本。例如冗餘磁碟陣列(RAID)
      (2)Hadoop的檔案系統,即HDFS(Hadoop distributed FileSystem)。

    • 分散式系統允許結合多個來源的資料進行分析,保證其正確性是一個難題。
      MapReduce提出了一個模型,將上述磁碟讀寫的問進行抽象,轉換為對一個數據集(由鍵/值對組成)的計算。該計算由map和Redcuce兩部分組成,並且只有這兩部分提供對外的介面。

總之,Hadoop有著可靠的共享儲存和分析系統。HDFS實現儲存,而MapReduce實現分析處理,這兩部分是Hadoop的核心。

2 與其他系統相比

使用其他系統不能解決上面的問題嗎?為什麼必須使用Hadoop?
MapReduce的查詢處理比較蠻力,因為每個查詢需要處理整個資料集(或至少資料集的很大一部分)。
反過來想,這也是Hadoop的優秀之處。MapReduce是一種批量查詢處理器,能夠在合理的時間內,處理針對整個資料集的即時(ad hoc)查詢。

3 關係型資料庫管理系統

為什麼不用資料庫做批量分析,而需要MapReduce呢?
資料庫也可以對大規模資料進行批量分析,例如使用SQL Server的SQL語言,就可以進行批量查詢處理,那為什麼不這樣使用呢?
因為資料庫查詢時,定址時間遠遠慢於傳輸速率。(定址也就是將磁頭移動到特定磁碟位置進行讀寫操作的過程。)

這部分的標題為什麼取名為”關係型資料庫呢?MapReduce與關係型資料庫有什麼關係嗎?”
首先,什麼是關係型資料庫?
關係型資料庫是一種二維表格模型,是由二維表及其之間的聯絡組成的一個數據組織。

然後,MapReduce與關係型資料庫有什麼聯絡呢?
在許多情況下,MapReduce可以視為關係型資料庫管理系統的補充。為什麼呢?

相關推薦

Hadoop學習 1初識Hadoop

1 資料儲存與分析 為什麼要創造(發明/使用)Hadoop?Hadoop的存在有什麼意義? 資料的儲存面臨一系列的問題: 雖然磁碟儲存容量快速增加,但訪問速度並沒有太大的變化。 一個簡單的解決

Hadoop學習筆記初識MapReduce以及WordCount例項分析

MapReduce簡介 MapReduce是什麼? MapReduce是一種程式設計模型,用於大規模資料集的分散式運算。 Mapreduce基本原理 1、MapReduce通俗解釋 圖書館要清點圖書數量,有10個書架,管理員為了加快統計速度,找來了

大資料Hadoop學習系列Hadoop、Spark學習路線

1 Java基礎: 視訊方面:推薦畢老師《畢向東JAVA基礎視訊教程》。 學習hadoop不需要過度的深入,java學習到javase,在多執行緒和並行化多多理解實踐即可。 書籍方面:推薦李興華的《java開發實戰經典》 2 Linux基礎: 視訊方面:(1)馬哥的高薪Linux

大資料Hadoop學習(環境配置)——Hadoop偽分散式叢集搭建

title: Hadoop偽分散式叢集搭建 date: 2018-11-14 15:17:20 tags: Hadoop categories: 大資料 點選檢視我的部落格: Josonlee’s Blog 文章目錄 前言準備 偽分

hadoop學習筆記hdfs

hadoop distributed file system (1)hdfs的架構和原理: hdfs採用master/slave的結構來儲存資料,這種架構主要有四個部分組成:client、namenode、datanode、secondary namenode; c

Hadoop學習筆記flume Nginx日誌收集到HBase

概述 Nginx訪問日誌形式: $remote_addr – $remote_user [$time_local] “$request”$status $body_bytes_sent“$http_referer” ”$http_user_agent” 例如

Hadoop基礎教程】1Hadoop伺服器基礎環境搭建

本blog以K-Master伺服器基礎環境配置為例分別演示使用者配置、sudo許可權配置、網路配置、關閉防火牆、安裝JDK工具等。使用者需參照以下步驟完成KVMSlave1~KVMSlave3伺服器的基礎環境配置。 開發環境 硬體環境:Centos

大資料學習(一) | 初識 Hadoop

作者: seriouszyx 首發地址:https://seriouszyx.top/ 程式碼均可在 Github 上找到(求Star) 最近想要了解一些前沿技術,不能一門心思眼中只有 web,因為我目前對 Java 語言及其生態相對熟悉,所以在網上搜集了 Hadoop 相關文章,並做了整合。

Hadoop學習筆記lzo檔案格式

LZO(LZO是Lempel-Ziv-Oberhumer的縮寫)是一種高壓縮比和解壓速度極快的編碼,它的特點是解壓縮速度非常快,無失真壓縮,壓縮後的資料能準確還原,lzo是基於block分塊的,允許資料被分解成chunk,能夠被並行的解壓 一、下載、安裝

[Hadoop] Hadoop學習筆記Hadoop基礎

1 Hadoop是什麼?   Google公司發表了兩篇論文:一篇論文是“The Google File System”,介紹如何實現分散式地儲存海量資料;另一篇論文是“Mapreduce:Simplified Data Processing on Large Clusters”,介紹如何對分散式大規模

Hadoop學習筆記三:用MRUnit做單元測試

引言 借年底盛宴品鑑之風,繼續抒我Hadoop之情,本篇文章介紹如何對Hadoop的MapReduce進行單元測試。MapReduce的開發週期差不多是這樣:編寫mapper和reducer、編譯、打包、提交作業和結果檢索等,這個過程比較繁瑣,一旦提交到分散式環境出了問題要定位除錯,重複這樣的過程實在無趣

hadoop學習筆記

cp Usage: hadoop fs -cp [-f] [-p | -p[topax]] URI [URI ...] <dest> Copy files from source to destination. This command allows multiple sources as we

Hadoop學習筆記(Day1:Hadoop家族體系、權威指南1、2.4章)

<本系列文章主要供自己學習Hadoop技術筆記用> 1)Hadoop家族體系 Hadoop家族成員概述 這篇文章簡明扼要地介紹了Hadoop家族各個成員的功能。 這篇文章除了介紹家族成員外,還介紹了其學習路線圖。 2)Hadoop權威指南 2.4.1

java入門學習筆記1(類的定義,代碼的編譯執行)

spa hex nts 自動調用 [] alt vim 進制 技術 這篇文章講解Java代碼的基本執行過程 我們先拋開各種JAVA IDE,開發工具,只使用文本編輯器,以突出最本質的東西。 在Linux環境下,我們編輯一個文件: vim HelloWorld.java

IDEA 學習筆記 1.5已經過時問題

pom.xml ont src rop war XML conf jdk mes 1.5已經過時問題: apache-maven-3.5.0\conf\settings.xml添加: <profile> <id>jdk-1.8</i

DirectX 11遊戲編程學習筆記1: 開場白

博文 關於 microsoft -c 等我 高清 技術分享 彩圖 rect 本文由哈利_蜘蛛俠原創,轉載請註明出處。有問題歡迎聯系[email protected] ? ? ? ? ? 這是我之前的博客系列“DirectX

Hadoop學習(一)搭建Hadoop的分布式集群

例子程序 eve work 鍵盤 規劃 shuffle 系統變量 p s har 搭建Hadoop的分布式集群 Hadoop集群搭建的準備操作: 1、準備四臺服務器   四臺服務器的主機名分別是:potter2、potter3、potter4、potter5。   對以上四

Python+Appium學習WebView處理

tomat sha view源碼 cti contexts and not code acc 1.認識WebView 實例說明: 當你打開百度閱讀APP→VIP全站去廣告→用自帶的 UI Automator去定位裏面的元素,如圖: 不管你去定位 ‘規則詳情‘ ‘開通‘

Linux學習筆記1——文件和目錄管理(硬連接和軟連接)(連結檔,相當於快捷方式)

class 學習linux lock 訪問 接下來 所有 sdn ext test 在這節將要學習linux的連接檔,在之前用"ls -l" 查看文件屬性的命令時, 其中第二個屬性是連接數。那麽這個連接數是幹什麽的?這就要理解inode。 先說一下文件是怎麽存儲的。

Andrew機器學習課程 章節1——初識機器學習

問題1:什麼是機器學習以及機器學習的通用演算法 如今一般使用的是Tom Mitchell對機器學習的定義: 原文為: A computer program is said to learn from experience E with respecet to some task T and