原创 Hive-SQL面試題2詳解(窗口函數作爲輔助列在計算中的應用)

目錄 0. 需 求 1.實現 2 小 結 0. 需 求 有如下數據表 year subject student score 2018 語文 A 84 2018 數學 A 59 2018 英語 A 30 2018 語文 B 44 2018

原创 Oozie任務調度阻塞及內存優化方法

目 錄 0 引 言 1 Oozie的任務調度原理  1.1 Oozie總體架構  1.2 Oozie的執行模型(Action原理) 2 Yarn的資源調度原理 2.1 Yarn的相關定義 2.2 Yarn的運行機制 2.3 Yarn的資源

原创 一文帶你讀懂Hbase概念、架構及原理

目錄 0. 前言 1. 初識Hbase 1.1 Hbase的定義 1.2 Hbase的邏輯結構 1.3 Hbase物理存儲結構 1.4 Hbase數據模型 2 Hbase與關係型數據庫之間的對比 3 Hbase的優勢 4 Hbase基本架

原创 Hive-SQL工作中常用函數總結及案例實戰

目錄 0 引 言 1 空字段賦值 2 時間類 3 條件判斷 4 多行轉一行(行轉列) 5 一行變多行(列轉行) 6 窗口函數 7 排名函數 8 json解析函數 9 url解析函數 10 小 結 0 引 言      本文針對hive進行

原创 Redis集羣刪除後重建後報:unrecoverable erro:corrupted cluster config file)錯誤解決方案

0. 現象 redis某節點出現宕機,刪除後重新部署出現如下問題: unrecoverable erro:corrupted cluster config file 2.原因分析 /var/lib/redis/nodes.conf,頻繁

原创 Hive-SQL面試題1

0. 需求 我們有如下的用戶訪問數據 userId visitDate visitCount u01 2017/1/21 5 u02 2017/1/23 6

原创 Yarn的資源調度原理詳解

目錄 1 Yarn的相關定義 2 Yarn的運行機制 3 Yarn的資源調度原理 4 Yarn資源管理器參數調優詳解 1 Yarn的相關定義     Yarn 是一個資源調度平臺,負責爲運算程序提供服務器運算資源,相當於一個分佈式的操作系

原创 Hive-Sql分析函數彙總

目錄   0 引 言   1. 聚合分析函數   2.排名分析函數   3.數學分析函數   4.行偏移量分析函數   5.多維分析函數  0 引 言    分析函數在sql中非常重要,對於sqlboy來說是必須要掌握的 ,本文對Hive

原创 HBase編程實戰(JAVAAPI操作編寫HBase工具類)

目 錄 0 引 言 1.開發環境準備及搭建 2.HbaseUtils工具類編寫 3.小結 0 引 言     本文從工程實踐着手,爲讀者提供了HBase編程完整流程,並對工作中常用的增、刪、改、查、及API的使用封裝成工具類,方便讀者使用

原创 awk腳本編程實例講解(判斷,循環,數組)

1.條件判斷 if語句格式:{if(表達式) {語句;語句;...}} 統計系統用戶數 0-10001系統用戶,大於1000普通用戶 #awk -F: '{if($3>0 && $3<1000){count++;}} END{print

原创 $ git push fatal: The current branch review0329 has no upstream branch.問題解決方法

1 問題現象 git 中今天新建了分支,推送代碼時報如下錯誤: $ git push fatal: The current branch review0329 has no upstream branch. 如下圖所示: 2 具體原因分

原创 vim文本編輯器工作中常用的用法總結

目錄 0 前言 1 vim工作模式 2 插入命令 3 定位命令 4 刪除命令 5 複製粘貼 6 替換和取消命令 7 退出命令 8 小 結 0 前言      VI/VIM編輯器是linux常用的編輯器,也是程序員必須的編輯器之一,它的重要

原创 數據誤刪,跑路還是挽救?一種HBase數據誤刪後快速挽救方法

目 錄 0 引 言 1 方法及原理 2 實 驗  3 小 結 0 引 言    數據誤刪是一個老生常談的問題,在不同的數據庫中有不同的恢復策略,那麼數據誤刪後如何第一時間搶救呢?以保證損失最小呢?。本文針對HBase數據庫數據誤刪後進行分

原创 一種linux拷貝公共文件到各個子目錄的實現方法

目 錄 0.需求分析 1.腳本實現 2.腳本分析 3. 小結 0.需求分析     在項目部署初始化之前往往需要將某個公共文件夾(如配置參數文件、UDF函數等等)拷貝複製到linux各個子文件夾下,一種方式是提前將公共文件放置到各個子文件

原创 用shell腳本封裝git命令提高你的工作效率

0.前言 工作中我們使用git提交代碼,但是經常使用的幾個命令不免有點麻煩,而且每次都這麼提交有點囉嗦和浪費時間。本文將教你如何通過shell腳本封裝git命令,一個命令解決git代碼提交問題。 1.原理 由於git是可以使用sh