2010年11月15日月曜日

groovyとhadoopでリード・ライトのバイト数を取得する

groovyとhadoopでリード・ライトのバイト数を取得するには、以下のコードを実行します。

import org.apache.hadoop.conf.*
import org.apache.hadoop.fs.*

fs = FileSystem.get(
URI.create("hdfs://192.168.1.81:9000/"),
new Configuration(), "hadoop")

fs.copyFromLocalFile(
// src
new Path("hadoop1.groovy"),
// destination
new Path("/tmp")
)

stats = fs.getAllStatistics()
for( stat in stats ){
println "scheme:${stat.getScheme()}"
println "bytes read:${stat.getBytesRead()}"
println "bytes written:${stat.getBytesWritten()}"
println "---"
}

※以下のjarを$GROOVY_HOME/libにコピー
hadoop-common-0.21.0.jar
hadoop-hdfs-0.21.0.jar
log4j-1.2.15.jar

動作環境
groovy 1.7.5, JDK6 Update22, Hadoop 0.21.0

関連情報
CentOS5.5にHadoop0.21.0をインストールする
http://serverarekore.blogspot.com/2010/10/centos55hadoop0210.html

0 件のコメント:

コメントを投稿