COLUMN
コラム
2021年09月07日
#マイグレーション – 知ったかテックワード!君もIT博士
カテゴリー:知ったかテックワード
タグ:システム運用, システム開発, データベース
マイグレーションは「My Gration」ではなく「Migration」って書いて、移動とか移住っていう意味なんだ。ただの移動ではなく、別の国や新しい環境に移り住むといった感じかな。
システム開発やシステム運用では、情報システムの移設やデータベースのデータ移行などいろいろな場面で「マイグレーション」という言葉が使われるよ。
いずれの使い方も共通しているのは、上がそのままで、動作の土台となる基盤を変えているところと言えるかもね。
情報システムの移設
既存のITシステムの機器やOS・アプリケーションなどを、新しく用意した別のインフラ環境やシステムに移設することだ。
よく似た言葉に「アップグレード」と「リプレース」がある。
アップグレード
既存のシステムの一部のモジュールを新しいバージョンに置き換えること。基本的には機能などに互換性があり、バグフィックスや新機能の追加が行われる。
リプレース
リプレース:既存の古いシステムやハードウェア・アプリケーションを入れ替えること。システム更新・システム刷新とも呼ばれる。システムの一部を交換するケースもあれば、丸ごと新しくすることもある。
これに対してシステムのマイグレーションでは、システム構成の一部を置き換えるのではなく、下回りに当たるシステムやインフラ基盤を刷新する。
レガシーマイグレーション
中でも、時代遅れのテクノロジーを使用していて保守性や拡張性が劣った情報システムを「レガシーシステム」と呼ぶけど、これを新しいテクノロジーの情報システムに移行することを「レガシーマイグレーション」と呼ぶんだ。特に、メインフレームやオフコンなど、古いテクノロジーで作られた独自アーキテクチャのコンピュータシステムを当たらしいオープンシステムに乗り換えることを指す。
データマイグレーション
データベースやストレージ・ファイル管理システムからデータを移動させること。「データ移行」とも呼ばれるけど、単純にデータを複製するのではないんだ。
データベースであれば異なるデータ構造のデータベースに移す。ストレージであれば、異なるデータ形式に変換して移すんだ。
仮想マシンのマイグレーション
最近のコンピュータは仮想マシンとして動作されることが増えてきている。この仮想マシンを、ある物理コンピュータ(ハイパーバイザー)から別の物理コンピュータに移動させることもマイグレーションと呼ばれる。
仮想マシンの場合は、新しい環境で稼働させるだけだから、従来のシステムやデータのマイグレーションと比較すると簡単になったよね。
これには、次のようにいくつかの種類がある。
ライブマイグレーション・ホットマイグレーション
現在実行している仮想マシンを実行状態のまま移行する方式。ハイパーバイザから見ると、仮想マシンはメモリ上に展開されたプログラムに過ぎない。この展開されたメモリのイメージをそのまま別のハイパーバイザ上に移行させる。外部と接続するセッションなどは維持されるため、外部から見るとサービスが継続しているように見える。
クイックマイグレーション・コールドマイグレーション:
仮想マシンのイメージファイルを一時的に外部ファイルに保存して、別のハイパーバイザーで再起動させる方式。いったん保存するため、仮想マシンは一時停止することになる。
—-
おまけのコント
うさぎ:「マイ」が付く音楽には名曲が多いよね。
「マイジェネレーション」とか
「マイレボリューション」とか
「マイグラデュエーション」と。
カエル:まあ、たしかに。
うさぎ:だから、マイグレーションも。
カエル:マイグレーションも?
うさぎ:いい曲だと思うんだよねぇ。
カエル:ほぉ・・・どんな曲なの。
うさぎ:・・・・マイグレーション?
カエル:マイグレーション。
うさぎ:・・・・。
カエル:では、うさぎさんに歌っていただきましょう。名曲「まいぐれーしょん」。
うさぎ:・・・・うぉうぉう、マイグレーション。
・・・うぉうぉう、僕のグレーション。
灰色の日々はおわりさぁ。・・・うぉうぉうぉうぉう(泣)。
- カテゴリー
- タグ
- システム運用(16)
- TypeScript(1)
- WebAssembly(2)
- ウォーターフォール開発(2)
- 業務システム(28)
- CSS(2)
- GraphQL(1)
- プログラミング(31)
- スタートアップ(11)
- Nexaweb(1)
- BaaS(10)
- データベース(5)
- SPA(2)
- 基本用語(26)
- Case study(5)
- Keyword(10)
- FaaS(1)
- システム開発(69)
- スクラム(1)
- フロントエンド(38)
- AI(26)
- アジャイル開発(18)
- Supabase(1)
- イノベーション(5)
- Database(2)
- 月額制(1)
- PaaS(3)
- ACF(1)
- BookReview(3)
- サービス開発(5)
- React(3)
- Firebase(1)
- クラウドサービス(12)
- low-code(2)
- バックエンド(8)
- ナレッジマネジメント(1)
- ChatGPT(1)
- Vue.js(2)
- Tailwind CSS(1)
- DBaas(2)
- プロジェクト管理(13)
- セミナー(2)
- Web(21)
- 失敗事例(2)
- Hexabase_health(1)
- 生成AI(7)
- 受託開発(1)
- Kubernetes(3)
- WebComponents(1)
- 通知(1)
- API(6)
- Next.js(1)
- フレームワーク(3)
- ローコード開発(4)
- ノーコード開発(1)
- JavaScript(2)
- Hexabase(12)
- LLM(3)
- 画像生成(1)
- DX(34)