まだプログラマーですが何か?

プログラマーネタ中心。たまに作成したウェブサービス関連の話も https://twitter.com/dotnsf

2014/12

このブログエントリを書こうと思ったキッカケはこの技術記事でした:
MySQL / MariaDB 5.7 on POWER8 パフォーマンス情報

MariaDB を Power8 搭載サーバー(の Linux)上で動かすと非常に高いパフォーマンスを発揮させることができる、という内容です。

現在、Power サーバー上で動く RHEL(RedHat Enterprise Linux) 6.6 では、普通に yum で MySQL をインストールすることはできます。ただ標準リポジトリに用意されている MySQL のバージョンは低く、上記記事で書かれたパフォーマンス改善パッチが適用されたものではありません。 また MariaDB のバイナリはまだ Power Linux 向けには提供されておらず、厳密には正式な稼働プラットフォームでもありません。 というわけで、Power Linux 上で MariaDB をソースコードからビルドして動かすまでの手順を紹介します。

まずは環境の用意です。ほとんどの人は Power チップ搭載サーバーを使える環境は手元にないと思いますが、IBM のビジネスパートナーであれば、ビジネスパートナー向けに無償で(クラウド経由で)提供されている IBM PDP(Power Development Platform) を使うことも可能です。IBM PDP の説明や RHEL on Power の利用手順についてはこちらを参照ください:
Power 版 RHEL(RedHat Enterprise Linux) を無料で2週間借りる(1/2)
Power 版 RHEL(RedHat Enterprise Linux) を無料で2週間借りる(2/2)
IBM PDP で Power Linux をすぐに使えるように予約する


今回、MariaDB をソースコードからコンパイルしてインストールします。その場合、RHEL の導入時に "Development Tools" を導入しておく必要があります:
# yum groupinstall "Development Tools"

また、libaio-devel パッケージが必要です:
# yum install libaio-devel

更に、MariaDB をソースファイルからコンパイルする際のビルドツールには configure ではなく cmake を使います。というわけで cmake を事前に導入しておきます:
# yum install cmake


事前準備ができたら早速 MariaDB のソースコードを公式サイトからダウンロードします。このブログエントリを書いている時点での最新安定バージョンは 10.0.15 だったので、これを使います(上記記事のパフォーマンス改善パッチが適用後のバージョンです)。

ダウンロードサイトから "Source" と書かれた mariadb-X.X.X.tar.gz(X.X.X はバージョンなので、今回であれば 10.0.5)のリンクをクリックして、このファイルをダウンロードします:
2014122901


ダウンロードできたら /usr/local/src 以下に展開します:
# cd /usr/local/src
# tar xzvf ~/mariadb-10.0.15.tar.gz

ここからが Power Linux 用の特殊な部分です。最初に cmake で Makefile を作りますが、以下のオプションを付けて cmake を実行します:
# cd mariadb-10.0.15
# cmake . -DLDLIBS=-lpthread -DCMAKE_C_FLAGS=-mminimal-toc -DCMAKE_CXX_FLAGS=-mminimal-toc -DBUILD_CONFIG=mysql_release

cmake コマンドが正常終了したら make でビルドして、インストールします:
# make
# make install

これで Power Linux の /usr/local/mysql 以下に MariaDB が導入されます。



 

IBM PDP(Power Development Platform) は IBM がビジネスパートナー向けに無料で Power チップのサーバーをクラウド経由で貸し出すサービスです。この利用方法やセットアップ手順については以前のブログで記述しているのでそちらを参照ください:


この予約手順の中で、1つ不満というか、仕様が???な箇所がありました。それはアメリカとの時差の関係で、申し込みから最短でも18時間ほど待つことになる、ということです。まあ18時間待てばいいとも言えるのですが、「それすらも待てん!」というタイム・イズ・マネーなあなたに贈る裏ワザです。

まず現象を確認してみましょう。実際の PDP でのサーバー予約画面がこちらです:
2014122601


いくつかの必須入力項目がありますが一旦無視します。そして Project Dates(利用期間)欄に注目です。ローカルタイムとして 2014/12/26 12:43PM と出ています。これは日本時間です。利用時間は米国東海岸時間で指定する必要があります。また利用開始は現在から2時間以上先の時刻を指定する必要があります。

この現在時刻は米国東海岸時間では 2014/12/25 10:43PM なので、計算上では 2014/12/26 00:43AM 以降を指定すればいいということになります。 というわけで念のため 12 時間ほど余裕を持たせて 2014/12/26 01:00PM を指定してみました。で、 "Add resources to project" ボタンをクリックします:
2014122602


ところがエラーです。"The start date and time should be more than 2 hours ahead of the current date and time." つまり「現在よりも2時間以上先じゃないとダメよ」というエラーメッセージですが、それは分かっていたつもりでした:
2014122603



どうやら「現在のローカル時間で2時間以上先の時刻を指定する。ただしその指定時刻は米国東海岸時刻と解釈されて予約される」という困った(?)挙動になっているようなのでした。

つまり上記例だと現在が日本時間で 2014/12/26 12:43PM なので、2014/12/26 02:43PM 以降の時刻でないと受け付けない、というエラーが出ていることになります。そしてここに 2014/12/26 03:00PM と指定すると、予約はできるのですが、米国東海岸時刻での 2014/12/26 03:00PM(日本時間 2014/26/27 07:00AM)から使えるようになる、という予約をしたことになるのでした。上記で「18時間待つ」と書いたのはこういう背景があるのでした(2時間+時差16時間)。うーむ、なるほど・・・ (^^;;

まあ使える期間が変わるわけではないし、そこまで急ぐ必要がなければこれで逆算しながら予約してもいいのですが、どうしても2時間後から使いたい、という場合は以下の手順を実行してください。


まずロケールを変更します。 Windows であればコントロールパネルから「日付と時刻」をクリックし、「タイムゾーンの変更」ボタンをクリックします:
2014122604


タイムゾーンを米国東部標準時に変更して、OKをクリックします:
2014122605


これでこの PC は米国東海岸時間で動いていることになります:
2014122606


改めて PDP のサーバーリソース予約画面を開いて利用期間を指定します。今度はローカルタイムが先程変更したように米国東海岸時間(2014/12/25 10:45PM)になっていることを確認して、その2時間ちょっと先である 2014/12/26 01:00AM からの利用を指定します。併せてプロジェクト名など他の必須入力項目も埋めておきます。最後に "Add resources to project" ボタンをクリック:
2014122607


今度は成功しました! エラーメッセージもなく、Resources 欄に指定のマシンリソースが追加されたはずです。最後に "Create project and resavation" ボタンでサーバーリソースの予約を完了すれば、約2時間後から利用できるリソースが予約できます:
2014122608


なお、タイトルでは Linux を借りる場合という書き方としていますが、AIX や IBM i を借りる場合も同様です。

予約後はまたロケールを元に戻しておくことをお忘れなく。


(2014/Dec/27 追記)
上記で「米国東海岸時間」と書いていますが、自信なくなってきました。もしかすると「米国山岳時間」にするのが正解かもしれない・・・



 

この記事の続きです:
2014 マンホーラー実態調査

Google Analytics のデータを使ったマンホールマップの 2014 年利用動向を解析するシリーズ、2回目は今年最も人気のあったマンホール、ベスト10を公開します。


「人気のあった」の基準は2014/01/01~2014/12/19の純粋なアクセス数とします。Google Analytics なのでグーグルボットのアクセスはカウントに含まれません。またPC 版とスマホ版のサイトがありますが、その合計数で順位を決めます。

なお、以下の表内の画像部分をクリックすると、マンホールマップ内の該当ページにジャンプするので、是非参照してください。


最初に 2014 年の新人賞です。2014 年に投稿されたマンホール蓋の中でもっともアクセス数の多かったマンホール蓋はこれでした:
市区町村投稿者画像
東京都足立区wakochan816

↑小林一茶の名句「やせ蛙 負けるな一茶 是にあり」の句がデザインされた竹の塚のマンホールでした。ちなみにこの蓋の人気は全体でも16位でした。


この通りは他にもオリジナルのデザイン蓋がいくつか配置されており、東京都23区内では屈指のカラーマンホール帯となっています。



そしてベスト10の発表です。まずは10位から4位までの発表です:

順位市区町村投稿者画像
10大阪府大阪市此花区route507

↑ナイスマンホ数でも全体で4位の人気蓋、大同電力株式会社


順位市区町村投稿者画像
9静岡県裾野市EkikaraManhole

↑富士山も描かれた、五竜の滝の美しいマンホール


順位市区町村投稿者画像
8大分県豊後大野市ueda63682587

↑豊後大野市の公式ゆるキャラ「ヘプタゴンちゃん」のカラーマンホール


順位市区町村投稿者画像
7石川県河北郡内灘町keymoyaking

↑ナイスマンホ数では堂々の第1位、カモメが描かれた河北の美しいマンホール


順位市区町村投稿者画像
6北海道岩見沢市EkikaraManhole

↑旧栗沢町の公式マスコット「クリちゃん」


順位市区町村投稿者画像
5東京都狛江市morimo_t

↑多摩川五本松とコサギがデザインされた人気蓋


順位市区町村投稿者画像
4三重県伊賀市ITIKAWA

↑忍者が描かれた伊賀市のマンホール


アクセス数でも上位本命と思われたナイスマンホ数上位蓋陣はトップ10には入ったもののまさかの下位。波乱含みのランキングはトップ3です。


第3位!

順位市区町村投稿者画像
3東京都渋谷区dotnsf

「渋谷のハチ公」周辺だけに数個だけ存在するハチ公マンホールでした。これも指折りに人気のある有名蓋です。僭越ながら僕が投稿させていただきました。


第2位!

順位市区町村投稿者画像
2東京都三鷹市kakuyodo

ジブリ博物館のマンホール蓋、というか擬似蓋? ジブリにあまり詳しくなくて、このデザインがジブリと何の関係があるのか知らないのですが、マンホールマップのアクセス数では堂々の2位でした。今年にかぎらず、コンスタントに人気のある蓋です。


本命視されていたマンホールが2位までに大方でてしまったような印象があります。そして 2014 年 MVM(Most Variable Manhole)でもある今年のアクセス数第一位の蓋はなんと超大穴!(マンホールだけに)























順位市区町村投稿者画像
1北海道石狩郡当別町yanapong

北海道石狩郡当別町のマスコットキャラクター「コメちゃん」のマンホールでした。やなぽんさん、投稿ありがとうございます、そしておめでとうございます!

いやあ、恥ずかしながらこの蓋のアクセス数が上がった理由がわかりません(苦笑)。投稿は2011年で、特別に目新しいことはありません。Google Analytics で調べてみても、確かに突出してアクセス数の増えた特異日があったことは事実(F5アタックでも食らったんでしょうかね。 (^^;)ですが、それを抜きにしても一年間それなりに安定したアクセスが記録されていました。僕が気付かないレベルで隠れた人気蓋だった、ということになりそうです。


最後になりましたが、今年はマンホールマップ関連で賞をいただいたり、発表や紹介の場を設けさせていただいたりと、これまでの活動が少しずつ評価されつつある段階に来ていると感じています。 同時にマンホールマップのアクセス数が伸びていることから、利用者数そのものが増えてきていて、日本のマンホール蓋に興味を持っていただく人が多くなってきていることも実感しています。 その手助けの一介になっていれば大変嬉しいですし、それは利用している皆さんのおかげでもあります。

今後もより便利なサービスを目指していくつもりなので、2015年以降も引き続きマンホールマップをよろしくお願いします。



 

2014 年も終わりが近づいてきました。

このたび拙作マンホールマップにおける2014年分の利用実態調査を行ったので、そのレポートを2回に分けて発表させていただきます。初回はアクセス解析結果より世の中の「マンホーラー」の実態を浮き彫りにしよう、というのが目的です。いちおうビッグデータ解析です。 

なお、データは全て Google Analytics から取り出したものです。グーグル先生、こんな便利なツールを無料で提供いただき、いつも大変お世話になっております。 m(__)m


また、以下のデータには利用者の年齢や性別、趣味、言語といった情報が含まれていますが、これらはグーグルのプロフィール予測に基づくものです。グーグルに正しい情報を入力している人の場合はその正確なデータが使われますが、グーグルに情報を入力していない人の場合は、ウェブページの閲覧履歴から、これらのデータを予測しており、その予測データが使われています。

あなたがグーグルからどんな人だと思われているのか、興味がある人はこちらのサイト(https://www.google.com/settings/ads/onweb/?hl=ja)を見てください。


では実態調査の発表です。まずは「2014 年マンホールマップの年齢別利用率」です:
2014121901

あら、意外と(?)若い。この結果を見る前は 35-44 歳がダントツの印象を持っていたのですが、結果は 25-34 歳の層が全体の3分の1のアクセスを占めての1位。そして更に若い 18-24 歳の層が2位となりました。マンホーラーの未来は明るいです!

次は「マンホールマップ利用者の性別」
2014121902

わずかに男性の方が上回っていますが、女性率なんと 45.85 %!これなら合コンが成立する割合です(笑)。「マンホール女子」が 2015 年の流行語大賞ダークホースに踊りでたと言っても過言ではないでしょう。


そして「マンホールマップ利用者の興味分野」、つまり利用者の趣味です。これはまあ普通に「旅行」関係でしょう、と思っていたら・・・
2014121903

1位は「ウォーキング」と考えればまあ分かる。3位も「サイクリング」なので自転車で探しまわる人がいるのでしょう。4位の「フード」は食べ歩きとセットなんですかね。大本命と思われた「旅行」は5位。 

そしてこれらに割って入ったのが2位の「コンピュータ」。いや、たしかに周囲に関係者が多いのは実感として分かっていました。分かってましたが、「マンホール」と「コンピュータ」の意外な結びつきが明らかになりました。本当にビッグデータ解析っぽくなってきましたよ(笑)。


ここから下はより一般的なウェブ統計情報です。

まずは「新規ユーザーと既存ユーザーのアクセス比率」です:
2014121904

新規ユーザーの方が10ポイントほど上回っており、常に新しいユーザーの開拓に成功していることが分かります。自画自賛!

次は利用者の言語。これはブラウザに設定された優先言語を見ているのだと思います。つまり日本人がアメリカから日本語環境でアクセスした場合は「日本語」としてカウントされ、アメリカ人が日本に来て、アメリカ設定でアクセスした場合は「米語」としてカウントされる、ということです。 さて日本語が高いのはわかるとして、その次に高いのは・・・
2014121905

英語(米語)でした。アメリカ人も日本のマンホールに興味を持っている、と考えていいんでしょうかね。


次はアクセス元の国別です。こちらも上記の結果からアメリカかな、と思っていたら・・・
2014121906

2位おそロシア! 3位フランス! 以下、英国、インド、ニュージーランド(!?)と続いて、アメリカ7位。これは意外でした。

これらの結果だけから推測すると、アメリカ人がロシアやフランスに渡った際にマンホールマップを見ている可能性が高い、ということになります。本当か? (^^;


次は日本国内の市区町村別アクセス元ランキング。こちらの結果は・・・
2014121907

1位港区、2位浦安市、3位渋谷区。。。 仕事中にマンホールマップを見ているのがバレた可能性が僕の地元船橋市がありません。もっと頑張らねば!

続いていきましょう、利用ブラウザランキング。一応マンホールマップを PC から見る場合は Chrome を推奨しているのですが、実態はというと・・・
2014121908

まさかの Internet Explorer !これ動作確認もしてないどころか、非推奨ブラウザなんですけど・・・


では OS 別ではというと・・・
2014121909

まあ順当、ですかね。 ちなみに1位の Windows はダントツ。2、3、4位が激戦。6位の Chrome OS はおそらく僕だけのデータです(苦笑)。


以上の統計結果より、意外に面白い 2014 年版マンホーラーの実態が浮き彫りになってきました:

・若い女性/新規参入者が多い
・「リア充」か「コンピュータおたく」に2極化している
・アメリカ人がロシアやフランスに旅行してマンホールを探している
・Internet Explorer の根絶は無理!


最後のはマンホーラーとは関係ないような気もするけど・・・


さて、次回はいよいよマンホール蓋別年間アクセスランキングの発表です。栄えある 2014 MVM(Most Variable Manhole) に輝くのはどのマンホール蓋か!? お楽しみに!


(2014/12/21 追記)
続きはこちら

 

CentOS にデフォルトで導入される PHP は 5.3 系です:
# php -v
PHP 5.3.3 (cli) (built: Oct 30 2014 20:12:53)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

場合によってはこのバージョンでは不都合が生じ、もっと新しい 5.4 や 5.5 が必要になることがあります。その場合の導入方法を紹介します。

まずは必要な yum レポジトリを追加します(CentOS6 64bit の例)。これによって標準状態では探せなかった PHP5.4 や PHP5.5 を探すことができるようになります:
# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/ius-release-1.0-11.ius.el6.noarch.rpm
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
次にインストール済みの PHP 5.3 パッケージを削除します:
# yum erase php*

そして新しい PHP のモジュールをインストールします。PHP 5.4 であればこんな感じ(この例では PHP 本体に加えて、他バイト言語用拡張と MySQL 用拡張を追加しています。必要なものを適宜同様に加えてください):
# yum install php54 php54-mbstring php54-mysql

PHP 5.5 ではこのようになります:
# yum install php55 php55-mbstring php55-mysql

最初にリポジトリを追加してしまえば簡単ですね。

 

このページのトップヘ