1. 程式人生 > >YCSB配置和測試HBase

YCSB配置和測試HBase

  本文主要介紹如何使用YCSB來測試HBase,以及如何解決No FileSystem for scheme: hdfs錯誤和Error accessing HBase table錯誤。 YCSB專案地址和簡介:https://github.com/brianfrankcooper/YCSB/wiki YCSB的目標是開發一個框架和通用的workloads來評估不同的key-value和cloud提供的儲存服務。 組成:YCSB Client,一個可擴充套件的workload發生器;Core workloads,一系列的workload場景,由generator來執行。 支援測試不同的資料庫包括HBase,Cassandra,Infinispan,MongoDB等等。 通常用來benchmark多個系統,對比它們。比如可以在相同的硬體上面安裝不同的系統,然後執行相同的workloads,對比不同系統的效能。 HBase測試 1. Hadoop和HBase都部署完畢且正常啟動 比如我使用Hadoop 2.7.0和HBase 1.0.1.1 2. 配置YCSB # git clone git://github.com/brainfrankcooper/YCSB.git # cd YCSB 為YCSB的hbase client程式新增依賴項,原先只有org.apache.hbase的hbase-client依賴包,我們還需要新增org.apache.hadoop以來hadoop-common和hadoop-hdfs包,這裡缺少hbase和hadoop依賴包的話,即便編譯完成,但是在執行ycsb的時候會報出hdfs或者hbase相關的錯誤。依賴包的版本根據自己的實際安裝情況,參考hbase/lib/目錄下的jar包版本。 # vim hbase/pom.xml <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.yahoo.ycsb</groupId>
    <artifactId>root</artifactId>
    <version>0.2.0-SNAPSHOT</version>
  </parent>

  <artifactId>hbase-binding</artifactId>
  <name>HBase DB Binding</name>

  <dependencies>
    <dependency>
      <groupId>org.apache.hbase
</groupId>
      <artifactId>hbase-client</artifactId>
      <version>1.0.1.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-hdfs</artifactId>
      <version>2.5.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop
</groupId>
      <artifactId>hadoop-common</artifactId>
      <version>2.5.1</version>
    </dependency>
    <dependency>
      <groupId>com.yahoo.ycsb</groupId>
      <artifactId>core</artifactId>
      <version>${project.version}</version>
    </dependency>
  </dependencies> # cd .. # mvn clean package 沒有mvn的話要下載maven: # tar zxf apache-maven-3.3.3-bin.tar.gz # mv apache-maven-3.3.3 /usr/maven # export PARH=$PATH:/usr/maven/bin 編譯完畢:
3. 建立一個HBase table HBASE_HOME/bin/hbase shell hbase(main):001:0> create 'usertable', 'family' 4. 匯入資料 在執行worklload之前,需要先匯入load資料。 需要指定一個包含HBase的配置檔案hbase-site.xml的目錄和一個table名和一個column族,使用-cp是設定java的classpath,-p是用來設定各種屬性。這裡的重點是java的CLASSPATH,參考export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$HBASE_HOME/conf:$HADOOP_HOME/etc/hadoop/:$HBASE_HOME/lib:$HADOOP_HOME/lib,$HBASE_HOME/lib目錄下有hadoop、hbase、log4j等jar包。 # bin/ycsb load hbase -P workloads/workloada -cp $CLASSPATH -p table=usertable -p columnfamily=family 錯誤1:java.io.IOException: No FileSystem for scheme: hdfs 在hbase-site.xml中新增:
<property><name>fs.file.impl</name><value>org.apache.hadoop.fs.LocalFileSystem</value><description>TheFileSystemfor file: uris.</description></property><property><name>fs.hdfs.impl</name><value>org.apache.hadoop.hdfs.DistributedFileSystem</value><description>TheFileSystemfor hdfs: uris.</description></property>
錯誤2:Error accessing HBase table: java.io.IOException: java.lang.reflect.InvocationTargetException 可以在這裡http://search.maven.org/#browse%7C-856937612找到依賴包,因為我們把hbase/lib/下面的這些jar包新增到了java的CLASSPATH中,所以在YCSB/hbase/pom.xml中新增的hbase和hadoop依賴包的版本就參考這裡的版本:
成功load資料 5. 執行簡單的workloads: # bin/ycsb run hbase -P workloads/workloada -cp $CLASSPATH -p table=usertable -p columnfamily=family -p clientbuffering=true > out.txt 2>&1 將輸出結果重定向到out.txt檔案中,檢視結果,UPDATE和READ總共1000次操作,都Return=0成功了。

相關推薦

YCSB配置測試HBase

  本文主要介紹如何使用YCSB來測試HBase,以及如何解決No FileSystem for scheme: hdfs錯誤和Error accessing HBase table錯誤。 YCSB專案地址和簡介:https://github.com/brianfrank

log4j非同步日誌的配置測試

日誌可以幫助我們分析故障原因,做些資料探勘的工作。最簡單的日誌方法,就是自己寫個寫檔案的方法,在需要打日誌的時候呼叫下,但是這顯然不可能在實際工程上用。還有個問題,就是頻繁地打日誌,會增加磁碟I/O,使得系統性能下降。這裡用log4j這個庫來部署一個含有日誌管理的輕量級的系統,主要支援日誌的非同步寫

Django環境配置測試專案建立

Django環境配置和測試專案建立 1.下載 下載地址 版本Django 1.8.4   2.安裝配置 前置條件Python已經成功配置(在控制檯輸入python 出現下圖所示 版本不做要求)  

Java框架學習_SpringMVC(一)SpringMVC的配置測試使用、SpringMVC的核心架構

SpringMVC+Spring+Mybatis+Maven,SpringMVC是Spring家族的前端框架,具體概念請百度,下面建立工程直接擼 1、SpringMVC的配置和簡單測試使用: 匯入jar包:springmvc所用jar包 工程目錄: 編寫Hell

linux kafka叢集配置測試圖文詳解

一.前期準備 1.1 Win7官網下載kafka包 本文使用版本kafka_2.10-0.10.1.0.tgz 1.2 配置jdk、scala、zookeeper jdk,scala,

android 許可權配置測試環境配置

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"       package="com.y

在Ubuntu下安裝、配置測試cuda

 文章原創,轉載請註明連結 在Ubuntu下安裝CUDA要比在Windows下稍微複雜和費事一些,尤其對於平臺和一些其他依賴軟體包的安裝上要求多些。 Nvidia官方只提供了Ubuntu10.10下的CUDA的Toolkit,SDK,自己一開始是想在Ubuntu11.10上

Java——Servlet的配置測試

本文以一個例項介紹如何用Java開發Servlet。 主要內容有: 配置和驗證Tomcat。 測試Servlet 在這之前需要安裝Java,請參考“Java——環境配置和Hello”。 第一部分:配置和驗證Tomcat: 1,下載Tomcat http://tomcat.a

Hadoop 0.20.2+Ubuntu13.04配置WordCount測試

password trac 讓我 說明 core jvm -m launchpad 1.7 事實上這篇博客寫的有些晚了。之前做過一些總結後來學校的事給忘了,這幾天想又一次拿來玩玩發現有的東西記不住了。翻博客發現居然沒有。好吧,所以趕緊寫一份留著自己用吧。這東西網上有非常

軟件測試中Junit的配置使用

出現 ide image oot 點擊 roo 快捷鍵 gpo IT 我使用的工具是IDEA,因此配置Junit直接在Setting中下載並使用這兩個插件即可 Junit的使用: 1. 在目標代碼的src文件夾的同級創建一個新的文件夾,作為Testroot文件夾,

MySQL常用配置性能壓力測試:MySQL系列之十五

text imu reat ini -o blocks debug 生成 存在 一、MySQL常用配置 以下所有配置參數以32G內存的服務器為基 1、打開獨立的表空間 innodb_file_per_table = 1 2、MySQL服務所允許的同時會話數的上限,默認為

hadoop2-HBase的安裝測試

hadoop2-HBase的安裝和測試 在安裝和測試HBase之前,我們有必要先了解一下HBase是什麼 我們可以通過下面的資料對其有一定的瞭解: HBase 官方文件中文版 HBase 深入淺出 我想把我知道的分享給大家,方便大家交流。 以下是本文的大綱: 1.Hado

HiBench測試工具配置使用教程

1、下載安裝 本文主要是本人在使用過程中的配置體會與技巧分享 關鍵配置/bin/hadoop.conf  /bin/benchmark.conf 2、資料大小設定 修改/home/jeff/HiBench-master/conf/workloads/micr

rabbit mq 配置mqtt ssl 測試

mosquitto_pub -h han1 -p 8883 -t "/mqtt/1"   --cafile /home/pi/ca/ca-chain.cert.pem  --cert /home/pi/ca/client.crt  --key /home/pi/ca/c

使用Jmeter進行介面測試壓力測試配置使用

1. Jmeter簡介 Apache JMeter是Apache組織開發的基於Java的壓力測試工具。用於對軟體做壓力測試,它最初被設計用於Web應用測試,但後來擴充套件到其他測試領域。 JMeter 可以用於對伺服器、網路或物件模擬巨大的負載,來自不

Spring.profile實現開發、測試生產環境的配置切換

軟體開發過程一般涉及“開發 -> 測試 -> 部署上線”多個階段,每個階段的環境的配置引數會有不同,如資料來源,檔案路徑等。為避免每次切換環境時都要進行引數配置等繁瑣的操作,可以通過spring的profile功能來進行配置引數的切換。 以我用到的專案的實際情況

SpringBoot的Profiles根據開發環境測試環境載入不同的配置檔案

參考:https://www.cnblogs.com/bjlhx/p/8325374.html 1、需要有一個預設的配置檔案,然後一個正式的配置檔案,一個測試的配置檔案。啟用配置項,預設的配置檔案application.properties也會載入進去的。程式設計的方式指定生效的profile。 預設的配

Jacoco單元測試配置使用

最近專案在重構。對未來的規劃就是測試驅動開發。 先寫單元測試,再開發程式碼。以單元測試的結果來判斷程式碼實現的可用性。 因為大批量的補充之前的程式碼的單元測試,是一件產出大於收入的事情。 所以目前是在日常的需求周迭代中,補充了每次改動部分的單元測試。 為了客觀展示單元測試補充情況,決

IMX6Q學習筆記———編寫LED驅動測試程式以及相關管腳配置

剛接觸IMX6Q不久,通過一個簡單的LED驅動和測試程式的編寫來了解管腳配置過程。 LED驅動 找到以前編寫驅動的基本框架,如下: static long xxx_ioctl(struct

YCSB的安裝編譯與運用--測試HBase

YCSB的安裝編譯與運用 YCSB是一款開源的能夠為資料庫做基準測試的工具,如果你在考慮哪款資料庫,不妨先用YCSB做一些基準測試,根據們的效能做對比,從而幫助自己做出選擇。這款產品是雅虎的的貢獻,致謝! 安裝: 1. 可以從https://github.com/brian