真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php通過thrift操作hbase-創(chuàng)新互聯(lián)

環(huán)境配置

成都創(chuàng)新互聯(lián)是網(wǎng)站建設(shè)專家,致力于互聯(lián)網(wǎng)品牌建設(shè)與網(wǎng)絡(luò)營銷,專業(yè)領(lǐng)域包括成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、電商網(wǎng)站制作開發(fā)、微信平臺小程序開發(fā)、微信營銷、系統(tǒng)平臺開發(fā),與其他網(wǎng)站設(shè)計(jì)及系統(tǒng)開發(fā)公司不同,我們的整合解決方案結(jié)合了恒基網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗(yàn)和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結(jié)合,且不斷評估并優(yōu)化我們的方案,為客戶提供全方位的互聯(lián)網(wǎng)品牌整合方案!

操作系統(tǒng) centos 5.8   hadoop版本cloudera cdh4u3  hbase版本hbase-0.90.4-cdh4u3  php版本5.2

1.  下載并編譯thrift

   # wget http://ftp.tc.edu.tw/pub/Apache/thrift/0.8.0/thrift-0.8.0.tar.gz

   安裝所需的依賴包

   # yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby-devel php php-devel

  # tar zxvf  thrift-0.8.0.tar.gz

   # cd thrift-0.8.0

  #   ./configure --prefix=/home/thrift --with-php-config=/usr/bin/php-config

 # make && make install

2  生成php和hbase的接口文件:

  # cd /home/thrift/

  # bin/thrift  --gen php $HBASE_HOME/src/main/resources/org/apache/hadoop/hbase/thrift/Hbase.thrift

 # cd gen-php/Hbase

 # ls

Hbase.php  Hbase_types.php

3. 把PHP客戶端需要的包及剛才生成的接口文件復(fù)制出來供php程序調(diào)用:

#  mkdir -p  /var/www/html/hbasethrift/libs    (/var/www/html為apache的web主目錄)

#  cp -a /home/soft/thrift-0.8.0/lib/php/src /var/www/html/hbasethrift/libs

#  mkdir -p /var/www/html/hbasethrift/libs/packages

#  cp -a /home/thrift/gen-php/Hbase /var/www/html/hbasethrift/libs/packages

4.  啟動hbase thrift server,測試php連接hbase

 # ./bin/hbase-daemon.sh start thrift

 hbase thrift 默認(rèn)監(jiān)聽端口為9090

測試php連接與操作hbase代碼

# vi hbasethrift.php

  1. socketnew
  2. >
  3. >
  4. transportnew
  5. protocolnew
  6. clientnew
  7. >
  8. tables>
  9. columnsarray
  10. >
  11. >
  12. >
  13. t"table1"
  14. >
  15. >
  16. t"test"
  17. descriptors>
  18. >>
  19. t"table1"
  20. descriptors>
  21. >>
  22. t"table1"
  23. row"row_name"
  24. valid"foobar-\xE7\x94\x9F\xE3\x83\x93"
  25. mutationsarray
  26. >
  27. >
  28. // 多記錄批量提交(200提交一次時測試小記錄大概在5000/s左右): $rows = array('timestamp'=>$timestamp, 'columns'=>array('txt:col1'=>$col1, 'txt:col2'=>$col2, 'txt:col3'=>$col3)); $records = array(rowkey=>$rows,...); $batchrecord = array(); foreach ($records as $rowkey => $rows) { $timestamp = $rows['timestamp']; $columns = $rows['columns']; // 生成一條記錄 $record = array(); foreach($columns as $column => $value) { $col = new Mutation(array('column'=>$column, 'value'=>$value)); array_push($record, $col); } // 加入記錄數(shù)組 $batchTmp = new BatchMutation(array('row'=>$rowkey, 'mutations'=>$record)); array_push($batchrecord, $batchTmp); } $ret = $hbase->mutateRows('test', $batchrecord);
  29.  
  30. >
  31. table_name"table1"
  32. row_name'row_name'
  33. fam_col_name'entry:foo'
  34. arr>
  35. arrarray
  36. k>
  37. kTCell
  38. value>
  39. timestamp>
  40. table_name"table1"
  41. row_name"row_name"
  42. arr>
  43. >
  44. k>
  45. k0
  46. TRowResultTRowResult
  47. table_name'zTest'
  48. startRow"9-9-20120627-"
  49. stopRow"9-9-20120627_"
  50. columnsArray
  51. result>
  52. record>
  53. record
  54. row>
  55. column>
  56. echo("$family_column={$Tcell->value}
    ");
  57. echo("timestamp is $Tcell->timestamp");
  58. >
  59. ?>

通過瀏覽器訪問http://localhost/hbasethrift/hbasethrift.php,如果顯示hbase中的表名與新建表table1 ,說明連接成功。

hbase thrift api 參考http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/thrift/doc-files/index.html

參考http://www.banping.com/2011/07/08/hbase-thrift-php/

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


名稱欄目:php通過thrift操作hbase-創(chuàng)新互聯(lián)
本文路徑:http://weahome.cn/article/igooj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部