CCDAKとCCAAKはいずれもオンライン監督型で、当日の対応力がスコアを左右します。ここでは私の受験体験をベースに、公式ドキュメントで不変なKafkaの要点と、試験運営で変わりがちな部分を慎重に切り分けて整理します。
前提として、受験ポリシーや出題数・所要時間などの運営情報は変更される可能性があります。最新の情報はConfluent Certification公式を必ず確認してください。一方で、Kafkaの動作仕様(プロデューサの冪等性、トランザクション、コンシューマグループ、ログ保持など)は公式ドキュメントに沿う限り安定です。
受験はオンライン監督型です。試験起動前にシステムチェック、本人確認、室内確認、画面共有やマイク・カメラの確認を行います。途中退席は原則不可、外部資料は持ち込み不可が基本ルールです。
チェックイン方法や本人確認の詳細は運営ベンダ側の仕様に依存します。ここでは一般的な流れを示しますが、試験日前に受験ポータルでリハーサル(システムチェック)を実施し、最新の受験ガイドラインを確認してください。
| タイミング | 主な作業 | 落とし穴 |
|---|---|---|
| T-45〜-30分 | システムチェック、身分証用意、机上整理 | Webカメラやマイクの権限ブロック、二画面を外し忘れ |
| チェックイン | ID撮影、室内スキャン、規約同意 | 壁やホワイトボードの書き込みでNG判定 |
| 受験中 | 問題回答、フラグ付け、オンラインボードで下書き | 通知ポップアップ、スクリーンセーバ、自動アップデート |
| 終了後 | 提出、アンケート、レポート確認 | 結果メール待ちの間に設定を戻し忘れる |
オンライン試験の典型フロー
事前チェック用の簡易シェル(通信・プロセス確認)
# macOS/Linux想定。会社PCの場合は管理ポリシーに留意。
set -euo pipefail
# ネットワーク疎通(安定DNSへ)
for h in 1.1.1.1 8.8.8.8; do
ping -c 3 "$h" >/dev/null && echo "OK: ping $h" || echo "WARN: ping $h 失敗"
done
# カメラ/マイク使用中プロセスの確認(例)
if command -v lsof >/dev/null; then
lsof -nP | grep -E "(camera|microphone|CoreAudio|avfoundation)" || true
fi
echo "通知や自動更新を一時停止し、二画面/外部機器を外してください"基本は単一モニタ、物理メモ不可、オンラインホワイトボード可という制約です。IME切替は許可されますが、キーバインドやスニペットは不正判定の恐れがあるため無効化が安全です。
ネットワークは安定性重視。VPNや企業プロキシは切断し、Wi-Fiの場合は5GHz帯でルータ近傍に配置。OSの通知・アップデート・自動スリープを一時停止しましょう。
| 設定項目 | 推奨 | 注意点 |
|---|---|---|
| 表示/入力 | 単一モニタ・有線マウス・標準キーボード | 特殊キー割当やマクロは無効化 |
| ネットワーク | 有線LAN or 安定Wi‑Fi、VPN無効 | 会社プロキシで認証ダイアログが出ないか確認 |
| OS設定 | 通知停止・自動更新一時停止・スリープ無効 | 管理者権限が必要な企業PCは事前に申請 |
| ブラウザ | クリーンプロファイル、拡張機能オフ | パスワードマネージャのポップアップ抑止 |
物理配置の最小構成
ネットワーク品質の簡易確認(Linux/macOS)
# 連続疎通とジッタの目安確認
HOST=8.8.8.8
ping -c 20 "$HOST" | tail -n +2
# HTTP到達性
curl -I https://kafka.apache.org/ || echo "HTTP到達性に問題"
echo "VPN/プロキシを無効化して再テストしてください"1周目は易問を高速で確定し、迷う問題にはフラグを付け、2周目で深掘りします。選択肢の消去法とキーワードマッチ(冪等性、トランザクション、コンパクション、ISRなど)で判断速度を上げましょう。
オンラインホワイトボードは、用語の短縮表記と図で整理すると効果的です。たとえば Acks=all, idempotent, tx.commit, read_committed の関係を矢印で描くと、引っかけを避けられます。
| フェーズ | 目的 | 判断基準 |
|---|---|---|
| 1周目 | 得点回収と自信度マーキング | 即答できるか、根拠キーワードがあるか |
| 2周目 | 難問の取捨選択と時間管理 | 根拠が公式仕様に合致しているか |
| 提出前 | 見直しとフラグ解消 | 読み違い・二重否定・バージョン依存を再確認 |
時間配分のイメージ
ローカルで練習する簡易タイムボックス(bash)
# 各問題に時間上限を意識するミニタイマー
q=1
while [ $q -le 10 ]; do
echo "Q$q: 90秒で判断(迷ったらフラグ)";
sleep 90;
echo "次へ";
q=$((q+1))
done
Kafkaの安定仕様からの出題が中心です。プロデューサの冪等性とトランザクション、コンシューマの隔離レベル、パーティショニング、ログ保持とコンパクション、レプリケーションとISR、割り当て戦略(Range/Sticky/Cooperative)などは頻出です。
用語の取り違えがよくあるポイントは、Acks=allとExactly-Onceの関係(Acks=allは必要十分条件ではない)、コンパクションと保持期間の併用、read_committedの意味、再均衡のトリガ(メンバー離脱、タイムアウト、サブスク変更)です。公式ドキュメントの動作説明に沿って判断しましょう。
| 概念 | 試験での観点 | 実務の落とし穴 |
|---|---|---|
| Idempotent Producer | 重複メッセージの抑止 | ブローカー側設定とMin ISRを無視すると耐障害が下がる |
| Transactions | プロデューサとコンシューマの協調 | read_committedを忘れて未コミットデータを読む |
| Compaction vs Deletion | KTable的パターンと保持戦略 | keyなしレコードの扱い、墓石レコードの意味 |
| Rebalance Strategy | Sticky/Cooperativeの違い | ジョインや一時停止中の挙動の誤解 |
Producer→Broker→Consumer の論理経路
冪等・トランザクション構成の最小設定例(producer.properties)
bootstrap.servers=broker:9092
aacks=all
enable.idempotence=true
transactional.id=orders-tx-001
max.in.flight.requests.per.connection=5
retries=INT_MAX
linger.ms=10
batch.size=32768
トラブルは通信・デバイス・OS通知の3系統に大別されます。原因切り分けは、再現性の確認→代替経路(テザリング/有線)→再起動→監督への報告の順で進めると安全です。
監督とのチャットは英語になることが多いので、短文で状況を伝える定型文を準備すると安心です。たとえば Network is unstable. I will reconnect without VPN. といった表現。
| 症状 | 想定原因 | その場の対処 |
|---|---|---|
| 映像が止まる | Wi‑Fi不安定、VPN干渉 | VPN切断、有線接続、ルータ近接 |
| 音声が途切れる | 他アプリがマイク占有 | 音声アプリ完全終了、権限再付与 |
| 画面共有不可 | OS権限不足、拡張機能干渉 | プライバシー設定見直し、クリーンブラウザ使用 |
| 警告ポップアップ | 通知未停止、自動更新 | 集中モード、アップデート一時停止 |
当日トラブルの切り分け決定木(簡略)
通知抑止(例: macOS, Windows)
# macOS: 集中モードの手動設定を推奨(自動スクリプトは権限問題が出やすい)
# Windows: フォーカスアシストを"アラームのみ"に設定
# ここでは状態確認のみにとどめる
# macOS 集中モード状態の確認(参考)
/usr/bin/defaults read ~/Library/Preferences/ByHost/com.apple.notificationcenterui.plist 2>/dev/null || true
echo "OSのUIから集中モード/フォーカスアシストを有効化してください"実務でも試験でも頻出のコマンド・設定を最小限にまとめます。CLIのオプションやプロパティ名は公式の安定仕様に沿います。
注意: 実際の受験は選択式でCLI実行は不要ですが、意味理解の補助として整理しておきます。
| コマンド/設定 | 目的 | 要点 |
|---|---|---|
| kafka-topics --describe | 構成の可視化 | パーティション数、RF、ISRを確認 |
| kafka-consumer-groups --describe | ラグと割当 | 再均衡の兆候を読み取る |
| cleanup.policy=compact | 最新値の保持 | 墓石レコードとキー必須 |
| acks=all + min.insync.replicas | 耐障害と整合性 | 少数派書き込み拒否で可用性と整合性のトレードオフ |
Offset Commitの流れ(概念)
Kafka CLIと設定の断片例
# トピック作成(例)
kafka-topics --bootstrap-server broker:9092 \
--create --topic orders \
--partitions 6 --replication-factor 3
# コンシューマグループのラグ確認
kafka-consumer-groups --bootstrap-server broker:9092 \
--describe --group app-consumer
# ログ保持とコンパクションの併用例(最新値を長期保持しつつ古い値の削減)
cleanup.policy=compact,delete
retention.ms=604800000 # 7日
segment.ms=3600000 # 1時間提出後はレポートやスコアの反映を待ちます。弱点はテーマ単位(例: 取引整合性、保持戦略、再均衡)で公式ドキュメントへマッピングし、根拠を明文化すると再現性が高まります。
結果に関わらず、実務の設定テンプレートや運用Runbookに学びを反映すると定着が早まります。
| アクション | 所要時間 | 成果物 |
|---|---|---|
| 設問キーワードの棚卸し | 30分 | 弱点タグリスト(例: EOS, compaction, ISR) |
| 公式ドキュメント再読 | 1–2時間 | 根拠メモ(仕様引用と要約) |
| 検証シナリオ作成 | 1時間 | 手順書と期待結果、差分メモ |
学習ループ
振り返りテンプレート(YAML例)
topics:
- name: Exactly-Once Semantics
symptoms: ["Acks=allとEOSの混同", "read_committedの見落とし"]
doc_refs:
- kafka.apache.org/documentation/#semantics
- docs.confluent.io/
actions:
- "プロデューサ: idempotence+transaction の最小構成を再確認"
- "コンシューマ: isolation.level=read_committed の効果検証"CCDAK / CCAAK
問題 1
アプリケーションがトピックAから読み取り、整形してトピックBへ書き込む。重複書き込みを避け、コンシューマ側が未コミットの中間結果を読み取らないことを保証したい。最も適切な構成はどれか。
正解: A
Exactly-Once処理系では、プロデューサの冪等性とトランザクションが前提。コンシューマはread_committedで未コミットのレコードを除外して整合性を保つ。acks=allやリトライ単独では重複や未コミット読取を防げない。cleanup.policyは保持戦略であり、EOS要件の直接解決にはならない。
CCDAK/CCAAKの試験時間や出題数は固定ですか?
運営ポリシーは更新される可能性があります。最新の試験ガイド(Confluent Certification公式)で直前に必ず確認してください。本記事では具体分数や出題数に言及しません。
物理ノートや二画面は使えますか?
多くのオンライン監督試験では物理ノート不可・単一モニタが原則です。オンラインホワイトボードが提供されるケースが一般的です。受験ポータルの規約に従ってください。
Kafkaのバージョン差異(ZooKeeper/KRaft)は出題に影響しますか?
設問は製品仕様の安定概念に基づくことが多いですが、管理面の文脈で差異に触れる可能性はあります。最新の公式ドキュメントで、コントローラクォーラムや運用変更点を確認しておくと安全です。
NicheeLab編集部
データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。
Kafka Topic と Partition の基礎: 分散とスケーラビリティの要
CCDAK 対策と実務の両立を意識し、Topic/Partition/Replica/Consumer Group の役...
CCDAK 試験ガイド:出題範囲・配点・申込み・対策
Confluent Certified Developer for Apache Kafka (CCDAK) の出題範囲...
Confluent Certified Administrator (CCAAK) 対策: 出題範囲・配点の考え方・運用観点の要点
CCAAKに向けて、試験領域の押さえどころを運用目線で整理。プロダクションで通用する設定・監視・セキュリティの実践知を、...
Kafka の Replica と In-Sync Replicas を正しく設計する: 耐障害性と一貫性
レプリカとISRの仕組みを起点に、acks と min.insync.replicas、クリーン/アンクリーンリーダー選...
Kafka の Offset とコミット: ポジション管理と at-least-once の基礎
CCDAK 対策と実務の両立を意識して、Kafka コンシューマのオフセット管理とコミット戦略を整理。at-least-...