pandazx's blog

データ分析など雑多な技術ブログ

2013-01-01から1年間の記事一覧

リーダブルコード感想

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典出版社/メーカー: オライリージャパン発売日: 2012/06/23メディア: 単行本(ソフトカバー)購入: 68人…

MacのEclipseコンソールが文字化けする

MacのコンソールにUTF-8を出力すると文字化けする。これを解消するにはeclipse.ini に以下を追加 -Dfile.encoding=utf-8Windowsの場合はEclipseのインストールフォルダにeclipse.iniがあるが、Macの場合はない。どうやって開くかというと、Eclipse起動ファイ…

分散メッセージ処理 Apache kafka

複数データソースからデータをpullで受け取り、後続にメッセージとして流すリアルタイム分散メッセージ処理用のソフトウェア Apache kafka。Linkedin開発。代表的なストリーミング処理ソフトウェアとしめStormがある。Twitter開発。両者の違いは以下が参考に…

CDH4でのMapReduceプリントデバッグ

横着者なのでプリントデバッグでMapReduceを開発することがよくあります。その手順を説明します。yarn-site.xmlの設定 <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <property> <description>Where to aggregate logs to.</description> <name>yarn.nodemanager.remote-app-log-dir</name> <value>/var/log/hadoop-yarn/apps</value></property>

hadoop2.0.3-alpha で気になる機能

Apache Hadoop 2.0.3-alpha Released | Apache Hadoop for the Enterprise | Clouderahadoop2.0.3-alphaではジョブ単位に使えるCPUコア数を制御できるらしい。運用で使えそう。2.0.3に限らず、新しく見つけた機能にdisk location APIがあります。What's New …

CDH4のデフォルト設定値

Hadoopのチューニングをする時に設定項目のdefaultを確認したい場合がある。CDH4の場合は以下のページのメニューの下の方に「core-default.xml」などのリンクがある。 Hadoop MapReduce Next Generation 2.0.0-cdh4.1.2 - Setting up a Single Node Cluster.

EricssonのHBaseチューニング1

以下の記事の意訳。けど、未検証。 HBase: Performance Tuners | Ericsson Labs5000 row/secの処理性能だったところをチューニングにより、750,000 row/secを達成した。 本ブログでは集計プログラムについてのみ説明しているが、次回ブログではランダムアク…

HBaseのデータ書き込みの仕組み

以下の記事の意訳と補足 Apache HBase Write Path | Apache Hadoop for the Enterprise | Cloudera本記事ではHBaseがどうやってHadoop上で低レイテンシな読み書きを実現しているか、また、データの更新が出来ないHadoopでどうやって更新を実現しているかを説…

MapReduceでJava heap space や physical memory limits エラー

環境:CDH4.1、YARN対象データが大きいとOutOfMemoryエラーなどが出ることがあります。もし、map実行中にJava heap spaceエラーが出たら、mapreduce.map.java.opts の値を大きくするといいかもしれません。reduce実行中のエラーなら、mapreduce.reduce.java.…

HBaseへのbulkload時のデータフロー設計

HBaseにbulkloadする際にMapReduceでHFileを作成しますが、その際にデータフローをちゃんと考えておく必要があります。HBaseのスキーマ定義によるが、1つのCellにたくさんのデータを詰める場合、 何も考えないとMapでグルーピングしてReduceで処理する必要…

MapReduceの実行時エラー:Type mismatch in key from map

keyだけでなく、Type mismatch in value from map というようにvalueのエラーもあるこのエラーには以下のようなメッセージが続く expected org.apache.hadoop.io.Text, recieved org.apache.hadoop.io.LongWritable期待してない型を受け取ったためのエラーだ…

HBaseでGzip圧縮ありのHFile作成(事前分割)

前回でHBaseのテーブル作成を学んだ。 HBaseでsplit定義ありのテーブル作成 - pandazx's blog次はデータをインポートするためのHFileを作成する。以下はポイントだけ記述したMapReduceによるHFile作成方法 (サンプルコード。動作保証なし) public class Cr…

HBaseでsplit定義ありのテーブル作成

以下のコードでHBaseに a100, b100 でsplitされたregionを3つ持つtable_nameのテーブルが作成されます。 (サンプルコードなので以下のコードでは動作確認してません) Configuration config = HBaseConfiguration.create(); config.addResource(new Path("/…