タグ

ブックマーク / wyukawa.hatenablog.com (13)

  • 監視、モニタリング、サーバー管理 - wyukawa's diary

    いわゆるSIer(BtoB受託開発がメインでプロパーは管理、パートナーが開発をやるような会社をここでは指す)からWeb系(BtoC自社サービス開発がメインで基的にプロパーしかいないような会社をここでは指す)に転職して8か月ほど経ちましたが、自分が今までやったことなくてちょっと戸惑ったことに監視、モニタリング、サーバー管理といった運用系のタスクがあります。 前職ではコードを書くことはそれなりに多かったとはいえ客先常駐でちょっとしたプログラムを書くぐらいだったり、自社でパッケージ開発していたときもWebアプリじゃなくてスタンドアロンなので、Webサービスの運用というのを全くしたことがなかったわけです。なのでモニタリングしてくださいと言われても何をしていいのかさっぱりだったわけです。 まあ今でもWebサービスの運用をしているわけじゃなくちょっとしたイントラ内のサーバーの運用をしているぐらい

    監視、モニタリング、サーバー管理 - wyukawa's diary
  • InstagramがCassandraを使っているらしい - wyukawa's diary

    Instagramといえば1年前の以下の資料によればAWS上にDjangoを使ってサービスを展開させておりデータのストレージとしてはPostgreSQLとRedisを使っていました。 「バックエンドの経験はなかった」Instagram創業者は、どうやってシステムをスケールさせてきたか - Publickey Kosei Kitahara's Blog: Instagram のスケール正攻法 Mike Krieger, Instagram at the Airbnb tech talk, on Scaling Instagram | Cache (Computing) | Scalability 今回はさらにCassandraを使うようになったみたいです。 元ネタはこちら Planet Cassandra | DataStax Academy: Free Cassandra Tutorial

    InstagramがCassandraを使っているらしい - wyukawa's diary
  • fluentdを試してみた - wyukawa's diary

    クレジットカード現金化詐欺【業界人が教える口コミ情報】 僕は行ってないんですがTwitter、Ustream、スライド、ブログなどを見る限りだいぶ盛り上がったようですねー。僕自身が仕事で使う予定は今のところ無いんですがログ解析関連の仕事をしていることもあるので素振りしてみようと思います。 環境はVirtualBox上のCenOS 5.7(x86_64)を使いました。 fluentdはRuby 1.9上で動くんですがCentOS 5.7に入っているのはRuby 1.8.5です。Ruby 1.9のインストールから始めるとはまりそうなのでyumでインストールできるtd-agentを使います。td-agentはfluentdの安定版パッケージという位置付けのようです。 試したのは下記3つです。 fluent-catでログを送る Apacheのアクセスログを収集 ApacheのアクセスログをMong

    fluentdを試してみた - wyukawa's diary
  • シェルスクリプトのパスとパイプ - wyukawa's diary

    考えてみるとここ1年はJavaのコードはほとんど書いていなくてそれよりはシェルスクリプトを書いている機会の方が多かった。 なのでここら辺でシェルスクリプトを書いていてハマったところというかちょっとしたTipsをメモっておこうと思う。前提としてBashである。 まずはパスについての話。 シェルスクリプトでパスをべた書きしているとポータビリティが失われてしまい別のマシンに移行する場合に困るケースが多い。 なのでこれをスマートに解決したいわけである。 かといって単純に相対パスを使っていると困るケースがある。 例えばある基準となるディレクトリ${BASE_DIR}があってその下にシェルスクリプトをおくディレクトリscriptsとログをおくディレクトリlogという構成にしたいとしよう。 scripts/ log/この場合にシェルスクリプトの中で echo ... > ../log/log.txt と

    シェルスクリプトのパスとパイプ - wyukawa's diary
    raimon49
    raimon49 2012/01/28
    スニペット
  • Hiveのベストプラクティス(かもしれないこと)をめもっておく - wyukawa's diary

    Hiveの現場に来て4か月経ち回りのやり方を観察したり、他の事例を調べたりしているうちにHiveを使用する際のパターンというかベストプラクティスが見えてきた気がするので書いてみるよ。 ユースケースはログ解析です。 1. ファイルフォーマットと圧縮 ログは圧縮率高いので圧縮すべし。でもスプリット可能であるためにはってことでSequenceFileでブロック圧縮は確定。 圧縮コーデックは圧縮率を考えてgzip。 ちなみに圧縮率は bzip2>gzip>LZO でスピードは LZO>gzip>bzip2 だ。bzipはスプリット可能で圧縮率も高いんだけどHadoop 0.20系ではまだ使えなかったと思う。Hadoop 0.20系でも使えるらしいですが遅くて使い物にならないようです。 最近はsnappyなんてのも出ててCDH3 Update 1で使えるようになりましたね。 snappyは圧縮率はL

    Hiveのベストプラクティス(かもしれないこと)をめもっておく - wyukawa's diary
  • Hadoopの異端さが面白い - wyukawa's diary

    Hadoopはほんとブームです。バブルだと言っていい気がします。各種セミナーはすぐに埋まりますし、実際に聞きに行くと会場は満員です。 この分野は日だとNTTデータが先頭をきったように見えます。 NTTデータ、Hadoopの商用ディストリビューション「CDH3」を販売開始 | 日経 xTECH(クロステック) またHadoop専業会社「ノーチラス・テクノロジー」というのもできました。 ウルシステムズとイーシー・ワンが経営統合、Hadoop専業会社を立ち上げ | 日経 xTECH(クロステック) しかし最近では富士通やIBMもHadoopソリューションを展開しておりレッドオーシャンな感じです。 富士通がビッグデータ分析・活用向けのPaaSサービス | 日経 xTECH(クロステック) 日IBM、表計算のように分析できるHadoopソフト新版「BigInsights」 | 日経 xTECH

    Hadoopの異端さが面白い - wyukawa's diary
  • SQLはリングワ・フランカ - wyukawa's diary

    ちなみにリングワ・フランカはこういう意味です。 共通の母語を持たない人同士の意思疎通に使われる言語のことを指す。 リングワ・フランカ - Wikipedia で象の第二版のHiveの章のところでSQLはリングワ・フランカであるという記述が出てきます。ちなみに日語訳された第一版にはHiveの記述はありません。 Hadoop: The Definitive Guide 作者: Tom White,Doug Cutting出版社/メーカー: Oreilly & Associates Inc発売日: 2010/10/14メディア: ペーパーバック購入: 2人 クリック: 149回この商品を含むブログ (14件) を見る Of course, SQL isn't ideal for every big data problem-it's not a good fit for building c

    SQLはリングワ・フランカ - wyukawa's diary
    raimon49
    raimon49 2011/05/29
    SQLは賞味期限の長い共通言語というのはよく分かる。正規表現なんかもそう。
  • hgflow - wyukawa's diary

    GitにはA successful Git branching modelと言われるブランチ運用フローが知られています。 内容の詳細はこちら 原文 A successful Git branching model » nvie.com 翻訳 見えないチカラ: A successful Git branching model を翻訳しました でこのフローを補助するツールとしてgit-flowというのがあります。 GitHub - nvie/gitflow: Git extensions to provide high-level repository operations for Vincent Driessen's branching model. git-flowの使い方はこちらが詳しいです。 A successful Git branching model を補助する git-flow

    hgflow - wyukawa's diary
    raimon49
    raimon49 2011/03/21
    git-flow Mercurial版
  • BTSのワークフローと解決状況とカスタムフィールド - wyukawa's diary

    それぞれのBTSのワークフローはなかなか特色があるね。 Tracのワークフローは以下のようになります。 new(新規) → assigned(アサイン済み) → accepted(受け入れ済み) → closed(クローズ) TracWorkflow – The Trac Project TracはResolution(解決状況)がある。 解決状況についてはこちらが参考になる。 BTSの解決状況(Resolution)は障害管理の名残り: プログラマの思索 Tracの後発のRedmineのワークフローは以下のようになります。 New(新規) → Assigned(担当) → Resolved(解決) → Closed(終了) 課題管理システム - Redmineガイド Redmineは解決状況は無いですが、Redmine家のサイトはカスタムフィールド作ってやっているようです。 Seasa

    BTSのワークフローと解決状況とカスタムフィールド - wyukawa's diary
    raimon49
    raimon49 2011/02/05
    ステータス遷移 比較
  • TortoiseHgでMQ - wyukawa's diary

    MercurialにはMQというGitには無い機能がある。内容としてはGitのインデックスにちょっと近いかも。 この機能は簡単にいえばパッチ管理なのだが理解しづらい。以下のエントリが一番わかりやすい。 Mercurial MQ について - daily dayflower このエントリの流れをTortoiseHgでやってみたので、スクリーンショットをべたべたはってみた。 初期状態 カクテルを追加します。 ここで普通にコミットするのではなくQNewにadd_menuを指定してQNewします。 そうするとこんな感じ。add_menuというパッチが登録されました。 リポジトリエクスプローラはこんな感じ こんどはワインを追加して、QRefreshします。 リポジトリエクスプローラはこんな感じ。コミットとは異なりQRefreshは積算しメッセージは上書きされます。 リポジトリエクスプローラでPatc

    TortoiseHgでMQ - wyukawa's diary
    raimon49
    raimon49 2010/12/12
    MQの流れ GUI版
  • MercurialとGitのブランチの違い - wyukawa's diary

    MercurialのブランチというのがどういうものでしかもそれがGitと同じなのかどうかもいままでよくわからなかった。 その辺のモヤモヤがこれを読んで理解できた(気がする)。 experimentalworks » Blog Archive » Mercurial bookmarks A Guide to Branching in Mercurial / Steve Losh まずMercurialでは以下の4種類のブランチがある。 リポジトリをcloneしてつくるブランチ hg bookmarkで作るブランチ hg branchで作る名前付きブランチ 名無しブランチ リポジトリをcloneしてつくるブランチは hg clone test-project test-project-feature-branch というように単純にcloneして新機能を開発してあとでマージなりリベースなりする

    raimon49
    raimon49 2010/12/09
    過去のチェンジセットにコミットして親が分かれた時に自動で出来る名無しブランチの概念。Gitのブランチに近いのはbookmarks拡張。
  • Subversion1.7はGitのような特徴を持つらしい - wyukawa's diary

    http://www.subversion.jp/index.php?option=com_content&view=article&id=50:subversion17enable-git-like-features&catid=25:subversion-article&Itemid=27 マジですか。TwitterでつぶやいたらTLがホットになったよw 次世代ワーキングコピー(Next Generation Working Copy (NG-WC))というやつがキーらしい。 アナウンスの動画はこちら http://subversion.wandisco.com/component/content/article/1/41-whats-next-for-subversion.html 課題番号はこちら subversion: Issue 3357 仕様書はこちら http://svn.

    Subversion1.7はGitのような特徴を持つらしい - wyukawa's diary
    raimon49
    raimon49 2010/11/08
    .svn/
  • Subversion, Git, Mercurialそれぞれでのcherrypicking - wyukawa's diary

    つまみいとか青田買いといわれるcherrypickingはある特定のコミットをブランチから抜き出して別のブランチに反映させるというものです。 Subversion, Git, Mercuriaそれぞれのやり方を調べてみました。 まずSubversionいってみましょう。 準備 $ svnadmin create repos $ svn checkout file:///tmp/repos work Checked out revision 0. $ cd work/ $ svn mkdir tags branches trunk A tags A branches A trunk $ svn commit -m "add initial dir" Adding branches Adding tags Adding trunk Committed revision 1.trunkの直下に

    Subversion, Git, Mercurialそれぞれでのcherrypicking - wyukawa's diary
    raimon49
    raimon49 2010/06/17
    3つのバージョン管理システムで、よそのブランチのチェンジセットを取り込む方法。Mercurialではhg transplant
  • 1