見出し画像

Salesforce認定MarketingCloudデベロッパー100題 問題集全問解答+全問解説付き(2024年)

Salesforce認定MarketingCloudデベロッパーの過去問100題を全問解答+全問解説付き【2024年最新】

Salesforce認定MarketingCloudデベロッパーの過去問24年版

筆者が実際に受験して、問題を収集し、問題集を作成、解答とその解説を全問付けております。
問題数は合計100題。
この100問の問題の解答を理解できれば、ほぼ間違いなく、合格すると思います。

嬉しいコメントいただいています!


https://note.com/salesforce_pq/n/nd1afaac1d21b


ここから問題と解答/解説になります。

100題、全問解答+全問解説付きになります。

1.
ジャックは、自社のマーケティングチームがMarketing Cloudを導入することを決定しました。彼は特に異なる顧客セグメントにカスタマイズされたメールキャンペーンの効率を高めたいと考えています。適切なキャンペイントラッキングと顧客へのパーソナライズされたコンテンツの提供を考慮した、正確なデータモデルの設定が必要です。以下の選択肢から、彼がデータエクステンションを設定する際にどの種類が最も有効であるかを選びなさい。


ジャックがパーソナライズされたコンテンツを送信するために、顧客データを効果的にセグメント化して管理するためには、Marketing Cloud内でどのタイプのデータエクステンションを使用するのが最適でしょうか?

A. 標準データエクステンション
B. フィルタされたデータエクステンション
C. 連結データエクステンション
D. ランダムデータエクステンション


正解: B. フィルタされたデータエクステンション

解説:
A. 標準データエクステンション - これは基本的なデータ保持に使用されますが、高度なセグメンテーションやパーソナライズされたマーケティング活動には最適ではありません。
B. フィルタされたデータエクステンション - 特定のクライテリアに基づいて顧客データを動的にセグメント化するのに適しており、ジャックのニーズに合致します。これにより、効果的にターゲットされたメールキャンペーンを実施することができます。
C. 連結データエクステンション - 複数のデータソースを一つに統合する際に使用しますが、自動的なセグメント作成機能は提供されません。
D. ランダムデータエクステンション - テスト目的やランダムサンプリングに用いられることが多く、ジャックの要求するパーソナライゼーションには適していません。


2.

アリスは、マーケティングチームのメンバーとして、マーケティングキャンペーンの効果を最大化するためにSalesforce Marketing Cloud内でSQLクエリを用いて顧客データを分析し、特定のセグメントに対してカスタマイズされたメッセージを送ることを任されています。彼女は最適なSQLクエリを検討していますが、以下の選択肢の中からMarketing CloudのSQLアクティビティに特に適している戦略を選ぶ必要があります。


マーケティングキャンペーンのために特定の顧客セグメントを抽出するSQLクエリを作成する際、アリスが考慮すべき最も重要な戦略は何ですか?

A. すべての顧客データに対してJOIN操作を使用して単一の統合ビューを作成する
B. 関連のないデータセット間でFULL OUTER JOINを過度に使用する
C. パフォーマンス最適化のために選択的フィルタを使用したWHERE句を使用する
D. クエリ内でサブクエリの代わりに同じテーブルの繰り返し参照を避ける



正解: C. パフォーマンス最適化のために選択的フィルタを使用したWHERE句を使用する

解説:
A. すべての顧客データに対してJOIN操作を使用して単一の統合ビューを作成する - これはデータが膨大な場合、処理が重くなりパフォーマンスが低下する可能性が高いです。
B. 関連のないデータセット間でFULL OUTER JOINを過度に使用する - これは極めて非効率的であり、必要のないデータの取得につながることが多いため、推奨されません。
C. パフォーマンス最適化のために選択的フィルタを使用したWHERE句を使用する - SQLクエリの効率を向上させ、処理するデータ量を削減するために必要なデータのみを対象とするので、最も効率的です。
D. クエリ内でサブクエリの代わりに同じテーブルの繰り返し参照を避ける - これは良い習慣ではありますが、全体的なパフォーマンス最適化の観点ではCの選択肢ほどの効果はありません。


3.

エミリーはMarketing Cloudの開発者で、新しいSMSマーケティングキャンペーンを設計しています。彼女は特定の顧客グループに対してカスタマイズされたメッセージを送信したいと考えており、Marketing CloudのAMPscriptを利用して、購読者の特定の属性に基づいてメッセージの内容を動的に変更する計画です。エミリーは、購読者が特定の地域に属している場合にのみ特定のプロモーションメッセージを表示するようスクリプトを設定したいと考えています。


エミリーが購読者が特定の地域(例:カリフォルニア州)に属しているかどうかを判断し、条件に応じてメッセージをカスタマイズするためにAMPscript内で使用すべき正しい方法はどれですか?

A. LookupRows関数を使用して、購読者の地域情報を検索し、IFステートメントで条件分岐する
B. QueryParameter関数を使用して、購読者のリージョンパラメータを直接取得し、Switchステートメントで条件分岐する
C. DataExtensionRowCount関数を使用して、地域情報を持つデータエクステンションの行数をカウントし、IFステートメントで比較する
D. RowCount関数を使用して、特定のリージョンにフィルタされた行の数を検索し、Caseステートメントで条件分岐する



正解: A. LookupRows関数を使用して、購読者の地域情報を検索し、IFステートメントで条件分岐する

解説:
A. LookupRows関数を使用して、購読者の地域情報を検索し、IFステートメントで条件分岐する - これは購読者の属性に基づいてデータを検索し、その結果に応じたカスタマイズされたメッセージを表示するのに最適な方法です。AMPscript内で動的コンテンツ生成に広く使用されます。
B. QueryParameter関数は通常、URLからパラメータを取得する際に使用され、このケースには適していません。
C. DataExtensionRowCount関数は、データエクステンション内の行の数をカウントするのに使用されますが、特定の地域の詳細な情報を取得するためのものではありません。
D. RowCount関数はデータセットから行の数を返すために使用されますが、特定の条件に基づいたフィルタリングには適していないため、このケースでは不適切です。


4.
マイケルは、Salesforce Marketing Cloud を使用して取引先の詳細情報を収集するフォームを開発しています。彼の目的は、フォームから取得したデータを安全にMarketing Cloudのデータベースに保存し、将来的なマーケティングキャンペーンで利用できるようにすることです。マイケルは、フォームからの入力がSOAP APIを通じてMarketing Cloudに送信されており、データの安全性を保つためにOAuth 2.0認証を実装することを考えています。


マイケルがSOAP APIを使用してMarketing Cloudにデータを送信する際にOAuth 2.0認証を実装するメインの目的は何ですか?

A. APIレート制限を管理するため
B. システム間のデータ送信の安全性を保証するため
C. APIのレスポンスタイムを向上させるため
D. SOAP APIの機能を拡張するため



正解: B. システム間のデータ送信の安全性を保証するため

解説:
A. APIレート制限を管理するため - OAuth 2.0は認証プロトコルであり、APIのレート制限を管理するものではありません。
B. システム間のデータ送信の安全性を保証するため - OAuth 2.0はアクセストークンを通じて認証されることで、不正アクセスから保護しながら安全なデータの送信を可能にします。これが主な目的です。
C. APIのレスポンスタイムを向上させるため - OAuth 2.0認証がAPIのレスポンスタイムに直接的な影響を与えるわけではありません。
D. SOAP APIの機能を拡張するため - OAuth 2.0はAPIの機能自体を拡張するものではなく、セキュリティ層としての役割を担っています。


5.
サラは、Marketing Cloudを使用して大規模な取引先のデータベースから特定の顧客セグメントに対してカスタマイズされたEメールマーケティングキャンペーンを設計しています。彼女はこのキャンペーンを可能な限り効率的で効果的に実行するために、適切なデータエクステンションタイプの選択に苦労しています。データエクステンションはキャンペーンの特定のニーズに合わせて選択される必要があります。


送信前に購読者データを事前にフィルタリングし、指定された基準に基づき適切な顧客のみにEメールを送信したい場合、サラが使用すべきデータエクステンションのタイプはどれですか?

A. 標準データエクステンション
B. フィルタされたデータエクステンション
C. 連結データエクステンション
D. ランダムデータエクステンション


正解: B. フィルタされたデータエクステンション

解説:
A. 標準データエクステンション - これは基本的なデータ保持のために用いられる最も一般的なタイプのデータエクステンションですが、事前にフィルタリングする機能はありません。
B. フィルタされたデータエクステンション - これは特定の基準を設定してデータを事前にフィルタリングし、基準を満たす購読者のみにメールを送信する際に使われます。サラの要件に最も適しています。
C. 連結データエクステンション - 二つ以上のデータエクステンション間でデータを結合する時に使用します。基準によるフィルタリングはその主な目的ではありません。
D. ランダムデータエクステンション - 特定の基準なしでランダムにデータセットを生成するために使用されます。フィルタリングには適していません。


6.

あなたは、Marketing Cloudで新しいキャンペーンを設計しています。このキャンペーンには、異なる地域からの取引先責任者をターゲットとする必要があります。Marketing Cloudのデータエクステンションを最適に使用して、それぞれの地域に応じたメールコンテンツを送信するよう設計する必要があります。以下の選択肢の中から、データエクステンションの使用方法に関して最も効果的な戦略を選びください。

データエクステンションを使用して、異なる地域の取引先責任者に対してパーソナライズド内容を効率的に送信するための最適なアプローチは何ですか?

A. 地域ごとに別々のデータエクステンションを作成し、各々に地域特有のメールテンプレートを適用する。
B. 単一のデータエクステンションに全地域の取引先責任者を集約し、送信時にAMPscriptを使用してコンテンツをダイナミックに生成する。
C. 地域を特定する別のデータエクステンションを用意し、関連するデータエクステンションを参照関係で結びつける。
D. 各地域の取引先責任者をフィルタリングして結果をデータエクステンションに格納し、その後、静的なメールコンテンツで一括送信を行う。


正解: B

解説:

A: 地域ごとに異なるデータエクステンションを作成することは、管理が煩雑になり、データの更新やエラーのリスクが増すため、最も効率的な手法とは言えません。

B(正解): 一つのデータエクステンションに全てのデータを保持し、AMPscriptを用いて送信時にダイナミックに内容を変更することで、効率的にパーソナライズを行うことが可能です。これにより、データ保守が簡単になり、パーソナライズの精度も高まります。

C: データエクステンション間を参照関係で結びつけることは可能ですが、この方法だと各メール送信ごとに複数のデータソースからデータを取得する必要があり、処理が複雑になります。

D: 静的な内容での一括送信は、パーソナライゼーションの点で非効率であり、取引先責任者の期待に応じたカスタマイズを提供する上で効果的ではありません。


7.
ジョンはMarketing Cloudの開発者で、特定のキャンペーンに関連するサブスクライバーのダイナミックリストを作成しています。彼はSQLを使用して、最近6か月にメールを開封したが購入していないすべてのサブスクライバーを特定するデータエクステンションを作成しようとしています。ジョンは次のSQLクエリを書いていますが、彼は最適なSQLクエリを選択するのに助けが必要です。

問題: ジョンが使うべき最も効率的なSQLクエリはどれですか?

A.

SELECT s.SubscriberKey
FROM Sends s
JOIN Opens o ON s.SubscriberKey = o.SubscriberKey
WHERE o.EventDate > DATEADD(month, -6, GETDATE())
AND s.SubscriberKey NOT IN (SELECT SubscriberKey FROM Purchases)

B.

SELECT s.SubscriberKey
FROM Sends s
LEFT JOIN Opens o ON s.JobID = o.JobID
WHERE o.EventDate > DATEADD(month, -6, GETDATE())
AND s.SubscriberID NOT IN (SELECT SubscriberKey FROM Purchases)

C.

SELECT DISTINCT s.SubscriberKey
FROM Sends s
INNER JOIN Opens o ON s.SubscriberKey = o.Subscriber:Key AND s.JobID = o.JobID
WHERE o.EventDate BETWEEN DATEADD(month, -6, GETDATE()) AND GETDATE()
AND NOT EXISTS (SELECT 1 FROM Purchases p WHERE p.SubscriberKey = s.SubscriberID)

D.

SELECT s.SubscriberKey
FROM Sends s
INNER JOIN Opens o ON s.JobID = o.JobID
WHERE o.EventDate > DATEADD(month, -6, GETDATE())
AND NOT EXISTS (SELECT 1 FROM Purchases p WHERE p.SubscriberKey = s.SubscriberID)


正解: D

解説:

  • A サブスクライバーを関連づけるために SubsriberKey を使用していますが、これでは送信 (Sends) と開封 (Opens) を適切に絞り込むことができません。

  • B このクエリは JobID を利用して Sending と Opening を紐付けていますが、LEFT JOINは必要な全てのレコードを取得する場合に不適切であり不必要にデータを増やしパフォーマンスが低下することがあります。

  • C クエリはDISTINCTを使用していますが、これはデータ量が多い場合にパフォーマンスを低下させる原因となります。また、Inner Joinの条件が誤りを含んでおり文法的に不正です。

  • D JobIDでSendsとOpensをINNER JOINしており、関連付けが正確であり、Existsを使用してサブスクライバーがPurchasesに存在しないことをチェックしています。これが最も効率的な書き方です。


8.

エミリーはMarketing Cloud開発者であり、別のマーケティングチームが最適な顧客エンゲージメントを図るためのデータパーソナライゼーション戦略を立てています。エミリーはAMPscriptを用いたメールキャンペーンを設計しており、顧客の最後の購入日に基づいて異なるメッセージを提示する必要があります。彼女がAMPscriptで使用する適切な関数とその実装方法を選択する必要があります。

問題: エミリーが顧客の最後の購入日を取得し、それに基づいてカスタムメッセージを生成する場合、どのAMPscript関数と方法を使用するのが最も適切ですか?

A.

SET @lastPurchase = Lookup('PurchaseData', 'LastPurchaseDate', 'SubscriberKey', _subscriberkey)
IF @lastPurchase IS NOT EMPTY THEN
  SET @message = CONCAT("Your last purchase was on ", FORMATDATE(@lastPurchase, "MMMM dd, yyyy", "en-US"))
ELSE
  SET @message = "It's been a while since your last purchase!"
ENDIF

B.

SET @customerId = AttributeValue('SubscriberKey')
SET @lastPurchase = RetrieveSalesforceObjects('PurchaseData', 'LastPurchaseDate', 'SubscriberKey', @customerId)
IF NOT EMPTY(@lastPurchase) THEN
  SET @message = CONCAT("Last purchase: ", FORMAT(@lastPurchase, "MMMM dd, yyyy"))
ELSE
  SET @message = "Looking forward to your next purchase!"
ENDIF

C.

SET @lastPurchase = LookupRows('PurchaseData', 'SubscriberKey', _subscriberkey)
IF ROWCOUNT(@lastPurchase) > 0 THEN
  SET @date = FIELD(ROW(@lastPurchase, 1), 'LastPurchaseDate')
  SET @message = CONCAT("Your most recent purchase was on ", FORMAT(@date, "MMMM dd, yyyy"))
ELSE
  SET @message = "Why not check out our new arrivals?"
ENDIF

D.

SET @userKey = SubscriberKey()
SET @purchaseData = LookupOrderedRows('PurchaseHistory', 1, 'PurchaseDate DESC', 'SubscriberKey', @userKey)
IF ROWCOUNT(@purchaseDuration) > 0 THEN
  SET @lastPurchase = FIELD(ROW(@purchaseData, 1), 'LastPurchaseDate')
  SET @message = CONCAT("Thank you for your purchase on ", FORMATDATE(@lastPurchase, "MMMM dd, yyyy"))
ELSE
  SET @message + "We miss you! Check out our latest collections."
ENDIF



正解: A

解説:

  • A は `Lookup` 関数を利用して、指定された取引先責任者の最後の購入日を取得し、それに基づいてメッセージを生成します。この方法はAMPscriptにおいてデータ取得の基本的な手法であり、シンプルで効率的です。

  • B は `RetrieveSalesforceObjects` 関数を使っていますが、この関数はSalesforceのオブジェクトからデータを取得するためのものであり、Marketing Cloud内のデータを取り扱うシナリオでは適切ではありません。

  • CD は `LookupRows` および `LookupOrderedRows` 関数を用いますが、これらの関数は複数の行を取得する可能性があり、単一の最後の購入日を直接得るよりも複雑です。また、FORMAT関数の使用は間違っており、正しくは `FORMATDATE` 関数を使うべきです。


9.
ボブはMarketing Cloudで勤務するデータアナリストで、さまざまなソースからのデータを一元的に管理して、マーケティングキャンペーンのターゲティングを改善する役割を担っています。彼は外部のCRMシステムから取引先責任者の購入履歴とウェブサイトの閲覧履歴データをMarketing Cloudのデータエクステンションに定期的にインポートするプロセスを設定する必要があります。ボブがこのデータを統合し、Marketing Cloudで一括処理を最適化するために適用すべきベストプラクティスはどれですか?

A. データインポートの前に、データの識別子を標準化し、不要な項目は削除してデータのクオリティを向上させます。

B. データインポート後に、すべてのデータをMarketing Cloudの1つの大きなデータエクステンションに保存し、それを基にセグメンテーションを行います。

C. インポートされる各データソースごとに異なるAPIを使用し、それぞれのデータソースの影響を個別に分析します。

D. インポート処理を毎日ではなく、月に1回に設定し、データ量を制限することでシステムリソースの過負荷を避けます。


正解: A

解説:

  • A:
    これは最も適切な選択肢です。データの事前処理とクレンジングは、後続のプロセスのパフォーマンスを向上させ、エラーのリスクを減少させます。識別子の標準化や不要なデータの削除は、データの一貫性と処理効率の向上に寄与します。

  • B:
    1つの大きなデータエクステンションに全てのデータを格納することは、処理速度の低下や管理の複雑化を引き起こすことがあり、推奨されません。適切なデータ漏えいリスクも高まります。

  • C:
    それぞれのデータソースからのインポートに異なるAPIを使用するというアプローチは、管理が非常に複雑になる可能性があります。一般的に、可能な限り統一された方法を使用することが望ましいです。

  • D:
    インポート頻度を減少させることは、データのタイムリネスを損なう可能性があり、マーケティングキャンペーンにとって重要なリアルタイム性が必要な場合その効果を十分に発揮できません。月1回の更新では、データの鮮度が低下します。


10.
アリスはMarketing Cloudのデータアーキテクトで、彼女のチームは複数チャネルを通じて顧客エンゲージメントを最大化するための統合キャンペーンを計画しています。彼女のタスクは、異なるソースからの顧客データを統合して一つのビューを作成し、これを使って効果的なマーケティングアクティビティを行うことです。アリスが統合プロセス中にフォーカスすひべき重要なステップはどれですか?

A. すべてのデータソースから顧客IDを以て、それらをデータエクステンションで関連付けるよう設計します。

B. 各データソースからのすべてのデータをリアルタイムで処理し過負荷になるリスクを負うことなく、チャネル間でのデータ同期を確認します。

C. 顧客のプライバシーデータを厳格に管理し、データ保護規制と企業ポリシーを遵守する必要があるデータを特定します。

D. 各データソースを完全に独立させ、チャネル固有のキャンペーンを行うための独自の戦略を開発します。


正解: C

解説:

  • A: この選択肢は重要なステップですが、それだけで顧客データを効果的に統合するための唯一のフォーカスとするには限局的すぎます。顧客IDを用いてデータをリンクすることは基本ステップの一つですが、他の要因も考慮する必要があります。

  • B: リアルタイムでのすべてのデータ処理は理想的ではありますが、これは現実的ではありませんし、リソースに関する考慮も必要です。この選択肢では過負荷のリスクを無視しています。

  • C: 正解です。顧客のプライバシーとデータ保護は、どのデータインテグレーションプロジェクトでも最優先事項です。法的な要件と企業のポリシーを遵守することは、信頼とブランドの完全性を維持するために非常に重要です。

  • D: この選択肢では、統合データを使うという初期の目的から逸脱しています。チャネル固有のキャンペーンを行うことは有効な戦略かもしれませんが、それは統合されたデータビューを作成する目的には合致していません。このアプローチは分断を生じさせ、データの統合利点を損ねる可能性があります。

ここから先は

82,742字

¥ 2,000

期間限定 PayPay支払いすると抽選でお得に!

この記事が気に入ったらサポートをしてみませんか?