2012年10月15日月曜日

[mongoDB]ファイルからデータをインポートする

CSVやTSVファイルに定義されたデータをmongoDBにインポートする際は、専用のツールを使用するのが簡単です。

コマンド例(CSVファイルのインポート)

mongoimport --db mydb --collection users --type csv --file ml-1m/users.dat --fields _id,gender,age,zip_code

 実行結果
connected to: 127.0.0.1
Mon Oct  9 22:10:11 imported 6040 objects


オプションについて
--db 格納するDBを指定します。予め作成しておく必要はありません。
--collection 格納するコレクションを指定します。予め作成しておく必要はありません。
--type インポート対象のファイル形式を指定します。JSON、CSV、TSVが使用できます。ここではCSVを指定しています。

--file インポート対象のファイルパスを指定します。
--fields インポートするデータレコードのフィールド定義します。

fieldsを指定しないとインポートエラーが発生します。データの区切りと明確に示す必要があります。

fields定義エラー
 mongoimport --db mydb --collection users --type csv --file ~/data/input_data/users.dat
connected to: 127.0.0.1
assertion: 9998 you need to specify fields 

 以上です。

参考ドキュメント
MongoDB Manual mongoimport http://docs.mongodb.org/manual/reference/mongoimport/#mongoimport

2012年8月12日日曜日

[MySQL]インストール後に最初に行うこと

■概要 公開サービスでのMySQL利用を想定している場合、MySQLのインストール後のセキュリティ設定は不適切です。 セキュリティを強化するための設定は、個別に行うことも可能ですが、「mysql_secure_installation」コマンドを利用すると、より簡便に設定可能です。

 ■mysql_secure_installationの実行 

mysql_secure_installationを実行すると以下の設定変更が可能です。

  1. rootパスワードの設定 
  2. rootユーザによるリモートアクセスの禁止 
  3. 匿名(anonymous)ユーザの削除 
  4. デフォルトで作成されているtestデータベースの削除
bash-3.2$ mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
You already have a root password set, so you can safely answer 'n'.
Change the root password? [Y/n] Y ->初期パスワードなし
New password:         ->rootパスワードを変更するため[Y]を入力
Re-enter new password:     ->rootパスワードを変更するため[Y]を再入力
Password updated successfully!
Reloading privilege tables..
 ... Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y ->匿名ユーザを削除するため[Y]を入力
 ... Success!
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y ->rootユーザのリモートアクセスを禁止するため[Y]を入力
 ... Success!
By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y ->testデータベースを削除するため[Y]を入力
 - Dropping test database...
ERROR 1010 (HY000) at line 1: Error dropping database (can't rmdir './test/', errno: 17)
 ... Failed!  Not critical, keep moving...
 - Removing privileges on test database...
 ... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y ->新しい設定を即時反映するため[Y]を入力
 ... Success!
Cleaning up...
All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!



以上です。

2012年6月5日火曜日

[Music] 2012年5月購入リスト



2012年5月の購入リストを残す。

・Simian Mobile Disco Unpatterns


2曲目の「Cerulean」は、個人的名曲「10000 Horses Can't Be Wrong」に通じるミニマム、そして実験的な構成がワクワクさせてくれるお気に入りな1曲。

あとは「Put Your Hands Together」のループにハマると気持ち良い。

全体通してボーカルレスな曲が多いけど、叙情的な盛り上げ方でじっくり聴けるアルバムに仕上がっていると思います。







・Yppah / They Know What Ghost Know

旧作ですが「Playing with fireworks」の高揚感を煽る展開がとても好き。
この曲が入っているだけでこのアルバムはOKってくらい良い。

もちろん他の曲も良いですけどね。



・HIROSHI WATANABE / Contact to the Spirits 2


2007年にカイト名義でKOMPAKTと共同でリリースしたDJミックス作品「Contact to the Spirits」の続編となる第2弾作品。 


Carl CraigのTwilightで粋なはじまり。徐々に盛り上げていく構成の巧みさというか、心得はさすがという感じ。この人の操る音の反復は本当に中毒性高い。



2012年6月4日月曜日

[Reading] Software Design(2012/6)

Software Design 6月号について書きます。


今号の特集は「ハイパフォーマンスコンピューティング技術」、「Fluentdで大規模データのログ収集&活用」がメインです。


ハイパフォーマンスコンピューティング技術では、データセンターで普及が進むInfiniBandという超高速通信プロトコル、SSD CachingやFusion-ioといった高速IO/ストレージ技術をテーマがテーマでインフラ技術の最先端を垣間みることができます。


個人的には、もう1つのメイン特集である「Fluentd」というログ収集ミドルウェアに興味津々でした。FluentdはOSSであり、魅力は導入コストの低さと耐障害性の高さ。そして数多の解析ミドルウェアを組み合わせることで、ログの利活用が容易に実現できそうなところです。 


具体的には、いまアプリケーションで吐いてるアプリログを、別プロセスを使用し準同期でログ収集サーバに転送可能。ログ収集サーバではインプット(収集)とアウトプット(書き出し)が別スレッドで動作し、個々の遅延に引きずられずに処理が完了し、リトライ機能によりログロストのリスクも最大限軽減されるという優れものです。 


記事によれば、リソース使用率もそこまで激しくなさそうだし、アプリケーション側であれこれログ収集の仕組みを実装したり、ログロスト防止の考慮をするより運用コストも下がりそうです。


この運用コストというのが、新たな仕組みの導入にあたり最も重要な検討事項だと思います。Fluentdの導入は、開発チームだけでなく運用チームにもメリットがあるということで、自社でも導入への道筋が立てやすいと感じました。


さらに収集したログはHadoopで解析し、結果をRDBやKVSに放り込んで活用するのが一般的になりつつあるようです。


とりあえず、どこかのサーバで評価してみたいと思います。



2012年5月19日土曜日

[Python]CookieとBasic認証を扱うHTTPクライアントの作り方

■概要
CookieとBasic認証を扱うHTTPクライアントが欲しくてPythonでサクッとつくってみました。
※リクエストURLや設定情報を外部ファイルから読み込むようにすると更に使いやすいですが、それは別の機会に。

■実装
Pythonの標準モジュールであるurllib2、cookielibを使用します。
これらのモジュールはPythonのバージョンが2.4以降であれば、問題なく使用できます。

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import os.path, sys

def sendRequest():

    # urllib2をインポートする。
    from urllib2 import urlopen, Request

    # Basic認証の認証情報を設定
    auth_realm = 'realm'
    auth_host = 'host_name'
    auth_id = 'id'
    auth_pw = 'password'

    # cookieの保持情報を設定する。(下記指定ではカレントディレクトリが保存先と)
    COOKIEFILE = 'cookies.lwp'

    # cookielibモジュールの読み込み
    try:

        import cookielib

    except ImportError:

        cookielib = None

    else:

        # 正常に読み込めた場合、LWPCookieJarクラスのインスタンス化。
        cj = cookielib.LWPCookieJar()

    # URLハンドラをセットアップする。
    if cj is not None:

        if os.path.isfile(COOKIEFILE):

            cj.load(COOKIEFILE)

        if cookielib:

            # Basic認証用にHTTPBasicAuthHandlerクラスをインスタンス化し、認証情報を付与する。
            auth_handler = urllib2.HTTPBasicAuthHandler()
            auth_handler.add_password(auth_realm, auth_host, auth_id, auth_pw)

            opener = urllib2.build_opener(auth_handler,urllib2.HTTPCookieProcessor(cj))
            urllib2.install_opener(opener)
        else:
            print "Sorry, can't cookielib."

    # リクエスト情報を設定する。
    theurl = 'http://www.google.com/'
    txdata = None
    txheaders = {'User-agent': 'something_useragent'}

    # リクエスト情報をもとにRequestクラスをインスタンス化し、リクエストを送信する。
    try:
        req = Request(theurl, txdata, txheaders)
        response = urlopen(req)

    # リクエストエラーの場合、エラー情報を出力する。
    except IOError, e:
        print 'Failed to open "%s".' % theurl
        if hasattr(e, 'code'):
            print 'Error code: "%s".' % e.code

    # レスポンスを出力する。
    else:
        print '===== Here are the request of the page. =====\n'
        print str(url) + '\n'

        print '***** Here are the headers of the page. *****\n'
        print str(response.info()) + '\n'

        print '----- Here are the contents of the page. -----\n'
        print str(response.read()) + '\n'

    # Cookieを保存する。
    if cj is None:
        print "Sorry, no cookie jar."
    else:
        print "Here are the cookies received so far:"

        for index, cookie in enumerate(cj):

            print index, ': ', cookie

        cj.save(COOKIEFILE)

    return 0

if __name__ == "__main__":
    sys.exit(sendRequest())
以上です。

参考URL
http://www.python.jp/doc/2.4/lib/module-urllib2.html
http://www.python.jp/doc/2.4/lib/module-cookielib.html
http://www.python.jp/doc/2.4/lib/file-cookie-jar-classes.html

参考文献
Python クックブック 第2版(O'Reilly Japan)




2012年4月7日土曜日

[Movie][映画鑑賞]ものすごくうるさくて、ありえないほど近い




9・11テロで最愛の父を亡くした少年オスカーは、クローゼットで見つけた1本の鍵を手に、父親が残したメッセージを求めてニューヨークで鍵穴探しをはじめる。

突然父を失い、自分の世界に大きな穴が空いた少年オスカーの、戸惑いと誰にぶつけていいか分からない苦しみが痛々しく伝わってくる。

その日、父からの最後の電話に出れなかった自分を責め、留守電に残った父の声を繰り返し聞きながら、母に辛く当たる姿は本当に痛々しい。


そんなオスカーが、父の遺品から1本の鍵とブラックという文字を見つける。昔から父は謎かけをする人で、自分はその謎を解くのが好きだった。

オスカーは鍵と文字が父からのメッセージだと考え、ニューヨーク中のブラックという名前の人物を訪問し、鍵に合う扉を探すことにする。

外に飛び出したオスカーはさまざまな人に出会い、話し、夢中で街を歩き回る中で、少しずつ自分と向き合っていく。

この映画のハイライトは、鍵探しの結果、「ブラック」の真相を知って自暴自棄になったオスカーが、自分に対する母の強い思いを知り、愛情に触れ、自分を取り戻すシーンだと思う。オスカー役のトーマス・ホーンがとても良い表情をしていて、じんわりと感動がこみ上げてくる。

映画では1人の少年の視点を通して、9・11で大切なひとを失った人々の悲しみとこころの再生を描いているが、本国アメリカでは、作品の評価について相当な議論があったみたいだ。

アメリカの人にとっては、映像として9・11テロを観せられることには、まだまだ抵抗もあるだろうし、苦しい思いもするだろう。それでも、この映画で大きな苦しみを乗り越えようとするオスカーの姿は生々しく、とても勇気づけられるものだと思う。

そういう意味で、製作スタッフは単純な感動映画で終わらせないために苦慮したと思うし、その思いは充分に伝わった。9・11を描いた成功作だと思う。


作品情報
タイトル:ものすごくうるさくて、ありえないほど近い
公開年 :2012年2月18日(日本)
製作国 :アメリカ(2009年)
監督  :スティーブン・ダルドリー
出演  :トーマス・ホーン、トム・ハンクス、サンドラ・ブロックほか
鑑賞媒体:劇場

2012年3月30日金曜日

[MySQL][CentOS]同一サーバに複数のMySQLをインストールする


■概要
既にMySQLがインストールされているサーバに、別プロジェクトで使用するMySQLを
インストールしたので、方法をまとめておきます。

今回はソースからインストールオプションを指定してインストールしました。

■基本情報
・OS
CentOS 5.5

・既存MySQLインストール情報
バージョン: MySQL-5.1

ベースディレクトリ: /usr/local/mysql/
データディレクトリ: /var/lib/mysql/
ポート : 3308
ソケット : /usr/local/mysql/tmp/mysql.sock
設定 : /var/lib/mysql/my.cnf


・新規MySQLインストール情報
バージョン: MySQL-5.5.22
ベースディレクトリ: /usr/mysql5/
データディレクトリ: /data/mysql5/
ポート : 3308
ソケット : /usr/mysql5/tmp/mysql.sock
設定 : /data/mysql5/my.cnf

■インストール手順
# cd /usr/local/src/

・インストールするソースをダウンロードする
# wget -P /usr/local/src 'http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.22.tar.gz/from/http://ftp.jaist.ac.jp/pub/mysql/'
# tar xzvf ./mysql-5.5.22.tar.gz

※取得するバージョンは指定可能

・新規MySQL用のユーザ/グループを作成する
# groupadd mysql5
# useradd -g mysql5 mysql5

・新規MySQLインストール用ディレクトリを作成する
# mkdir /usr/mysql5/
# chown -R mysql5:mysql5 /usr/mysql5/
# ls -l /usr/mysql5/

・新規MySQLソケット作成用ディレクトリを作成する
# mkdir /usr/mysql5/tmp/
# chown -R mysql5:mysql5 /usr/mysql5/tmp/
# ls -l /usr/mysql5/tmp/

・DBデータ保存用ディレクトリを作成する
# mkdir -p /data/mysql5/
# chown -R mysql5:mysql5 /data/mysql5
# ls -l

・新規MySQLのソースをビルドする

※MySQL5.5以降のビルドはcmakeが必要となります。
cmakeがインストールされていない場合、以下サイト等を参考にインストールします。
http://www.atmarkit.co.jp/flinux/rensai/buildlamp/lamp_45/45_1.html

# cd /usr/local/src/mysql-5.5.22
# cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/mysql5 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=true \
-DMYSQL_TCP_PORT=3308 \
-DMYSQL_UNIX_ADDR=/usr/mysql5/tmp/mysql.sock \
-DMYSQL_DATADIR=/data/mysql5/ \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_READLINE=ON

※cmakeのオプションはmysql.infoで確認しました。
# less /usr/local/src/mysql-5.5.22/Docs/mysql.info
「*MySQL Source-Configuration Option Reference (`CMake')*」の章を参照

※設定ファイル(my.cnf)の配置ディレクトリを指定したい場合は、「-DSYSCONFDIR=ディレクトリパス」オプションを付与します。
サーバ毎の設定ファイルのデフォルトは「DATADIR/my.cnf」となります。(グローバルの設定は/etc/my.cnfが使用されます)
設定ファイルの指定は、MySQLの起動オプションでも指定可能です。

・パスを通す
# vim /etc/profile
以下を記載
export PATH="$PATH:/usr/mysql5/bin"

# /usr/mysql5/scripts/mysql_install_db --user=mysql5 --basedir=/usr/mysql5 --datadir=/data/mysql5

・起動する
# /usr/mysql5/bin/mysqld_safe --user=mysql5 --defaults-file=/etc/my5.cnf &

・rootユーザのパスワードを変更する
# mysqladmin -u root password "xxxxxxxx"
# mysqladmin -u root -h localhost password "xxxxxxxx"

・ログインする
# /usr/mysql5/bin/mysql -uroot -p

・匿名ユーザを削除する
# DELETE FROM mysql.user WHERE Host='localhost' AND User='';
# FLUSH PRIVILEGES;

・停止する
# ./bin/mysqladmin -uroot -p shutdown


以上です。

2012年2月27日月曜日

[Movie][映画鑑賞]ミックマック


黄色がかったフィルタ映像が、安心のジュネ印です。

主人公バジルはレンタルビデオ店で働く映画マニア。あるとき、店の前で発砲事件が発生し、流れ弾を受け、
頭に銃弾を残したまま生きることに。

レンタルビデオ店の職を失い、その日暮らしとなったが、スクラップ工場で暮らすホームレスの仲間にと誘われるバジル。新たな人生が始まるが、ある日、自分の頭の中の銃弾を作った会社と30年前に父を殺した地雷を製造した会社を発見する。

バジルは、仲間と共に、2つの軍事会社の悪徳社長に復讐することを誓う。

復讐といっても、完全にコメディで、手作り感満載のいたずら手法がとても良い。
その小ネタの数々が、絶妙にバカバカしくて何度も笑ってしまう。

例えば、
「悪徳社長を盗聴するために、家の屋根に登り暖炉の煙突に、マイクを垂らしヘッドフォンで聴き耳をたてる」
あるとか、
「悪徳社長への手紙を盗み出すために、瓶に入った水を郵便ポストに流し込み、手紙を浮かせる」とかを、
一生懸命に実行するバジルたちが、最高におもしろいのである。

最後はバジルの望む形で復讐を果たすのだが、その手法もまた「お茶目で」、「誰も傷つかず」、「ハートウォーミングな結末」となっている。

何度観ても楽しめる、とても良い作品。

作品情報
タイトル:ミックマック
公開年 :2010年9月4日(日本)
製作国 :フランス(2009年)
出演  :ダニー・ブーンほか
鑑賞媒体:DVD

2012年2月16日木曜日

[Movie][映画鑑賞]ドラゴンタトゥーの女


かなり激しい。残虐な匂いがする。
目を覆いたくなるシーンもいくつかある。覆わずに済んだのは、監督のさじ加減がよかったからなのか。感覚が麻痺していたのか。

ドラゴンタトゥーの女はスリラーだ。しかも、デヴィッド・フィンチャーが撮る、飛びきりのスリラーである。

ファイトクラブ以来の魅力的なキャラクタ付きの物件とあれば、観ないわけにはいかない。

「ミレニアム紙の記者ミカエルは、大物実業家の不正を告発するが裁判に敗れ、意気消沈。
そんなミカエルに大企業の元会長ヘンリック・バンゲルが接近し、ある仕事を依頼する。それは、40年前にバンゲル一族が住む島から失踪した少女ハリエット事件調査だった。調査は難航するが、粘り強く新たな手がかりを見つけていくミカエルは、背中にタトゥーを持つハッカーリスベットと共に事件の真相に迫っていく。」



ルーニー・マーラは、不安定で神経質で過激な性質を持ち合わせたリスベットを好演している。

自分をレイプした福祉担当のおっさんに復讐するシーンのような激情の顔と、淡々と黙々と調査し続ける分析家の顔。この2面性がとてもバランスよく演じ分けられていることにより、リスベットの印象がとても複雑になる。嫌悪だけでも、同情だけでも、共感だけでもない、何とも言えない視線を向けることになった。

単純な善悪で切り分けられないキャラクタほど魅力的な存在はない。改めてそう感じた。

もちろん、ダニエル・クレイグ演じる良識あるミカエルの存在も大きい。007のイメージがあるにも関わらず、スパイ技で何とかしてしまう感が全くなく、鋭い洞察で真実に迫る(迫りすぎてやばい目に遭うわけで)姿は、新鮮だった。

ただし、キャラクタが魅力的なわりに、事件の結末は印象が薄かったかな。凄惨だけれども、ありそうという感じ。ミカエルとしては、ハッピーエンドで、リスベットとしてはバッドエンドなのかな。

あぁ、またキャラクタに戻ってきた。つまるところキャラクタ映画ということなのだろう。
フィンチャーもすごく丁寧にキャラクタを配している。

そのほか印象に残ったのは、映像の中で随所に置かれた写真。事件の真相解明に写真が大きな役割を果たすとあって、写真の使い方、表現(誰がキーとなる写真か)は、とても細部まで計算されていて、ゾクゾクした。

案内によると本編は160分の長編らしいが、展開に夢中であっという間に観終わった。
最後まで観客を引っ張っていく力は十分にある作品。
ぜひ、次回作も撮って欲しい。

その前に原作読むか。

2012年2月12日日曜日

[演劇鑑賞]うるう by 小林賢太郎



小林賢太郎の作るお話は、大半シュールで、少しバカバカしくて、時々まじめ。


たまに思いが強すぎて、深すぎて伝わらないこともあるけれど、今作は誰が観ても楽しめる普遍さがある、夢がある。

「うるうびと」、それはうるう年のうるう日のように、どこでも、誰と何をしても、1人余ってしまう世界から取り残された存在。彼はつながりを諦め、人知れず森に暮らす。1人でいることが宿命だと考えて。


あるとき、彼が仕掛けた獲物取りの落とし穴に、1人の少年が落ちる。彼は少年を助ける。
少年は彼に興味を持ち、友達になりたいという。彼は困惑する。自分は1人だ、寂しくなんかないと。


はじめは、「少年マジル」を遠ざけようとしていた「うるうびと」が、少年と話し、少年を知り、心を動かされ、自分について語り出す。しかし、彼には1人で生きざるを得ない秘密があった。

そんな、一見よくあるような物語が、小林賢太郎の独特の調子によって展開していく。(特にドクダミの件はとても笑わせてもらった。)

でも「うるうびと」が自分の過去を語り出し、「少年マジル」に秘密を告げようとするあたりから、急激に物語はシリアスな展開をみせる。目を離せなくなる。こみ上げてくる。

そしてクライマックスは、、、

とても良い意味で期待を裏切られた。まさか、お芝居で涙をこらえることになるとは。


とにかく、生で観れて良かった。
気持ちよく劇場を後にした。
きっとDVDも買うな。


作品情報
タイトル:うるう
製作年 :日本(2012年)
作   :小林賢太郎
演出  :小林賢太郎
出演  :小林賢太郎
音楽  :徳澤青弦
会場  :天王洲銀河劇場

2012年2月8日水曜日

[Movie][映画鑑賞]100,000年後の安全

映画「100,000年後の安全」は、世界で初めて放射性廃棄物を恒久的に閉じ込める処分場を作るプロジェクトを描いたドキュメンタリー。

フィンランドにあるオンカロと呼ばれるその処分場は、地下500メートルの深さに達する。蟻の巣のように入り組みながら、その広大な領域に、フィンランドの原発から廃棄される今後100年分の放射性物質を格納する予定だ。
その後、放射性物質が無害となる100,000年後まで、オンカロは自立的(人間の手を必要としない)に稼働する。

放射性物質を100,000年もの間、誰にも触れさせず安定した環境で保全するのは相当に難しいことがわかる。
環境的要因だけ見ても安定した状態をつくりだせるものか、推測しかできないだろう。地震大国日本では、確実に無理だと感じる。

環境が整ったとして、皮肉にも閉じ込められた放射性物質を暴こうとするのは、人間だと想定されている。実際、この映画のコンセプトの1つは100,000年後の人間たちへの問いかけだ。

どれだけ、厳重にコンクリートで塗固めても、そこに”何か”がある限り、人間の好奇心は暴こうとするだろう。

どれだけ、その”何か”の危険性を訴えるすべを用意しても、100,000年後の人間に伝わるかはわからない。

非常に興味深いことに、放射性物質を閉じ込める知恵は、古代ピラミッドをつくるための知恵に相応しい。ピラミッドのそれは、王の遺骸と、そのまわりに納められた宝物を守るためだが、放射性物質が宝物にあたるとは考えたことがなかった。確かに未来人から見れば、お宝なのかもしれない。彼らは喜んで、研究対象と見なすのかもしれない。

100,000年もの期間、不確かな状況の中で、保全し続けなければいけない。
どれだけエネルギー効率が良かろうと、そんな”何か”を必要とする世の中は変えないといけないのだろう。

放射性物質を無害化する研究が、成功する未来があるかもしれないが、その逆も同じくあり得るのだから。

作品情報
タイトル:100,000年後の安全
公開年 :2011年4月2日(日本)
製作国 :デンマーク(2010年)
監督  :マイケル・マドセン

2011年12月31日土曜日

[Music] 12月購入リスト

nujabes
12月の購入リストを残す。

・Nujabes / spiritual state
これが最後になるのが、本当に残念でならない、遺作となる3rdアルバム。
今作でもその美しいメロディは変わらず、フィーチャーされたアーティストたちとの融合もすばらしい。(Track8: 「Yes」とか最高にカッコいい)

いつ聴いてもリラックスできる大切な一枚。

・Little Dragon / Ritual Union
思い出したように購入。楽しそうに音楽するなぁ。ホントに楽しそう。
ボーカル Yukimi Naganoも精力的にコラボしてるし、一度、生で聴いてみたいものだ。


・Bon Iver / Bon Iver
一聴するだけで、フォークロックの枠にはめられない多彩さを感じる。
ポストロック的なベースラインの上に、丁寧に歌い上げるファルセット・ボイスが印象的。
鳴らすだけで、ゆっくりとした時間が流れる。そんな一枚。


・Teebs / Collections 01
海外でアナログLPのみ発売された、Teebsの新作が日本独自CD化。 新作と言えど、フルアルバムの位置付けではなく、アイディアのコレクションの一部(本人談)とのこと。 確かに曲間の繋がりは感じられないが、十分にその多彩で美しい音世界を堪能できる作品集。

コメント: 12月は見事に癒しアルバムが占めました。

2011年12月20日火曜日

[Python][Mining the Social Web] Graphviz+pygraphvizのインストール

引き続き、「入門ソーシャルデータ」に沿ってデータマイニングに取り組みます。

ソーシャルデータの可視化のために、Graphvizとpygraphvizをインストールします。

Graphviz :DOTという言語出力ファイルを基に、グラフを生成するツールとして有名です。
pygraphviz:pythonを用いて、DOTファイルを生成します。

Mac OSX Lion用のインストールパッケージをダウンロードします。
http://www.graphviz.org/Download_macos.php

パッケージ名:graphviz-2.28.0.pkg

graphviz-2.28.0.pkgをダブルクリックするとインストーラが起動します。
続けるをクリックしていき、インストールを完了します。

次にpygraphvizのインストールです。
例のごとく、easy_installを使用しますが、そのまま実行するとエラーが出ました。

# easy_install pygraphviz
Searching for pygraphviz
Reading http://pypi.python.org/simple/pygraphviz/
Reading http://networkx.lanl.gov/pygraphviz
Reading http://networkx.lanl.gov/download/pygraphviz
Reading http://networkx.lanl.gov/wiki/download
Reading http://networkx.lanl.gov/download
Reading http://sourceforge.net/project/showfiles.php?group_id=122233&package_id=161979
Best match: pygraphviz 1.1
Downloading http://networkx.lanl.gov/download/pygraphviz/pygraphviz-1.1.tar.gz
Processing pygraphviz-1.1.tar.gz
Running pygraphviz-1.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-xlJIBD/pygraphviz-1.1/egg-dist-tmp-qS3unp
Trying pkg-config
/bin/sh: pkg-config: command not found
/bin/sh: pkg-config: command not found
Trying dotneato-config
Failed to find dotneato-config

Your Graphviz installation could not be found.

1) You don't have Graphviz installed:
Install Graphviz (http://graphviz.org)

2) Your Graphviz package might incomplete.
Install the binary development subpackage (e.g. libgraphviz-dev or similar.)

3) You are using Windows
There are no PyGraphviz binary packages for Windows but you might be
able to build it from this source. See
http://networkx.lanl.gov/pygraphviz/reference/faq.html

If you think your installation is correct you will need to manually
change the include_path and library_path variables in setup.py to
point to the correct locations of your graphviz installation.

The current setting of library_path and include_path is:
library_path=None
include_path=None

error: None

パスが通ってないようですが、対処がわかりません。
pipを使用するのはどうかと。

# pip install pygraphviz
Downloading/unpacking pygraphviz
Downloading pygraphviz-1.1.tar.gz (90Kb): 90Kb downloaded
Running setup.py egg_info for package pygraphviz
/bin/sh: pkg-config: command not found
/bin/sh: pkg-config: command not found
Trying pkg-config
Trying dotneato-config
Failed to find dotneato-config

Your Graphviz installation could not be found.

1) You don't have Graphviz installed:
Install Graphviz (http://graphviz.org)

2) Your Graphviz package might incomplete.
Install the binary development subpackage (e.g. libgraphviz-dev or similar.)

3) You are using Windows
There are no PyGraphviz binary packages for Windows but you might be
able to build it from this source. See
http://networkx.lanl.gov/pygraphviz/reference/faq.html

If you think your installation is correct you will need to manually
change the include_path and library_path variables in setup.py to
point to the correct locations of your graphviz installation.

The current setting of library_path and include_path is:
library_path=None
include_path=None

Traceback (most recent call last):
File "", line 14, in
File "/private/var/root/build/pygraphviz/setup.py", line 89, in
raise OSError,"Error locating graphviz."
OSError: Error locating graphviz.
Complete output from command python setup.py egg_info:
/bin/sh: pkg-config: command not found

/bin/sh: pkg-config: command not found

Trying pkg-config

Trying dotneato-config

Failed to find dotneato-config



Your Graphviz installation could not be found.



1) You don't have Graphviz installed:

Install Graphviz (http://graphviz.org)



2) Your Graphviz package might incomplete.

Install the binary development subpackage (e.g. libgraphviz-dev or similar.)



3) You are using Windows

There are no PyGraphviz binary packages for Windows but you might be

able to build it from this source. See

http://networkx.lanl.gov/pygraphviz/reference/faq.html



If you think your installation is correct you will need to manually

change the include_path and library_path variables in setup.py to

point to the correct locations of your graphviz installation.



The current setting of library_path and include_path is:

library_path=None

include_path=None



Traceback (most recent call last):

File "", line 14, in

File "/private/var/root/build/pygraphviz/setup.py", line 89, in

raise OSError,"Error locating graphviz."

OSError: Error locating graphviz.

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /var/root/.pip/pip.log

include_path、library_path variablesについて、graphvizをインストールした場所にパスを通す必要があるようです。
指示通りsetup.pyを編集します。

# OSX, Linux, alternate location
library_path='/usr/local/lib/graphviz'
include_path='/usr/local/include/graphviz'

再度、インストール実行で無事インストールできました。

2011年11月28日月曜日

[Python][Mining the Social Web]Twitter APIを使用してデータを集める

Twitter APIを使用するためのPythonパッケージを追加し、実際にTwitterデータにアクセスしてみる。

$ sudo easy_install twitter
Searching for twitter
Reading http://pypi.python.org/simple/twitter/
Reading http://mike.verdone.ca/twitter/
Best match: twitter 1.7.2
Downloading http://pypi.python.org/packages/source/t/twitter/twitter-1.7.2.tar.gz#md5=a81b512cc8be5ba278bdaceb6d988fe6
Processing twitter-1.7.2.tar.gz
Running twitter-1.7.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-1iZuPg/twitter-1.7.2/egg-dist-tmp-7cd07T
Adding twitter 1.7.2 to easy-install.pth file
Installing twitter-stream-example script to /usr/local/bin
Installing twitter script to /usr/local/bin
Installing twitterbot script to /usr/local/bin
Installing twitter-log script to /usr/local/bin


Installed /Library/Python/2.7/site-packages/twitter-1.7.2-py2.7.egg
Processing dependencies for twitter
Finished processing dependencies for twitter


パッケージドキュメントを読むためにはpydocを実行する。
*nix : pydoc twitter.Twitter
(Windows : python -mpydoc twitter.Twitter)

TwitterのトレンドAPIを実行してみるが、エラー発生。
$ python
Python 2.7.1 (r271:86832, Jun 25 2011, 05:09:01)
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import twitter
>>> twitter_api = twitter.Twitter(domain="api.twitter.com", api_version='1')
>>> trends = twitter_api.trends()
Traceback (most recent call last):
File "", line 1, in
File "build/bdist.macosx-10.7-intel/egg/twitter/api.py", line 165, in __call__
File "build/bdist.macosx-10.7-intel/egg/twitter/api.py", line 180, in _handle_response
twitter.api.TwitterHTTPError: Twitter sent status 404 for URL: 1/trends.json using parameters: ()
details:

はて、404エラー出てるな。
とりあえず、本文に記載のURL:http://search.twitter.com/1/trends.jsonを入力してみるがこちらもエラー。
よく見ると、このURLってhttp指定してるけど、Twitterってhttps使うように変わったような...

と、いうことでTwitter API のドキュメントを確認してみる。
https://dev.twitter.com/docs/api/1/get/trends/%3Awoeid

やっぱり、API仕様変わってますね。ということで、モジュール修正が必要だな。

[Music] 2011年11月購入リスト


11月の購入リストを残す。

・Derrick May / Heartbeat Presents Mixed By Derrick May×AIR Vol.2

Derrick May/代官山AIRコラボMixの第2弾。
今作も一切手抜きなし。これほどクラブにいる感覚を味合わせてくれるMix作れるのは「Derrick May」だから。


・Surkin / USA

「Action Replay」から4年、待ちに待った作品。
フレンチエレクトロと言えば、「Justice」じゃなくて「Surkin」ですね。個人的には。 カッコいいです。



・DJ Shadow / The Less You Know The Better

ジャケがお茶目です。原点回帰とか言われてるのは、正直わからんですが、いいものはいいと。

Little Dragonとのコラボ曲(Scale It Back)とか嬉しいし、すばらしい作品です。




コメント: 12/2は遂にNujabes新譜発売ですね。

[Python][Mining the Social Web] easy_installでモジュール追加

Mining the Social Web(オライリー刊)を参考に分析を進めていくための準備

Pythonでモジュール管理はeasy_installを使用するのがベター。
Macでも変わらない。

NetworkXモジュールはグラフを作り、分析し、類似する出力を観察するために使用するようだ。
$ sudo easy_install networkx
Searching for networkx
Reading http://pypi.python.org/simple/networkx/
Reading http://networkx.lanl.gov/
Reading http://networkx.lanl.gov/download/networkx
Reading http://sourceforge.net/project/showfiles.php?group_id=122233
Reading https://networkx.lanl.gov
Reading http://networkx.lanl.gov/download
Reading http://networkx.lanl.gov
Best match: networkx 1.6
Downloading http://networkx.lanl.gov/download/networkx/networkx-1.6-py2.7.egg
Processing networkx-1.6-py2.7.egg
creating /Library/Python/2.7/site-packages/networkx-1.6-py2.7.egg
Extracting networkx-1.6-py2.7.egg to /Library/Python/2.7/site-packages
Adding networkx 1.6 to easy-install.pth file

Installed /Library/Python/2.7/site-packages/networkx-1.6-py2.7.egg
Processing dependencies for networkx
Finished processing dependencies for networkx

Numpyは科学計算用ツール。NetworkXが依存関係にある。
$ sudo easy_install numpy
Searching for numpy
Best match: numpy 1.5.1
Adding numpy 1.5.1 to easy-install.pth file

Using /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
Processing dependencies for numpy
Finished processing dependencies for numpy

NoseはPythonのテストツール
$ sudo easy_install nose
Searching for nose
Reading http://pypi.python.org/simple/nose/
Reading http://somethingaboutorange.com/mrl/projects/nose/
Reading http://readthedocs.org/docs/nose/
Best match: nose 1.1.2
Downloading http://pypi.python.org/packages/source/n/nose/nose-1.1.2.tar.gz#md5=144f237b615e23f21f6a50b2183aa817
Processing nose-1.1.2.tar.gz
Running nose-1.1.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-UusYYV/nose-1.1.2/egg-dist-tmp-UafvfE
Adding nose 1.1.2 to easy-install.pth file
Installing nosetests script to /usr/local/bin
Installing nosetests-2.7 script to /usr/local/bin

Installed /Library/Python/2.7/site-packages/nose-1.1.2-py2.7.egg
Processing dependencies for nose
Finished processing dependencies for nose


以上です。

2011年10月27日木曜日

[Music]10月購入リスト

10月度の購入リストを残す。

・Apparat / The Devil's Walk
DJ Kicksなど良質なMixリリースやModeselektorとのコラボModerat名義のリリースを経て、4年ぶりの新作をリリース。
ジャケからは想像つかない、美しく繊細なビート。ボーカルを大きく取り入れたことにより、これまでとひと味違う心地よい作品に仕上がっている。

・Coldplay / Mylo Xyloto
前作以上にポップ感が全面に出ている。今作の一番の魅力も、やはり伸びやかなクリスのボーカル。

・Modeselektor / Monkeytown
今作も独特の不穏な雰囲気、ビートは健在。
Modeselektorってこうだよな、とある意味安心。

・The Field / Looping State Of Mind
相変わらずピークまでの組み立てがうまくてワクワクする。気持ちいい。

コメント: Justiceは様子見。

2011年9月23日金曜日

[Design]Feltron Annual Report

Facebookの新しいタイムラインをデザインした人物が手がけた、私的レポート(年報)があまりに素晴らしかったので、記録しておく。

その人物とは、Nicholas Felton。
彼は、1年に1冊、個人的なトピックをまとめたレポートを公開してきた。

そのコンテンツを構成するビジュアルは簡潔で、直感的で、本当に素晴らしい。
無駄な要素が全くない。その年報を見たFacebookのお偉いさん(いち時期Facebookはデザイン部門の強化に奔走していた)がFeltonを抱え込んだというという話。

そのコンテンツは以下に。こんなデザインセンスを身につけたい。
Feltron Annual Report

Facebookのお偉いさんの話。
デザインとデータの交差点で、Facebookのタイムラインは生まれた

2011年8月15日月曜日

[Emacs]さくらVPSセットアップ

前回、さくらVPSの環境にLAMP環境を構築しました。

今回は開発環境らしくするため、Emacsをインストールします。

■gccをインストール
gccが入っていないとはじまりませんな。
$yum install gcc*

■Emacsをインストール
ソースGet!
$ wget ftp://ftp.ring.gr.jp/pub/GNU/emacs/emacs-23.1.tar.gz
$ wget http://ftp.gnu.org/pub/gnu/emacs/emacs-23.1.tar.gz
$ tar xzf emacs-23.1.tar.gz
$ ls -la

$ ./configure --without-x
$ make
$ make install
$ emacs --version
GNU Emacs 23.1.1
Copyright (C) 2009 Free Software Foundation, Inc.
GNU Emacs comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of Emacs
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.

Emacs設定ファイルの配置
私は各種設定ファイルをさまざまな環境で共有できるようにDropboxに保存しています。

今回もDropboxからファイルダウンロードして配置しようかと思いましたが、
以下のページを見つけてこのやり方はまずいかなと、再検討しております。

さくらVPSでDropboxをX11なしで使う
Dropboxを使うな、とまでは言いませんが

とりあえず、".emacs"は作成したけれど、何か良い手はないものか。

2011年8月7日日曜日

[LAMP][CentOS]さくらVPSセットアップ

■概要
さくらVPSにLAMP環境を構築します。

■基本情報
OS   : CentOS 5(2011/8時点の最小構成)
ディスク: 20GB
メモリ : 512MB

■パッケージ確認
Apache、MySQL、PHPそれぞれのインストールパッケージを確認します。
# yum list | grep httpd
httpd.x86_64 2.2.3-45.el5.centos.1 updates
httpd-devel.i386 2.2.3-45.el5.centos.1 updates
httpd-devel.x86_64 2.2.3-45.el5.centos.1 updates
httpd-manual.x86_64 2.2.3-45.el5.centos.1 updates
system-config-httpd.noarch 5:1.3.3.3-1.el5 base

# yum list | grep mysql
apr-util-mysql.x86_64 1.2.7-11.el5_5.2 base
bytefx-data-mysql.x86_64 1.2.4-2.el5.centos extras
freeradius-mysql.x86_64 1.1.3-1.6.el5 base
freeradius2-mysql.x86_64 2.1.7-7.el5 base
libdbi-dbd-mysql.x86_64 0.8.1a-1.2.2 base
mod_auth_mysql.x86_64 1:3.0.0-3.2.el5_3 base
mysql.i386 5.0.77-4.el5_6.6 updates
mysql.x86_64 5.0.77-4.el5_6.6 updates
mysql-bench.x86_64 5.0.77-4.el5_6.6 updates
mysql-connector-odbc.x86_64 3.51.26r1127-1.el5 base
mysql-devel.i386 5.0.77-4.el5_6.6 updates
mysql-devel.x86_64 5.0.77-4.el5_6.6 updates
mysql-server.x86_64 5.0.77-4.el5_6.6 updates
mysql-test.x86_64 5.0.77-4.el5_6.6 updates
pdns-backend-mysql.x86_64 2.9.21-4.el5.centos extras
php-mysql.x86_64 5.1.6-27.el5_5.3 base
php-pear-MDB2-Driver-mysql.noarch 1.4.1-3.el5.centos extras
php53-mysql.x86_64 5.3.3-1.el5_6.1 updates
qt4-mysql.x86_64 4.2.1-1 base
rsyslog-mysql.x86_64 3.22.1-3.el5_6.1 updates

# yum list | grep php
php.x86_64 5.1.6-27.el5_5.3 base
php-bcmath.x86_64 5.1.6-27.el5_5.3 base
php-cli.x86_64 5.1.6-27.el5_5.3 base
php-common.x86_64 5.1.6-27.el5_5.3 base
php-dba.x86_64 5.1.6-27.el5_5.3 base
php-dbase.x86_64 5.1.6-15.el5.centos.1 extras
php-devel.x86_64 5.1.6-27.el5_5.3 base
php-gd.x86_64 5.1.6-27.el5_5.3 base
php-imap.x86_64 5.1.6-27.el5_5.3 base
php-ldap.x86_64 5.1.6-27.el5_5.3 base
php-mbstring.x86_64 5.1.6-27.el5_5.3 base
php-mcrypt.x86_64 5.1.6-15.el5.centos.1 extras
php-mhash.x86_64 5.1.6-15.el5.centos.1 extras
php-mssql.x86_64 5.1.6-15.el5.centos.1 extras
php-mysql.x86_64 5.1.6-27.el5_5.3 base
php-ncurses.x86_64 5.1.6-27.el5_5.3 base
php-odbc.x86_64 5.1.6-27.el5_5.3 base
php-pdo.x86_64 5.1.6-27.el5_5.3 base
php-pear.noarch 1:1.4.9-6.el5 base
php-pear-Auth-SASL.noarch 1.0.2-4.el5.centos extras
php-pear-DB.noarch 1.7.13-1.el5.centos extras
php-pear-Date.noarch 1.4.7-2.el5.centos extras
php-pear-File.noarch 1.2.2-1.el5.centos extras
php-pear-HTTP-Request.noarch 1.4.2-1.el5.centos extras
php-pear-Log.noarch 1.9.13-1.el5.centos extras
php-pear-MDB2.noarch 2.4.1-2.el5.centos extras
php-pear-MDB2-Driver-mysql.noarch 1.4.1-3.el5.centos extras
php-pear-Mail.noarch 1.1.14-1.el5.centos extras
php-pear-Mail-Mime.noarch 1.4.0-1.el5.centos extras
php-pear-Net-SMTP.noarch 1.2.10-1.el5.centos extras
php-pear-Net-Sieve.noarch 1.1.5-2.el5.centos extras
php-pear-Net-Socket.noarch 1.0.8-1.el5.centos extras
php-pear-Net-URL.noarch 1.0.15-1.el5.centos extras
php-pecl-Fileinfo.x86_64 1.0.4-3.el5.centos extras
php-pecl-memcache.x86_64 2.2.3-1.el5_2 extras
php-pgsql.x86_64 5.1.6-27.el5_5.3 base
php-readline.x86_64 5.1.6-15.el5.centos.1 extras
php-snmp.x86_64 5.1.6-27.el5_5.3 base
php-soap.x86_64 5.1.6-27.el5_5.3 base
php-tidy.x86_64 5.1.6-15.el5.centos.1 extras
php-xml.x86_64 5.1.6-27.el5_5.3 base
php-xmlrpc.x86_64 5.1.6-27.el5_5.3 base
php53.x86_64 5.3.3-1.el5_6.1 updates
php53-bcmath.x86_64 5.3.3-1.el5_6.1 updates
php53-cli.x86_64 5.3.3-1.el5_6.1 updates
php53-common.x86_64 5.3.3-1.el5_6.1 updates
php53-dba.x86_64 5.3.3-1.el5_6.1 updates
php53-devel.x86_64 5.3.3-1.el5_6.1 updates
php53-gd.x86_64 5.3.3-1.el5_6.1 updates
php53-imap.x86_64 5.3.3-1.el5_6.1 updates
php53-intl.x86_64 5.3.3-1.el5_6.1 updates
php53-ldap.x86_64 5.3.3-1.el5_6.1 updates
php53-mbstring.x86_64 5.3.3-1.el5_6.1 updates
php53-mysql.x86_64 5.3.3-1.el5_6.1 updates
php53-odbc.x86_64 5.3.3-1.el5_6.1 updates
php53-pdo.x86_64 5.3.3-1.el5_6.1 updates
php53-pgsql.x86_64 5.3.3-1.el5_6.1 updates
php53-process.x86_64 5.3.3-1.el5_6.1 updates
php53-pspell.x86_64 5.3.3-1.el5_6.1 updates
php53-snmp.x86_64 5.3.3-1.el5_6.1 updates
php53-soap.x86_64 5.3.3-1.el5_6.1 updates
php53-xml.x86_64 5.3.3-1.el5_6.1 updates
php53-xmlrpc.x86_64 5.3.3-1.el5_6.1 updates

Apache2.2系、MySQL5.0系、PHP5.1系がインストール可能です。

■Apache
# yum -y install httpd
# httpd -v
Server version: Apache/2.2.3
Server built: May 4 2011 06:51:15

■MySQL

今回、MySQLは5.5系、PHPは5.3系をインストールしたい為、サードパーティのリポジトリを指定してインストールします。

リポジトリの登録
# rpm -ivh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
# yum --enablerepo=remi install mysql mysql-server

MySQLサーバ起動
# /etc/rc.d/init.d/mysqld start
MySQL Daemon failed to start.
Starting mysqld: [FAILED]

失敗する。ログを確認してみる。
# cat /var/log/mysqld.log
110807 20:03:29 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
110807 20:03:29 [ERROR] Error message file '/usr/share/mysql/english/errmsg.sys' had only 480 error messages,
but it should contain at least 712 error messages.
Check that the above file is the right version for this program!
110807 20:03:29 [Note] Plugin 'FEDERATED' is disabled.
/usr/libexec/mysqld: Unknown error 1146
110807 20:03:29 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
110807 20:03:29 InnoDB: The InnoDB memory heap is disabled
110807 20:03:29 InnoDB: Mutexes and rw_locks use GCC atomic builtins
110807 20:03:29 InnoDB: Compressed tables use zlib 1.2.3
110807 20:03:29 InnoDB: Using Linux native AIO
110807 20:03:29 InnoDB: Initializing buffer pool, size = 128.0M
110807 20:03:29 InnoDB: Completed initialization of buffer pool
InnoDB: The first specified data file ./ibdata1 did not exist:
InnoDB: a new database to be created!
110807 20:03:29 InnoDB: Setting file ./ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
110807 20:03:30 InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
110807 20:03:30 InnoDB: Log file ./ib_logfile1 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: 127 rollback segment(s) active.
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
110807 20:03:31 InnoDB: Waiting for the background threads to start
110807 20:03:32 InnoDB: 1.1.8 started; log sequence number 0
110807 20:03:32 [ERROR] Aborting

110807 20:03:32 InnoDB: Starting shutdown...
110807 20:03:33 InnoDB: Shutdown completed; log sequence number 1595675
110807 20:03:33 [Note]
110807 20:03:33 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

メッセージファイル(/usr/share/mysql/english/errmsg.sys)の競合が発生しているようです。

該当ファイルの競合を確認
# rpm -q --whatprovides /usr/share/mysql/english/errmsg.sys
mysql-libs-5.5.15-1.el5.remi
mysql-5.0.77-4.el5_6.6

2つのバージョンが競合していることが分かりました。現状のmysqlをいったん削除します。
# yum -y remove mysql mysql-server mysql-libs

明示的にバージョン指定
# yum --enablerepo=remi install mysql-server.x86_64
# yum --enablerepo=remi install mysql-devel.x86_64

# mysql_install_db

# /etc/rc.d/init.d/mysqld start

因みにMySQL5.5系ではmy.cnfに以下の設定を記述すると起動しない。innodbがデフォルトエンジンだからかも。 
設定内容:skip_innodb

■PHP
# yum install -y --enablerepo=remi php
# php -v
PHP 5.3.6 (cli) (built: May 16 2011 19:18:05)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies

以上です。