はじめに
この度、2024年秋期のデータベーススペシャリスト試験に合格しました💮
午前2、午後1、午後2と全てほぼ9割取れました。IPAの特典分布を見ても、9割以上の人数は非常に少なく、上位5%以上には位置しているかと思います。
この記事では1ヶ月という短期間で高得点合格したエッセンスをお伝えしたいと思います。
当時の私のスペックは以下の通りでした。
- 2023年4月入社(当時新卒2年目)
- 情報系大学院卒業
- ITエンジニア2年目
- 業務ではJavaを中心に扱う
- DB設計は未経験、SQLは業務でちょこちょこ書いている
- 2023年秋季で応用情報技術者に合格済みのため、午前1免除
勉強の流れ
ざっくり勉強スケジュール
- 9/16週:三好本(後述)をざっくり読む、達人に学ぶDB設計を読む
- 9/23週:午前2を解く、達人に学ぶSQLを読む
- 9/30週:午後1と午後2を解く
- 10/7週(試験の週):午後1と午後2を解く
大体75~100時間弱くらいの勉強量でした。応用情報に合格済みで、ある程度業務でSQLも書いてあったためこの程度の量でした。
データベースにほぼ触れたことが無い、午前1の免除も無い場合はこれより勉強量は増えるかと思います。
解いた過去問の量
- 午前2
- 三好本に記載の問題全部(250問くらい?)
- 午後1
- R5の問題3つ、三好本で推奨される問題(合計10問くらい)の合計15問弱
- 午後2
- R5の問1,2、R4の問2、R3の問2
- R3の問1、R2の問2は最初から解説読んだ
使用した教材
下記の三好さんの書籍をベースとして使用しました。三好本は合格のためのエッセンスが濃縮されており非常に良かったです。
一方で、DBやSQLの基礎的なところから詳しく説明しているような本では無いため、内容が難しすぎると感じる場合はもう少し基礎的な内容を先に勉強すると良いかもしれません。
ちなみに、翔泳社は3ヶ月に1回ほどポイント半額還元セールをしているので、そのタイミングで購入すると沢山ポイントが手に入って美味しいです。
また、並行して下記書籍でDB設計周りの基礎知識を習得しました。内容が読みやすくて良かったです。
SQLは下記書籍で理解を深めました。この本は全部読んでいないです。 複雑なCASE式はあまり過去問で出なさそうだったのでその辺りは飛ばし、ウインドウ関数やNULL関連の部分だけ読みました。
上記3つの書籍と残りは過去問で学習を進めました。
受験した上での感想
時間が足りない
データベーススペシャリスト試験は、時間との勝負です。私はこれまでに応用情報試験、ネットワークスペシャリストを受験しましたが、圧倒的にデスぺが時間が足りないです。
午後1、午後2の両方で時間が足りません。私はこれまで問題全部に軽く目を通して、点数が取れそうな方を選んでいたのですが、デスペにおいてはそんな時間はありませんでした。
そのため、受験前に選択する科目を決めておくことをオススメします。 大概の場合、以下のような問題です。過去問を解く中でどの問題と相性が良いか見極めましょう。
午後1
- 概念設計(ER図を作る)
- SQL
- 物理設計
※ SQLと物理設計は問題の雰囲気が結構似ていて境界線は曖昧
午後2
- 概念設計
- 物理設計/SQL
私は午後1は概念設計とSQL(問1と問2)、午後2は概念設計を選択しました。
暗記する量はかなり少ない
デスぺは暗記量がかなり少ないです。各種SQLと正規系くらいでしょうか。問題も知らないと太刀打ちできないようなものは少ない印象です。
ネットワークスペシャリスト試験よりも圧倒的に少ないだけでなく、応用情報よりも暗記量は少なくて済むと思います。
実務に近い問題が多い
午後問題は大量の仕様を読み解き、仕様を実現するためのデータベース設計をすることになります。
かなり実務に近い問題となっていて、私自身午後問題の演習を行う中で普段の業務でデータベースから仕様を読み取ったり、仕様を実現するためのデータ構造がイメージできるようになってきています。
人によっては全然勉強しなくても合格する
上記2つの「暗記量が少ない」「実務に近い問題が出る」という特徴から経験豊富な人だと少し勉強しただけで合格するケースがあります。
合格するコツ
問題用紙・解答用紙を印刷して解く
デスぺに限らないですが、問題用紙と解答用紙を印刷して問題を解くことをオススメします。
試験当日のイメージが湧く他、問題用紙にどうメモを書くのか慣れることができます。
午前2は解答を覚えてOK、深追いしない
午前2は15/25問くらい過去問と選択肢含めて全く同じ問題が出てきます。
また、デスぺは午前2と午後問題がだいぶ違います。そのため、午前2の勉強はサッサと終わらせた方が良いです。
三好本には午前2の過去問が250問くらいあります。あまり深く理解しようとし過ぎずに大量の問題をさらうのが良いかと思います。
午後2に拘らない。午後1で良いのでコンスタントに午後問題を解く
「高度情報は午後2が鬼門」「午後2の勉強は午後1の勉強を兼ねるから午後2の勉強をした方が良い」とよく言われますが、確かにこれらは事実だと思います。
ただ、午後2の勉強はかなりしんどいです。2時間問題解いて復習すると4,5時間はかかります。
まとまった時間の取れる休日だけ午後2の勉強するよりも、コンスタントに午後1の勉強をした方が結果的には勉強量が多くなります。
あまり午後2にこだわらず、やる気が無ければ午後1だけやったり、後述する解答・解説読む勉強を取り入れましょう。なるべくコンスタントに勉強するのが大事だと思います。
時間がない/問題を解く元気が無い時は解答・解説を見ながら問題を解く
やる気が無い時は問題を解く気力が湧かないと思います。そのような時は「最初から解答・解説を見ながら解答用紙を埋めていく」方法がオススメです。
解答を作っていく思考プロセスを学べるので十分勉強になります。
解説を読み、概念データモデルや関係スキーマを埋める過程で頻出のデータ構成の理解を深めることができます。
1つ1つの午後問題から多くの理解を搾り取る
1つの午後問題からより多くの学びを得て、次に類似する問題と出会ったときに確実に正解できるようにすることを心がけてください。
私は同じ問題を2回は解いていました。
- 午後問題を解く
- 解説を読み込む
- 再度午後問題を解く
いきなり解説を読んだ場合でも、以下のように再度同じ問題を解いていました。
- 解説を読みながら解答用紙を埋める
- 解説を見ないで問題を解く
再度問題を解くことで、思考プロセスを再現できるかの確認をしていました。
まとまりの単位を意識する
概念設計の午後問題では、どのような単位でまとめる必要があるのかを意識すると良いです。私はデータが「〇〇ごと」なのかを問題文にメモしていました。
例えば、以下のようなイメージです。
- 棚は店舗ごとに持っている→棚は店舗の
- 在庫は棚ごと、商品ごと
問題文に明確に〇〇ごとと書いてあることも書いてないこともありますが、それぞれ何ごとかを意識しながら問題を解くとリレーションを把握しやすく、スキーマの漏れも減ると思います。
【最重要】とりあえず受験する、途中で帰らない
少し前にも言いましたが、デスぺは暗記量が少なめで実務に近い問題が出ます。そのため、試験1週間前まで勉強していなくとも合格の可能性はあります。
全然勉強していなくても、受かる気しなくてもとりあえず受けましょう。出来が悪くても最後まで受けましょう。 ワンチャン合格を狙っていきましょう🔥
これから
デスぺを足掛かりにOracle Silver、Oracle Goldも取得しました。デスペで学んだ一般的なDBの知識がどうOracleで実現されているのかが分かり、非常に良かったです。
データベースの理解を深めることで、作っているシステムが何をしたいのか、どのようにデータを持てば良いのかイメージが湧くようになりました。
実際にこれまで太刀打ちできなかった業務も達成できることが増え、成長を実感しています。データベーススペシャリストは非常にオススメの試験です。 皆様も是非受けてみてください!
もっと聞きたい・詳しく書いてほしいことあればコメントお願いします!