Changes between Version 4 and Version 5 of waue/2009/0626
- Timestamp:
- Jun 26, 2009, 5:36:07 PM (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
waue/2009/0626
v4 v5 1 1 = 新 hbase 解析 = 2 [[PageOutline]] 2 3 * hbase 已經到0.19.3了,可惜的是 hbase 0.18.1的api及文件都已經從官方網頁被拿掉了,所幸hbase 0.18 與hbase 0.19相差無幾 3 4 * hbase 0.1.3 到 hbase 0.19.3 中間好像已經包含了十幾代,但是其實類似java 1.4 直接跳躍 到 java 5 一樣,hbase 0.1.3 -> hbase 0.2.x -> hbase 0.18.x -> hbase 0.19.x … … 19 20 * 每個 row 又分許多 timestamp 20 21 21 = = 程式碼 ==22 23 == = 宣告 ===22 = 程式碼 = 23 24 == 宣告 == 24 25 * 定義宣告以下參數 25 26 … … 32 33 }}} 33 34 34 == = 必要條件 資料表屬性:HBaseConfiguration ===35 == 必要條件 資料表屬性:HBaseConfiguration == 35 36 36 37 * 首先,建立HTableDescriptor 物件,用來設定資料表屬性,為必要條件。 … … 42 43 }}} 43 44 44 == = 資料表的特權操作:HBaseAdmin ===45 == 資料表的特權操作:HBaseAdmin == 45 46 * HBaseAdmin 用來執行資料庫的建立刪除操作,下面這段是用來檢查是否已經存在這個資料表,沒有的話則新增, 46 47 新增時需要用到HTableDescriptor這個類別來新增Column_Family這個成員。此非必要條件,因為不見得每次執行程式都要新建一個表單 … … 62 63 }}} 63 64 64 * 接著,我們用BatchUpdate來加入表單內容,我們首先用建構值填入hbase_row,接著用put放入值,用delete刪除值。 65 == 新增/刪除 資料表內容:!BatchUpdate == 66 67 * 接著,我們用!BatchUpdate來加入表單內容,我們首先用建構值填入hbase_row,接著用put放入值,用delete刪除值。 65 68 * 此非必要條件(也就是沒有用到這個類別程式也能跑),但若是希望能新增或刪除資料的話還是得用到它 66 69 67 70 注意:這個類別不需要其他類別支援。 68 71 69 === 新增/刪除 資料表內容:BatchUpdate === 72 70 73 71 74 {{{ … … 77 80 }}} 78 81 79 == = 資料表內容:HTable ===82 == 資料表內容:HTable == 80 83 81 84 * HTable 類別在此是用來把之前的建構的內容寫入 ,之後還會用這個類別取得資料表內容,因此也算是必要條件 82 * HTable 類別用來連接HBaseConfiguration與 BatchUpdate,如此完成表單建立83 這個類別填入HBaseConfiguration與table_name的建構值,並用commit這個函式輸入之前 BatchUpdate建立的表單資料。85 * HTable 類別用來連接HBaseConfiguration與!BatchUpdate,如此完成表單建立 86 這個類別填入HBaseConfiguration與table_name的建構值,並用commit這個函式輸入之前!BatchUpdate建立的表單資料。 84 87 85 88 {{{ … … 102 105 }}} 103 106 104 == = 掃描資料表:Scanner ===107 == 掃描資料表:Scanner == 105 108 106 109 * 接下來的程式碼用來印出資料表內容,因此需要用到HTable … … 140 143 }}} 141 144 142 145 == 完整程式碼如下 == 143 146 * 完整程式碼如下 144 147 145 148 {{{ 146 #!java 149 147 150 import java.io.IOException; 148 151