Strata Data Conference in Singaporeで発表してきた

abstractやスライドは下記からたどれます。 https://conferences.oreilly.com/strata/strata-sg/public/schedule/detail/629482014年5月に異動してから新規に構築したHadoopクラスタの3年にわたる歴史を紹介しております。Hadoopに初めて触ったのが6年前にSI…

Hadoopでトラフィックが多いと言われたのでtcpdump使って調べてみた

8:20から9時ぐらいまで断続的にoutboundトラフィックが増えてなんでだろって思ったのでtcpdumpしてみた。やり方は下記参照 定期的にtcpdumpをある期間だけ実行したいという時 - その手の平は尻もつかめるさHadoopのdatanodeマシンを一つ使って以下のようにcr…

hiveserver2とFull GC

昔からhiveserver2はあんまり安定してない気がしますが、最近ちょっと不調でたまに下記のようなエラーが出て接続できないときがありました。hiveserver2 log 2017-11-10 01:18:38,430 ERROR [CuratorFramework-0]: curator.ConnectionState (ConnectionState…

転職して5年経った

転職します - wyukawa’s blog 入社しました - wyukawa’s blog早いもので転職して5年経ちました。ほんと、あっという間でしたね。5年前にSIerから転職してきました。最近は優秀な若者が新卒でそこそこ高い給料で入社して、でもなかなか上がらないから転職カー…

yanagishima v8をリリースしました。

https://github.com/wyukawa/yanagishimayanagishima v7をリリースしました。 - wyukawa’s blogから1週間ぐらいしか経ってませんが、v8をリリースしました。今回の目玉はクエリ履歴とブックマークをサーバーサイドで保存できるようにしたことです。 今までは…

データ民主化の負の側面

データの活用が当然のことのようになってエンジニア以外でもSQL書いてデータ抽出するのが一般的になってきました。さらにデータサイエンティストの登場により高度な分析もされるようになってきて、顕在化してきたのがHadoopクラスタの無法地帯化とエンジニア…

yanagishima v7をリリースしました。

yanagishimaは割とカジュアルにメジャーバージョンを上げていて、作っている方も正直ちゃんとchange logを管理してないのはよくないのですが、最近7.0をリリースしました。3.0のリリースブログがyanagishima v3をリリースしました。 - wyukawa’s blogなんで4…

オホーツク網走マラソン走ってきた

記録はネットタイムが4時間38分28秒で去年、オホーツク網走マラソン走ってきた - wyukawa’s blog、よりはマシだけどワースト2でした。まあ練習不足だししゃーない。これが実に20回目のフルマラソンでした。これだけ走っているとだいたいタイムも予想できて、…

ベルギー、フランス、イギリス旅行

etc

夏休みを2週間とってベルギー、フランス、イギリスに旅行してきました。まずは成田からブリュッセルへ。ホテルはブリュッセル中央駅近くにとりました。到着した当日8/18(金)にchez leonでムール貝を食う。8/19(土)はグランプラス、小便小僧を見学その後…

fluentdでUndefinedConversionErrorに遭遇した

エラーログはこんな感じ。 2017-08-07 12:25:55 +0900 [warn]: /path/to/ruby-2.2/lib/ruby/gems/2.2.0/gems/fluent-mixin-plaintextformatter-0.2.6/lib/fluent/mixin/plaintextformatter.rb:85:in `encode' 2017-08-07 12:25:55 +0900 [warn]: /path/to/ru…

openrestyでmysqlをいじる

https://github.com/wyukawa/yanagishima は認証、認可機能はないんですが、まあ実際問題必要なのでそこは別の仕組みでやってたりします。認証は社内のシステムにのっかっていて、認可はnginxでリバースプロキシしてそこでluaでやってました。nginx + lua環…

fluentdの運用周りについて書いておく

fluentdは基本的には安定して動くソフトウェアだけど規模が大きくなってユースケースが増えてくるとトラブルに遭遇することもある。今回は運用周り、例えばトラブルシューティングとかモニタリング周りについてちょっと書いてみたい。前提として僕の環境では…

最近のAzkabanについて書いてみる

最近Azkaban 3.30.0にupgradeして問題なく動いていることもあり、題記について書いてみようと思います。Azkabanはジョブ管理ツールとして基本的な機能は備えており、比較的簡単に使うことができます。 ただし以下の点で他の競合ツールと比べると見劣りするか…

kafka-fluentd-consumerのConsumerLagが大きくなっていたので調べてみた

うちの環境ではKafka -> kafka-fluentd-consumer -> Fluentd -> Elatsticsearchという経路でログをElatsticsearchに送ってKibanaで可視化しています。ところがKibanaで直近のログが見れないという問い合わせがあり調査していたら、kafka-fluentd-consumerのC…

prestoクエリをfluentdになげるpresto pluginを実装した

Presto Meetup 201706|IT勉強会ならTECH PLAY[テックプレイ] でもprestoクエリをファイルにロギングする話があって、そろそろうちもやってみるかーということで実装しました。https://github.com/wyukawa/presto-fluentd参考にしたのは https://github.co…

yanagishimaでなぜJDBCを使ってないのか

約2年前にyanagishimaを開発し始めた時、Javaで実装することに迷いは無かった。 理由は単純に僕が一番馴染んでいる言語だから。Javaで実装している一方でJDBCを使わなかったのには2つの理由がある。一つ目は性能面を考慮したから。やりたいこととしてはデー…

fluent-plugin-uri_decoderをpatchしてCPU使用率を下げた話

td-agentのprofiling - wyukawa’s blog に書いたようにfluent-plugin-uri_decoderが重いということまではわかりました。じゃあどうすっかという話なのですが、内部で議論がありRuby 2.4 + CGI.unescape + fluentd filterでいけばいいんじゃね?ということに…

南魚沼グルメマラソンにいってきた

4年連続4回目の参加です。結果はネットタイムが1時間54分10秒でした。過去3年はずっと暑くて特に去年はすごい暑かった記憶があるんだけど、今年は涼しかったです。 スタート時間が30分早まったのも影響してると思う。それ以外に変わったのはゴール直前の八海…

td-agentのprofiling

末端ノードでnginxのlogをtailしてparseしてごにょごにょしているtd-agent 2.3.1のCPU使用率が50%ぐらいになっていたので、下記を使ってprofilingしてみた。https://github.com/sonots/fluent-stackprofなおtd-agentのモニタリングには https://github.com/m…

Azkabanでflowが失敗したらJIRAにissueを作るpluginを実装した

タイトルの通りですが、まずAPI経由でJIRAにissue登録する方法は下記を見ればわかると思います。 https://developer.atlassian.com/jiradev/jira-apis/jira-rest-apis/jira-rest-api-tutorials/jira-rest-api-example-create-issue https://docs.atlassian.c…

洞爺湖マラソン走ってきた

第44回洞爺湖マラソン2018【公式】3年連続3回目の出場で結果はネットタイム4時間21分58秒でした。天気良かったです。というか良すぎて暑かった。最高気温20度ぐらいまでいったと思います。そのせいか僕より後方では30km以降に給水が切れたらしいです。 それ…

那覇に来てます

etc

2年前に石垣島に行ったんだけど、沖縄本島には行ったことがなかったので来てみました。 石垣島へ一人旅してきました - wyukawa’s blog5/1に来て明日の5/5に帰ります。僕は車の免許を持っていないのでモノレールとバスを使って移動しました。5/1はまず国際通…

予期せぬクエリ、データに対してロバストにする

ログ解析基盤を運用しているとユーザから予期せぬクエリやデータが来てシステムが不安定になることがあります。そういうケースに遭遇してどうハンドリングしてきたかをメモっておきます。 1回のprestoクエリの結果が100GBを超えるそんなクエリを連発されたら…

yanagishima v3をリリースしました。

yanagishima v2をリリースしました。 - wyukawa’s blog 3週間前にv2をリリースしたyanagishimaですが、v3もリリースしました。 https://github.com/wyukawa/yanagishima 結構変わっていて作っている方もあんまり覚えていないんですがw 重要なポイントをいう…

掛川・新茶マラソンにいってきた

去年は長野マラソンに行ってパスしたので2年ぶり3回目の参加です。結果はグロスタイムが4時間33分21秒、ネットタイムが4時間31分17秒でした。衰えは隠せ無い。。。2年前はサブ4で走ったんだけど、よく走れたな。この大会はアップダウンが結構きついです。特…

yanagishima v2をリリースしました。

約2年前から開発していたyanagishimaですが、UIがダサい感じだったので同僚の助けを借りてv2としてリニューアルしました。https://github.com/wyukawa/yanagishima複数prestoに対応したり、やばめなクエリは自動でkillするようにしたりと、こちらの現場で必…

ElasticsearchのCircuitBreaker

最近Elasticsearch 5.2.2を使っているときにOutOfMemoryが発生したことがあって、そのときにログを見ると下記のようにCircuitBreakerも発動してた。 Caused by: org.elasticsearch.common.breaker.CircuitBreakingException: [request] Data too large, data…

es_rejected_execution_exceptionが出たのでthread_pool.bulk.queue_sizeを増やした

題記の通りです。fluent-plugin-elasticsearch 1.9.3からElasticsearch 5.3に書き込んでから下記のようなエラーがたまに出てるのに気付きました。 Could not push log to Elasticsearch: {...{"index"=>{"_index"=>"hoge-2017.03.31", "_type"=>"fluentd", "…

さが桜マラソンに行ってきた

さが桜マラソン2019【公式】3/15-3/17に台北に行って、翌日の3/18に佐賀に行って翌日の19日にマラソン走ってきました。結果はネットタイムが4時間17分7秒。最近腰が痛くてあんまり練習できなかったことと、マラソン当日が暑くて最高気温で20度まで行ってたこ…

台湾に行ってきた

etc

正確にいうと台北に出張で行ってきました。3/15に行って3/17に帰ってきました。使った空港は羽田空港と松山空港です。もちろん愛媛県の松山空港じゃないです。ソンシャンと読むらしい。台北の街中にあるので移動に便利です。移動は主にタクシーを使って、結…