MySQLサーバへ移行中

  • 投稿日:
  • by

  ここ数年データベースはPostgresを中心に色々と携わってをきましたが、数ヶ月前より本格的にMySQLへ移行し、そろそろそれの終わりが近づいてきています。

 一番の苦痛はコマンドの差異で、つい逆のDBのコマンドをしてしまいイライラしていましたが終わりも近づくとなんとなく慣れてむしろ寂しさを感じます。 その次はSELECTの速度かな。。。

 決して自信のある状態でMySQLサーバに取り組んだ訳ではありませんでしたが、最近は特に負荷の見極めとチューニングなども経験と対応し自信も出てきました。

 嫌な思い出は沢山ありましたが、Postgresにいったん見切りをつけます、お疲れさまでした。。。

実践ハイパフォーマンスMySQL
ジェレミ・D. ザウドニ デレク・J. ベリング
オライリージャパン
売り上げランキング: 74788
おすすめ度の平均: 4.5
4 チューニングの基礎知識が載っている
5 こんな本が欲しかった
4 MySQLの裏技集
4 もう少し分量があれば・・・
5 こんな技術解説書がもっと世にあれば

Hadoopで遊んでみる。(その1)

  • 投稿日:
  • by

詳しくは、
 Googleライクなオープンソースインフラストラクチャ「Hadoopプロジェクト」が弾みをつける

本家
 http://hadoop.apache.org/core/


・・・遊んでみよう!

=============================
インストール&設定

Hadoop構成:
 

 server1 : JobTracker + NameNode
 server2 : SecondaryNameNode
 server3 : TaskTracker + DataNode
 server4 : TaskTracker + DataNode

環境:
 Java
    /usr/local/java
  実行ユーザ: hadoop
 Hadoopインストールルートディレクトリー
    ・・・ http://hadoop.apache.org/core/ よりダウンロード(Ver 0.16.1)
    /home/hadoop/hadoop
  Hadoopファイルシステム
    /home/hadoop/filesystem

 各サーバ間でSSH接続が出来る事。

環境構築:
 
server1 で パスフレーズなしのキーペアを作成。
 % ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

 生成されたid_dsaファイルを名前を変えてserver2 からserver4へコピー
 コピー先:/home/hadoop/.ssh/authorized_keys
  $ chmod 600 ~/.ssh/authorized_keys   ←パーミッションを変更

設定ファイル:
 ファイル:/
home/hadoop/hadoop/conf/hadoop-env.sh
 内容:JAVA_HOMEを設定

  export JAVA_HOME=/usr/local/java

設定ファイル:
 ファイル:/
home/hadoop/hadoop/conf/hadoop-site.xml
 内容: sever1,2,3,4共通

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
        <property>
                <name>fs.default.name</name>
                <value>server1:9000</value>
        </property>
        <property>
                <name>mapred.job.tracker</name>
                <value>server1:9001</value>
        </property>
        <property>
                <name>dfs.name.dir</name>
                <value>/home/hadoop/filesystem/dfs/name</value>
        </property>
        <property>
                <name>dfs.data.dir</name>
                <value>/home/hadoop/filesystem/dfs/data</value>
        </property>
        <property>
                <name>mapred.system.dir</name>
                <value>/home/hadoop/filesystem/mapred/system</value>
        </property>
        <property>
                <name>mapred.local.dir</name>
                <value>/home/hadoop/filesystem/mapred/local</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
</configuration>

 ファイル:/home/hadoop/hadoop/conf/masters
  内容: server1のみ

server2

 ファイル:/home/hadoop/hadoop/conf/slaves
  内容: server1のみ

server3
server4 

ファイルシステムを構築:
 #
server1 上で実行 

$ cd /home/hadoop/hadoop
$ bin/hadoop namenode -format

  ※ /home/hadoop/filesystem 配下にHadoopのファイルシステムが構築

起動:
 #
server1 上で起動させる。
 $ cd /home/hadoop/hadoop
 $ ./bin/start-all.sh     (停止は、stop-all.sh) 

 各サーバ上で確認(Javaのjpsコマンドで確認。jps自体も表示されるが省略)
 server1 :
   % jps
   7808 NameNode
   7942 JobTracker 

 server2 :
   % jps
   8255 SecondaryNameNode

 server3,4
   4328 DataNode
   4414 TaskTracker

=============================
ファイルを格納:

例としてインストールした hadoopを格納(hadoop_putという名前で格納)
 $ cd /home/hadoop
  $ ./hadoop/bin/hadoop dfs -put hadoop hadoop_put

 確認
  $ ./hadoop/bin/hadoop dfs -ls
 Found 1 items
 /user/hadoop/hadoop_put      <dir>           2008-03-25 17:47

 取り出し(hadoop_getという名前で取り出し)
 $ ./hadoop/bin/hadoop dfs -put hadoop_put hadoop_get

ファイルシステム(NameNode )の状況を確認:
   
WEBブラウザより確認(server1のポート50070 へアクセス)
   http://server1:50070

 =============================
Jobを投入:

例1:Sudoku (サンプルデータ:puzzle1.dta を解析)
$ cd /home/hadoop/hadoop
$ ./bin/hadoop jar hadoop-0.16.1-examples.jar sudoku src/examples/org/apache/hadoop/examples/dancing/puzzle1.dta

8 5 1 3 9 2 6 4 7
4 3 2 6 7 8 1 9 5
7 9 6 5 1 4 3 8 2
6 1 4 8 2 3 7 5 9
5 7 8 9 6 1 4 2 3
3 2 9 4 5 7 8 1 6
9 4 7 2 8 6 5 3 1
1 8 5 7 3 9 2 6 4
2 6 3 1 4 5 9 7 8  

例2:円周率
$ cd /home/hadoop/hadoop
$ ./bin/hadoop jar hadoop-0.16.1-examples.jar pi 10 10000

Number of Maps = 10 Samples per Map = 10000
Wrote input for Map #0
Wrote input for Map #1
Wrote input for Map #2
Wrote input for Map #3
Wrote input for Map #4
Wrote input for Map #5
Wrote input for Map #6
Wrote input for Map #7
Wrote input for Map #8
Wrote input for Map #9
Starting Job
08/03/25 20:09:45 INFO mapred.FileInputFormat: Total input paths to process : 10
08/03/25 20:09:46 INFO mapred.JobClient: Running job: job_200803251837_0002
08/03/25 20:09:47 INFO mapred.JobClient:  map 0% reduce 0%
08/03/25 20:09:50 INFO mapred.JobClient:  map 20% reduce 0%
08/03/25 20:09:52 INFO mapred.JobClient:  map 60% reduce 0%
08/03/25 20:09:53 INFO mapred.JobClient:  map 80% reduce 0%
08/03/25 20:09:54 INFO mapred.JobClient:  map 100% reduce 0%
08/03/25 20:10:01 INFO mapred.JobClient:  map 100% reduce 100%
08/03/25 20:10:02 INFO mapred.JobClient: Job complete: job_200803251837_0002
08/03/25 20:10:02 INFO mapred.JobClient: Counters: 9
08/03/25 20:10:02 INFO mapred.JobClient:   Job Counters
08/03/25 20:10:02 INFO mapred.JobClient:     Launched map tasks=10
08/03/25 20:10:02 INFO mapred.JobClient:     Launched reduce tasks=1
08/03/25 20:10:02 INFO mapred.JobClient:     Data-local map tasks=7
08/03/25 20:10:02 INFO mapred.JobClient:   Map-Reduce Framework
08/03/25 20:10:02 INFO mapred.JobClient:     Map input records=10
08/03/25 20:10:02 INFO mapred.JobClient:     Map output records=20
08/03/25 20:10:02 INFO mapred.JobClient:     Map input bytes=240
08/03/25 20:10:02 INFO mapred.JobClient:     Map output bytes=320
08/03/25 20:10:02 INFO mapred.JobClient:     Reduce input groups=2
08/03/25 20:10:02 INFO mapred.JobClient:     Reduce input records=20
Job Finished in 16.432 seconds
Estimated value of PI is 3.14412 

Map/Reduce(JobTracker )の状況を確認:
   
WEBブラウザより確認(server1のポート50030 へアクセス)
   http://server1:50030

   前例の円周率は時間がかかるので、この間管理画面より状態が解る。   

官公庁の内閣WEBサイトの検索エンジン

  • 投稿日:
  • by

宮内庁のWEBページの検索エンジンがNamazuだったので他の内閣はどんなエンジンを使っているか調べてみた。

Namazu(ふーん)
 宮内庁:http://www.kunaicho.go.jp/
 人事院:http://www.jinji.go.jp/
 総務省:http://www.soumu.go.jp/
 法務省:http://www.moj.go.jp/
 経済産業省:http://www.meti.go.jp/
 防衛省:http://www.mod.go.jp/

Google アプアライアンス(たぶん・・・)
 農林水産省:http://www.maff.go.jp/

・・・以下不明な検索エンジン(Inktomiかと思ったり思わなかったり・・・)

不明ソフトウェアの検索エンジンその1
 内閣官房:http://www.cas.go.jp/
 文部科学省:http://www.mext.go.jp/
 外務省:http://www.mofa.go.jp/mofaj/

不明ソフトウェアの検索エンジンその2
 内閣法制局:http://www.clb.go.jp/
 内閣府:http://www.cao.go.jp/
 公正取引委員会:http://www.jftc.go.jp/
 金融庁:http://www.fsa.go.jp/
 環境省:http://www.env.go.jp/

不明ソフトウェアの検索エンジンその3(Javaベース)
 国家公安委員会:http://www.npsc.go.jp/
 警察庁:http://www.npa.go.jp/

不明ソフトウェアの検索エンジンその4(PHPベース)
 財務省:http://www.mof.go.jp/

不明ソフトウェアの検索エンジンその5
 厚生労働省:http://www.mhlw.go.jp/

不明ソフトウェアの検索エンジンその6
 国土交通省:http://www.mlit.go.jp/

・・・
※参考までに、このサイトで横断的に検索出来ます。

Google新デザインをテスト中?

  • 投稿日:
  • by

 家のMac+FireFoxでGoogleの検索に「新デザインに切り替える」ボタンがついた。 このボタンを押すとデザインが変わったので、会社で普通にMacユーザと話したところあまり信じてもらえなかったので、画像をアップロード! もちろんiGoogleではないし、Google関係の拡張機能といえばToolbarを入れているぐらい。 あまり良く調べていませんが新デザインのテスト中かな?

「新デザインに切り替える」ボタンがある。

google_design1.png

新デザインの画面。 タブでメニューが見やすくなっている。

google_design2.png

久しぶりに一人になる時間が出来たので、HEROレミーのおいしいレストランを観てきた。
 
HERO はドラマも全て観ていたのとストーリーのテンポが好きだったので映画版も観にいきましたが、感想は懐かしかったものの松たか子の髪型が変わってしまった事 が非常に気になった。 当初のテレビ版でも昨年のスペシャルでも変えていなかったのに何故劇場版ではばっさりと切ってしまったのだろうか? 一応楽しめた ものの個人的にはスペシャル版が一番好きです。

この日は1本だけ見ようと思い行きましたが都合により時間が空いてしまったので、もう1本レミーのおいしいレストランも見ましたが案の定子供だらけ。 そこへおじさんが一 人で、、、怪しいと思われても仕方ないと思いましたが最後まで鑑賞しました。 見た感想ですがコンピュータ感を感じさせず、もはやCGとは思わせないピク サーの技術に関心し、内容も大人ながらに感動し非常に良かったです。 家に帰ってから奥さんに話したところ是非見たいと言っていたので年末にはDVDで販 売されるとの事なので買ってやろうと思いました。


 

Purple Include

  • 投稿日:
  • by

面白かったのでエントリー
Purple Include Test of Blogger Integration

↑このページの説明に従ってJavaScriptを埋め込み、以前書いたエントリー
http://www.blogkid.com/weblog/archives/001498.html から
「Google Talk Gadget」の文字列というか最初に出現するH1タグの情報を取得する場合は次のような書き方をすれば取得出来ます(他にも色々な取得方法があります)
<span
href="http://www.blogkid.com/weblog/archives/001498.html#xpath(//h1[1])"
></span>
↓こんな感じで取得できます。


※JavaScriptとサーバサイドのプログラムで実現しています。
※日本語は化けます。サーバ側のプログラムを変更しないとたぶん無理です。

ツールを使ってJavaScriptを圧縮

  • 投稿日:
  • by

Introducing the YUI Compressor のツールで prototype.js ( 96311 バイト)を圧縮すると。

% java -jar yuicompressor-1.0.jar prototype.js
prototype-min.js( 58672 バイト )というファイル名に変換され約4割圧縮する事が出来た。

jscsscomp というツールも試してみましたが、私の環境では、prototype.js の圧縮でエラーになった。 しかしこのツール本来であれば複数のCSSやJavaScriptを1つにまとめる事も出来るのでなかなか面白い。

MacBook Proを購入

  • 投稿日:
  • by

 奥さんのPCが7年目に入りかなりガタがきていたのでVISTAが動くPCを検討していましたが、Windowsに飽きたり友達でMacユーザが多い事等に影響されMacBook Proを購入しました。 本当は新型のiMacも勧めましたがリビングには大きすぎるという事で結局ノート型になりました。 しかし奥様のパソコンとはいえ当面は私が毎日遊びます。

アップル、MacBook Proをアップデート

MovableType4 へバージョンアップ

  • 投稿日:
  • by

8月8日にシックス・アパートからリリースされました、MovableType4 へバージョンアップへバージョンアップしました。
Movable Type 4 を出荷開始します

バージョンアップはダウンロードから2分程度で完了し、デザインはVOXにあるデザインを使えますがいろいろと、ごにょごにょすること30分、悩む事もなく簡単に3列デザインへ変更できました。

使ってみての感想ですが操作性が非常に良くWYSIWYGはもちろん、テンプレートを個別での管理やインクルードしているテンプレートの視覚化とリンクなど・・・MT3から大幅に変更されましたが違和感なく使えました。