連載
» 2008年04月02日 00時00分 公開

システム開発プロジェクトの現場から(13):最強チームで挑んだ、「40時間でデータ移行」の壁 (2/2)

[新楽清高,アクセンチュア・テクノロジー・ソリューションズ]
前のページへ 1|2       

第1回移行リハーサルスタートと事件発生

 移行プログラムの性能テストでも問題がないことが実証でき、いよいよ第1回移行リハーサルがスタートしました。移行リハーサルのメンバーは、サブリーダー4人と私。

 テープデバイスからデータを新システムのサーバにロードし、いざスタート!……したのですが、最初の大きなテーブルの移行処理時に、まさかの事態が起きました。性能検証時の1秒間当たりの処理件数は200件ほどだったのですが、何と40件/秒という、いままで見たことのない劣悪なスループットを出していたのです。

サブリーダー
Aさん
 「う、うーん。何ですかね? この遅さ……」

 「……もうじき速くなるんじゃないかな。取りあえず昼飯にでも行くか」

 若干思考が停止気味だった私とサブリーダーのうちの1人は、ひとまず昼食を取りに食堂に行きました。帰ってきたときには、もしかしたらスピードが戻っているのではないかという淡い期待を胸に……。

 食事をしながら多少冷静さを取り戻した私は、このままのスループットだと到底40時間では終えられないと判断しました。そこで、いったん処理をストップし、サーバを再起動するという苦渋の決断をしました。こんな気分での食事では……ほとんど味を感じることができませんでした。

 かくして作業場所に戻った私たちは、おそるおそるスループットを確認しました。

Aさん 「あっ!」

 「おお」

Aさん 「スループットが45に上がってます!」

 「……」

Aさん 「……」

 「じゃあ再起動しようか……」

Aさん 「そうですね……」

 ということで、私たちはサーバの再起動を試みました。ロスは1時間ほど。緊張しながら再度処理を開始したところ、奇跡(?)が起こりました。スループットが230件/秒に復活したのです!

 「このままいけば時間内に完了できる!」

 サーバは完全に生き返りました。本番移行手順書に「サーバの再起動」を追加したことはいうまでもありません。それ以降、処理は順調に進み、移行処理自体も終盤に差し掛かりました。

2つ目の事件とその解決、第1回移行リハーサル終了

 しかし、ここで2度目の悲劇が起こりました。終盤の複雑な処理の部分は、Oracleのストアドプロシージャで作成していたのですが、そのプログラムの1つが劇的に遅くなっていたのです。これも性能検証のときには問題なく動いていたはずなのに……。

 あれこれ調べた結果、リハーサルの準備段階で移行用の中間テーブルを再作成していたために、Oracleの統計情報が存在しない状態でSQLが発行されていたことが分かりました。そこで、プログラム実行中に統計情報を取得し直してみたところ、性能が完全に復活しました。全員ガッツポーズです。中間テーブル作成後にOracleの統計情報をインポートするということも、本番移行手順書に追加されました。

 こうした幾多の困難を乗り越え、移行プログラムは無事処理を完了しました。検証結果も問題なく、時間内に完了することができたのでした!

 それにしても、このメンバーであれば、何が起きても怖くはありませんでした。何とかなるような気がしてしまう、そんなチームでした。

そして、最強チームで迎えた本番

 その後、第2回移行リハーサルを実施。第1回での経験を基に精練された手順書もありましたので、失敗する要素もなく、問題なく完了することができました。後は本番を待つばかり。ですが、いくらリハーサルがうまくいっていてもやはり本番は不安なものです。

 そんな矢先、ハプニングが起こりました。お客さまのよんどころない事情も含めた諸々の事情により、本番稼働の日付が1週間変更になったのです。1週間変更になること自体には、何も問題はなかったはずなのですが、思わぬところに落とし穴がありました。サブリーダーの1人が土曜日に、友人の結婚式に出席する予定があったのです。

サブリーダー
Bさん
 「土曜日、友人の結婚式なのですが……」

 「いいよ。行っておいでよ」

Bさん 「名古屋なのですが……」(移行現場は東京でした)

 「えっ?」

 幸い調整可能な範囲でしたし、準備も万端でしたので、事なきを得ました。ただ、Bさんには大変な思いをさせてしまいました。結婚式出席→本番移行でしたから。1回だけどうしても確認したいことがあり、Bさんの携帯電話に連絡してしまったことがいまでも心苦しいです。

 こうして、苦労したリハーサルの集大成となる本番移行は、トラブルもなく、月曜午前1時ごろすべて完了しました。システムは無事に本稼働を開始し、移行に関するトラブルはまったく発生しませんでした。

 移行は、あまり目立たないものです。うまくいけばいくほど、目立ちません。でもこのとき、クライアントの移行担当者の方から感謝されたこと、そして何よりこの最強チームで取り組めたことが、私はうれしくて仕方ありませんでした。

 本番移行が無事終わって、ほっとしましたし、かなりの達成感もありました。それと同時に、このチームでの仕事も終わりかと思うと、少し寂しい気持ちにもなりました。

 1人1人が常にどうすればうまくいくかを考え、実行し、期待された役割以上のものを果たしていく。私が目指すチームの形が見つかった気がしていたのです。

筆者紹介

アクセンチュア・テクノロジー・ソリューションズ

新楽清高

1973年生まれ。東京生まれの東京育ち。大学で都市計画を専攻後、社員100人ほどのシステムインテグレータにてSEとしてセールス〜要件定義〜開発・テスト〜運用までを行う。その後2003年11月にアクセンチュア・テクノロジー・ソリューションズに入社。Java、.NET、SAPにて大規模な基幹システムの構築に携わり、現在に至る。基本ポリシーは「楽しく」。趣味はトラブル対応。



「システム開発プロジェクトの現場から」バックナンバー
前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。