いつの間にか3ヶ月が過ぎ、試用期間を終えたやまうちぇです。こんばんは。

本日は初の16F 全体MTGにも参加し、名実ともにエイチームの一員となった心持ちです。

毎日、毎日、割と遅くまで、イベントリリース日には朝方までいることもしばしばですが、

自分が満足するまで仕事をして帰る生活は、非常に充実感をおぼえます。

私生活とのメリハリも一見ついていないようで、ON・OFFの切り替えはできています。

効率が悪いとの見方もできますが、やはり満足できる仕事の仕方は良いですね。

これ(時間を自由に使えるやり方)に甘えて成長できないのは、個人の責任だと思います。

さて、mkfifo 初めて使いました…

使ったと言っても、MySQL公式サイトのマニュアルどおりですがね。

速度重視、柔軟性をちょこっと兼ね備えたmysqldumpに変わるダンプ・リストア方法です。

今受け持っているプロジェクトでは、日付ごとにわけられたログテーブルから色々集計する分けですが、

ある程度の期間をまとめた集計用の仮テーブルをつくることがあります。

今は、そのテーブルを作るためだけに毎日4, 5時間かかっているのですが、5分程度に抑えれそうですヽ( ´¬`)ノ

(例)外部サーバにあるfrom_tableをローカルのto_tableにコピーする場合

$ mkfifo -m 666 /tmp/pipe

$ echo “SELECT  *  FROM from_table” | mysql -u root -A -N -h  xxx.xxx.xxx.xxx db1 > /tmp/pipe & mysql -u root -e “LOAD DATA INFILE ‘/tmp/pipe’ INTO TABLE to_table” db

ネットワーク、テーブル構成秘密ですが、20万行が2, 3秒で終わりました。

indexを張る作業がいちいち行われないのが早さの理由ですので、使いどころは考えて。

[参考URL]

http://blog.deskportal.net/hideki/category/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2/?lang=ja

http://dev.mysql.com/doc/refman/5.0/en/load-data.html