linux操作指令
1.命令提示符
root:使用者名稱
localhost:主機名
#/$:代表當前使用者的許可權 #表示的是超級管理員許可權 $表示的是普通使用者的許可權
2.與目錄相關
pwd:檢視當前目錄的具體路徑
mkdir:目錄建立指令
touch:檔案建立的指令
cd:進行目錄切換的指令
—:表示返回當前操作的前乙個操作的目錄(有點類似於遙控器的返回鍵)
cp:進行檔案的複製 檔案:cp 檔名 目標目錄 目錄 cp -r 目錄名 目標目錄
改名: cp -r 檔案/目錄名 要修改的檔案/目錄名
mv:進行檔案或者目錄的移動 檔案/目錄:mv 檔案/目錄名 目標目錄
改名:mv 檔案/目錄名 要修改的檔案或者目錄名
注意:cp的改名的操作,先將檔案或者目錄進行複製然後對複製的檔案或者目錄進行改名操作
mv是在原始檔或者原目錄上直接進行修改(重新命名操作)
vi/vim:檔案編輯指令
一般模式:具有游標 有內容的主題位置 在左下角有關於當前檔案的詳細資訊(只有唯讀操作)
編輯模式:小i可以將一般模式切換到編輯模式(對檔案內容進行操作)
tar:文壓縮指令 tar -xvf 檔案壓縮包的名字
rm: 檔案/目錄刪除操作 檔案 rm 檔名 目錄 rm -rf 目錄名
-r:遞迴操作 -f:強制執行
ssh遠端登入:設定免密登入
1.在客戶端利用ssh』設定免密登入操作在客戶端生成一對金鑰對公鑰a 私鑰a
2.客戶端會向伺服器傳送連線請求—將公鑰a傳送給伺服器端
3.伺服器端接收到公鑰a,將密碼進行加密操作,生成隨機字串
4.伺服器將加密的生成的隨機字串返回給客戶端
5.接收到伺服器端發來的隨機字串,用私鑰a進行解密操作
6.將解密之後的內容傳送給伺服器端
7.接收到解密內容,與未加密之前的內容進行對比,一致則配置成功,反之失敗
注意:對於像ssh非對稱加密公鑰加密只能用私鑰解密,對稱加密演算法則是公鑰加密公鑰解密
hdfs的技術細節
1、hdfs模組
block:是hdfs中最想的儲存單元
切分規則:模式128m 最大值但不是固定值
儲存在datanode
namenode:維護元資料資訊-----block塊的儲存位置,以及塊的容等
元資料資訊是儲存到記憶體當中但是為了資料的安全性與完整性,會在磁碟檔案進行備份
datanode:用來儲存block的(但是不知道其檔案塊的具體內容)
snn:用來協助namenode檔案合併
2、檔案合併:
磁碟內部資源:
fsimage:磁碟檔案備份元資料資訊
edits:日誌檔案 記錄元資料修改資訊
fstime:記錄元資料合併的時間
觸發檔案合併的前提條件:
1.當edits日誌檔案中的資料達到64m
2.當fstime裡記錄的時間達到3600s
檔案合併的具體操作:
1.在namenode裡將edits日誌檔案進行複製產生新的日誌之檔案
edits.new—原始日誌檔案不會再記錄元資料的修改資訊,而是新的日之日誌檔案進行記錄
2.snn利用http get獲取nn中的磁碟檔案fsimage以及原始日誌檔案edits
進行檔案合併—產生新的磁碟檔案fsimage.ckpt
3.將新的磁碟檔案複製給namenode
4.namenode接收大新的磁碟檔案,首先會將原始日誌檔案刪除,並將新的日誌檔案進行重新命名操作改名為edits;然後將原始磁碟檔案進項刪除,將新的磁碟檔案進行重新命名操作
注意:nn是如何與dn 進行溝通—dn每隔3秒向nn傳送心跳報告
如果超過10分鐘nn未接收到dn的心跳,會向其他的dn傳送檔案複製的指令
3.副本存放策略:
1.副本1有乙個規則就近原則(如果當前客戶端就是乙個dn會直接存放在本機)
注意:當前機器是否空閒
2.副本2放置在與副本1不同機架
3.副本3放置於副本2相同機架上的不同機器上
其他的副本隨機。。。
hdfs的執行流程
讀流程:
1.客戶端向伺服器端發起請求
2.伺服器端–驗證當前使用者是否具有訪問許可權 校驗當前檔案是否存在
3.伺服器端會向客戶端傳送檔案的儲存位址
4.客戶端接收到檔案儲存位址進行檔案的讀取操作
5.檔案內容讀取完畢,向伺服器端送讀取完畢的資訊,釋放資源關閉連線
寫流程:
1.客戶端向伺服器端傳送連線請求
2.伺服器端
驗證當前使用者是否具有訪問許可權
驗證當前檔案是否存在
3.伺服器端會向客戶端返回檔案寫入的位址資訊
4.客戶端接收到位址資訊之後–將檔案進行切塊的操作
5.客戶端會拿著這個dn的位址資訊,進行block的儲存操作
6.block一次儲存在dn內部以管道流的(channal)形式進行副本的儲存
7.儲存完畢之後dn會逐級向上返回ack資訊直到返回的給客戶端,在執行下乙個block的儲存操作
8.檔案徹底儲存完畢,客戶端會向伺服器端傳送檔案寫入的完成的資訊,釋放資源,關閉連線
hdfs的優缺點:
優點:1.支援超大檔案
2.具備檢測和快速應對硬體故障的機制
3.可以進行流式資料的訪問
4.簡化的一致性模型
5.具有高容錯性
6.可以將集群搭建在廉價的機器上面
hdfs的缺點:
1.具備高吞吐但是不具備低延遲的資料訪問(毫秒級別)
2.具有大量的小檔案佔據記憶體
3.使用者只支援一次寫入多次讀取,但是不支援行級別的增刪改(但是在hadoop2.0 —新增了追加操作)
4.不支援超強的事務
注意:在面試過程中,hdfs的缺點會經常被問到
yarn資源排程
在hadoop2.0之前沒有yarn只有jobtracker以及tasktracker
在hadoop2.0引入yarn的概念將job以及task進行合併並改名為
resourmanager以及nodemanager
yarn的執行流程
1.寫乙個mapreduce程式執行在job客戶端上
2.job客戶端向jobtracker傳送作業的儲存請求
3.jobt會向job客戶端送乙個作業編號以及儲存不作業的hdfs位址
4.job客戶端會拿著這個hdfs的儲存位址將作業上傳
5.jobt會回去儲存好的作業進行初始化的操作,進行作業的處理
作業的處理:1.遵循本地化策略(將每個任務分發給與當前dn在同一臺機器上的nodemanager) 2.驗證當前dn是否空閒
6.nodemanager接收到作業任務,會建立乙個虛擬機器紫子程序(worke)
將 作業任務交給work處理
注意:如果當前work在處理任務時出現異常情況,nodemanager會再次建立乙個虛擬子程序work繼續處理
7.work處理接收到的作業任務
sqoop:
連線非機構化工具以及結構化工具的中介軟體
一般在開發環境中:是連線hive以及mysql的
知識點回顧
回顧 簡介 python 安裝 python3.8.5 why?python解釋型語言,安裝python3 直譯器 lib pip命令 pip list pip install x pip uninstall 解除安裝 pip install 版本號 pip freeze requiremente....
知識點回顧
方法 變數作用域 方法過載 ref 引用傳參,側重於在方法中一定要修改引數,傳入方法前必須賦值 out 側重於輸出,方法返回前 引數使用前 必須賦值 params 可變引數,只能修飾陣列型別,只能在方法列表的最後.如果沒有給可變引數賦值,那麼可變引數會自動初始化長度為0.方法遞迴 迴圈 方法自己呼叫...
c 知識點回顧
過載只與函式的引數有關,而與函式的返回型別無關 int 形參 實參 0 char short int double 形參 實參 float double 用省略號 表示,即函式可以有任意個任意型別的引數。如,int printf const char format,在乙個函式中,可指定多個 甚至全部...