原创 HBase性能調優---rowkey的設計

1 概述 HBase是一個分佈式的、面向列的數據庫,它和一般關係型數據庫的最大區別是:HBase很適合於存儲非結構化的數據,還有就是它基於列的而不是基於行的模式。 既然HBase是採用KeyValue的列存儲,那Rowkey就是

原创 java 常見的算法

1)插入排序(直接插入排序、希爾排序) 2)交換排序(冒泡排序、快速排序) 3)選擇排序(直接選擇排序、堆排序) 4)歸併排序 5)分配排序(基數排序) 所需輔助空間最多:歸併排序 所需輔助空間最少:堆排序 平均速度最

原创 java 中String , StringBuilder , StringBuffer的一些比較

1.可變與不可變   String類中使用字符數組保存字符串,如下就是,因爲有“final”修飾符,所以可以知道string對象是不可變的。     private final char value[];   StringBuil

原创 hive 的四種排序

order by order by 會對輸入做全局排序,因此只有一個reducer(多個reducer無法保證全局有序) 只有一個reducer,會導致當輸入規模較大時,需要較長的計算時間。 set hive.mapred.mode

原创 java 設計模式與設計原則

設計模式(Design Patterns)                                   ——可複用面向對象軟件的基礎 設計模式(Design pattern)是一套被反覆使用、多數人知曉的、經過分類編目的

原创 阿里巴巴HBase性能優化及容災經驗

【51CTO專稿】隨着市場規模的擴大,產品與技術的發展,業務數據量越來越大,對海量數據的高效寫入和讀取變得越來越重要。 HBase 是一個分佈式的可擴展、非關係型開源數據庫。它很好地用 JAVA 實現了 Google 的 Bigtab

原创 spark RDD

1、RDD特點: val rdd:[Stirng] = sc.textFile("")  1》每個RDD都有一個partition分區列表 2》每個RDD上都有一個計算的function,val a = rdd.flatMap(_.spl

原创 spark常見的轉換和動作

RDD支持兩種操作: 轉換:從現有的數據集創建一個新的數據集;動作:在數據集上運行計算後,返回一個值給驅動程序。例如,map 是一種轉換,它將數據集每一個元素都傳遞給函數,並返回一個新的分佈數據集表示結果,而 reduce 是一種動作,通

原创 hive常用的內置函數

一、關係運算: 1. 等值比較: =          語法:A=B          操作類型:所有基本類型          描述:如果表達式A與表達式B相等,則爲TRUE;否則爲FALSE          舉例:         

原创 java 泛型

一. 泛型概念的提出(爲什麼需要泛型)? 首先,我們看下下面這段簡短的代碼: 1 public class GenericTest { 2 3 public static void main(String[] ar

原创 hive中UDF跟UDAF使用說明

Hive進行UDF開發十分簡單,此處所說UDF爲Temporary的function,所以需要hive版本在0.4.0以上纔可以。 一、背景: 1、Hive是基於Hadoop中的MapReduce,提供HQL查詢的數據倉庫。Hive是一

原创 linux sed命令的一些使用見解

sed是一個很好的文件處理工具,本身是一個管道命令,主要是以行爲單位進行處理,可以將數據行進行替換、刪除、新增、選取等特定工作,下面先了解一下sed的用法 sed命令行格式爲:          sed [-nefri] ‘comman

原创 linux grep命令的使用見解

1.作用 Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹 配的行打印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用權限是所有

原创 hadoop集羣調優---參數

Hadoop參數調優: 通過修改hadoop三個配置文件的參數來提高性能。主要有三個文件core-site.xml、hdfs-site.xml、mapred-site.xml。下面分別介紹這三個文件常用的參數配置。我們的環境上面的路徑是