コマンド道場

$ cat /exam/db/past/2022-autumn-am2

データベーススペシャリスト 令和4年度 秋期 午前Ⅱ

全 25 問です。各問の「解答と解説を見る」を開くと正解が出ます。まず自分で解いてから開いてください。

問 1

応用技術同じ設問が 令和2年度 10月 午前Ⅱ 問2 にも出ています

BASE 特性を満たし,次の特徴をもつ NoSQL データベースシステムに関する記述のうち,適切なものはどれか。

〔NoSQL データベースシステムの特徴〕 ・ネットワーク上に分散した複数のノードから構成される。 ・一つのノードでデータを更新した後,他の全てのノードにその更新を反映する。
  1. ア
    クライアントからの更新要求を 2 相コミットによって全てのノードに反映する。
  2. イ
    データの更新結果は,システムに障害がなければ,いつかは全てのノードに反映される。
  3. ウ
    同一の主キーの値による同時の参照要求に対し,全てのノードは同じ結果を返す。
  4. エ
    ノード間のネットワークが分断されると,クライアントからの処理要求を受け付けなくなる。
解答と解説を見る

正解: イ

結論: BASE の E は Eventually consistent(結果整合性)です。更新はいつかは全ノードにそろう、というのが答えです。

なぜ: BASE は ACID と対になる考え方で、常に応答できること(可用性)を優先し、ノード間で一時的に値が食い違うことを許します。ある瞬間に読んだ値がノードごとに違ってもよく、障害がなければ最終的に同じ値に落ち着きます。

アの 2 相コミットは、全ノードが同時にそろうことを保証する強い一貫性のための手順で、BASE の考え方とは逆です。ウの「全ノードが常に同じ結果を返す」も強い一貫性の性質です。エの「分断されたら受け付けない」は、可用性より一貫性を取る選び方で、可用性を優先する BASE とは逆になります。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問1(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 2

データモデル

社員と年との対応関係を UML のクラス図で記述する。二つのクラス間の関連が次の条件を満たす場合,a,b に入れる多重度の適切な組合せはどれか。ここで,“年” クラスのインスタンスは毎年存在する。

〔条件〕 (1) 全ての社員は入社年を特定できる。 (2) 年によっては社員が入社しないこともある。
[ a ][ b ]入社年社員年
  1. ア
    a = 0..*,b = 0..1
  2. イ
    a = 0..*,b = 1
  3. ウ
    a = 1..*,b = 0..1
  4. エ
    a = 1..*,b = 1
解答と解説を見る

正解: イ

結論: a は 0..*、b は 1 です。

なぜ: 多重度は「相手側 1 つから見て、こちら側がいくつあるか」を、こちら側の端に書きます。

  • b(年の側) … 社員 1 人から見た年の数です。条件 (1) で全ての社員は入社年を特定できるので、ちょうど 1 です
  • a(社員の側) … 年 1 つから見た社員の数です。条件 (2) で入社しない年もあるので下限は 0、何人でも入社しうるので上限は無制限。合わせて 0..* です

ウ・エの 1..* は「どの年にも必ず誰かが入社する」という意味になり、条件 (2) に反します。ア・ウの 0..1 は「入社年が分からない社員がいてよい」という意味で、条件 (1) に反します。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問2(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

改変: クラス図はスキャン画像のため、クラス名・関連名・空欄の位置(a は社員の側、b は年の側)を保ったまま SVG で描き直しています。スマホの幅に収めるため、横並びを縦並びにしています。原本では空欄が四角い枠で囲まれていますが、ここでは [ a ]・[ b ] のように角括弧で示しています。また選択肢は原本では a・b の 2 列の表ですが、1 行の組として書き下しています(内容は原本のままです)。

問 3

関係データベース理論

関係 R (A, B, C, D, E) において,関数従属性 A → B,A → C,{C, D} → E が成立する。最初に属性集合 {A, B} に対して,これらの関数従属性によって関数的に決定される属性をこの属性集合に加える。この操作を繰り返して得られる属性集合(属性集合の閉包)はどれか。

  1. ア
    {A, B, C}
  2. イ
    {A, B, C, D}
  3. ウ
    {A, B, C, D, E}
  4. エ
    {A, B, E}
解答と解説を見る

正解: ア

結論: 閉包は {A, B, C} です。

なぜ: 手持ちの属性で左辺がそろう関数従属を探し、右辺を足していきます。

1. 最初は {A, B}2. A → C の左辺 A がそろっているので C を足す → {A, B, C}3. {C, D} → E は左辺に D が要るが、D はどこからも決まらない。だから E は足せない

これ以上増えないので {A, B, C} で止まります。D を決める関数従属が無い以上、D を含むイ・ウは誤りです。エは E を足していますが、E を決めるには D が必要です。

打って確かめる

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問3(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 4

関係データベース理論

関係 R (A, B, C, D, E) に対し,関数従属の集合 W= {A→ {B, C}, {A, D} →E, {A, C, D} →E, B→C, C→B} がある。関数従属の集合 X,Y,Z のうち,W から冗長な関数従属をなくしたものはどれか。

X= {A→B,B→C,C→B,{A,D} →E} Y= {A→C,B→C,C→B,{A,D} →E} Z= {A→B,C→B,{A,C,D} →E}
  1. ア
    X だけ
  2. イ
    X と Y
  3. ウ
    Y と Z
  4. エ
    Z だけ
解答と解説を見る

正解: イ

結論: X と Y が、W と同じことを言える最小の形です。

なぜ: W の中で冗長なものを落としていきます。

  • {A, C, D} → E は、{A, D} → E があれば C を足しても同じなので冗長
  • A → {B, C} は A → B と A → C に分けられ、さらに B → C(または C → B)があるので片方だけで足りる。A → B を残せば A → B → C、A → C を残せば A → C → B で、もう片方が導けます

したがって最小の形は {A → B, B → C, C → B, {A, D} → E}(=X)か、{A → C, B → C, C → B, {A, D} → E}(=Y)です。

Z には B → C がありません。 A → B と C → B からは「B が決まると C が決まる」は導けないので、W と同じ意味になりません。

打って確かめる

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問4(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 5

正規化

第 2 正規形である関係 R が,第 3 正規形でもあるための条件として,適切なものはどれか。

  1. ア
    いかなる部分従属性も成立しない。
  2. イ
    推移的関数従属性が存在しない。
  3. ウ
    属性の定義域が原子定義域である。
  4. エ
    任意の関数従属 A → B に関して,B は非キー属性である。
解答と解説を見る

正解: イ

結論: 第 2 正規形から第 3 正規形へ進む条件は、非キー属性が候補キーに推移的に従属していないことです。

なぜ: 正規形は条件を 1 つずつ積み上げます。

  • 第 1 正規形 … 属性の値が分解できない(原子定義域)= ウ
  • 第 2 正規形 … 非キー属性が候補キーの一部に従属しない(部分従属が無い)= ア
  • 第 3 正規形 … さらに、非キー属性が別の非キー属性を経由して候補キーに従属しない(推移的従属が無い)= イ

ア・ウは第 2 正規形の時点で満たしているので、第 3 正規形に進む条件にはなりません。エは「どの関数従属でも右辺が非キー属性」という意味で、第 3 正規形の定義ではありません。

打って確かめる

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問5(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 6

SQL

“文書” 表,“社員” 表から結果を得る SQL 文の a に入れる字句はどれか。

文書
文書ID作成者ID承認者ID
1100200
2100300
3200400
4500400
社員
社員ID氏名
100山田太郎
200山本花子
300川上一郎
400渡辺良子
〔結果〕
文書ID作成者ID作成者氏名承認者ID承認者氏名
1100山田太郎200山本花子
2100山田太郎300川上一郎
3200山本花子400渡辺良子
4500NULL400渡辺良子
〔SQL 文〕
SELECT 文書ID, 作成者ID, A.氏名 AS 作成者氏名,
       承認者ID, B.氏名 AS 承認者氏名 FROM [ a ]
  1. ア
    文書 LEFT OUTER JOIN 社員 A ON 文書.作成者ID = A.社員ID
         LEFT OUTER JOIN 社員 B ON 文書.承認者ID = B.社員ID
  2. イ
    文書 RIGHT OUTER JOIN 社員 A ON 文書.作成者ID = A.社員ID
         RIGHT OUTER JOIN 社員 B ON 文書.承認者ID = B.社員ID
  3. ウ
    文書, 社員 A, 社員 B
         LEFT OUTER JOIN 社員 A ON 文書.作成者ID = A.社員ID
         LEFT OUTER JOIN 社員 B ON 文書.承認者ID = B.社員ID
  4. エ
    文書, 社員 A, 社員 B
         WHERE 文書.作成者ID = A.社員ID AND 文書.承認者ID = B.社員ID
解答と解説を見る

正解: ア

結論: 文書を左に置いた LEFT OUTER JOIN を 2 回つなぎます。

なぜ: 結果の 4 行目に注目します。文書 4 の作成者 ID は 500 で、社員表に 500 はいません。それでも文書 4 は結果に残り、作成者氏名が NULL になっています。相手が見つからなくても左の行を残すのが左外部結合です。社員表を 2 回(作成者用の A、承認者用の B)つなぐので、2 回とも LEFT にします。

  • イ … RIGHT にすると社員の側が全部残ります。誰も作っていない・承認していない社員の行が増え、相手の無い文書 4 は落ちます
  • ウ … JOIN はカンマより先に結び付きます。社員 B LEFT OUTER JOIN 社員 A ON … がひとまとまりになり、その ON からはカンマの向こうの文書表を参照できないので、エラーになります(そもそも A・B という名前も 2 回ずつ付いています)
  • エ … WHERE で等しい行だけを残す内部結合なので、作成者 500 が社員表に無い文書 4 が消えます

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問6(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

改変: “文書” 表・“社員” 表と結果は HTML の表として組み直しています。SQL 文と選択肢は等幅で示し、列名の「ID」の前の空白は詰めています。原本では空欄が四角い枠で囲まれていますが、ここでは [ a ] のように角括弧で示しています。(内容は原本のままです)

問 7

SQL同じ設問が 令和6年度 秋期 午前Ⅱ 問7 にも出ています

“商品” 表と “商品別売上実績” 表に対して,SQL 文を実行して得られる売上平均金額はどれか。

商品
商品コード商品名商品ランク
S001PPPA
S002QQQA
S003RRRA
S004SSSB
S005TTTC
S006UUUC
商品別売上実績
商品コード売上合計金額
S00150
S003250
S004350
S006450
〔SQL 文〕
SELECT AVG(売上合計金額) AS 売上平均金額
    FROM 商品 LEFT OUTER JOIN 商品別売上実績
        ON 商品.商品コード = 商品別売上実績.商品コード
    WHERE 商品ランク = 'A'
    GROUP BY 商品ランク
  1. ア
    100
  2. イ
    150
  3. ウ
    225
  4. エ
    275
解答と解説を見る

正解: イ

結論: 150 です。

なぜ: 順に追います。

1. 商品表を左にした外部結合なので、商品ランク A の 3 行(S001・S002・S003)は全部残ります2. S002 は売上実績に無いので、売上合計金額が NULL になります3. AVG は NULL を数えません。 平均の対象は S001 の 50 と S003 の 250 の 2 つだけです

(50 + 250) ÷ 2 = 150。

NULL を 0 として 3 行で割ると 100(ア)になりますが、集約関数は NULL を無視するのでそうはなりません。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問7(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

改変: “商品” 表と “商品別売上実績” 表は HTML の表として組み直しています。SQL 文は原文のまま等幅で示しています(内容は原本のままです)。

問 8

SQL

“社員” 表に対して,SQL 文を実行して得られる結果はどれか。ここで,実線の下線は主キーを表し,表中の NULL は値が存在しないことを表す。

社員
社員コード上司社員名
S001NULLA
S002S001B
S003S001C
S004S003D
S005NULLE
S006S005F
S007S006G
〔SQL 文〕
SELECT 社員コード FROM 社員 X
    WHERE NOT EXISTS
        (SELECT * FROM 社員 Y WHERE X.社員コード = Y.上司)
  1. ア
    社員コード
    S001
    S003
    S005
    S006
  2. イ
    社員コード
    S001
    S005
  3. ウ
    社員コード
    S002
    S004
    S007
  4. エ
    社員コード
    S003
    S006
解答と解説を見る

正解: ウ

結論: 誰の上司にもなっていない社員が出ます。S002・S004・S007 です。

なぜ: 副問い合わせは「X を上司にしている社員 Y がいるか」を聞いています。NOT EXISTS なので、そういう Y が 1 人もいない X だけが残ります。

上司の列に出てくる社員コードは S001・S003・S005・S006 です(=部下がいる人)。これ以外の S002・S004・S007 が答えです。

アは「部下がいる人」で、EXISTS にした場合の結果です。イは上司が NULL の人(いちばん上の人)、エは部下がいて自分にも上司がいる人で、どちらもこの SQL の条件とは関係がありません。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問8(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

改変: “社員” 表と、選択肢の 4 つの結果は HTML の表として組み直しています。主キーの下線も再現しています。SQL 文は原文のまま等幅で示しています(内容は原本のままです)。

問 9

SQL

SQL 文 1 と SQL 文 2 を実行した結果が同一になるために,表 R が満たすべき必要十分な条件はどれか。

〔SQL 文 1〕
SELECT * FROM R UNION SELECT * FROM R
〔SQL 文 2〕
SELECT * FROM R
  1. ア
    値に NULL をもつ行は存在しない。
  2. イ
    行数が 0 である。
  3. ウ
    重複する行は存在しない。
  4. エ
    列数が 1 である。
解答と解説を見る

正解: ウ

結論: 重複する行が無いことが必要十分です。

なぜ: UNION は 2 つの結果をつないだうえで重複する行を 1 行にまとめます(UNION ALL ならまとめない)。同じ R どうしをつなぐので、SQL 文 1 の結果は「R から重複を除いたもの」です。これが R そのもの(SQL 文 2)と一致するのは、R に最初から重複が無いときに限ります。

  • ア … 重複の判定では NULL どうしは等しいものとして扱われます。NULL を含む行も、ほかの行とまったく同じなら 1 行にまとめられ、そうでなければ残るので、NULL の有無は関係ありません
  • イ … 0 行なら確かに同じになりますが、重複の無い表なら行があっても同じになるので、必要条件ではありません
  • エ … 列の数は重複の有無と関係ありません

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問9(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 10

関係データベース理論

和両立である関係 R と S がある。R∩S と等しいものはどれか。ここで,-は差演算,∩は共通集合演算を表す。

  1. ア
    (R-S)-(S-R)
  2. イ
    R-(R-S)
  3. ウ
    R-(S-R)
  4. エ
    S-(R-S)
解答と解説を見る

正解: イ

結論: R-(R-S) です。

なぜ: R-S は「R にだけあって S に無いもの」です。R からそれを取り除けば、残るのは「R にあって S にもあるもの」= R∩S です。

ほかの選択肢を同じように読むと:

  • ア … R-S と S-R は共通部分が無いので、引いても何も減らず R-S のまま
  • ウ … S-R の要素は R に含まれないので、R から引いても何も減らず R のまま
  • エ … 同じ理由で R-S の要素は S に含まれず、S のまま

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問10(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 11

関係データベース理論

関係 R,S の等結合演算は,どの演算によって表すことができるか。

  1. ア
    共通
  2. イ
    差
  3. ウ
    直積と射影と差
  4. エ
    直積と選択
解答と解説を見る

正解: エ

結論: 等結合は直積をとってから、結合条件(R.列 = S.列)で選択したものです。

なぜ: 直積は R と S の行のあらゆる組合せを作ります。その中から「結合する列の値が等しい組」だけを選び出せば、それが等結合です。SQL で言えば FROM R CROSS JOIN S WHERE R.x = S.x と書くのと同じ結果になります。

等結合は両方の列を残します。同じ列を 1 つにまとめる自然結合なら、さらに射影も加わります。共通(ア)と差(イ)は和両立な関係どうしの集合演算で、2 つの関係の列を横につなぐことはできません。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問11(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 12

SQL

“社員” 表から,男女それぞれの最年長社員を除く全ての社員を取り出す SQL 文とするために,a に入れる字句はどれか。ここで,“社員” 表の構造は次のとおりであり,実線の下線は主キーを表す。

社員
社員番号
社員名
性別
生年月日
〔SQL 文〕
SELECT 社員番号, 社員名 FROM 社員 AS S1
    WHERE 生年月日 > ( [ a ] )
  1. ア
    SELECT MIN(生年月日) FROM 社員 AS S2
        GROUP BY S2.性別
  2. イ
    SELECT MIN(生年月日) FROM 社員 AS S2
        WHERE S1.生年月日 > S2.生年月日
        OR S1.性別 = S2.性別
  3. ウ
    SELECT MIN(生年月日) FROM 社員 AS S2
        WHERE S1.性別 = S2.性別
  4. エ
    SELECT MIN(生年月日) FROM 社員
        GROUP BY S2.性別
解答と解説を見る

正解: ウ

結論: 同じ性別の中での最小の生年月日(=最年長の誕生日)と比べます。

なぜ: 生年月日が小さいほど年長です。外側の S1 の行ごとに、S1.性別 = S2.性別 で同じ性別の社員だけから最小の生年月日を求め、それより後に生まれた人を残せば、各性別の最年長だけが除かれます(相関副問い合わせ)。

  • ア … 性別ごとにまとめるので、男女 2 行が返ります。> の右辺は 1 つの値でなければならず、エラーになります
  • イ … 「自分より年長の人(性別を問わない)」も対象に入るので、最小値は全社員の中の最年長に引っ張られます。女性の最年長でも、もっと年長の男性がいれば残ってしまいます
  • エ … FROM に S2 という名前が無いので S2.性別 を参照できず、エラーになります

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問12(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

改変: 関係スキーマは主キーの下線を保ったまま組み直しています。SQL 文と選択肢は原文のまま等幅で示しています(字下げは詰めています)。原本では空欄が四角い枠で囲まれていますが、ここでは [ a ] のように角括弧で示しています。(内容は原本のままです)

問 13

同時実行制御

複数のバッチ処理を並行して動かすとき,デッドロックの発生をできるだけ回避したい。バッチ処理の設計ガイドラインのうち,適切なものはどれか。

  1. ア
    参照するレコードにも,専有ロックを掛けるように設計する。
  2. イ
    大量データに同じ処理を行うバッチ処理は,まとめて一つのトランザクションとして処理するように設計する。
  3. ウ
    トランザクション開始直後に,必要なレコード全てに専有ロックを掛ける。ロックに失敗したレコードには,しばらく待って再度ロックを掛けるように設計する。
  4. エ
    複数レコードを更新するときにロックを掛ける順番を決めておき,全てのバッチ処理がこれに従って処理するように設計する。
解答と解説を見る

正解: エ

結論: 全員が同じ順番でロックを掛けるようにすれば、デッドロックの原因である「互いに相手の持っているものを待つ」形が生まれません。

なぜ: デッドロックは、処理 1 が A を持って B を待ち、処理 2 が B を持って A を待つ、という待ちの輪ができたときに起きます。全員が「A → B」の順でしか取らなければ、B を持っている処理は必ず A も持っているので、輪ができません。

  • ア … 参照だけの行まで専有ロックにすると、ロックの範囲が広がって衝突が増えます
  • イ … 1 つのトランザクションが長くなると、ロックを持っている時間が延び、ほかの処理とぶつかりやすくなります
  • ウ … 取れたロックを持ったまま、取れなかった分を待つので、相手も同じことをしていれば待ちの輪はそのまま残ります

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問13(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 14

同時実行制御

トランザクション T1 がある行 X を読んだ後,別のトランザクション T2 が行 X の値を更新してコミットし,再び T1 が行 X を読むと,以前読んだ値と異なる値が得られた。この現象を回避する SQL の隔離性水準のうち,最も水準の低いものはどれか。

  1. ア
    READ COMMITTED
  2. イ
    READ UNCOMMITTED
  3. ウ
    REPEATABLE READ
  4. エ
    SERIALIZABLE
解答と解説を見る

正解: ウ

結論: これは反復不能読み取り(non-repeatable read)で、これを防ぐ最も低い水準は REPEATABLE READ です。

なぜ: SQL 標準は、隔離性水準ごとに「起こってよい現象」を決めています。

  • READ UNCOMMITTED … ダーティリード・反復不能読み取り・ファントムがすべて起こりうる
  • READ COMMITTED … ダーティリードは防ぐが、反復不能読み取りは起こりうる
  • REPEATABLE READ … 反復不能読み取りまで防ぐ(ファントムは起こりうる)
  • SERIALIZABLE … すべて防ぐ

問われているのは「防げるもののうち最も低い」なので、SERIALIZABLE(エ)ではなく REPEATABLE READ です。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問14(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 15

同時実行制御

トランザクションの ACID 特性のうち,原子性(atomicity)の記述として,適切なものはどれか。

  1. ア
    データベースの内容が矛盾のない状態であること
  2. イ
    トランザクションが正常終了すると,障害が発生しても更新結果はデータベースから消失しないこと
  3. ウ
    トランザクションの処理が全て実行されるか,全く実行されないかのいずれかで終了すること
  4. エ
    複数のトランザクションを同時に実行した場合と,順番に実行した場合の処理結果が一致すること
解答と解説を見る

正解: ウ

結論: 原子性は「全部やるか、まったくやらないか」です。途中まで反映された状態を残しません。

なぜ: 振込で「出金はしたが入金はしていない」状態が残ると困ります。原子性は、トランザクションの処理を分けられない 1 つの単位として扱い、途中で失敗したら全部を取り消すことを保証します。

ほかの選択肢は、ACID の別の性質です。

  • ア … 一貫性(Consistency)
  • イ … 永続性(Durability)
  • エ … 隔離性(Isolation)。同時に動かしても、順番に動かしたときと同じ結果になること

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問15(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 16

応用技術同じ設問が 令和6年度 秋期 午前Ⅱ 問16、令和2年度 10月 午前Ⅱ 問15 にも出ています

ビッグデータの処理に使用される CEP(複合イベント処理)に関する記述として,適切なものはどれか。

  1. ア
    多次元データベースを構築することによって,集計及び分析を行う方式である。
  2. イ
    データ更新時に更新前のデータを保持することによって,同時実行制御を行う方式である。
  3. ウ
    分散データベースシステムにおけるトランザクションを実現する方式である。
  4. エ
    連続して発生するデータに対し,あらかじめ規定した条件に合致する場合に実行される処理を実装する方式である。
解答と解説を見る

正解: エ

結論: CEP は、次々に流れてくるデータ(イベント)を、ためずにその場で調べ、決めておいた条件に合えば処理を動かす方式です。

なぜ: ふつうのデータベースは「ためてから問い合わせる」のに対し、CEP は「条件を先に置いておき、データの方を流す」という逆の発想です。センサーの値や取引の記録のように、絶え間なく届くデータへの即時の反応に使います。

ほかの選択肢は別の技術の説明です。

  • ア … OLAP(多次元分析)
  • イ … 多版同時実行制御(MVCC)
  • ウ … 2 相コミットなどの分散トランザクション

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問16(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 17

応用技術

機械学習を用いたビッグデータ分析において使用される Jupyter Lab の説明はどれか。

  1. ア
    定期的に実行するタスクを制御するための,ワークフローを管理するツールである。
  2. イ
    データ分析を行う際に使用する,対話型の開発環境である。
  3. ウ
    並列分散処理を行うバッチシステムである。
  4. エ
    マスターノードをもたない分散データベースシステムである。
解答と解説を見る

正解: イ

結論: JupyterLab は、ブラウザで動く対話型の開発環境です。

なぜ: コードを小さな単位(セル)ごとに実行し、その場で結果や図を確かめながら分析を進められます。実行結果・グラフ・説明文を 1 つのノートブックにまとめて残せるので、データ分析や機械学習の試行錯誤によく使われます。

ア(ワークフローの管理)、ウ(並列分散のバッチ処理)、エ(マスターの無い分散データベース)は、いずれも別の種類のソフトウェアの説明です。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問17(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 18

応用技術

データレイクの特徴はどれか。

  1. ア
    大量のデータを分析し,単なる検索だけでは分からない隠れた規則や相関関係を見つけ出す。
  2. イ
    データウェアハウスに格納されたデータから特定の用途に必要なデータだけを取り出し,構築する。
  3. ウ
    データウェアハウスやデータマートからデータを取り出し,多次元分析を行う。
  4. エ
    必要に応じて加工するために,データを発生したままの形で格納して蓄積する。
解答と解説を見る

正解: エ

結論: データレイクは、加工する前の生のデータを、発生したままの形でためておく場所です。

なぜ: データウェアハウスは「分析しやすい形に整えてから入れる」のに対し、データレイクは先に形を決めず、とにかく全部ためておき、使うときに加工します。構造の決まった表だけでなく、ログや画像のような形のそろわないデータも入れられます。

ほかの選択肢は別の言葉の説明です。

  • ア … データマイニング
  • イ … データマート
  • ウ … OLAP(多次元分析)

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問18(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 19

セキュリティ

NIST が制定した,AES における鍵長の条件はどれか。

  1. ア
    128 ビット,192 ビット,256 ビットから選択する。
  2. イ
    256 ビット未満で任意に指定する。
  3. ウ
    暗号化処理単位のブロック長よりも 32 ビット長くする。
  4. エ
    暗号化処理単位のブロック長よりも 32 ビット短くする。
解答と解説を見る

正解: ア

結論: AES の鍵長は 128・192・256 ビットの 3 種類から選びます。

なぜ: AES を定めた NIST の規格(FIPS 197)は、AES-128・AES-192・AES-256 の 3 つを規定しています。名前の数字が鍵の長さです。

⚠️ ブロック長はどれも 128 ビットで固定です。鍵の長さとブロックの長さは別のもので、ウ・エのように「ブロック長より何ビット長い(短い)」と決める関係はありません。任意の長さ(イ)も選べません。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問19(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 20

セキュリティ

DLP(Data Loss Prevention)の機能はどれか。

  1. ア
    特定の重要情報が漏えいしたことを想定して,重要情報の機密性の高さに基づいた被害額を事前に算出する。
  2. イ
    特定の重要情報を監視して,利用者によるコピー,送信などの挙動を検知し,ブロックする。
  3. ウ
    特定の重要情報を利用者が誤って削除したときのために,バックアップデータを取得し,外部記憶媒体などに保管する。
  4. エ
    特定の重要情報を利用者が削除したときに,重要情報が完全に削除されたことを示す消去証明書を発行する。
解答と解説を見る

正解: イ

結論: DLP は、守るべき情報を見張り、持ち出しにつながる操作を見つけて止める仕組みです。

なぜ: 名前のとおり「データの損失(流出)を防ぐ」ためのもので、端末での操作(コピーなど)、ネットワーク上の送信、保存されているデータを監視し、許可されていない利用や送信を検知して防ぎます。

ア(被害額の見積もり)はリスク評価、ウ(バックアップ)は消失への備え、エ(消去証明書)はデータ消去の証明で、どれも「流出を止める」働きではありません。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問20(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 21

セキュリティ

PC からサーバに対し,IPv6 を利用した通信を行う場合,ネットワーク層で暗号化を行うときに利用するものはどれか。

  1. ア
    IPsec
  2. イ
    PPP
  3. ウ
    SSH
  4. エ
    TLS
解答と解説を見る

正解: ア

結論: ネットワーク層(IP の層)で暗号化するのは IPsec です。

なぜ: IPsec は IP パケットそのものを保護する仕組みで、IPv4 でも IPv6 でも使えます。IP の層で守るので、その上で動くアプリケーションは暗号化を意識する必要がありません。

ほかの選択肢は働く層が違います。

  • イ PPP … 2 点間をつなぐデータリンク層のプロトコル
  • ウ SSH・エ TLS … TCP の上で動く、トランスポート層より上の暗号化

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問21(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 22

システム構成要素

ストレージ技術におけるシンプロビジョニングの説明として,適切なものはどれか。

  1. ア
    同じデータを複数台のハードディスクに書き込み,冗長化する。
  2. イ
    一つのハードディスクを,OS をインストールする領域とデータを保存する領域とに分割する。
  3. ウ
    ファイバチャネルなどを用いてストレージをネットワーク化する。
  4. エ
    利用者の要求に対して仮想ボリュームを提供し,物理ディスクは実際の使用量に応じて割り当てる。
解答と解説を見る

正解: エ

結論: シンプロビジョニングは、見かけの容量を先に渡し、実際の領域は使った分だけ割り当てる技術です。

なぜ: 利用者には要求どおりの大きさの仮想ボリュームを見せますが、物理ディスクは書き込まれた分だけ消費します。最初から全容量を確保する方式に比べ、使われずに眠る領域が減ります。⚠️ そのぶん、皆が一斉に使い始めると物理容量が足りなくなるので、使用量の監視が欠かせません。

アはミラーリング(RAID1)、イはパーティション分割、ウは SAN の説明です。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問22(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 23

システム構成要素

分散処理システムに関する記述のうち,アクセス透過性を説明したものはどれか。

  1. ア
    遠隔地にある資源を,遠隔地での処理方式を知らなくても,手元にある資源と同じ操作で利用できる。
  2. イ
    システムの運用及び管理をそれぞれの組織で個別に行うことによって,その組織の実態に合ったサービスを提供することができる。
  3. ウ
    集中して処理せずに,データの発生場所やサービスの要求場所で処理することによって,通信コストを削減できる。
  4. エ
    対等な関係のコンピュータが複数あるので,一部が故障しても他のコンピュータによる処理が可能となり,システム全体の信頼性を向上させることができる。
解答と解説を見る

正解: ア

結論: アクセス透過性は、手元の資源も遠くの資源も同じ操作で使えることです。

なぜ: 「透過」は「利用者から違いが見えない」という意味です。アクセス透過性では、資源が遠隔地にあっても、使い方(操作の手順)を変えずに済みます。似た言葉に、資源がどこにあるかを意識しなくてよい位置透過性があります。

イは運用管理の分散、ウは処理を発生場所の近くで行う利点、エは一部の故障に耐える信頼性の話で、どれも透過性の説明ではありません。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問23(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 24

開発技術

ソフトウェアの保守性を定量評価する指標として,適切なものはどれか。

  1. ア
    (運用期間中に発生した不具合件数)÷(プログラムの規模)
  2. イ
    (適正規模の基準を満たすプログラムの数)÷(プログラムの総数)
  3. ウ
    (テスト実施済みの分岐の数)÷(プログラムの総分岐数)
  4. エ
    (プログラムの推定総エラー数)-(摘出エラー数)
解答と解説を見る

正解: イ

結論: 保守性は「直しやすさ」です。プログラムが適正な大きさに収まっている割合は、その目安になります。

なぜ: 1 本のプログラムが大きすぎると、どこを直せばよいか探しにくく、直したときの影響も読みにくくなります。適正規模の基準を満たすプログラムの割合が高いほど、保守しやすいと評価できます。

ほかの選択肢は別のことを測っています。

  • ア … 規模あたりの不具合の件数(信頼性の指標)
  • ウ … テストで通した分岐の割合(テストの網羅率)
  • エ … まだ見つかっていない誤りの数の見込み(品質・信頼性の見込み)

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問24(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

問 25

開発技術

ドキュメンテーションジェネレーターの説明として,適切なものはどれか。

  1. ア
    HTML,CSS などのリソースを読み込んで,画面などに描画又は表示するソフトウェアである。
  2. イ
    ソースコード中にある,フォーマットに従って記述したコメント文などから,プログラムのドキュメントを生成するソフトウェアである。
  3. ウ
    動的に Web ページを生成するために,文書のテンプレートと埋込み入力データを合成して出力するソフトウェアである。
  4. エ
    文書構造がマーク付けされたテキストファイルを読み込んで,印刷可能なドキュメントを組版するソフトウェアである。
解答と解説を見る

正解: イ

結論: ドキュメンテーションジェネレーターは、ソースコードに決まった書式で書いたコメントから、説明書を自動で作る道具です。

なぜ: 関数やクラスの直前に、引数や戻り値を決まった書き方でコメントしておくと、それを読み取って一覧や説明のページを生成します。説明がコードの隣にあるので、コードを直したときに説明も一緒に直しやすいのが利点です。

アはレンダリングエンジン(ブラウザの描画部分)、ウはテンプレートエンジン、エは組版ソフトウェアの説明です。

解説は本サイトが独自に作成したものです。根拠にした一次情報は次のとおりです。

出典: 令和4年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問25(IPA 独立行政法人 情報処理推進機構)/問題冊子・解答例

出典と改変について

設問と選択肢は IPA(独立行政法人 情報処理推進機構)が公開している問題冊子からの引用です。正解は同じく IPA が公開している解答例で確認しています。原本の図表はスキャン画像のため、内容を変えずに読みやすく組み直しました。何を組み直したかは各問に書いています。解説は本サイトが独自に作成したもので、IPA の見解ではありません。本サイトは IPA とは関係のない非公式のサイトです。

← 過去問の一覧へ戻る