FS、MapRece和YARN,HDFS是存儲數據的地方就像我們電腦的硬盤一樣文件都存儲在這個上面,MapRece是對數據進行處理計算的,它有個特點就是不管多大的數據只要給它時間它就能把數據跑完,但是時間可能不是很快所以它叫數據的批處理。
Zookeeper:這是個萬金油,安裝Hadoop的HA的時候就會用到它,以后的Hbase也會用到它。它一般用來存放一些相互協作的信息,這些信息比較小一般不會超過1M,都是使用它的軟件對它有依賴,對于我們個人來講只需要把它安裝正確,讓它正常的run起來就可以了。
Mysql:我們學習完大數據的處理了,接下來學習學習小數據的處理工具mysql數據庫,因為一會裝hive的時候要用到,mysql需要掌握到什么層度那?你能在Linux上把它安裝好,運行起來,會配置簡單的權限,修改root的密碼,創建數據庫。這里主要的是學習SQL的語法,因為hive的語法和這個非常相似。
Sqoop:這個是用于把Mysql里的數據導入到Hadoop里的。當然你也可以不用這個,直接把Mysql數據表導出成文件再放到HDFS上也是一樣的,當然生產環境中使用要注意Mysql的壓力。
Hive:這個東西對于會SQL語法的來說就是神器,它能讓你處理大數據變的很簡單,不會再費勁的編寫MapRece程序。有的人說Pig那?它和Pig差不多掌握一個就可以了。
Oozie:既然學會Hive了,我相信你一定需要這個東西,它可以幫你管理你的Hive或者MapRece、Spark腳本,還能檢查你的程序是否執行正確,出錯了給你發報警并能幫你重試程序,最重要的是還能幫你配置任務的依賴關系。我相信你一定會喜歡上它的,不然你看著那一大堆腳本,和密密麻麻的crond是不是有種想屎的感覺。
Hbase:這是Hadoop生態體系中的NOSQL數據庫,他的數據是按照key和value的形式存儲的并且key是唯一的,所以它能用來做數據的排重,它與MYSQL相比能存儲的數據量大很多。所以他常被用于大數據處理完成之后的存儲目的地。
Kafka:這是個比較好用的隊列工具,隊列是干嗎的?排隊買票你知道不?數據多了同樣也需要排隊處理,這樣與你協作的其它同學不會叫起來,你干嗎給我這么多的數據(比如好幾百G的文件)我怎么處理得過來,你別怪他因為他不是搞大數據的,你可以跟他講我把數據放在隊列里你使用的時候一個個拿,這樣他就不在抱怨了馬上灰流流的去優化他的程序去了,因為處理不過來就是他的事情。而不是你給的問題。當然我們也可以利用這個工具來做線上實時數據的入庫或入HDFS,這時你可以與一個叫Flume的工具配合使用,它是專門用來提供對數據進行簡單處理,并寫到各種數據接受方(比如Kafka)的。
Spark:它是用來彌補基于MapRece處理數據速度上的缺點,它的特點是把數據裝載到內存中計算而不是去讀慢的要死進化還特別慢的硬盤。特別適合做迭代運算,所以算法流們特別稀飯它。它是用scala編寫的。Java語言或者Scala都可以操作它,因為它們都是用JVM的。
二進制和十進制的轉化
注釋、單行注釋、多行注釋、文本注釋、注釋內容和字節碼的關系
標識符、關鍵字、駝峰原則
變量的本質、內存畫圖、變量聲明和初始化
變量的分類和作用域(局部變量、成員變量、靜態變量)
常量和Final
基本數據類型介紹
整型變量和整型常量
浮點類型、float、double
char字符型、轉義字符
boolean布爾型、if語句使用要點、布爾類型占用空間問題
運算符介紹
算數運算符(二元、自增、自減)
賦值和賦值運算符
關系運算符詳解
邏輯運算符、短路運算符詳解
位運算符詳解
字符串連接符
條件運算符(三元運算符)
運算符優先級問題
自動類型轉換詳解
強制類型裝換詳解
基本數據類型裝換常見錯誤、溢出、L問題
使用Scanner獲取鍵盤輸入
控制語句控制語句和實現邏輯對應
if單選結構
if_elseif_else多選結構
switch語句_IDEA更換主題
循環_while
循環_for循環_dowhile
嵌套循環
break和買粉絲ntinue語句_標簽_控制語句底層原理
寫一個年薪計算機_百度查問題的秘訣(重要)
個人所得稅計算器軟件
方法核心詳解_天才思維模型教你高手學習思維模式
方法的重載
遞歸結構講解_遞歸頭_遞歸體
面向對象編程-基礎面向過程和面向對象的區別
類和對象的概述
類的屬性和方法
創建對象內存分析
構造方法(Construtor)及重載
對象類型的參數傳遞
this關鍵字
static關鍵字詳解
局部代碼塊、構造代碼塊和靜態代碼塊
package和import詳解
JavaDoc生成API文檔
面向對象編程-進階面向對象的三大特性
面向對象之【封裝(Encapsulation)】
訪問權限修飾符
面向對象之【繼承(Inheritance)】
Object類
方法重寫Override
super關鍵字詳解
重寫equals()和toString()
繼承中對象創建的內存分析
面向對象之【多態(Polymorphism)】
向上轉型
向下轉型
instanceof運算符
編譯時和運行時詳解
final修飾符
抽象類和抽象方法(abstrct)
接口的定義和實現
JDK8的接口新特性
接口應用:內部類比較器Comparable
內部類詳解
Java的內存管理與垃圾回收
異常機制異常的概述
異常的執行過程與分析
try-catch-finally捕捉異常
throw拋出異常
throws聲明異常
異常繼承體系
運行時異常和編譯異常
自定義異常
Java常用類Wrapper包裝類自動裝箱和自動拆箱
包裝類的源碼分析
String類的使用與內存原理
String類的源碼分析
StringBuffer
StringBuilder
字符串處理類性能分析
Date類
System類
DateFormat類
Calendat類
Math類
BigInteger類和BigDecimal類
Random類
枚舉類
File類
常見的面試題講述與分析
數據結構算法
數據結構的概述
線性表
順序表
鏈表
棧和隊列
樹
二叉樹
二叉查找樹
二叉平衡樹
黑紅樹
圖
冒泡排序
選擇排序
遞歸
折半查找
集合(容器)
集合和數組的聯系和區別
集合框架體系
ArrayList的使用和源碼分析
集合中使用泛型
LinkedList的使用和源碼分析
HashSet的使用和源碼分析
哈希表及原理
TreeSet的使用和源碼分析
比較器Comparable和Comparator
HashMap的使用和源碼分析
TreeMap的使用和源碼分析
Iterator于ListIterator
Collections工具類
舊集合類Vector、Hashtable
集合總結和選擇依據
泛型接口
泛型類
泛型方法
IO流
IO流的概念
IO流的分類及其原理分析
文件流FlieInputStream、FileOutputStream
緩沖流BufferedInputStream、BufferedOutputStream
數據流ObjectInputStream、ObjectOutputStream
序列化和反序列化
轉換流InputStreamReader、OutputStreamWriter
打印流PrintWrite和PrintStream
數組流ByteArrayOutputStream、ByteArrayInputStream
使用IO復制文件夾
多線程
進程和線程
線程的創建與啟動
創建線程的三種方式對比
線程的生命周期
線程控制
多線程的安全問題與解決辦法
線程的同步:同步代碼塊
線程的同步:同步方法
線程的同步:Lock鎖
線程的死鎖問題
線程通信
Condition
線程的完整生命周期
線程池ThreadPoolExecutor
ForkJoin框架
ThreadLocal類
網絡編程
計算機網絡基礎知識
網絡通信協議
OSI參考模型
TCP/IP參考模型
數據的封裝與拆封原理解析
TCP協議
UDP協議
IP地址和端口號
URL和Socket
使用TCP編程實現登錄功能
使用UDP編程實現客服系統
使用TCP編程實現文件上傳
集合提升尋訓練
手寫ArrayList
手寫單鏈表
手寫Linkedlist
手寫HashMap
手寫HashSet
最新并發集合類
多線程提升訓練
生產者消費者模式擴展
Lock鎖和Condition
<2024-07-11 02:21
2024-07-11 01:40
2024-07-11 01:27
2024-07-11 00:52
2024-07-11 00:51
2024-07-11 00:45