事例紹介 Case Studies

SRA OSS合同会社|もし「Insight SQL Testing」なしで移行作業をしていたら、より多くの時間とコストが必要でした。信頼性の向上やコスト削減の観点からも、メリットは計り知れません

ITプロフェッショナルにとっても、自社の基幹システムを移行する作業は気が重いものだ。万が一トラブルが発生すれば、社内業務が滞ることはもちろん、顧客にも迷惑がかかる。本番環境や性能に影響を与えず、かつ最小限の人的リソースで作業を終えるにはどうすればよいのか。オープンソースソフトウェアの事業を展開するSRA OSSが求めた“解”は、Insight SQL Testing(旧名称:Insight Database Testing)の導入」だった。ITプロフェッショナルの眼から見た「Insight SQL Testing」の優位性とは何だったのだろうか。

もし「Insight SQL Testing」なしで移行作業をしていたら、より多くの時間とコストが必要でした。信頼性の向上やコスト削減の観点からも、メリットは計り知れません

チーフエンジニア
千田 貴大

15年使い続けた基幹システムを
バージョンアップ

SRA OSSの歴史は古い。日本で「オープンソースソフトウェア(OSS)」がまだ認知される前の1999年、国内独立系システムインテグレータである株式会社SRAの一事業部として誕生した。以降、20年以上に渡ってOSS事業を展開しており、オープンソース・データベースの「PostgreSQL」を中心に、OSSのミドルウェアも含めて幅広く提供。現在はOSSを活用したシステムの運用やソフトの開発・販売、サポートサービスはもちろん、顧客ごとの要望に合わせた技術支援やコンサルティング、トレーニング事業も展開している。

SRA OSS合同会社のチーフエンジニアを務める千田 貴大氏は、「以前はOSSに対して『安全性への不安』『専門知識を持つエンジニアがいない組織では扱いづらい』といったイメージがありました。しかし、現在ではOSからミドルウェアに至るまで、エンタープライズや金融系のミッションクリティカルなシステムでもOSSは活用されています」と説明する。

SRA OSSのスタッフは、その大半がOSSのスペシャリストだ。当然、自社の基幹システムやツール・アプリケーションはすべて自分たちがOSSで開発・運用している。こうした状況下、社内には15年以上使っているシステムもあったため、バージョンアップを決めた。そのシステムは営業向け案件管理、勤怠管理、ワークフロー申請を担っていた基幹システムで、具体的には「PostgreSQL10.1」から「PostgreSQL16.1」への移行案件である。同システムは長期間の利用で多様な機能が追加されており、もし移行作業に失敗してシステムが停止すれば、業務に支障を来す。作業は極めて慎重に進める必要があった。

さらに、当初はPostgreSQLのバージョンアップだけを予定していたが、エンコーディング変更とサーバ移行も実施することになった。PostgreSQL10.1ではEUC-JPエンコーディングを使用していたが、現在の技術基準から見れば古い。システムを最新の技術基準に合わせるためのEUC-JPからUTF-8への変更と同時に、サーバの刷新もプロジェクトに追加されたという。

「我々はOSSの“技術屋”ですから、バーションアップは自分たちで行うことが前提でした。しかし、弊社社長の稲葉から『データベースマイグレーションに適したツールがある』と紹介されました。それがインサイトテクノロジーの『Insight SQL Testing』だったのです」(千田氏)。

チーフエンジニア 千田 貴大氏

実質2カ月で移行作業が完了

「Insight SQL Testing」はリレーショナルデータベース(RDBMS)やアプリケーションの移行を支援するソリューションだ。本番環境でアプリケーションが発行するSQLを低負荷で自動収集し、種類やバージョンの異なるデータベースの移行時に課題となるSQLの互換性を事前に評価したり、SQL文のテストを自動化したりして移行を支援する。「PostgreSQL」はもちろん、「Oracle Database」「SQLServer」「MySQL」といった幅広いデータベースにも対応している。

SRA OSSでは2023年5月からバージョンアップ計画を立案し、9月から作業を開始。そこから実質2カ月完了した。短期間で作業が完了したことについて、千田氏は「これまで必要なSQLの収集は手作業で行っていました。しかし、Insight SQL Testingの導入でこれらを全て自動かつ網羅的に収集し、修正を実行できた結果、作業時間を大幅に削減できたことが主な理由です」とその利点を語る。

バージョンアップを手動で実施する場合、その作業は多岐に渡る。最初にログの設定を変更してすべてを記録し、そのログから重要情報を抽出する。しかし、この作業はログの量が増えるほどシステムの性能に悪影響を与えてしまう。またログが複雑化すれば、その管理は困難だ。

これに対し、Insight SQL Testingに備わる「SQL Capture機能」を利用すれば、本番環境でアプリケーションが発行するSQLを低負荷に自動収集できる。また、「SQL Test機能」は、OSやDBのバージョンアップや構成変更による影響を把握できる。千田氏はInsight SQL Testing導入の効果を以下のように語る。

「Insight SQL Testingを導入すれば、自動収集したSQLをテストし、実行できなかったSQLだけを修正して再テストすればよくなるので、作業工数が大幅に削減できます。また、Insight SQL Testingによってターゲット環境でバージョンの違いによる結果の差異が事前把握できたことは、作業時間の大幅な短縮につながりました。これらを手作業で行った場合、確実に倍以上の時間がかかります。人的コストの観点からもInsight SQL Testingの導入は価値がありました」(千田氏)。

Insight SQL Testing+SRA OSSで
付加価値の高いサービスを

実は今回SRA OSSがInsight SQL Testingを導入した背景には、もう1つの理由があった。それはSRA OSSがシステムのマイグレーションを検討している顧客に対し、Insight SQL Testingを提供するかを判断するPoC(概念実証)を兼ねていたのだ。

千田氏は「まずは自分たちがユーザー目線でInsight SQL Testingを利用して機能や使い勝手を理解し、よりよいサービスの提供につなげようと考えたのです」と説明する。

ユーザー目線でInsight SQL Testingを評価した際、もっともメリットに感じたのは「リリースノートでは把握しきれない変更点を事前に把握できたこと」だったという。

データベースをバージョンアップする際にはソースバージョンからターゲットバージョンまでのすべてのリリースノートを読み、各バージョンの変更点を把握する必要がある。しかし、その変更によってどのような影響があるのかは記載されていないため、ユーザーは変更の内容を理解したうえでシステムを改修しなければならない。また、リリースノートに含まれる技術的な内容や変更点を正確に理解するためには、関連するコミットログを確認したり、ソースコードの差分(Diff)を見たりするなどの追加的なステップが必要になる場合もある。

千田氏は「リリースノートに書かれている変更点の記述は短文だけです。それを読んで全ての影響範囲を理解することは、私たちでも確認が必要。入念にリリースノートを読み込んでも、実際の作業では漏れが生じてしまいます。」と説明する。

そうしたケースでもInsight SQL Testingを利用すれば、変更点やSQL構文(使用している関数)の仕様変更も事前に把握できるので、迅速な対応ができるのだ。

現在、SRA OSSではInsight SQL TestingとSRA OSSのサポートを組み合わせた移行支援サービスを検討している。千田氏は最後に「われわれがこれまでに培ってきた技術力とInsight SQL Testingの製品力で、顧客により高い付加価値を提供できます。IT担当者の作業負荷軽減やコスト削減の観点からも、Insight SQL Testingは導入価値が高いと確信しています」と力強く述べた。

関連製品

share

事例資料ダウンロード

TOP 事例紹介 SRA OSS合同会社|もし「Insight SQL Testing」なしで移行作業をしていたら、より多くの時間とコストが必要でした。信頼性の向上やコスト削減の観点からも、メリットは計り知れません

Recruit 採用情報

Contact お問い合わせ

  購入済みの製品サポートはこちら