大資料技術與應用-D1
- 考核點
- 平臺搭建(Hadoop+spark)
- 資料采集(爬蟲-request庫)
- 資料清洗與分析
- 資料展示
- 寫報告
平臺搭建
Hadoop生態圈
核心設計HDFS和MapReduce,HDFS為海量的資料提供了存盤,則MapReduce為海量的資料提供了計算,
-
偽分布:一臺單機上運行,但用不同的行程模仿分布式運行中的各類結點,沒有所謂的在多臺機器上進行真正的分布式計算,故稱為"偽分布式",
-
全分布:由3個及以上的物體機或者虛擬機組件的機群,
-
HA架構(High Available雙機集群系統)指高可用性集群,是保證業務連續性的有效解決方案,一般有兩個或兩個以上的節點,且分為活動節點及備用節點,
組件安裝與配置(hive hbase spark)
-
Hive:基于Hadoop的一個資料倉庫工具,可以將結構化的資料檔案(或者非結構化的資料)映射為一張資料庫表,并提供簡單的sql查詢功能,可以將sql陳述句轉換為MapReduce任務進行運行,
-
HBase:nosql資料庫,和mongodb類似,高可靠性、高性能、面向列、可伸縮的分布式存盤系統,
-
Spark:Apache Spark 是專為大規模資料處理而設計的快速通用的計算引擎,與 Hadoop 相似的開源集群計算環境,不同:Spark 啟用了記憶體分布資料集,除了能夠提供互動式查詢外,它還可以優化迭代作業負載,
三大組件
-
hdfs(Hadoop Distributed File System)分布式檔案系統
底部-存盤 Hadoop 集群中所有存盤節點上的檔案
適合運行在通用硬體(commodity hardware)上的分布式檔案系統,
-
MapReduce
上一層-該引擎由 JobTrackers 和 TaskTrackers 組成
概念"Map(映射)“和"Reduce(歸約)”,和它們的主要思想,都是從函式式編程語言里借來的,還有從矢量編程語言里借來的特性,
-
yarn(Yet Another Resource Negotiator)
另一種資源協調者)是一種新的 Hadoop 資源管理器,它是一個通用資源管理系統,可為上層應用提供統一的資源管理和調度,它的引入為集群在利用率、資源統一管理和資料共享等方面帶來了巨大好處,
資料采集
[完型填空]
網路爬蟲:Request,lxml,scrapy
-
requests:requests 是用Python語言撰寫,基于自帶庫urllib,采用 Apache2 Licensed 開源協議的 HTTP 庫,它比 urllib 更加方便
-
lxml:XPath 是一門在 XML 檔案中查找資訊的語言,XPath 可用來在 XML 檔案中對元素和屬性進行遍歷,對應插件名為lxml
-
scrapy:Python開發的一個快速、高層次的螢屏抓取和web抓取框架,用于抓取web站點并從頁面中提取結構化的資料,Scrapy用途廣泛,可以用于資料挖掘、監測和自動化測驗
資料清洗與分析
MapReduce(大規模資料集的并行運算)
語言:Java
spark(基于MapReduce演算法實作的分布式計算)
語言scala(面向物件 函式式編程語言 下一代Java)
hive(HQL)資料庫倉庫工具
資料展示
[完型填空]
可視化
MySQL
Flask(python輕量級Web框架)
Jinja(基于python的模板引擎,沙箱執行模式,模板的每個部分)
ECharts(使用JavaScript實作的開源可視化庫)
前端:JavaScript
平臺搭建
環境:VMware
大資料集群作業系統:CentOS 7 64位
創建虛擬機
【創建新的虛擬機】-【典型】
【安裝客戶機操作】:選擇.iso鏡像檔案(下載鏡像檔案)[https://msdn.itellyou.cn/]
【命名虛擬機】:設定虛擬機名稱及位置
【磁盤大小】:20GB-拆分成多個檔案(方便,省記憶體)
【自定義硬體】:2GB=2048MB
(計算:Master主人1臺1-2G;slave2臺1-2G;Windows-2G=8G)
安裝CentOS 7.
【選擇語言】:中文-簡體中文中國(愛啥啥)-[繼續C]
【安裝資訊摘要】:有!的地方,點擊進入后,左上角【完成】,軟體選擇:最小安裝-命令列,【GNOME桌面】圖形桌面
shutdown -h now#關機
shutdown -r now#重啟
useradd 用戶名#創建用戶
passwd 用戶名#設定密碼
userdel -r 用戶名#洗掉用戶
GNOME桌面配置
- 接受安裝許可:點擊進入
- 我同意許可協議(A)-完成(D)-完成配置(F)
- 歡迎/輸入/隱私-(選你所愛)-前進(N)
- 時區:上海,上海,中國
- 連接您的在線賬號-跳過(S)
- 關于您:設定全名和用戶名
- 設定密碼:混合使用字母,數字和標點
一切就緒,開始使用吧!
配置IP-連接網路
-
VMware操作:
-
【編輯(E)】-【虛擬網路編輯器(N)】
-
【更改設定?】
-
VMnet8|NAT模式
子網IP:192.168.66.0|子網掩碼:255.255.255.0
[NAT設定(S)]網管IP:192.168.66.2
這里的66愛啥啥,后面統一就行
-
-
虛擬機操作:
-
右上角
,再點擊設定工具圖示(扳手和一字批交叉) -
【網路】-【有線】
設定-IPv4-手動[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳![(img-pqMikYG6-1610654132942)(C:\Users\Mac\Desktop\大資料技能\IPv4設定.png)]](https://img.uj5u.com/2021/01/16/215826161025333.png)
-
有線設為打開狀態
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-SNLuFJzG-1610654132945)(C:\Users\Mac\Desktop\大資料技能\IP有線打開.png)]](https://img.uj5u.com/2021/01/16/215826161025334.png)
-
這時候用物理機ping 192.168.66.100是可以ping通的
-
可以ping通了也就可以用xshell等等的原程桌面了
-
操作小練習
用戶創建
進入管理員root,創建用戶hadoop,設定hadoop用戶密碼
su -用戶和Shell環境一起切換成root身份,符號從$變為#
useradd 用戶名創建用戶
passwd 用戶名設定密碼
userdel -r 用戶名洗掉用戶
[zyj@localhost ~]$ su -
密碼:GNOME桌面設定時的密碼
[root@localhost ~]# passwd hadoop
passwd:未知的用戶名 hadoop,
[root@localhost ~]# useradd hadoop
[root@localhost ~]# passwd hadoop
更改用戶 hadoop 的密碼 ,
新的 密碼:123456
無效的密碼: 密碼少于 8 個字符
重新輸入新的 密碼:123456
passwd:所有的身份驗證令牌已經成功更新,
修改sudo組態檔
vim /etc/sudoers打開sudo的組態檔
插入一下內容,給hadoop配置免密sudo
root ALL=(ALL) ALL
hadoop ALL=(ALL) NOPASSWD:ALL
- 文本操作
| 命令 | 決議 |
|---|---|
| i | 進入編輯文本模式 |
| Esc | 退出編輯文本模式 |
| :w | 保存當前修改 |
| :q | 不保存退出vi |
| :wq | 保存當前修改名退出vi |
若出現:已設定選項 ‘readonly’ (請加 ! 強制執行)
在后面加入
!即可,例如:wq!
- 編輯時行間跳轉
跳轉到檔案的首行:普通模式下 gg
跳轉到檔案的尾行:普通模式下 G
跳轉到指定行:普通模式100gg或者100G|命令模式下跳轉到指定行::100
跳轉到檔案的50%:普通模式50%
查找關鍵字:命令模式/查找內容,輸入n向后查找,輸入N向前查找
創建檔案夾,修改屬主
mkdir -p /tmp/dir1/dir2創建一個目錄樹|mkdir dir1創建dir1目錄|mkdir dir1 dir2同時創建兩個目錄
ls查看目錄|ls -l顯示詳細資訊|ls -a顯示隱藏檔案|ls -lrt按時間顯示檔案,l詳細串列,r反向排序,t時間排序
chown修改屬主change owner|chown -R 用戶名:組名 ./|chown -R hadoop:hadoop /opt/apps|chown :mail
[root@localhost ~]# mkdir -p /opt/apps
[root@localhost ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg
[root@localhost ~]# ls -l /opt/apps
總用量 0
[root@localhost ~]# chown -R hadoop:hadoop /opt/apps
[root@localhost ~]# ll
總用量 8
-rw-------. 1 root root 1587 1月 15 02:50 anaconda-ks.cfg
-rw-r--r--. 1 root root 1635 1月 15 02:55 initial-setup-ks.cfg
安裝JDK
root目錄下匯入jdk-8u171-linux-x64.tar.gz檔案,此檔案適用于UNIX系統
題外話
壓縮命令:tar -zcvf 壓縮檔案名 .tar.gz 被壓縮檔案名
解壓命令:tar -zxvf 壓縮檔案名.tar.gz
- 安裝lrzsz:
sudo yum -y install lrzsz,rz上傳或直接拖動,sz 要下的檔案回車,lrzsz是一個unix通信套件提供的X,Y,和ZModem檔案傳輸協議,可以用在windows與linux 系統之間的檔案傳輸,體積小速度快,可替代ftp, - 移動
mv jdk-8u171-linux-x64.tar.gz /opt/apps
[root@localhost ~]# sudo yum install lrzsz
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00
extras | 2.9 kB 00:00
updates | 2.9 kB 00:00
(1/4): extras/7/x86_64/primary_db | 222 kB 00:00
(2/4): base/7/x86_64/group_gz | 153 kB 00:00
(3/4): base/7/x86_64/primary_db | 6.1 MB 00:01
(4/4): updates/7/x86_64/primary_db | 4.7 MB 00:01
軟體包 lrzsz-0.12.20-36.el7.x86_64 已安裝并且是最新版本
無須任何處理
[root@localhost ~]# mv jdk-8u171-linux-x64.tar.gz /opt/apps
xshell遠程主機
xshell下載地址
連接虛擬機
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-2zuhLuqS-1610654132947)(C:\Users\Mac\Desktop\大資料技能\xshell連接.png)]](https://img.uj5u.com/2021/01/16/215826161025335.png)
連接后輸入命令即可使用
【Ctrl+Alt+F】檔案傳輸【XFTP】
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/249446.html
標籤:其他
