読者です 読者をやめる 読者になる 読者になる

たごもりすメモ

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

Datastore Masakari Talksやった #dsmasakari

Datastore Masakari Talksっていう名前でやったら面白いんじゃね? という話で @shot6 さんと盛り上がって、そのまま会場を手配してもらったので二人して面白駆動な感じでやった。Datastore Masakari Talks (2015/02/26 19:00〜) Datastore Masakari Talks -…

#morisnite vol.2 やりました

大人の節度でシャンパン #morisnite pic.twitter.com/0uvS77IKLu— Masatoshi Kawazoe (@acidlemon) February 6, 2015このたびひと区切りついたところ自宅を埋め尽くさんばかりの勢いで届いたビールが一人で飲んでいる限り賞味期限という制約を突破できないこ…

「Serverspec」の話

著者の宮下さんから送っていただきました*1。ありがとうございます。o'reillyに電子版もありますね。送っていただいてからちょっと私事でばたばたしていたら大量にレビューが書かれているので、どう紹介したものかと思っているうちに更に日が経ってしまった。…

退職します

先にまとめ 現在の勤務先を退職することにしました。本日が最終出社日です。 次はまだ決まっていません。というか、どことも具体的な話はまだしていない、という段階です。面白そうな職場はどこにあるかなと探している段階ですので、魅力的なところに心当た…

Webエンジニアが目を通しておきたいインフラの基本の本

「Webエンジニアが知っておきたいインフラの基本」を著者の馬場さんから献本いただきました*1。ありがとうございます。ITインフラの設計やら構築やら運用やらに関わりながら仕事をするようになってそれなりの年数になった。日頃おろそかにしている部分もあれ…

社内ITシステムを構築・運用するのに最重要な3つのポイント

自社で使用するシステムを開発する、とする。このとき迂闊にやっていると、気付いたら過去に構築したシステムのメンテナンスにばかり時間をとられ、新しいコードがぜんぜん書けていない、という状況に陥ることがある。 こうなると地獄だ。新規の興味深いコー…

2014年を振り返ってみる

今年もいろいろあった。Blogエントリベースで簡単にまとめとこう。 コード書いた系 今年はあんまり新規に書いたコードというのがなかった気がするなあ。どうしてもメンテナンスが多くてそれに追われていた感があった。みなさんこんなのどうしてらっしゃるん…

fluentd v1 configのチェッカを作った

tagomoris/fluentd-v1-checker · GitHub fluentd-v1-checker | RubyGems.org | your community gem hostFluentdの設定ファイルについてはv1 config という新書式がある。v0.14からはデフォルトでこちらの書式でパースが行われる予定。 ここに @repeatedly さ…

HadoopのXML設定のdiffをとるスクリプトを雑に書いた

Hadoopの設定は name, value, final, description の4要素しか持たない上に /configuration/property/attr の階層しかないくせにXMLになっていて、これがもう、ひっじょーにdiffがとりにくい。普通のテキストdiffでは無理といっていい。 おかげで新しいディ…

Ansible playbookで1台でも失敗したら即座に実行を止める方法

毎回あれー?ってなってドキュメント読んだりググったりするんだけどうまく見付けられないので書いておく。Ansibleはデフォルトだとtaskの実行が全ホストで失敗しない限り続く。言いかえると、あるタスクがあるホストで失敗したらそのホストについては以降実…

RubyConf 2014にいってきた&しゃべってきた

出していたproposalが通ったので Rubyconf2014 に行ってきていた。旅費および会期中の宿泊費は現勤務先のLINE株式会社に出してもらいました。いつもいつもありがたいことです。サンディエゴの会場付近はとにかくリゾート地っぽい感じで、あちこちに背の高い…

最近のHadoop distcpについて

Hadoopクラスタ間でデータを移動するdistcpについては実はHadoop2系で新しくなっており*1、いろいろ機能が増えている。 たとえば以下のようなコマンドが実行できる。 hadoop distcp -i -m 20 -pb -bandwidth 2 webhdfs://cluster.old.local/path/of/data/dir…

MRv2/Tezで簡単にクエリのベンチをとった

Hiveしか使ってないので以下のオプションを設定するだけで使える。楽。 SET hive.execution.engine=tez; なお HDP 2.1 with Hive 0.10, Tez 0.4 での話です。クラスタの概要は以下の通り。 master x3 slave x20 Xeon(R) CPU E5-2630L v2 (6core 12Threads) x…

Hive dynamic partition insertsにまつわるいくつかの問題と対処について

だいぶ前のHiveの機能準拠で作ってたクラスタを大幅に作り直したので、ついでにETL処理をdynamic partition inserts一発でやればMapReduce 1ジョブで済んで超効率的に! やった! と思ったらいくつかハマったのでメモ。なおdynamic partition insertsについ…

ISUCON4 いってきた&勝ってきた! #isucon

連覇だ! ヒャッホウ!!! #isucon 2014で優勝しました - すぎゃーんメモ ISUCON4 で優勝してきました!!! #isucon - blog.nomadscafe.jp 特にkazeburoさんのエントリに最終的な状況についての詳細が書いてありますので、ぜひそちらもどうぞ。sugyanは自…

Hokkaido.pm #12 いってきた&しゃべってきた

https://atnd.org/events/57038 YAPC::Asia Tokyo 2014 ベストスピーカー2位ということで地方pmに3回行かせてもらえる権利のうち1回目を行使しました。ありがとうございます。 主催の @aloelight さん、会場を提供してくださったクリプトン・フューチャー・…

はじめてのmaven central 公開

前置き:このエントリはJavaおよびJava周辺の*1開発環境に全く縁の無い人間が、可能な限り依存ソフトウェアを少なく手順をシンプルに保ったままやろうとしたものであり、知識・経験のある人にとっては全く最適な手段でなかろうことをお断りします。先日のエ…

多言語対応User-Agentパーサライブラリ Woothee 1.0.0リリース: OS versionの出力をサポート

地道にバージョンアップを繰り返しているUser-Agentパーサライブラリの woothee ですが、このたび 1.0.0 をリリースしましたのでお知らせいたします。http://woothee.github.io/今回は前からやろうやろうと思ってたOSバージョンのparseをサポートしました。…

Rubyでdynamic scopeを(メソッド定義だけ)実現する dyna_mo を書いた

ついカッとなって書いた。たのしかった。https://github.com/tagomoris/dyna_moどういうことかというと、つまりこういうことだ! require 'dyna_mo' module MyModule class MyClass attr_accessor :num def initialize; @num = 0; end def name; "name"; end…

「ZooKeeperによる分散システム管理」を読もう、という話

Zookeeperは現代の分散システムに不可欠なミドルウェアで、メタデータの管理、更新通知、リーダー選出といった問題を解決する。自分でZookeeper APIを叩く人は少ないかもしれないが、今やHadoop Namenode HA*1もYARN ResourceManager HAもHBaseもZookeeperを…

LINE選抜で isucon4 予選に参加してPerlのコードをごりごり書いた

みなさんtagomorisはPerlなんて書いてねーだろと思うかもしれませんが、意外にちょっとは書くんですよという話……じゃなくて、それはどうでもよくて、今年も ISUCON の季節ですね、という話。詳しくはこちらをどうぞ。 LINE選抜で isucon4 予選に参加してきま…

RubyKaigi 2014いってきた&LTやってきた

RubyKaigi 2014参加してきた。ここのところ続きに続いたカンファレンス・イベント参加もとりあえずこれでひと段落。RubyKaigi 2014, 18-20 september正直にいって疲れが限界に近かったので、あんまり気合いを入れてtalkを聞いたり人と話したり……ということに…

gcp ja night 28いってきた&しゃべってきた

gcp ja night #28 - connpassBigQueryの話などがあるということで、自分もお誘いを受けたので適当にしゃべってきた。BigQueryそのものは前のほうで naoya_ito という人がやるらしかったので、Fluentdの話でもしようかなと。 BigQuery, Fluentd and tagomoris…

HadoopCon 2014 Taiwanいってきた&しゃべってきた

先日お知らせした通り、HadoopCon 2014 Taiwanで発表の機会をもらったので、行って発表してきた。旅費はゲストとして主催者から出してもらうような話もいただいたけど、手続等いろいろ考えて、今回も勤務先であるLINE株式会社に出してもらいました。基調講演…

YAPC::Asia 2014に行ってきた&しゃべってきた

YAPC::Asia Tokyo 2014みなさんご存知のYAPC::Asiaに出したtalk提案が採択されたので、スピーカーとして参加してきた。スケジュールを見たら2日目の一番最後の枠(LTの直前)で、なんと初めてのホールでのtalk。 1日目午後は会社でお仕事上の用事があったので…

YAPC::Asia 2014で分散データ処理技術についてしゃべります

もう今夜が前夜祭ですね。YAPC::Asiaの季節になりました。で、どうしようかなーと思ったんですが、Webサービスの中の人も多いYAPC::Asiaだからきっと需要があるだろうということで、話には聞くがあまりキャッチアップできていなさそうな最近の分散データ処理…

Reverse Proxyがなぜ必要か、勝手に補遺

「全体のリソース効率を上げましょう」というためのものである。 Reverse Proxy がなぜ必要か - naoyaのはてなダイアリー これは完璧に正しくて、ただ「リソース効率」という概念はあまり具体的な想像が追い付かない人がいそうだなと思ったので、ちょっとだ…

HadoopCon2014 in 台湾で発表しますのお知らせ

精彩議程 Agenda | HadoopCon 2014CFPが出ていたのでえいやと応募してみたところ、キーノートおよび一般セッションの両方で話すことになりました。50分ずつです。英語。しぬ。 今回もLINE株式会社に旅費等出してもらえそうなので、とりあえず行って頑張って…

uuidtools gemの新版がリリースされました

https://rubygems.org/gems/uuidtoolsuuidtoolsという便利なgemがありましてその名の通りuuidの生成に使えるものでしたが、その機能のうちMACアドレスからuuidを生成するという部分がifconfig外部コマンドに依存していました。 で、みなさんご存知の通りRHEL…

NATやファイアウォールの向こうへデータをお届けする fluent-plugin-pull_forward を書いた

Fluentdにおけるネットワークごしデータ転送プラグインといえば forward が組み込みであるし、通信路を暗号化したければ secure-forward がある。 しかしこれらFluentdのネットワーク転送プラグインは基本的に全て送信元から送信先に対してプッシュする形に…

DISられないUIを作るために最低限守るべき5つの鉄則

ぼくらが迂闊にUIを作ると、そこにはユーザの正直な目線があり、非常に様々な、そして真っ当な反応がある。曰く「わからん」「まさかそこをクリックするとは」「不思議な動作」「独自宇宙」「モリスUI」。反応がもらえるのは非常に良いことだが、何度も何度…

Norikra meetupやってきた

Norikra meetup : ATND DeNA Technology Seminar #Norikra meetupNorikra がいい感じになってきたので、ユーザ(とコミッタ)もうちょっと増えないかなーと思い、Norikra meetupという勉強会をやった。会場、Ustream中継および懇親会を:DeNAさんにご提供いただ…

Hadoop Conference Japan 2014いってきた&しゃべってきた

Hadoop Conference Japan 2014- Eventbrite今年も開催されたのでいってきた。主催者の方は本当におつかれさまでした。毎回規模がでかくて、これやるのは本当大変だろうなと思う。参加登録者は1299名だそうな。全体的な空気としてはいよいよYARN移行が避けら…

RedDotRubyConf 2014に行ってきた&発表してきた

シンガポールで行われるRubyのカンファレンス RedDotRubyConf 2014 に出したプロポーザルが通ったので、Fluentdについて紹介してきた。旅費は勤務先のLINE株式会社に出してもらいました。RedDotRubyConf 2014RedDotRubyConf のオーガナイザーは配慮がすごく…

Hadoop Conference Japan 2014で発表しますのお知らせ

Hadoop Conference Japan 2014というイベントが来週 7/8(火) にありますね。Hadoop Conference Japan 2014 Tickets - Eventbriteで、そこでメインセッションでの発表をひとつ、あとLTでの発表をひとつやります。 メインの発表はSQLをネタにしたバッチ処理系…

Software Design 2014年7月号にWebサーバについての記事を寄稿しました

表題の通り、書きました。既に18日に発売されています。Software Design 2014年7月号「そろそろNginx移行を考えているあなたへ」というタイトルの第1特集で、全7章構成のうち5、6章を担当しています。特集全体はデータホテルとLINEの人達で書いたものです。 …

そこそこでかいmapreduceを実行したらsplitが多過ぎて死ぬ

えいやっとHiveクエリを実行したら、しばらくゴリゴリ走ったのちに "Split metadata size exceeded 10000000. Aborting job ..." というログとともにクエリがkillされた。 えーと思って調べて以下の設定を mapred-site.xml にぶちこみJobTrackerとHiveServer…

Ansible勉強会#1 にいってきた&しゃべってきた

Ansibleの勉強会あるといいねーという話をしていたら開催されることになったAnsible勉強会#1にいってきた。んでしゃべってきた。Ansible 勉強会 #1 - connpass Ansible 勉強会 #1 - 資料一覧 - connpass開催はIanががんばりました。おつかれ! あとレッドハ…

Norikra v1.0.0

English article以前からスキーマレスなストリーム処理をSQLで!というソフトウェアとして作っていたNorikra、このたびあちこち機能改善したりしたので、既にお仕事で絶賛稼働中ということもあるし、区切りとして v1.0.0 としてリリースした。 ついでにロゴ…

RedDotRubyConf 2014で発表しますのお知らせ

CFPに応募したプロポーザルが通ったので発表しにいってきます。RedDotRubyConf 2014"Fluentd: Data Streams in Ruby world" という仮タイトルが既に出てますが、Fluentdの話をしてきます。日本国内のみなさまはご存知の話になるかなという感じですが、問題は…

woothee v0.4.x の話

少し前のことになりますが、多言語対応 User-Agent パーサライブラリ woothee のバージョンを 0.4.x に上げています。 これは以下の言語実装のpullreqをいただき、それにあわせていくつかの修正をほどこしたためです。https://github.com/woothee/woothee PH…

GCP ja night 27 いってきた&しゃべってきた #gcpja

ひさびさに自分がしゃべれる面白技術ネタがあるかな、と思えるいい機会だったので、いってきた。gcp ja night #27 - connpassappengine ja night だった頃(の、しかもだいぶ前)によく行ってたけど最近は長いことご無沙汰だったので、おひさしぶりです! な人…

GrowthForecastに --kibanize オプションつけた

要するにおまえらは黒っぽいグラフならいいんだろ?ということで、そのような欲望を現実のものにするためのパッチを書いてpullreqを出しました。 https://github.com/kazeburo/GrowthForecast/pull/63このグレートなパッチにより --kibanize オプションをつ…

JVM Operation Casual Talks やった/話した

JVMの運用に困ることがあったので、これはみんなも困っているに違いないと思って声をかけてみたらすごい感じのイベントになりました。自分は大変よかったので満足です。JVM Operation Casual Talks : ATNDイベントでの話の内容自体もよかったけど、ここしば…

SFTP disableなCentOS環境でansibleを使う

サーバがだいたい CentOS 5/6 でsshの設定においてSFTPがオフになっていると、ansibleを使おうとしたときにいきなりファイル転送ができなくてハマる。まず第一に、RHEL6およびそれ以前において OpenSSH が ControlPersist オプションをサポートしていないた…

Ruby 2.1.1 + Fluentd 0.10.44 + Cool.io 1.2.1

Ruby 2.1が正式にリリースされてから試してなかったので、試した。ついでにGVLまわりの改善があったとかいうCool.io 1.2.1 も入れたり、Fluentdも新しくしてみたり*1で、2日くらい経ったけど、良さそう。26日午後にこのサーバの全プロセスを切り替えた。 こ…

業務とオープンソース活動の話 (日本OSS奨励賞 受賞報告にかえて)

先日書いたエントリでも触れたけど、日本OSS奨励賞、というものをいただくことになりました。ご推薦いただいた方がいるということで、本当にありがとうございます。「第9回 日本OSS貢献者賞・日本OSS奨励賞」受賞者を選定 | 日本OSS推進フォーラムで、せっか…

4年前、おれがSIerの片隅で、何者でもなかった頃

今からちょうど4年前の2010年2月、某巨大SIerの片隅でExcelやPowerPointばかりを眺めて過ごしていた頃、おれは仕事でも仕事以外でもコードなんかまったく書いていなかったし、GitHubのアカウントも持ってなかった。毎日見積書とWBSと納品書と請求書と、Excel…

LINE Developer Meetup in Fukuoka #1 でしゃべってきた

勤務先であるところのLINE株式会社*1がこれから月イチでdeveloper meetupを福岡でやる、ついては第一回目でしゃべってくるがよい、ということになったので、いってきた。わーい出張だー。*2LINE Developer Meetup in Fukuoka #1 - connpass話題はどうしよう…

Developers Summit 2014で「社内システムの構造と設計、実装のはなし」という話をした

登壇の機会をいただけたので、普段技術的なトピックが中心にあるカンファレンスとは違うことだし、普段あまりやらない話をしよう、ということで、そんな話をしてきました。 社内システムの構造と設計、実装のはなし from SATOSHI TAGOMORI 今回はスライドに…