はじめに
明けましておめでとうございます。はじめまして、2022新卒入社の庄野です。今回は、12月頃にDataStax Enterprise(DSE)の資格を取ってきたのでそれについて書こうと思います。
資格取得の背景としては入社から早半年以上、10月頃のこと、もろもろの研修を終えていざ実務!と思っていたのですが、アサインされるプロジェクトではある程度のDSEの技術知識が必要とのこと。。そこで、まず実務に向けてDSEの資格を取って一定の技術知識を身に着けつけることとなりました。今回は約2ヵ月の間、私がどんな勉強をしたのか紹介できればと思います。
DataStax Enterpriseってなに?
まずDSEって何なのかですが、はい、ずばりApache Cassandraベースの分散クラウドデータベースです。最初私が聞いたとき、つまり何者だ?と思いました。とりあえず、オープンソースであるApache CassandraをDataStax社がもっと便利に開発した商用データベースだと思っていただければ問題ないです。
では、DSEのことを知るにはCassandraのことを知らなければならないわけですが、簡単に言うとNoSQL型のデータベースと呼ばれます。一般的に普及しているMySQLなどのRDB(リレーショナルデータベース)との比較は以下の図のようになります。
RDB | NoSQL | |
特徴 | 関連付けられた表形式の複数データ | RDBの形式ではなく様々な形式がある |
メリット | ・一貫性が保証されている ・高度な検索が可能 | ・処理速度が速い ・拡張性が高い |
デメリット | ・処理速度が遅い ・拡張性が低い | ・一貫性は保証されない ・高度な検索に対応できないことがある |
簡単に言うと、NoSQL型データベースであるCassandraは大量のデータを高速に処理することに適しているということです。昨今では大量のデータを取り扱う場面が増えていることから、このNoSQL型のデータベースのニーズが高まっています。もう少し詳しく知りたい方はこちらでいろんなデータベースの種類を見てみてください!
試験準備
さて、DSEがどんなものか分かったところで、どうやって勉強をしてDataStax Certificationに合格したのか紹介しようと思います。
ずばりまずは、DataStax Academyというオンライン講座を受講しました。アカウントを作れば無料で受けられます。資格には主に二種類あり、開発者系のDevelopper Associateと管理者系のAdministrator Associateがあり、それぞれコースが用意されています。
私はDevelopper Associateの資格を取るため、DS201とDS220のオンライン講座を受講しました。英語の動画とドキュメントが用意されていますが、私は英語にそこまで慣れていないので、動画を見るよりかはドキュメントに沿ってCassandraの技術検証を黙々とやりました。CQL(CassandraのSQLに似たクエリ言語)やアーキテクチャ設定の内容が中心でした。さらにデータモデリングの概念などデータベース技術の基礎も実際に手を動かして学習できました。
次に、実践的な試験を模したワークショップに取り組みました。設問数は少ないですが、試験を経験した私の感想としては試験問題とほとんど似た内容が出るので良い対策ができます。
あとは必要に応じてDataStax 公式ドキュメントで、プライマリキーやデータベース内部の仕組みなど、細かい部分を調べに行って実際に技術検証を重ねていました。特にこのドキュメントはしっかり網羅されていて、該当箇所を頭に入れておけば試験に受かるかと思います。ちなみに試験は全て英語なので、英語で内容を読み取れるようにしておく必要があります。重要な用語は英語で説明できるまで頭に入れました。
試験
さて、試験ですが受験料は通常$145ですがオンライン講座受講後に、academy@datastax.comに連絡すれば試験2回分の無料バウチャーをもらえます。試験はオンラインで受けることができ、カメラオンで試験官と必要に応じてチャットして、試験環境をカメラを動かすか、鏡を使うかで見せるなどしました。意外と時間はシビアなのでスムーズに試験を受けられるとよい。私は少しテンパった。。
試験は90分60問で70%以上正答で合格となります。私は1回目69%の2回目70%で合格できました。ギリギリ無料枠で合格できてほっとしました。めでたし。
感想
試験問題は見直しができないので、1回目受験したからと言ってどんな問題が出るか把握できるだけで、問題演習ができるものではないので慎重に受けるべきですね。演習問題がもう少しあれば試験に比較的簡単に合格はできると感じました。とはいえ、しっかり教材が用意されており、基本的にその内容だけで問題が解けるようになっているので、知識と実務経験(技術検証経験)を蓄えれば受かる内容でした。私はどちらかというと英語でかなり苦労しましたが。。(エンジニアとしてもう少し英語慣れたい)
期間としては2ヵ月程度みっちり勉強することになったので、ほんの少しだけ大変でした。ただ、自分の今後の力になったのは確かなので素直にうれしいです。
おわりに
いかがだったでしょうか。私は新卒でなんのデータベース技術も経験もない中での資格取得となりましたが、これで無事プロジェクトに1月から参画できそうです。今後はCassandraの業務で使った技術をこちらの冒険の書ブログやsios.techブログなどにあげられたらと考えています。では今回はこの辺で。