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

第2回初心者向け分散処理勉強会で話したよ

第2回初心者向け分散処理勉強会 (鹿島さんまとめ)に参加しました。Pig に LTSV を食わせられるようにしたよ (Slideshare)、という話をしました。鹿島さんが発表した Dremel について。でかいデータセットに SQL 的なクエリ言語を投げて集計する Google 内部…

LTSV を Apache Pig で読むための UDF がほぼできたよ

LTSV を Apache Pig で読むための UDF がほぼできました。 ソースリポジトリ (BitBucket) JAR ファイル 作り始めた時点から追加した機能は、マップを作らずに値を直接フィールドに読み込めるようにしたことです。入力データ (列区切りはタブ): host:host1.ex…

Pig のドキュメントの日本語訳が制御構造のとこまで行きました

Pig のドキュメントの日本語訳が制御構造のとこまで行きました。 制御構造 - Pig 原文の訂正は下記の issue にあります。結構たくさん挙がりました。あんまり面白くない箇所だからか。 Pig-3158 0.10 のブランチを訳してるんだけど、このペースだと完了前に …

Apache Pig で LTSV をロードするための UDF を書きました

2013-02-08 くらいから LTSV というログ用のファイルフォーマットが話題になっています (id:naoya:20130209:1360381374) 。 TSV の各列を「:」で構成するというだけのものですが、 awk 等のプレーンなツールで処理しやすい上に、変更に強く、可読性もそこそ…

CentOS 6 で QJM ベースの NameNode HA + 自動フェイルオーバを構成した時のメモ

Hadoop HDFS の NameNode は長い間単一障害点だったのですが、 CDH 4 から、 NFS 上の edits ログを共有する形でのアクティブ/スタンバイ構成が可能になりました。しかし、フェイルオーバが中途半端になると共有 edits ログが破壊されるとか、 NFS が新しい…

Debian squeeze で新しめの Sphinx を使うために Python の virtualenv で何とかした

Debian squeeze のリポジトリに入ってる Sphinx は 0.6.6 と大分古いので機能が色々と使えません。新しい Sphinx が欲しい。でも unstable なリポジトリは使いたくないし、 setuptools を使うと apt の依存関係を壊しそうなのが嫌です。そこで、 virtualenv …

Java のリフレクションで super.method(...) 相当の呼び出しはできない

下の例のように super.メソッド名(...) とすると親クラスのメソッドが呼べますが、リフレクション経由では同じようにできないことが分かりました。 class Parent { public void bang() { System.out.println("Parent.bang!"); } } class Child extends Paren…

Pig のドキュメントの日本語訳: ユーザ定義関数の章まで行ったよ

Pig のドキュメントの日本語訳、 ユーザ定義関数の章まで行きました。原文へのパッチは下記に上げました。日本語訳はパッチ当てたものと同等です。 https://issues.apache.org/jira/browse/PIG-3112 桜が咲くまでに終わるか。