たごもりすメモ

コードとかその他の話とか。

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

CDH3u5でWebHDFS

いろいろあって待ち望んでいたHadoop CDH3u5がリリースされましたね!注目するところは人それぞれだろうけど、個人的にはWebHDFSのサポートが入ったのが大変嬉しい。前にCDH4で試したりはしていたけどCDH4に移行するのもいろいろアレそうだし、と思っていた…

UPDATE: fluent-plugin-config-expander and fluent-plugin-forest

先日 fluent-plugin-forest を書いたあとpatchをもらって __HOSTNAME__ というプレースホルダをサポートしたりしてた。 で、こないだ config-expander を書いたときに「ホスト名を置換できるプレースホルダを組込みで入れようかな? まあ out_forest あるし…

fluent-plugin-config-expander v0.1.0 released!

世間の Fluentd ユーザのみなさんはFluentdが1プロセスでいったいどれだけ大量のメッセージをさばけるかを実際にご覧になってそのすばらしさに驚いていることと思いますが、もちろん1ノードで処理できるメッセージ数にはいずれ限界があり、メッセージを次段…

perl 5.16.0 でメモリリーク

Fluentd out_exec_filter から起動しているperlのプロセスがある。ApacheのアクセスログをSTDINから1行読んでparseしていくつか正規表現などで判定処理をしてフラグ立てなどをして、タブ区切りの1行として出力する、という処理としては割と簡単なもの。ただ…

Fluentd out_forward における最適化パラメータいくつかの話

Fluentdのデータをネットワーク経由で転送するための組み込みプラグイン out_forward には最適化のための設定がいろいろあるが、内部構造への理解がないとなかなか意味がわからなかったりするものも多い。ので、あんまりいじってる人はいないんじゃないかと…

Hadoopクラスタでulimitを設定するときの注意点

Hadoopクラスタを運用する際に ulimit で nofile (プロセスがopenできるファイルディスクリプタ数の上限)の設定を変更しておくべき*1というのはもはや常識的なお話ですが、そこには実は罠がある。たぶんRHELのデフォルト通りならハマらないんだろうけど、手…

fluent-plugin-notifier と fluent-plugin-ikachan の話

リリースしてはいたものの手元でちゃんと使っていなかったプラグインふたつ、をいよいよちゃんと使いはじめた。そのついで(?)にちゃんとテストを書いたりREADMEを書いたりしたので、せっかくだからここにも書いておく。 fluent-plugin-notifier Fluentdで流…

Fluentdでparser用の正規表現を書く・試す

こんなエントリを目にしたので、なんか書こうかなと思った。fluentdのformat(正規表現)の作り方について試行錯誤中 #fluentd - Glide Note - グライドノートFluentd の in_tail や拙作 fluent-plugin-parser ではログのparse用の正規表現を指定することにな…

fluent-plugin-numeric-monitor v0.1.0 and fluent-plugin-numeric-counter v0.1.0 released!

Fluentdメッセージ中の数値の統計・集計をとるためのプラグインをふたつリリースしたのでその話。numeric-monitorは前に 0.0.x 系のバージョンでいちおう出してたけど、自分の手元でもちゃんと使い始めたので v0.1.0 として改めてリリースした。 fluent-plug…

GrowthForecastでグラフの色を簡単に大量に変える方法

みんな大好きGrowthForecastなしではもう生きていけない気がするtagomorisです、こんにちは。GrowthForecast - Lightning fast Graphing / Visualizationもう世の中ではかなり使われるようになってきたみたいなのでいちいち自分がどれだけ素敵なツールかは繰…

#java_ja で例外とロギングについて勉強会をやるというのでいってきた&飛び込みLTやった&運用の視点から見たアプリケーションのログについて

LOG.debug("nice catch!") - connpass 2012/06/27 java-ja 『LOG.debug("nice catch!")』#java_ja #javaja - Togetterまとめblogエントリを書くまでがjava-jaだと聞いたのでとりあえず書く。超まとまってません。各スピーカーの話の内容については他の人のbl…

CDH4+YARN+Hiveでハマってる

検証用として新規にセットアップしたCDH4クラスタ、YARN使用で設定してみたんだけど以下のような状態。完全分散モード。 CDH4はtarballを展開する形でインストール HADOOP_MAPRED_HOMEは hadoop/share/hadoop/mapreduce を指定 YARNで hadoop-mapreduce-exam…

HiveServerを使う上での注意点

というか、えー、問題にハマりましたので。問題が炸裂した夜はわたくし渋谷で飲んでおりまして、対応と原因のアタリをとっていただきました同僚の方々にはお礼の言葉しかございません。 ThriftHiveプロトコルにおけるcleanメソッド まず第一に、HiveServerに…

#shibuyarb にいってきた

なんとなくこれまで参加したことのないあたりに遊びに行きたい気分だったので、Ruby関連のコミュニティにぜんぜん参加してないし行ってきたいなー、ということでふらふら参加してきた。渋谷.rb[:20120620] on Zusaarいやじつは(も何もZusaarを見れば明らかだ…

Hive WebClient shib をアップデート

(2013/04/02追記 see: http://d.hatena.ne.jp/tagomoris/20130402/1364898063 )だいぶ前にこのblogでも書いたけどHiveクエリをHTTP経由で実行・制御するためのWebアプリケーション shib というのを作って使ってる。で、最近 node.js v0.6 系に対応させるつい…

Monitoring Casual Talk Vol.1 に行ってきた&しゃべってきた #monitoringcasual

そのようなイベントが開催されることとなり、面白そうだったのでいってきました。Monitoring Casual Talk #1 : ATNDスライド書いてるうちに何の話をしようと思っていたんだったかがだんだん分かんなくなってきてましたが、現場に行ってみたらだいぶカジュア…

UserAgent判定器 Project Woothee v0.2.0: RubyおよびPython実装を追加

参考: UserAgent判定器 Project Woothee はじめました - tagomorisのメモ置き場言語をまたいで共通の判定ロジック・結果を使うための UserAgent 判定ライブラリ Woothee について、以下の変更を加えて v0.2.0 としました。これにより Java/Perl/Ruby/Python …

尊重されたいすべてのソフトウェアエンジニアへ

自分はソフトウェアエンジニアとして毎日の糧を得ている。今のところはサラリーマンエンジニア以外の存在になる予定はない、が、とはいえ唯々諾々とつまんない仕事ばっかりやる毎日はできればごめんだと思っている。コードを書くのは楽しいからコードを書け…

WebHDFSとHttpFsについての簡単なベンチマーク

前のエントリの続き。実用上どうなのってことで、とりあえず簡単にベンチマーク的な負荷走行をしてみた。 実行環境は以下の通り。なお HttpFs Server はNameNode上に立ててある。 CDH4b2 + HttpFs/WebHDFS NameNode x1 2CPU 8GB Memory DataNode x4 2CPU 8GB…

CDH4b2におけるWebHDFSとHttpFsについて

CDH4b2でWebHDFSとHttpFsについていろいろ試しているので、分かっている内容をまとめてみる。なお注意点だが、各々以下のような状況であることに注意。 WebHDFS たぶんHadoop 1.0ベース HttpFs たぶんHadoop 0.23ベース(あるいは 2.0 alpha ベース) でHoopと…

Hadoop ソースコードリーディング vol.9 にいってきた&しゃべってきた

Hiveの話をする勉強会やらない? そこでしゃべらない? というお誘いを受け、それがそのままHadoopソースコードリーディングで開催という流れになったので、いってきた。Hadoopソースコードリーディング 第9回- Eventbrite結論から言うとたいへん楽しかった…

Fluentd Casual Talks 開催してきた&しゃべってきた

なんとなく思い付いたら各所の協力を得られましたので、そのまま開催してしまいました。 勉強会を主催するのは初めて*1だったのですが、会場をお貸しいただいた株式会社ディー・エヌ・エー様、ならびに当日運営をまるっとお手伝いいただいた @riywo さんをは…

Software Design 2012年6月号に寄稿しました

第2特集「[Fluentdで実現!] 大規模データのログ収集&活用」の第4章「Fluentdの導入と活用の実際」を @kazeburo さんと共著で書きました。たぶん世界初のFluentdに関する活字記事です。Software Design (ソフトウェア デザイン) 2012年 06月号 [雑誌]posted …

CDH4にいったん挫折した

CDH3で使ってる設定ファイル群を基本的にそのまま(ノードリストなどだけ書き換え)でCDH4の検証クラスタを作ろうとしてみた。ら、以下のような事情でいろいろ面倒くさかったのでいったん挫折したのが本日あったこと。 使う環境変数がいろいろ変わってる YARN_…

Fluentd v0.11 の設計案、について

このエントリは以下の記事およびFluentdの現状を受けてのものであり、Fluentdの実装についての知識を前提とします。Fluentd v0.11 の設計案 — Gistまた言うまでもないことですが、自分の使いかただったらこうだといいなー、という程度のものであり、それ以上…

「tagomorisが騙る はじめてのHadoop」

深夜に「はじめてのHadoop」が出版されるとしたら欲しいネタの一覧をなんとなく考えてた。Hadoopクラスタのセットアップを新規にやるのが予定にあるので、それも含めてトピックだけ書き出しておこうかなと思った次第。 「初めてのHadoop」ちょっと考えてたが…

hiveの出力が圧縮される方法がよくわからない、と思っていたら俺があほでした

きわめてざっくり書くと以下のような感じ 同じようなクエリを発行しているふたつの出力の圧縮方法が違う 片方はHDFS上でのファイル全体がgzip圧縮されている (ファイルを見ると 00000_0.gz のようになっている) 片方はレコード/ブロック単位でのgzip圧縮にな…

「Hadoop Hacks」読んだ

「Hadoop Hacks」を著者陣のご高配を得てオライリー・ジャパンから献本いただきました。ありがとうございます。Hadoop Hacks ―プロフェッショナルが使う実践テクニックposted with amazlet at 12.04.26中野 猛 山下 真一 猿田 浩輔 上新 卓也 小林 隆 オライ…

mysql2-cs-bind released!

前に RubyでMySQLに繋ぐためのruby-mysqlとmysql2 - tagomorisのメモ置き場 というエントリで書いたとおり、いまおそらく最もよく使われそうな mysql2 という ruby用のmysqlドライバにはprepared statementを扱うためのAPIがない。MySQLではprepared stateme…

fluent-plugin-mysql released!

FluentdからMySQLにデータを挿入するためのプラグイン fluent-plugin-mysql を公開しました。tagomoris/fluent-plugin-mysql · GitHub fluent-plugin-mysql | RubyGems.org | your community gem host機能としては以下のどちらかを指定してDBにデータを突っ…