Time of Update: 2018-12-05
一切模型都是錯誤的,但其中一些是有用的。資料分析的根本在於妥善分解問題、為資料套上適當的心智模型和統計模型、做出正確的判斷,但並不保證次次得到正確答案。1. 資料分析的模式:確認問題--》分解資料--》評估資料--》決策;如何提問擷取需要的資訊來確認問題非常關鍵2. 檢驗你的理論:好的AB測試;沒有任何統計資料是絕對準確的,比較是破解觀察資料不準備的法寶,資料只有對比才有意義;3. 尋找最大值:利用規劃求解;設定公式及所有約束條件,求可列區域內的最大解4.
Time of Update: 2018-12-05
1、先看一個標準的hbase作為資料讀取源和輸出源的範例:View Code JAVA12345678Configuration conf = HBaseConfiguration.create();Job job = new Job(conf, "job name ");job.setJarByClass(test.class);Scan scan = new Scan();TableMapReduceUtil.initTableMapperJob(inputTable, scan,
Time of Update: 2018-12-05
並非所有的分析方法作用都相同。和大多數軟體解決方案一樣,你會發現分析方法的能力也存在差異,從簡單明了的到進階複雜。下面我們按照不同分析方法所能給人帶來的智能程度,把分析能力劃分為8個等級。1. 標準報表回答: 發生了什嗎?什麼時候發生的?樣本:月度或季度財務報表我們都見過報表,它們一般是定期產生,用來回答在某個特定的領域發生了什麼。從某種程度上來說它們是有用的,但無法用於制定長期決策。2. 即席查詢(My Work, Right
Time of Update: 2018-12-05
Partition所處的位置Partition位置Partition主要作用就是將map的結果發送到相應的reduce。這就對partition有兩個要求:1)均衡負載,盡量的將工作均勻的分配給不同的reduce。2)效率,分配速度一定要快。Mapreduce提供的PartitionerMapreduce預設的partitioner是HashPartitioner。除了這個mapreduce還提供了3種partitioner。如所示:patition類結構1.
Time of Update: 2018-12-05
1、 將檔案checkout到本地目錄svn checkout path(path是伺服器上的目錄) 例如:svn checkout svn: // 192.168 . 1.1 / pro / domain 簡寫:svn co2、 往版本庫中添加新的檔案svn add file 例如:svn add test.php(添加test.php) svn add * .php(添加目前的目錄下所有的php檔案)3、 將改動的檔案提交到版本庫svn commit -m “ LogMessage “ [
Time of Update: 2018-12-05
其實hive最佳化的建議是多表關聯的時候將大表放在後面,因為前面的關連接果要放入記憶體。不過博主文章本身寫的也不錯。經常看到一些Hive最佳化的建議中說當小表與大表做關聯時,把小表寫在前面,這樣可以使Hive的關聯速度更快,提到的原因都是說因為小表可以先放到記憶體中,然後大表的每條記錄再去記憶體中檢測,最終完成關聯查詢。這樣的原因看似合理,但是仔細推敲,又站不住腳跟。多小的表算小表?如果所謂的小表在記憶體中放不下怎麼辦?我用2個只有幾條記錄的表做關聯查詢,這應該算是小表了,在查看reduce的執
Time of Update: 2018-12-05
文章目錄 矛盾一:業務部門對資料的理解與資料部門對需求的理解矛盾二:業務需求的不斷變化與產生資料的複雜流程矛盾三:資料即時查詢的效率與海量資料的處理和建模 因為近期工作的變更,一直在忙一些雜七雜八的東西,工作交接、離職手續及對新工作的思路整理,目前還處在這個階段,所以可能近期沒有比較新的內容 跟大家分享,最近的幾篇文章會以一些總結的內容為主,主要是對之前的工作中的一些感想。但相信之後會有更加豐富的資料分析相關的內容向大家呈上,因為我相
Time of Update: 2018-12-05
用 Bash 寫的指令碼也可以進行調試,和 Python,Perl 等解釋型語言一樣。建立一個名為 servinfo 的指令碼並增加可執行許可權:$ vi servinfo#!/bin/bashecho "Hostname: $(hostname)"echo "Date: $(date)"echo "Kernel: $(uname -mrs)"$ chmod +x servinfo用 bash -x 來調試上述指令碼,Bash 先列印出每行指令碼,再列印出每行指令碼的執行結果:$ bash
Time of Update: 2018-12-05
接上一篇blog對即時分析與離線分析的思考 昨天看了S4與Storm的設計,再結合之前對Microsoft的Dryad的瞭解,感覺有些共性是需要明確的。 在MapReduce這種“分裂-合并”模型出世之前,我們都採用“一層計算”的方式。比如統計“What I Have
Time of Update: 2018-12-05
索引是標準的資料庫技術,hive 0.7版本之後支援索引。hive索引採用的不是'one size fites all'的索引實現方式,而是提供插入式介面,並且提供一個具體的索引實現作為參考。Hive的Index介面如下:public interface HiveIndexHandler extends Configurable { /** * Determines whether this handler implements indexes by creating an index
Time of Update: 2018-12-05
Hive最佳化總結 ---by 食人花 最佳化時,把hive sql當做map reduce程式來讀,會有意想不到的驚喜。理解hadoop的核心能力,是hive最佳化的根本。這是這一年來,項目組所有成員寶貴的經驗總結。 長期觀察hadoop處理資料的過程,有幾個顯著的特徵:1.不怕資料多,就怕資料扭曲。2.對jobs數比較多的作業運行效率相對比較低,比如即使有幾百行的表,如果多次關聯多次匯總,產生十幾個jobs,沒半小時是跑不完的。map
Time of Update: 2018-12-05
用hive也有一段時間裡,不過一直沒寫過相關到日誌,因為主要用hive也無非是create table,upload data,CRUD 這幾個過程。後來工作中需要用到一些常用到方法,瞭解到hive中支援UDF(User Define Function),看裡一些文章發現UDF到編寫也很簡單,繼承UDF然後重寫evaluate方法即可,下面以一個ip2long到方法作為參考。 1.編寫UDF類01import
Time of Update: 2018-12-05
//Hadoop基礎Doug Cutting所創立的項目的名稱都受到其家人的啟發,以下項目不是由他創立的項目是A. HadoopB. NutchC. LuceneD. Solr答案:D配置Hadoop時,JAVA_HOME包含在哪一個設定檔中A. hadoop-default.xmlB. hadoop-env.shC. hadoop-site.xmlD.
Time of Update: 2018-12-05
這幾個月在一家為客戶在Facebook上做廣告的加拿大公司工作。簡單說說他們對於資料的態度吧。這是一家小型Startup公司,總共不到20個人。 其中4個人(包括我)是技術,剩下的除了CEO都是Account Manager。當然CEO很多時候也在做Account
Time of Update: 2018-12-05
新搭建資料庫,應用串連上去後,拋如下異常:120528 10:07:32 [ERROR] /usr/local/mysql/bin/mysqld: Can't open file: './ag4_1/raa4_1.frm' (errno: 24)剛開始沒有仔細查看錯誤碼!還以為是檔案損壞,重新匯入!仍舊拋上面的錯誤!用perror工具查看具體錯誤!linux:/usr/local/mysql/bin # ./perror 24OS error code 24: Too many
Time of Update: 2018-12-05
ibatis.netsql map是它的重點,看shanyou等的部落格和demo可以瞭解基本配置,我覺得官方的文檔非常好,看完官方文檔基本上就對它完全掌握了;DAO的理解我是通過官方的npetshop例子和官方文檔;Castle
Time of Update: 2018-12-05
第一部分:重要的組件Combiner•什麼是Combiner•combine函數把一個map函數產生的<key,value>對(多個key, value)合并成一個新的<key2,value2>.
Time of Update: 2018-12-05
今天寫了段代碼突然發現,很多類在mapred和mapreduce中分別都有定義,下面是小菜寫的一段代碼:public class MyJob extends Configured implements Tool{ public static class MapClass extends MapReduceBase implements Mapper<Text, Text, Text, Text> {// public void map(Text
Time of Update: 2018-12-05
術語解釋:Lucene:是apache軟體基金會4 jakarta項目組的一個子項目,是一個開放原始碼的全文檢索索引引擎工具包,即它不是一個完整的全文檢索索引引擎,而是一個全文檢索索引引擎的架構,提供了完整的 查詢引擎和索引引擎,部分文本分析引擎(英文與德文兩種西方語言)。Lucene的目的是為軟體開發人員提供一個簡單易用的工具包,以方便的在目標系統中 實現全文檢索索引的功能,或者是以此為基礎建立起完整的全文檢索索引引擎。二分尋找:
Time of Update: 2018-12-05
今天一個項目需要將一個實體類的ArrayList序列化到資料庫的一個欄位,在另一處從資料庫讀出再還原序列化為實體類的ArrayList,遇到的問題、原因及解決方案如下: 1.ArrayList的成員是複雜的自訂類時無法序列化。因為XmlSerializer對象建立時會擷取並分析要序列化的物件類型,載入引用到的Assembly,而ArrayList的成員是作為object加入的,運行時序列化找不到具體類型,則會報錯“The type PorjPeriod was