トランザクションデータベースでは、データの読み取りと書き込みを効率的かつ安全に実行できます。トランザクションデータベースは、オンラインバンキングやEコマースのトランザクションなど、多くのビジネスプロセスで力を発揮します。本稿はトランザクションデータベースの仕組みについて説明し、信頼性が高い理由と、銀行業、小売業、ヘルスケア業界でどのように利用されているかを紹介します。
トランザクションデータベースとは
トランザクションデータベースとはデータベース管理システムの一種で、データの整合性を保ちながら個々のデータ行の読み取りと書き込みを高速で行うように最適化されています。トランザクションデータベースは、トランザクションやデータベースの操作が完全には終わらなかった場合に自動でロールバック(取り消し)を行います。それぞれのトランザクションはデータベース内で発生する他のどのトランザクションからも切り離して処理されるため、保存されたデータは安全性が確保され、容易にアクセス可能で、システム障害の発生中でも一貫性が保たれます。
トランザクションデータベースの主な特性
トランザクションデータベースはオンライントランザクション処理(OLTP)というデータ処理方法を使用します。OLTPを用いることで、トランザクションデータベースは多数のトランザクションを同時実行できます。このようなシステムには、複数のデータベーストランザクションを大規模に同時実行するのに役立つ重要な特性があります。
同時実行性
OLTPシステムはユーザーが大人数になることが多く、同じデータに同時に多くのユーザーがアクセスします。同時実行性とは、2人のユーザーが同時に操作を実行しようとしたときに書き込みプロセスを管理して、1人の処理が終わるまでもう1人が待たなければ2人とも操作を完了できないようにすることです。このようなコントロールがあれば、あるオンラインショップの在庫の最後の1点を2人のユーザーが購入したり、飛行機の同じ座席を2人の旅行者が予約したりすることを回避できます。
スケール
トランザクションデータベースは、ユーザーの需要に合わせて迅速にスケールアップまたはスケールダウンできる必要があります。スケーラビリティとは、必要に応じて柔軟に拡大することでシステムがトラフィックの急増に対応できるようにすることです。たとえばオンラインバンキングでは、時間帯によってオンライン口座へのアクセスを試みる顧客が増えます。
スピード
ほとんどのデジタルトランザクションは非常に迅速に実行する必要があります。トランザクションデータベースは、複数の読み取りリクエストと書き込みリクエストを瞬時に同時実行できます。スピードが命というわかりやすい例はオンライン小売業です。小売業のサイトでは、購入、チェックアウト、決済承認が素早く簡単に済むことを数千人の購入客が期待しているため、それに応える処理速度が求められます。
データセキュリティ
トランザクションデータベースには機密性の高い顧客データが大量に格納されています。こうしたシステムが1つでも侵害されてしまうと、大量のユーザーデータとアカウント情報が流出する恐れがあります。堅牢なデータセキュリティを維持することで、顧客アカウントのデータと会社の評判を守ることができます。
復旧可能性
ハードウェアとソフトウェアにはシステム障害が発生することがあります。その場合でも、トランザクションデータベースは復旧可能に設計されているため、データの一貫性を保持し、ユーザーに継続性を保証できます。
ACIDによる信頼性の高いトランザクション処理
トランザクションデータベースでは、データベースに書き込まれたデータの一貫性を保つ必要があります。こうした保護策を実現する特性をまとめてACIDと呼びます。この頭字語は、トランザクション処理に組み込むべき4つの主な性質を表しています。
Atomicity(原子性):原子性とは、トランザクションのすべてのステップを完了しなければデータベースにコミットできないという性質です。トランザクションのいずれかのステージが失敗した場合、他のステップも失敗して元に戻ります。
Consistency(一貫性):一貫性とは、トランザクションがデータベースに正常に書き込まれて1つの有効なステータスから別のステータスへ移るか、トランザクションが自動的に取り消されるかのいずれかが確実に行われるという性質です。これにより、データベース内部の一貫性が常に維持されます。
Isolation(独立性):ACIDに準拠したトランザクションデータベースでは、個々のトランザクションが独立して実行される必要があります。処理が完了していないトランザクションを他のトランザクションで操作または修正することはできません。
Durability(永続性):トランザクションが完全に処理されてデータベースにコミットされると、たとえデータベースに障害が発生してもそのトランザクションは失われません。
トランザクションデータベースのユースケース
トランザクションデータベースは、消費者や企業が活用している多くのアプリケーションを支えています。これらのシステムとそこから生成されるデータが現実世界の価値をどのように生み出しているか、3つの例でご紹介します。
銀行
OLTPシステムは、ATM取引やオンラインバンキング取引の送金やモバイル預金など、幅広い銀行サービスを実現しています。セキュリティ対策によりユーザーの口座情報が保護され、システム障害の発生中でも正確な口座残高が維持されます。
小売
トランザクションデータベースはオンラインと実店舗の両方で同時発生する大量のクレジットカード取引を処理します。このようなシステムには正確な注文入力情報も維持され、オンライン在庫が同時に複数のユーザーに販売されることはありません。
ヘルスケア
ヘルスケア業界では正確な記録管理が欠かせません。トランザクションデータベースは、2人のユーザーが1人の患者の医療記録を同時に書き換えないようにすることで、記録が1つのバージョンだけ保存されるようにします。このテクノロジーは保険請求処理にも活用されています。
SNOWFLAKEの新しいユニストアワークロードによるトランザクションデータの分析
トランザクションデータベースは、意思決定者に重要なインテリジェンスを提供する貴重なデータソースです。顧客の購入履歴、オンライン予約、在庫管理、生産スケジュールなど、あらゆるものからインサイトを引き出せます。しかし以前は、トランザクションデータを分析するためには、その前にトランザクションデータベースからデータをコピーして取り出し、OLAP(オンライン分析処理)データベースに読み込んで分析する必要がありました。
従来、トランザクションデータとアナリティクスデータは分離されていたため、組織がトランザクションデータベースのデータをビジネスの発展にどれだけ迅速に活用できるかという点では制約がありました。それを変えたのがSnowflakeです。
Snowflakeのユニストアワークロードが提供する統一データベース管理の先進的なアプローチは、トランザクションとアナリティクスのデータをまとめて処理できます。組織はプラットフォーム内のトランザクションデータに対して直接、リアルタイムのアナリティカルクエリを実行できるため、トランザクションデータと履歴データの間のデータサイロが解消されます。ユニストアは単一のデータセットを使用するモダン開発を可能にし、トランザクションデータを即時処理できるため、より優れたカスタマーエクスペリエンスを構築し、新しいインサイトを獲得できます。
Snowflakeのさまざまな機能について、ぜひご自身でお確かめください。Snowflakeのご試用は、無料トライアルの登録からお申し込みいただけます。