原创 hive編程指南——讀書筆記(無知拾遺)

set hive.metastore.warehouse.dir=/user/myname/hive/warehouse; 用戶設定自己的數據倉庫目

原创 sql的簡單提高效率方法

少用in操作(效率極差),儘量用表關聯代替 select要指定列,不要*(*會讀入所有數據,而指定列則只提取涉及的列,減少io) 儘量有where(減少讀取量),where操作列儘量有索引(加快查詢)     (mysql索引使用B-T

原创 java多線程的編程實例

java中可有兩種方式實現多線程: 一種是繼承Thread類; 一種是實現Runnable接口; Thread類 是在java.lang包中定義的。一個類只要繼承了Thread類同時覆寫了本類中的run()方法就可以實現

原创 hive中使用case、if:一個region統計業務(hive條件函數case、if、COALESCE語法介紹:CONDITIONAL FUNCTIONS IN HIVE)

前言:Hive ql自己設計總結 1,遇到複雜的查詢情況,就分步處理。將一個複雜的邏輯,分成幾個簡單子步驟處理。 2,但能合在一起的,儘量和在一起的。比如同級別的多個concat函數合併一個select 也就是說,字段之間是並行

原创 pig腳本不需要後綴名(python tempfile模塊生成pig腳本臨時文件,執行)

pig 腳本運行不需要後綴名 pig腳本名爲tempfile,無後綴名 用pig -f tempfile 可直接運行 另外,pig tempfile也可以直接運行 這樣就可以用python臨時文件存儲pig腳本內容直接調用 py

原创 python進行md5加密

代碼函數 import hashlib def md5(str): m = hashlib.md5() m.update(str) return m.hexdigest() f

原创 sql的索引:網上看到不錯,整理成自己的東西

數據庫建立索引可以提高查詢速度。假如我們創建了一個 mytable表:CREATE TABLE mytable(ID INT NOT NULL,us

原创 linux service 簡單易懂貼

service用於管理Linux操作系統中服務的命令 1.不是在所有linux發行版本中都有。主要是在redhat、fedora、mandriva和centos中。 2. 命令位於/sbin目錄下,用file命令查看此命令會發現它是一

原创 java中小數的處理:高精度運算用bigDecimal類,精度保留方法,即舍入方式的指定

一、 計算機的小數計算一定範圍內精確,超過範圍只能取近似值: 計算機存儲的浮點數受存儲bit位數影響,只能保證一定範圍內精準,超過bit範圍的只能取近似值。 java中各類型的精度範圍參見:http://blog.

原创 shell的數值計算,小數計算

shell腳本中,可以進行數值計算, 如加減乘除,通過expr、let、(())等完成,文章介紹:http://blog.csdn.net/longshenlmj/article/details/14166193 但是上面的運算只

原创 java的list幾種實現方式的效率(ArrayList、LinkedList、Vector、Stack),以及 java時間戳的三種獲取方式比較

一、list簡介 List列表類,順序存儲任何對象(順序不變),可重複。 List是繼承於Collection的接口,不能實例化。實例化可以用: ArrayList(實現動態數組),查詢快(隨意訪問或順序訪問),增刪慢。整

原创 hbase 程序優化 參數調整方法

hbase讀數據用scan,讀數據加速的配置參數爲: Scan scan = new Scan(); scan.setCaching(500); // 1 is the default in Scan, which

原创 轉義字符\(在hive+shell以及java中注意事項):正則表達式的轉義字符爲雙斜線,split函數解析也是正則

轉義字符 將後邊字符轉義,使特殊功能字符作爲普通字符處理,或者普通字符轉化爲特殊功能字符。 各個語言中都用應用,如java、python、sql、hive、shell等等。 如sql中 "\""

原创 python的subprocess:子程序調用(調用執行其他命令);獲取子程序腳本當前路徑問題

python當前進程可以調用子進程,子進程可以執行其他命令,如shell,python,java,c... 而調用子進程方法有 os模塊 參見:http://blog.csdn.net/longshenlmj/article/

原创 sql中InnoDB和MyISAM的區別

InnoDB和MyISAM是許多人在使用MySQL時最常用的兩個表類型 1,MyISAM類型的表強調的是性能,其執行數度比InnoDB類型更快,但是不提供事務支持等高級處理,往往被認爲只適合小項目;而InnoDB類型支持事物,以