ITパスポート 過去問
令和7年度
問61 (テクノロジ系 問6)
問題文
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
ITパスポート試験 令和7年度 問61(テクノロジ系 問6) (訂正依頼・報告はこちら)
- あるデータベースの内容を他のデータベースに複製し、内容の同期をとる。
- データベースに対して行った操作を、順次記録する。
- データベースに対する一連の処理が全て成功したら変更結果を確定し、途中で失敗したら処理前の状態に戻す。
- データベースの表の索引を作成し、検索時には索引を使用する。
正解!素晴らしいです
残念...
この過去問の解説 (3件)
01
DBMS(データベース管理システム)のトランザクションとは、データベースの整合性と信頼性を保つための機能です。
各選択肢をみていきます。
本選択肢に該当する機能は、複製や同期に関する機能であり、トランザクションについての直接な説明ではありません。
これらは可用性向上や負荷分散などを目的とした機能です。
そのため本選択肢は不正解です。
データベースのログ機能に関するものです。
トランザクションの処理中に障害が発生した場合に、元の状態に戻したり、処理を回復させたりするために、データベースに対する操作を記録することです。
トランザクションについてのものではないため、本選択肢は不正解です。
トランザクションは、一連の処理をすべて実行されるか、何も実行されないかとして扱い、データベースの整合性を保ちます。
選択肢のとおりの処理を行うため、本選択肢が正解です。
索引(インデックス)は、データベースのテーブルから特定のデータを高速に検索するために作成されるものです。
トランザクションとは直接関係ないため、本選択肢は不正解です。
データベースのトランザクションにはACID特性という概念があります。
・原子性 Atomicity
・一貫性 Consistency
・独立性 Isolation
・永続性 Durability
本問ではこの中の原子性について理解できているかがポイントでしたが、他の特性も重要です。
参考になった数10
この解説の修正を提案する
02
DBMSのトランザクションとは、データに対する複数の処理を一つのまとまった単位とすることで、完全性と一貫性を保つための手法です。
不正解。レプリケーションのことです。
不正解。ログのことです。
これが正解です。
不正解。インデックスのことです。
参考になった数2
この解説の修正を提案する
03
データベースには様々な情報が大量に格納されており、大勢の人が常にアクセスしています。
なかにはデータを閲覧するだけではなく、状況に応じて編集する方もいるはずです。
もしもデータベースの編集中に
・データを途中までしか書き換えていないのに、保存してしまった
・データを編集中に、別の箇所が消えてしまった
このようなことがあると、どうなるでしょうか?
当然、データベースの中身は矛盾した内容となってしまいます。
このようなことを防ぐため、データベースにはトランザクションと呼ばれる処理の方法があります。
トランザクションとは、あるデータベースの編集に必要となる操作をひとまとめにしたものです。
例えば、次のようなテーブル「在庫表」があるとします。
今日はスマホAとスマホBが1台ずつ、パソコンXが2台売れたとします。
なので、次のSQL文を実行して在庫表を更新します。
update 在庫表 set 在庫数=”13” where 商品名=“スマホA”
update 在庫表 set 在庫数=”16” where 商品名=“スマホB”
update 在庫表 set 在庫数=”14” where 商品名=“パソコンX”
これら全ての操作が「トランザクション」であり、「update」などの操作がまとまったものとなります。
データベースを管理するにあたり、このトランザクションごとに処理をしていくことで、
データベース内の情報に矛盾が生じるのを防ぎ、整合性を保つことができるのです。
常に同じ内容の記憶媒体を用意しておくことで、万一のときにはそこから復元したり、切り替えたりことで業務を続行できるようにするしくみです。
例えばRAIDと呼ばれる記憶媒体の管理方式には「ミラーリング」というものがあり、これはシステムの稼働率をあげて信頼性向上を図るための基本的な手法とされています。
データベースの保守運用でも重要な概念ですが、問題で問われているトランザクションとは全く別の概念です。
ロギングと呼ばれるもので、データベースサーバーに備わっている管理機能の一つです。
得られた操作記録は障害発生時のデータ復元に役立つ他、悪意のある第三者にSQLインジェクション攻撃などによってデータベースを破壊された際の証拠にもなります。
データベースを、生合成を保ちつつ運用するには、次の4つのポイントを押さえておく必要があります。
1.原子性(Atomicity)・・・トランザクションは全部行われるか、全く行われないか → 問題で問われているポイント
2.一貫性(Consistency)・・・閲覧した際、全てのユーザーが同じ内容を確認できるか
3.独立性(Isolation)・・・行った操作が、無関係な箇所にまで影響していないか
4.永続性(Durability)・・・行われた処理結果が保たれているか
例えば、同じ時刻に2人の従業員が在庫表を見ているのに、ある人は「スマホAの在庫は14台」またある人は「在庫は13台」などといったことはあってはなりません。
これは、データに対して中途半端な操作を行うことで起きてしまう事故で、原因は「トランザクションを途中でやめてしまう」ということです。
なので一度開始したトランザクションは全て実行され、それが不可能であれば開始前の状態を維持しておくべきです。(正解)
なお、上記の4つのポイントをACID特性(アシッドトクセイ)といいます。
インデックスとよばれるもので、データベース内のデータを瞬時に見つけやすくするために、そのデータがどこにあるかを予め把握して作っておく「データの場所一覧のデータベース」です。
各データを識別できるようにするため、重複しない値に設定する主キーとは別物ですので混合しないよう注意しましょう!
データベース内の情報は、社内やネット上のユーザーなど多くの人と共有されるケースがほとんどです。
よって、その内容がリアルタイムで矛盾なく整合性が保たれていることは必要不可欠であり、ACID特性はデータベース運用において重要視されているのです。
参考になった数0
この解説の修正を提案する
前の問題(問60)へ
令和7年度 問題一覧
次の問題(問62)へ