原创 LeetCode 136.Single Number(只出現一次的數)

題目 LeetCode: 136. Single Number 力扣: 136. 只出現一次的數字 Given a non-empty array of integers, every element appears twice

原创 Hive中distinct和group by去重性能對比

前言 操作系統:CentOS 7 hadoop:2.7.7 hive:2.3.0 實驗目的:本文主要測試在某字段各種不同值個數情況下,記錄對此字段其使用DISTINCT/GROUP BY去重的查詢語句執行時間,對比兩者在不同場景

原创 LeetCode 137.Single Number II(只出現一次的數 II)

題目 LeetCode: 137. Single Number II 力扣: 137. 只出現一次的數字 II Given a non-empty array of integers, every element appears

原创 Hadoop源碼解析之Mapper數量計算公式

前言 據說,自0.20.0版本開始,Hadoop同時提供了新舊兩套MapReduce API,並在後續版本中也同時支持這兩種API的使用。新版本MR API在舊的基礎進行了擴展,也制定了新的split計算方式。新版本MR API

原创 SQL求解TopK問題

前言 本文主要用於記錄TopK問題的一些簡答的SQL解法。如果讀者有更好的解法,或者覺得博主方法存在缺陷,歡迎在評論區交流。 測試用表 表結構: CREATE TABLE employees( `employee_i

原创 Hive統計連續登錄n天的用戶登錄信息

前言 Hadoop:2.7.7 Hive:2.3.0 本文主要練習如何使用Hive SQL統計練習登錄n天的用戶登錄信息,主要使用窗口函數。 測試用表 表數據: 1 Alise 2020-5-12 09:25:56 2 Al

原创 Hive On Tez報錯彙總

前言 Hive:2.3.0 Hadoop:2.7.7 JDK:1.8.0_221 Tez:0.9.1 報錯一 報錯內容: 在Hive下使用Tez引擎執行MR Job時報錯:Container killed on reques

原创 Shell之字符串大小寫轉換

方案1:使用tr命令 Linux中的tr命令可以用於轉換或刪除文本中的指定字符。tr命令默認從標準輸入中讀取數據,經過字符串轉義之後,將結果輸出到標準輸出。 # 使用tr命令將字符串中小寫字符轉換成大寫 echo "TomAn

原创 Hive自定義表生成函數UDTF的自定義實現Demo

前言 Hive:2.3.0 由於實際生產環境中,Hive自帶的內建函數無法覆蓋所有的應用場景,所以時常需要進行自定義函數User-Defined Function(UDF),以滿足實際生產需求。 本文主要演示如何實現自

原创 Hive中配置Apache Tez運行MR

前言 Hive:2.3.0 Hadoop:2.7.7 JDK:1.8.0_221 Tez:0.9.1 本次配置Apache Tez只是用於Hive執行MR任務,而非Hadoop全局配置,並且使用的是已編譯二進制壓縮包 Hadoo

原创 MySQL之常用的數據處理函數

前言 不同的DBMS軟件中支持的自帶默認函數存在些許不同,本文主要介紹一下大多數情況下都支持的自帶默認函數 本文中的內容大都節選自《MySQL必知必會》第11章節,編寫本文目的主要是做個小總結,有興趣者可以下載(ktx8)查看

原创 Hive之配置使用snappy壓縮

前言 OS:CentOS 7 hadoop:2.7.7 hive:2.3.0 Hive中配置snappy壓縮,可以分別在Mapper輸出階段和Reducer輸出階段使用壓縮算法。也可以將壓縮後數據文件加載到表中用於

原创 LeetCode 260.Single Number III(只出現一次的數 III)

題目 LeetCode: 260. Single Number III 力扣: 260. 只出現一次的數字 III Given an array of numbers nums, in which exactly two elem

原创 Ubuntu修改apt工具安裝源

前言 OS:Ubuntu 18.04.4 本文主要演示如何設置apt的軟件包下載源地址。由於Ubuntu默認的apt軟件包源地址在國外,下載速度太慢,所以建議更改源地址 參考博客:Ubuntu更新軟件源 具體步驟 1)備份原

原创 VScode、IDEA設置換行符

VScode設置換行符 設置默認換行符 VScode的參數設置作用域分爲三類:用戶、工作區、文件夾,後者設置會覆蓋前者設置,每個作用域都有對應的配置文件。 方法一: 依次選擇:文件——首選項——設置——文本編輯器——EOL,然後