タグ

ブックマーク / blog.riywo.com (9)

  • 今更CAP定理で分散データストアの勉強を始めてみた - As a Futurist...

    長くなったので三行でまとめると CAP 定理を素人なりに調べてみた 分散データストアを CAP 定理で俯瞰してみた どのデータストア使うかの決定因子は CAP 定理的な視点の方がインタフェースとかより先 異論は認めるというか、専門知識ゼロなのでもっと正しい理解があればぜひ教えてくださいませ。 はじめに 僕は MySQL 厨なんですが、最近はやれ「MongoDB がいい」だの「HBase 最高」だのとよく聞きます。これら多種多様なデータストアを語る上で、「RDBMS VS NoSQL」みたいに問い合わせ言語の方式やデータ保存形式の違いで語るのは宗教論かなぁと僕は思ってます。単体プロセスのデータストアとしての特徴とか性能とかは正直なんでもいいかなぁと。 思うに、質的に重要なのは MySQL の master-slave&sharding という Web で今までスタンダードに使われてきた分散

    今更CAP定理で分散データストアの勉強を始めてみた - As a Futurist...
  • 運用エンジニアから開発エンジニアになるためにやったこと · As a Futurist...

    Web の会社でエンジニアを始めて 4 年、ずっと運用エンジニアをやってました。運用とは端的に言うと、社内外の他人が作ったソフトウェアを期待通りに動作させるためのエンジニアリングだと思ってます。アプリケーションはもちろん開発者が作ったものですし、MySQL や Apache や Linux も全部他人が作り上げたソフトウェアであり、それらの設定を変更したりパッチを当てたり運用ツールを駆使することで、協調動作させることに磨きをかけてきました。 ただ、いつまでたっても他人の作ったものの面倒を見てることには変わりないし、運用ツールを開発したところでそれはあくまで誰かが生み出す価値のサポートにすぎないのが自分的には満足できなくて、ずっとアプリケーション(ビジネスロジック)が作りたいと思ってました。 で、今年の始めからたまたまタイミングよく新規開発の部署に入ることになって、いきなり開発者をやることに

    運用エンジニアから開発エンジニアになるためにやったこと · As a Futurist...
  • 簡単!Vagrant+Docker+td-agent+Elasticsearch+Kibanaで流行に乗ろう - As a Futurist...

    Fluentd Advent Calendar 2013に登録したものの、そういえば 1 年位全く fluentd に触ってなかったので、リハビリも兼ねて最近バージョンアップで導入された Vagrant の Docker provisioner を使って、ES+Kibana に流すとこまでを作ってみた。実用性には乏しい。 riywo/vagrant-docker-td-es-kibana-sample 以下解説。 Vagrantfile localhost から port forwarding で box の同じポートに接続させてる。さらに box の中で Docker が走っていて、Docker provisoner でコンテナを起動する時に、port redirect させているので、クライアントからダイレクトにコンテナと会話ができるようになっている。 ES と Kibana はarc

    簡単!Vagrant+Docker+td-agent+Elasticsearch+Kibanaで流行に乗ろう - As a Futurist...
  • 法令データ提供システムのデータをgithubに上げてみた話 - As a Futurist...

    この記事はCivic Tech Advent Calendar 2013の一つになります。 Civic Tech(シビックテック) とは何か …市民がテクノロジーを活用して公共サービスなどの地域課題解決を行うことを指しています。…これまで行政だけではサポートできなかった分野でのサービスを行ったり、市民自身がより深く行政のプロセスに参加したり、公共分野でのイノベーションを起こすことができるのではないかと、欧米などで盛り上がりを見せている分野です。 civictech – 地域課題解決の新しい形、Civic Tech と Code for Japan – Qiita 僕自身、特に Civic Tech に対して何か志や熱意があるわけでは今のところ無いですが、別件で API とデータについてふと考えてた時に、日国の法令データも更新が頻繁じゃないんだから普通に全部ダウンロードできた方がいいよなぁ

    法令データ提供システムのデータをgithubに上げてみた話 - As a Futurist...
  • ポータブルなwebアプリケーションとそのインフラの未来の一考

    naoya さんのポータブルな Web アプリケーションを受けて最近思ってることをば。140 文字で時々書いてるんだけど、まとまりがないので一回まとめておきます。 12-factor app ステートフルなアプリケーションについては、Heroku の人が提唱してる 12-factor app というのが現在の状況をよく表してます。 The Twelve-Factor App The Twelve-Factor App(日語訳) Heroku や他の PaaS によってもたらされたこうした一種の”制約”によって、アプリケーションの新しいカタチが生まれてきています。引き算によって新しい価値が生まれてきているわけですね。 とはいえ、PaaS は PaaS でそれぞれに独自の仕様を持っているわけですが、Herokubuildpack という仕組みを使って、Heroku とインタフェース仕様

    ポータブルなwebアプリケーションとそのインフラの未来の一考
  • オンライン学習2013 Q2 - As a Futurist...

    当初の予定とはちょっと変えて、Coursera から 3 つのコースを受講して、無事終了しました。2 つは Statement of Accomplishment がついててとてもうれしいです(まだ 1 個は出てないけど)。 Algorithms, Part II | Coursera Kevin Wayne and Robert Sedgewick, Princeton University The Hardware/Software Interface | Coursera Gaetano Borriello and Luis Ceze, University of Washington Machine Learning | Coursera Andrew Ng, Stanford University 所感 Algorithms は前期から引き続き。ちょっとアドバンスドな内容で、グラ

    オンライン学習2013 Q2 - As a Futurist...
  • ssh経由でリモートホストで実行してるプロセスにSIGINT送りたい時 - As a Futurist...

    perl で色々管理スクリプト書いてるんですが、そのなかでこんなコードを書きました。 system("ssh remote 'rsync ...'"); で、rsyncが走ってる途中でやっぱやめたと思ってCtrl+C=SIGINTを送ったんですが、もちろん perl のプロセスは死ぬんですけど、remoteで動いてるrsyncはそのままゾンビになって残ってしまいました。 はて、いろんなところに原因が考えられるなぁということで調べてみました。 host1> ssh host2 'some-command' host2> strace -p 20279 # some-command's pid Process 20279 attached - interrupt to quit read(0, # then "Ctrl+C" on host1 (host2) "", 4096) = 0 wri

    ssh経由でリモートホストで実行してるプロセスにSIGINT送りたい時 - As a Futurist...
  • リソースモニタリングツール「CloudForecast」入門 - As a Futurist...

    kazeburo さんが開発をされているサーバリソースの可視化ツール「CloudForecast」ですが、個人的に使ってみていてとても使いやすいなと思っています。もっと使ってくれる人が増えるといいなと思い、自重せずに入門エントリを書いてみました。 CloudForecast って何? そもそも何なの?という話ですが、CloudForecast とはリソースのグラフ作成ツールとして有名な「RRDTool」の薄いラッパーとして作られています。記述言語は Perl ですので、Perl と RRDTool の使い方が大体分かっている人にとっては導入さえしてしまえばかなりかゆいところまで手が届く=カスタマイズが簡単かつ自由自在なツールだと思います。とりあえずのイントロとしては kazeburo さんの YAPC::Asia 2010 でのこちらのスライドをご覧頂ければと思います。 RRDTool っ

    リソースモニタリングツール「CloudForecast」入門 - As a Futurist...
  • ifstatって便利そうなの見つけたのでついでに*statを紹介 - As a Futurist...

    今更感もありますがすごい便利そうなツール発見。ネットワークインターフェイスのトラフィックを簡単にモニタリングできるツール。 ifstat CentOS とかだったら rpmforge にあるみたいなので、こんな感じで。(レポジトリ設定してなければ適当に) yum install --disablerepo=* --enablerepo=rpmforge ifstat チーミングしてる環境で出してみるとこんな感じ。-iで並び順も指定できたり、-bで Kbps にできる。vmstatと違って-tで timestamp も出せるのでこれ単体で便利に使えそうですね。ちなみに Linux の場合/proc/net/devを使ってるそうです。 *stat 系のツール 便利ですよね。パッとサーバに入って今起きている問題を分析するのにこれらのツールを使うのは有用です。top しか見ない人は覚えておくといい

    ifstatって便利そうなの見つけたのでついでに*statを紹介 - As a Futurist...
  • 1