مطابقة البيانات المقدّمة من المستخدم

نظرة عامة

تعمل خدمة UPDM (مطابقة البيانات التي يقدّمها المستخدمون) على دمج بيانات الطرف الأول التي جمعتها حول أحد المستخدمين، مثل معلومات من مواقعك الإلكترونية أو تطبيقاتك أو متاجرك، مع نشاط المستخدم نفسه الذي سجّل الدخول إليه في بيانات "إعلانات Google"، باستثناء "منصة Google للتسويق". لتكون مؤهلاً لمطابقة البيانات المقدّمة من المستخدم، يجب ربط حدث الإعلان بمستخدم سجّل الدخول إلى حسابه في بيانات إعلانات Google.

توفّر مطابقة البيانات المقدّمة من المستخدمين بعض المزايا الفريدة التي تقدّمها الأشكال الأخرى من مطابقة العملاء. مطابقة البيانات المقدّمة من المستخدم:

  • أكثر مقاومة لتغيرات المجال من بيانات الجهات الخارجية
  • لن تتأثر الاستهلاك المرتقب لملفات تعريف الارتباط التابعة لجهات خارجية، لأن ميزة "مطابقة البيانات التي يقدّمها المستخدمون" لا تتوفّر إلا في المستودع الذي تملكه وتديره Google، للمستخدمين الذين سجّلوا الدخول
  • تقديم تجارب أكثر ملاءمةً للعملاء، ما يؤدي غالبًا إلى زيادة تفاعل العملاء
  • يقدّم إحصاءات أكثر ثراءً من العملاء

ملخّص العملية

بعد تفعيل مطابقة البيانات المقدّمة من المستخدم في حسابك، تتوفّر مرحلتَان على الاستخدام المستمر للميزة:

  1. نقل بيانات الطرف الأول إلى Ads Data Hub
    • يمكنك تنسيق وتحميل بيانات الطرف الأول إلى مجموعة بيانات BigQuery. يمكنك استخدام أي مجموعة بيانات تملكها على BigQuery بخلاف مشروع المشرف.
    • يمكنك بدء طلب مطابقة البيانات من خلال إنشاء اتصال واستيراد الجدول الزمني.
    • تجمع Google البيانات بين مشروعك والبيانات المملوكة لشركة Google التي تحتوي على رقم تعريف المستخدم الخاص بـ Google والبيانات الشخصية المجزأة التي قدّمها المستخدمون لإنشاء جداول *_match وتعديلها.
  2. طلبات البحث المستمرة في Ads Data Hub، استنادًا إلى البيانات المطابقة
    • عليك تنفيذ طلبات البحث مقابل جداول *_match بالطريقة نفسها التي يتم بها تنفيذ طلبات بحث عادية في Ads Data Hub.

مصادر البيانات ومشاريع الوجهة

تتطلب منك الاتصالات استخدام مشروعين مختلفين على Google Cloud: مشروع مصدر البيانات ومشروع الوجهة.

  • مصدر البيانات: يحتوي هذا المشروع على بيانات الإعلانات الخاصة بك في شكله الأولي.
  • الوجهة: هذه هي مجموعة بيانات BigQuery التي تكتبها Ads Data Hub. وبشكل تلقائي، يكون هذا مشروع المشرف. لتغييرها إلى مشروع Google Cloud آخر، راجِع ضبط حسابات الخدمة.

قيود الخصوصية

جمع بيانات العملاء

عند استخدام مطابقة البيانات المقدّمة من المستخدم، عليك تحميل بيانات الطرف الأول. وقد تكون هذه المعلومات التي جمعتها من مواقعك الإلكترونية أو تطبيقاتك أو متاجرك أو أي معلومات شاركها معك العميل مباشرةً.

حجم البيانات

لحماية خصوصية المستخدم، تفرض مطابقة البيانات المقدّمة من المستخدم المتطلبات التالية في ما يتعلق بحجم بياناتك:

  • عليك تحميل 1,000 سجلّ على الأقل في قائمة المستخدمين.
  • يجب أن يتضمن كل تحديث ناجح لجدول المطابقة حدًا أدنى لعدد المستخدمين المطابقين حديثًا. وتتشابه هذه الطريقة في الأداء مع عمليات التحقّق من الاختلافات.
  • يجب ألا تتجاوز قائمتك الحد الأقصى لعدد السجلات. للتعرّف على الحد الأقصى للبيانات، يمكنك التواصل مع ممثل عن Google.

تفعيل علامة التبويب "الاتصالات"

قبل البدء، عليك ضبط حساب Ads Data Hub لتفعيل علامة التبويب الاتصالات، حيث تستطيع إنشاء مسار مطابقة البيانات. ولن تحتاج إلى إجراء هذه الخطوات سوى مرة واحدة فقط.

  1. أرسِل ممثل عن Google:
    1. رقم تعريف حساب Ads Data Hub الذي ستستخدمه لمطابقة البيانات المقدّمة من المستخدم.
    2. عنوان البريد الإلكتروني للمستخدم المتميز الذي يمكنه الوصول إلى مشروع الوجهة.
    3. تأكّد من ممثل Google الذي تتعامل معه عن إدراج الحساب والمستخدم المتميز في القائمة المسموح بها.
  2. فعِّل Ads Data Connector API في مشروع Google Cloud المحدّد. ويكون هذا هو مشروع المشرف تلقائيًا. لاستخدام مشروع مختلف، يُرجى اتّباع هذه الخطوات مع مشروع Google Cloud البديل باعتباره مشروع مصدر البيانات. يجب تنفيذ هذه الخطوات أثناء تسجيل الدخول كمستخدم متميز في القائمة المسموح بها.

    1. انتقِل إلى مكتبة واجهة برمجة التطبيقات في Cloud Console.
    2. اختَر مشروع مصدر البيانات من القائمة.
    3. ابحث عن "Ads Data Connector API" إذا لم تظهر واجهة برمجة التطبيقات Ads Data Connector في نتائج البحث، قد يشير ذلك إلى أن حساب Google الذي تم تسجيل الدخول إليه ليس المستخدم المتميز الذي تمت إضافته إلى القائمة المسموح بها.
    4. في صفحة واجهة برمجة التطبيقات، انقر على تفعيل.
    5. تأكّد من ممثل Google عن تفعيل واجهة برمجة التطبيقات.
  3. سيرسل لك ممثل عن Google ثلاثة عناوين بريد إلكتروني، مُحدَّدة بصفتها حسابات خدمة Datafusion وDataproc وUPDM.

    سيظهر أيضًا قسم الاتصالات الجديد في حسابك على Ads Data Hub، ويحتوي على علامات تبويب تُسمى بيانات الطرف الأول ومطابقة البيانات. تعرّف على حالات الاستخدام لكل علامة تبويب.

  4. امنح الأذونات المناسبة لحسابات الخدمة. للحصول على توضيح عن حسابات الخدمة المختلفة والأذونات المطلوبة، اختَر مصدر البيانات في الجدول:

    BigQuery

    حساب خدمة دمج البيانات
    الغرض يُستخدَم حساب خدمة دمج البيانات لعرض قائمة بحقول المصدر في واجهة مستخدم Ads Data Hub.
    التنسيق service-some-number@gcp-sa-datafusion.iam.gserviceaccount.com
    مطلوب الوصول
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    لمجموعات بيانات محدّدة في مشروعَي مصدر البيانات والوجهة
    Storage Admin
    roles/storage.admin
    لمشروع مصدر البيانات أو حزمة تخزين مخصصة
    حساب خدمة Dataproc
    الغرض يكون حساب خدمة dataproc مسؤولاً عن تشغيل خطوط البيانات في الخلفية.
    التنسيق some-number-compute@developer.gserviceaccount.com
    مطلوب الوصول
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    لمجموعات بيانات محدّدة في مشروعَي مصدر البيانات والوجهة
    BigQuery Data Editor
    roles/bigquery.dataEditor
    لمجموعات بيانات محدّدة في مشروع Destination (الوجهة)
    BigQuery Job User
    roles/bigquery.jobUser
    لكل من مشروعَي مصدر البيانات وDestination
    Storage Admin
    roles/storage.admin
    لكلٍّ من مشروعَي مصدر البيانات والوجهة، أو حزمة مساحة تخزين مخصّصة
    حساب خدمة UPDM
    الغرض يتم استخدام حساب خدمة UPDM لتشغيل مهمة المطابقة.
    التنسيق service-some-number@gcp-sa-adsdataconnector.iam.gserviceaccount.com
    مطلوب الوصول
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    لمشروع Destination
    BigQuery Job User
    roles/bigquery.jobUser
    لمشروع Destination

    تخزين في السحابة الإلكترونية

    حساب خدمة دمج البيانات
    الغرض يُستخدَم حساب خدمة دمج البيانات لعرض قائمة بحقول المصدر في واجهة مستخدم Ads Data Hub.
    التنسيق service-some-number@gcp-sa-datafusion.iam.gserviceaccount.com
    مطلوب الوصول
    Storage Object Viewer
    roles/storage.objectViewer
    لحِزم تخزين محدّدة في مشروع مصدر البيانات
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    لمشروع مصدر البيانات أو حزمة تخزين مخصصة
    Storage Admin
    roles/storage.admin
    لمشروع مصدر البيانات أو حزمة تخزين مخصصة
    حساب خدمة Dataproc
    الغرض يكون حساب خدمة dataproc مسؤولاً عن تشغيل خطوط البيانات في الخلفية.
    التنسيق some-number-compute@developer.gserviceaccount.com
    مطلوب الوصول
    Storage Admin
    roles/storage.admin
    لكلٍّ من مشروعَي مصدر البيانات والوجهة، أو حزمة مساحة تخزين مخصّصة
    BigQuery Job User
    roles/bigquery.jobUser
    لمشروع Destination
    حساب خدمة UPDM
    الغرض يتم استخدام حساب خدمة UPDM لتشغيل مهمة المطابقة.
    التنسيق service-some-number@gcp-sa-adsdataconnector.iam.gserviceaccount.com
    مطلوب الوصول
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    لمشروع Destination
    BigQuery Job User
    roles/bigquery.jobUser
    لمشروع Destination

    Salesforce

    يتوفر قريبًا

نقل بيانات الطرف الأول

تنسيق البيانات لإدخالها

يجب أن تلتزم بياناتك بمتطلبات التنسيق هذه حتى تتم مطابقتها بشكلٍ صحيح:

  • عند الإشارة إلى ذلك، عليك التحميل باستخدام تجزئة SHA256 التي تم ترميزها كسلسلة Base16. على الرغم من أنّ شركة UPDM متوافقة مع Base64، يختلف هذا الأمر عن إرشادات مطابقة العملاء في "إعلانات Google".
  • يجب تنسيق حقول الإدخال كسلاسل. إذا كنت تستخدم's&دالة تجزئة SHA256 ودالة ترميز Base16 (TO_HEX)، استخدم التحويل التالي: TO_HEX(SHA256(user_data)).

رقم تعريف المستخدم

  • نص عادي
  • التجزئة: بلا

البريد الإلكتروني

  • إزالة المسافة البيضاء
  • يجب أن تكون كل الأحرف صغيرة
  • أدرِج اسم نطاق لجميع عناوين البريد الإلكتروني، مثل gmail.com أو hotmail.co.jp
  • إزالة علامات التشكيل، مثل تغيير è أو é أو ê أو ë إلى e
  • التجزئة: ترميز SHA256 المشفّر باستخدام Base16

صالح: TO_HEX(SHA256("jeffersonloveshiking@gmail.com"))

غير صالح: TO_HEX(SHA256("JéffersonLôvesHiking@gmail.com"))

هاتف

  • إزالة المسافة البيضاء
  • التنسيق E.164، على سبيل المثال، الولايات المتحدة +14155552671، المملكة المتحدة +442071838750)
  • يجب تضمين رمز البلد (بما في ذلك الولايات المتحدة)
  • يجب إزالة جميع الرموز الخاصة باستثناء &"+"; قبل رمز البلد.
  • التجزئة: ترميز SHA256 المشفّر باستخدام Base16

صالح: TO_HEX(SHA256("+18005550101"))

غير صالح: TO_HEX(SHA256("(800) 555-0101"))

الاسم الأوّل

  • إزالة المسافة البيضاء
  • يجب أن تكون كل الأحرف صغيرة
  • يجب إزالة جميع البادئات، مثل السيدة
  • يجب عدم إزالة علامات التشكيل: على سبيل المثال، è أو é أو ê أو ë
  • التجزئة: ترميز SHA256 المشفّر باستخدام Base16

صالح: TO_HEX(SHA256("daní"))

غير صالح: TO_HEX(SHA256("Daní"))

اسم العائلة

  • إزالة المسافة البيضاء
  • يجب أن تكون كل الأحرف صغيرة
  • يجب إزالة جميع البادئات، مثل الابن.
  • يجب عدم إزالة علامات التشكيل: على سبيل المثال، è أو é أو ê أو ë
  • التجزئة: ترميز SHA256 المشفّر باستخدام Base16

صالح: TO_HEX(SHA256("delacruz"))

غير صالح: TO_HEX(SHA256("de la Cruz, Jr."))

البلد

  • أدرِج رمز البلد حتى إذا كانت كل بيانات العملاء واردة من البلد نفسه.
  • عدم تجزئة بيانات البلد
  • استخدِم رموز البلدان وفقًا لمعيار ISO 3166-1 alpha-2.
  • التجزئة: بلا

صالح: US

غير صالح: United States of America أو USA

الرمز البريدي

  • عدم تجزئة بيانات الرمز البريدي
  • مسموح باستخدام الرموز البريدية الأمريكية والدولية
  • بالنسبة إلى الولايات المتحدة:
    • يُسمح باستخدام الرموز المكوّنة من 5 أرقام، مثل 94043.
    • يُسمح أيضًا باستخدام 5 أرقام متبوعة بإضافة مكوّنة من 4 أرقام، مثل 94043-1351 أو 940431351.
  • بالنسبة إلى جميع البلدان الأخرى:
    • لا حاجة إلى التنسيق (لا حاجة إلى استخدام أحرف صغيرة أو إزالة المسافات والأحرف الخاصة).
    • يجب استبعاد إضافات الرموز البريدية
  • التجزئة: بلا

التحقق من صحة التجزئة وترميز البيانات

يمكنك استخدام النصوص البرمجية التالية للتحقّق من صحة التجزئة للتأكّد من تنسيق بياناتك بشكلٍ سليم.

JavaScript

أساسي16

/**
 * @fileoverview Provides the hashing algorithm for User-Provided Data Match, as
 * well as some valid hashes of sample data for testing.
*/

async function hash(token) {
  const formattedToken = token.trim().toLowerCase();
  const hashArrayBuffer = await crypto.subtle.digest(
      'SHA-256', (new TextEncoder()).encode(formattedToken));
  return Array.from(new Uint8Array(hashArrayBuffer))
      .map((b) => b.toString(16).padStart(2, '0'))
      .join('');
}

function main() {
  // Expected hash for test@gmail.com:
  // 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  hash('test@gmail.com').then(result => console.log(result));

  // Expected hash for +18005551212:
  // 61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  hash('+18005551212').then(result => console.log(result));

  // Expected hash for John:
  // 96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  hash('John').then(result => console.log(result));

  // Expected hash for Doe:
  // 799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f
  hash('Doe').then(result => console.log(result));
}

main()

قاعدة 64

/**
 * @fileoverview Provides the hashing algorithm, as well as some valid hashes of
 * sample data for testing.
*/

async function hash(token) {
  const formattedToken = token.trim().toLowerCase();
  const hashBuffer = await crypto.subtle.digest(
      'SHA-256', (new TextEncoder()).encode(formattedToken));
  const base64Str = btoa(String.fromCharCode(...new Uint8Array(hashBuffer)));
  return base64Str;
}

function main() {
  // Expected hash for test@gmail.com:
  // h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  hash('test@gmail.com').then(result => console.log(result));

  // Expected hash for +18005551212:
  // YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  hash('+18005551212').then(result => console.log(result));

  // Expected hash for John: ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  hash('John').then(result => console.log(result));

  // Expected hash for Doe: eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
  hash('Doe').then(result => console.log(result));
}

main()

Python

أساسي16

"""Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Supports: Python 2, Python 3

Sample hashes:

  - Email 'test@gmail.com': 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  - Phone '+18005551212':   61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  - First name 'John':      96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  - Last name 'Doe':        799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f
"""

import base64
import hashlib

def updm_hash(token):
  return hashlib.sha256(token.strip().lower().encode('utf-8')).hexdigest()

def print_updm_hash(token):
  print('Hash: "{}"\t(Token: {})'.format(updm_hash(token), token))

def main():
  print_updm_hash('test@gmail.com')
  print_updm_hash('+18005551212')
  print_updm_hash('John')
  print_updm_hash('Doe')

if __name__ == '__main__':
  main()

قاعدة 64

"""Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Supports: Python 2, Python 3

Sample hashes:

  - Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  - Phone '+18005551212':   YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  - First name 'John':      ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  - Last name 'Doe':        eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
"""

import base64
import hashlib

def hash(token):
  return base64.b64encode(
      hashlib.sha256(
          token.strip().lower().encode('utf-8')).digest()).decode('utf-8')

def print_hash(token, expected=None):
  hashed = hash(token)

  if expected is not None and hashed != expected:
    print(
        'ERROR: Incorrect hash for token "{}". Expected "{}", got "{}"'.format(
            token, expected, hashed))
    return

  print('Hash: "{}"\t(Token: {})'.format(hashed, token))

def main():
  print_hash(
      'test@gmail.com', expected='h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=')
  print_hash(
      '+18005551212', expected='YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=')
  print_hash('John', expected='ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=')
  print_hash('Doe', expected='eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=')

if __name__ == '__main__':
  main()

البدء

أساسي16

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Sample hashes:

  - Email 'test@gmail.com': 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  - Phone '+18005551212':   61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  - First name 'John':      96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  - Last name 'Doe':        799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f
*/
package main

import (
  "crypto/sha256"
  "fmt"
  "strings"
)

// Hash hashes an email, phone, first name, or last name into the correct format.
func Hash(token string) string {
  formatted := strings.TrimSpace(strings.ToLower(token))
  hashed := sha256.Sum256([]byte(formatted))
  encoded := fmt.Sprintf("%x", hashed[:])
  return encoded
}

// PrintHash prints the hash for a token.
func PrintHash(token string) {
  fmt.Printf("Hash: \"%s\"\t(Token: %s)\n", Hash(token), token)

}

func main() {
  PrintHash("test@gmail.com")
  PrintHash("+18005551212")
  PrintHash("John")
  PrintHash("Doe")
}

قاعدة 64

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Sample hashes:

  - Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  - Phone '+18005551212':   YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  - First name 'John':      ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  - Last name 'Doe':        eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
*/
package main

import (
  "crypto/sha256"
  "encoding/base64"
  "fmt"
  "strings"
)

// Hash hashes an email, phone, first name, or last name into the correct format.
func Hash(token string) string {
  formatted := strings.TrimSpace(strings.ToLower(token))
  hashed := sha256.Sum256([]byte(formatted))
  encoded := base64.StdEncoding.EncodeToString(hashed[:])
  return encoded
}

// PrintHash prints the hash for a token.
func PrintHash(token string) {
  fmt.Printf("Hash: \"%s\"\t(Token: %s)\n", Hash(token), token)

}

func main() {
  PrintHash("test@gmail.com")
  PrintHash("+18005551212")
  PrintHash("John")
  PrintHash("Doe")
}

Java

أساسي16

package updm.hashing;

import static java.nio.charset.StandardCharsets.UTF_8;

import com.google.common.base.Ascii;
import com.google.common.hash.Hashing;

/**
 * Example of the UPDM hashing algorithm using hex-encoded SHA-256.
*
* <p>This uses the Guava Hashing to generate the hash: https://github.com/google/guava
*
* <p>Sample valid hashes:
*
* <ul>
*   <li>Email "test@gmail.com": "87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674"
*   <li>Phone "+18005551212": "61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44"
*   <li>First name "John": "96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a"
*   <li>Last name "Doe": "799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f"
* </ul>
*/
public final class HashExample {

  private HashExample() {}

  public static String hash(String token) {
    String formattedToken = Ascii.toLowerCase(token).strip();
    return Hashing.sha256().hashString(formattedToken, UTF_8).toString();
  }

  public static void printHash(String token) {
    System.out.printf("Hash: \"%s\"\t(Token: %s)\n", hash(token), token);
  }

  public static void main(String[] args) {
    printHash("test@gmail.com");
    printHash("+18005551212");
    printHash("John");
    printHash("Doe");
  }
}

قاعدة 64

package updm.hashing;

import static java.nio.charset.StandardCharsets.UTF_8;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;

/**
* Example of the hashing algorithm.
*
* <p>Sample hashes:
*
* <ul>
*   <li>Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
*   <li>Phone '+18005551212': YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
*   <li>First name 'John': ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
*   <li>Last name 'Doe': eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
* </ul>
*/
public final class HashExample {

private HashExample() {}

public static String hash(String token) {
  String formattedToken = token.toLowerCase().strip();

  byte[] hash;
  try {
    hash = MessageDigest.getInstance("SHA-256").digest(formattedToken.getBytes(UTF_8));
  } catch (NoSuchAlgorithmException e) {
    throw new IllegalStateException("SHA-256 not supported", e);
  }

  return Base64.getEncoder().encodeToString(hash);
}

public static void printHash(String token) {
  System.out.printf("Hash: \"%s\"\t(Token: %s)\n", hash(token), token);
}

public static void main(String[] args) {
  printHash("test@gmail.com");
  printHash("+18005551212");
  printHash("John");
  printHash("Doe");
}
}

لغة SQL

أساسي16

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

The following code uses Google Standard SQL and can be run on BigQuery to generate match tables from unhashed data.

Sample hashes:

  - Email 'test@gmail.com': 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  - Phone '+18005551212':   61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  - First name 'John':      96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  - Last name 'Doe':        799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f

The unhashed input table schema is assumed to be:

- Column name: UserID, Type: String
- Column name: Email, Type: String
- Column name: Phone, Type: String
- Column name: FirstName, Type: String
- Column name: LastName, Type: String
- Column name: PostalCode, Type: String
- Column name: CountryCode, Type: String
*/

CREATE TABLE `your_project_name.your_dataset_name.output_hashed_table_name`
AS
SELECT
  UserID,
  TO_HEX(SHA256(LOWER(Email))) AS Email,
  TO_HEX(SHA256(Phone)) AS Phone,
  TO_HEX(SHA256(LOWER(FirstName))) AS FirstName,
  TO_HEX(SHA256(LOWER(LastName))) AS LastName,
  PostalCode,
  CountryCode,
FROM
  `your_project_name.your_dataset_name.input_unhashed_table_name`;

قاعدة 64

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

The following code uses Google Standard SQL and can be run on BigQuery to generate match tables from unhashed data.

Sample hashes:

  - Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  - Phone '+18005551212':   YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  - First name 'John':      ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  - Last name 'Doe':        eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=

The unhashed input table schema is assumed to be:

- Column name: UserID, Type: String
- Column name: Email, Type: String
- Column name: Phone, Type: String
- Column name: FirstName, Type: String
- Column name: LastName, Type: String
- Column name: PostalCode, Type: String
- Column name: CountryCode, Type: String
*/

CREATE TABLE `your_project_name.your_dataset_name.output_hashed_table_name`
AS
SELECT
  UserID,
  TO_BASE64(SHA256(LOWER(Email))) AS Email,
  TO_BASE64(SHA256(Phone)) AS Phone,
  TO_BASE64(SHA256(LOWER(FirstName))) AS FirstName,
  TO_BASE64(SHA256(LOWER(LastName))) AS LastName,
  PostalCode,
  CountryCode,
FROM
  `your_project_name.your_dataset_name.input_unhashed_table_name`;

مفاتيح الانضمام

وتكون بعض مجموعات البيانات التي يقدّمها المستخدمون أقوى من غيرها. في ما يلي قائمة بمجموعات البيانات المختلفة التي يقدمها المستخدم مرتّبة حسب القوة النسبية:

  1. البريد الإلكتروني والهاتف والعنوان (الأقوى)
  2. رقم الهاتف والعنوان
  3. البريد الإلكتروني والعنوان
  4. البريد الإلكتروني والهاتف
  5. العنوان
  6. هاتف
  7. البريد الإلكتروني (الضعيف)

إنشاء جدول مطابقة

  1. انقر على الاتصالات، ومطابقة البيانات، وإنشاء اتصال.
  2. اختَر مصدر بيانات، ثم انقر على ربط. إجراء مصادقة عند الطلب، ثم النقر على Next (التالي)
  3. اضبط مصدر بياناتك، ثم انقر على التالي:

    BigQuery

    اختَر جدول BigQuery المراد استيراده.

    تخزين في السحابة الإلكترونية

    أدخِل مسار ملف gsutil، مثل gs://my-bucket/folder/، واختَر تنسيق ملفك.

    Salesforce

    يتوفر قريبًا

  4. اضبط destination، ثم انقر على Next (التالي):
    1. اختَر مجموعة بيانات BigQuery جديدة لاستخدامها كوجهة وسيطة للبيانات. تضمن هذه الخطوة تنسيق بياناتك بشكلٍ صحيح.
  5. اختياري: تعديل تنسيق بياناتك. وتتضمّن عمليات التحويل الحقول الحوسبة وتنسيق الأحرف الصغيرة/الكبيرة ودمج الحقول أو تقسيمها.
    1. انقر على إجراء &gt؛ &gt؛ تحويل.
    2. في اللوحة المنبثقة، انقر على إضافة تحويل أو إضافة إحالة ناجحة أخرى.
    3. اختَر نوع الإحالة الناجحة من القائمة المنسدلة وأدخِل المتطلبات.
    4. انقر على حفظ.
  6. اختَر مفتاح انضمام واحدًا على الأقل لربط الحقول التي ستستخدمها، ثم انقر على التالي.
  7. تحديد جدول زمني:
    1. اختَر اسمًا للاتصال.
    2. عليك تحديد معدّل التكرار لتحديد عدد مرات استيراد البيانات إلى مجموعة البيانات التي اخترتها في الخطوة السابقة. وسيؤدي كل تشغيل إلى استبدال البيانات في جدول الوجهة.
    3. حدِّد كيف تريد التعامل مع تعارضات رقم تعريف المستخدم. يمكنك الاختيار بين الاحتفاظ بالمطابقة الحالية أو استبدال البيانات الجديدة.
  8. انقر على إنهاء.

عرض تفاصيل الاتصال

تعرض صفحة تفاصيل الاتصال معلومات عن عمليات التشغيل والأخطاء التي حدثت مؤخرًا. لعرض تفاصيل اتصال محدد:

  1. انقر على الاتصالات، ومطابقة البيانات.
  2. انقر على اسم الاتصال للاطّلاع على تفاصيله.
  3. يمكنك الآن معرفة تفاصيل الاتصال وعمليات التشغيل الأخيرة. ويعرض كلٌّ نوعين من الأخطاء المحتملة: مستوى الاتصال (لم يتم الاتصال بالإنترنت، وعدم تشغيل) وأخطاء على مستوى الصف (لم يتم استيراد صف).
    1. تشير الحالة تعذّر التحقق إلى تعذُّر تشغيل الاتصال بالكامل (مثل مشكلة في إذن حساب الخدمة). انقر على حالة الخطأ لمعرفة الأخطاء التي أثرت في الاتصال.
    2. تشير الحالة مكتمل إلى أن الاتصال قد تم تشغيله بنجاح. ومع ذلك، قد تكون هناك أخطاء على مستوى الصف، وتتم الإشارة إليها بقيمة غير صفرية في العمود "الصفوف" و"الصفوف التي تحتوي على أخطاء"& انقر على القيمة لمعرفة المزيد عن السجلات التي تعذّر تنفيذها.

تعديل اتصال

تعديل الاتصالات غير متاح حتى الآن. لتغيير الاتصال، يمكنك إنشاء اتصال جديد ثم حذف الاتصال القديم.

إجراء طلب بحث في البيانات في Ads Data Hub

طلب البحث في جداول المطابقة

عندما تحتوي جداول المطابقة على بيانات كافية لتلبية عمليات التحقق من الخصوصية، ستكون مستعدًا لإجراء طلبات بحث مقابل الجداول. يتضمّن كل جدول في مخطط Ads Data Hub الذي يتضمّن الحقل user_id جدول *_match. على سبيل المثال، بالنسبة إلى جدول adh.google_ads_impressions، ينشئ Ads Data Hub أيضًا جدول مطابقة باسم adh.google_ads_impressions_match يحتوي على أرقام تعريف المستخدمين فقط. تحتوي هذه الجداول على مجموعة فرعية من المستخدمين المتاحة في الجداول الأصلية، حيث هناك تطابق في user_id. على سبيل المثال، إذا كان الجدول الأصلي يحتوي على بيانات للمستخدم "أ" والمستخدم "ب" ولكن تمت مطابقة المستخدم "أ" فقط، لن يتم إدراج المستخدم "ب" في جدول المطابقة.

تحتوي جداول المطابقة على عمود إضافي يُسمى external_cookie، يخزّن ملف تعريف الارتباط الخاص بك بتنسيق noindex.

ويتضمّن الحقل الخارجي_لملف تعريف الارتباط معرّفك على أنه pagetype. يجب بث مفتاح الانضمام على pagetype لتطابقات ناجحة.

JOIN ON 
  google_data_imp.external_cookie = CAST(my_data.user_id AS BYTES)

استخدم جداول المطابقة عن طريق طلب البحث في *_match مرات مشاهدة لجداول أحداث الإعلان. إذا كنت تستخدم أيضًا مطابقة ملفات تعريف الارتباط، يمكنك الفلترة حسب نوع المطابقة في طلبات البحث. الاستخدام:

  • match_type = 1 لمطابقة ملفات تعريف الارتباط
  • match_type = 2 لمطابقة البيانات المقدّمة من المستخدم

على الرغم من أنّ match_type مسموح به في طلبات البحث، لا يمكن عرض هذا الحقل في النتائج، لذا يجب عدم تضمينه في العبارة SELECT النهائية.

طلبات بحث نموذجية

احتساب المستخدمين المطابقين

يحتسب طلب البحث هذا عدد المستخدمين المطابقين في جدول مرات الظهور في "إعلانات Google".

/* Count matched users in Google Ads impressions table */

SELECT COUNT(DISTINCT user_id)
FROM adh.google_ads_impressions_match

احتساب عدد المستخدمين المطابقين للبيانات المقدّمة من المستخدمين

يحتسب طلب البحث هذا عدد المستخدمين المطابقين حسب نوع المطابقة. نظرًا لأن جداول أحداث الإعلانات تحتوي على أحداث من المستخدمين الذين سجّلوا دخولهم وخروجهم، ستؤدي الفلترة حسب مطابقة البيانات المقدّمة من المستخدم إلى مطابقة المستخدمين الذين سجّلوا الدخول فقط.

/* Count user-provided data matched users by match type.
match_type = 1 for cookie matching
match_type = 2 for user-provided data matching */

SELECT
  match_type AS match_type,
  COUNT(DISTINCT user_id) AS user_cnt,
FROM 
  adh.google_ads_impressions_match
GROUP BY
  match_type

يعرض طلب البحث هذا كيفية دمج بيانات الطرف الأول مع بيانات "إعلانات Google":

/* Join first-party data with Google Ads data. The external_cookie field 
contains your ID as BYTES. You need to cast your join key into BYTES for 
successful matches. */

SELECT
  inventory_type,
  COUNT(*) AS impressions
FROM
  adh.yt_reserve_impressions_match AS google_data_imp
LEFT JOIN
  `my_data`
ON 
  google_data_imp.external_cookie = CAST(my_data.user_id AS BYTES)
-- Uncomment the following line if cookie matching is enabled as well.
-- WHERE google_data_imp.match_type = 2
GROUP BY
  inventory_type

يحتسب طلب البحث هذا عدد المستخدمين المطابقين للبيانات المقدّمة من المستخدم، باستثناء المستخدمين الذين تمت مطابقة ملفات تعريف الارتباط لديهم. تذكّر أن جداول أحداث الإعلانات تحتوي على أحداث من المستخدمين الذين سجّلوا دخولهم وخروجهم، لذا ستؤدي الفلترة على مطابقة البيانات المقدّمة من المستخدم فقط إلى مطابقة المستخدمين الذين سجّلوا دخولهم فقط.

/* Count user-provided data matched users, excluding cookie matched users. */

SELECT 
  COUNT(DISTINCT user_id)
FROM 
  adh.google_ads_impressions_match
WHERE 
  match_type = 2

Nearby Connections

غالبًا ما يتطلب جمع إحصاءات إعلانية قيمة تجميع البيانات من مصادر متعددة. يتطلب إنشاء حلك الخاص لمشكلة مسار البيانات هذا استثمارًا كبيرًا واستثمارًا هندسيًا. وتسهِّل الاتصالات هذه العملية من خلال توفير واجهة إرشادية تفصيلية خطوة بخطوة لاستيراد البيانات وتحويلها وكتابتها إلى BigQuery. بعد كتابة بياناتك، يمكنك استخدامها في طلباتك على Ads Data Hub أو أي منتج آخر يتم قراءته من BigQuery. يمكن أن يؤدي تحسين طلبات البحث باستخدام بيانات الطرف الأول إلى توفير تجارب أكثر ثراءً للعملاء، كما أنه يكون أكثر مقاومة لتغيُّرات تتبُّع الإعلانات على مستوى المجال.

بالإضافة إلى ذلك، تم تصميم أداة "الاتصالات" باستخدام أدوات تتيح لك تشفير معلومات تحديد الهوية الشخصية (PII) ومشاركتها مع الشركاء بطريقة تتمحور حول الخصوصية. بعد اختيار الأعمدة التي تحتوي على معلومات تحديد الهوية الشخصية، تعمل ميزة "الاتصالات" على تشفير البيانات، مع ضمان إمكانية تصدير بيانات الطرف الأول فقط أو قراءتها من قِبل الأشخاص الذين لديهم إذن بذلك.

يمكنك استخدام الاتصالات لاستيراد البيانات من:

قد يكون من الصعب معرفة بيانات الطرف الأول اللازمة لقياس حالة الاستخدام أو التفعيل، لذلك توفّر "الاتصالات" قائمة شاملة بحالات الاستخدام المحدّدة مسبقًا، ثم توجّهك خلال التجربة الكاملة لاستخراج بياناتك وتحويلها وتحميلها.

الاختلافات بين بيانات الطرف الأول ومطابقة البيانات

يكون سير العمل لضبط جدول مطابقة مقدَّمًا من المستخدم مشابهًا لإنشاء اتصال بيانات الطرف الأول بانتظام من خلال الاتصالات. أمّا متطلبات المشروعَين، فتفترض أنّك تُعدّ "الاتصالات" قبل استخدام مطابقة البيانات التي يقدّمها المستخدمون. إذا كنت تستخدم خدمة "الاتصالات" كأداة لإعداد البيانات فقط، يمكنك استخدام مشروع واحد على Google Cloud.

متطلبات إضافية لمطابقة البيانات المقدّمة من المستخدم:

  • يجب استخدام البريد الإلكتروني أو الهاتف أو العنوان أو أي تركيبة كمفتاح انضمام.
  • يجب تحديد كيفية حل تعارضات user_id. يمكنك الاختيار بين الاحتفاظ بالمطابقة الحالية أو استبدال البيانات الجديدة.
  • يجب استخدام حساب خدمة UPDM بالإضافة إلى حسابات دمج البيانات وdataproc.

سير عمل بيانات الطرف الأول

إنشاء اتصال

  1. انقر على الاتصالات، وبيانات الطرف الأول، وإنشاء اتصال.
  2. الاتصال بمصدر بيانات سيُطلب منك المصادقة.

    BigQuery

    وتستند الأذونات إلى حسابك على Google، لذا لا يلزم إجراء مصادقة إضافية. تأكّد من أن حسابات خدمة "الاتصالات" لديها حق الوصول إلى الجدول للقراءة.

    تخزين في السحابة الإلكترونية

    وتستند الأذونات إلى حسابك على Google، لذا لا يلزم إجراء مصادقة إضافية. تأكّد من أن حسابات خدمة "الاتصالات" لديها إذن بالوصول إلى حزمة مساحة التخزين للقراءة.

    Salesforce

    (سيتوفّر قريبًا)

    استخدم بيانات اعتماد Salesforce في مؤسستك لتسجيل الدخول. لا تخزِّن Google بيانات اعتمادك، لذا سيتطلب كل اتصال جديد في Salesforce إعادة المصادقة.

  3. اختَر حالة استخدام ومفتاح الانضمام، ثم انقر على اختيار حالة استخدام. إذا كنت لا تريد اختيار حالة استخدام، انقر على تخطي. لن تتمكن من اختيار حالة استخدام لاحقًا.
  4. اضبط مصدر البيانات.

    BigQuery

    اختَر جدول BigQuery المراد استيراده.

    تخزين في السحابة الإلكترونية

    أدخِل مسار ملف gsutil، مثل gs://my-bucket/folder/، واختَر تنسيق ملفك.

    Salesforce

    يتوفر قريبًا

  5. اضبط حقلي الوجهة والخريطة.
    • اختَر مجموعة البيانات ومشروع Google Cloud والجدول الذي تريد كتابة نتائجك فيه. تأكَّد من أن حسابات خدمة "الاتصالات" لديها إذن بالوصول للكتابة إلى مجموعة البيانات التي ستكتب إليها.
    • سيؤدي كل اتصال إلى إنشاء جدول جديد للكتابة إليه. إذا اخترت جدولاً متوفّرًا، ستظهر لك رسالة خطأ.
    • يمكنك ربط حقول الوجهة (الحقول التي ستظهر في الجدول الذي تنشئه) بحقول المصدر في بيانات المصدر.
  6. ضبط جدول زمني.
    1. اختَر اسمًا للاتصال.
    2. عليك تحديد معدّل التكرار لتحديد عدد مرات استيراد البيانات إلى مجموعة البيانات التي اخترتها في الخطوة السابقة. وسيؤدي كل تشغيل إلى استبدال البيانات في جدول الوجهة.
  7. انقر على تم. قد يستغرق تشغيل الاتصالات التي تعالج كميات كبيرة من البيانات عدة ساعات.

عرض تفاصيل الاتصال

تعرض صفحة تفاصيل الاتصال معلومات عن عمليات التشغيل والأخطاء التي حدثت مؤخرًا. لعرض تفاصيل اتصال محدد:

  1. انقر على الاتصالات، بيانات بياناتك للطرف الأول.
  2. انقر على اسم الاتصال للاطّلاع على تفاصيله.
  3. يمكنك الآن معرفة تفاصيل الاتصال وعمليات التشغيل الأخيرة. ويعرض كلٌّ نوعين من الأخطاء المحتملة: مستوى الاتصال (لم يتم الاتصال بالإنترنت، وعدم تشغيل) وأخطاء على مستوى الصف (لم يتم استيراد صف).
    1. تشير الحالة تعذّر التحقق إلى تعذُّر تشغيل الاتصال بالكامل (مثل مشكلة في إذن حساب الخدمة). انقر على حالة الخطأ لمعرفة الأخطاء التي أثرت في الاتصال.
    2. تشير الحالة مكتمل إلى أن الاتصال قد تم تشغيله بنجاح. ومع ذلك، قد تكون هناك أخطاء على مستوى الصف، وتتم الإشارة إليها بقيمة غير صفرية في العمود "الصفوف" و"الصفوف التي تحتوي على أخطاء"& انقر على القيمة لمعرفة المزيد عن السجلات التي تعذّر تنفيذها.

تعديل اتصال

تعديل الاتصالات غير متاح حتى الآن. لتغيير الاتصال، يمكنك إنشاء اتصال جديد وحذف الاتصال القديم.

حالات الاستخدام

تؤثّر حالة الاستخدام التي تختارها في مخطط الجدول الوجهة وحقول مفتاح الانضمام التي تم استيرادها. وسِّع حالات الاستخدام أدناه لمعرفة تأثيرها في المخطط ومفاتيح الانضمام:

مدى الوصول وعدد مرات الظهور

يمكنك قياس مدى وصول الحملات وعدد مرّات الظهور على جميع القنوات والأجهزة، مُقسَّمة إلى شرائح للمستخدمين.

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية
transaction_id رقم التعريف الفريد لهذه المعاملة سلسلة اختيارية
تاريخ_المعاملة تاريخ المعاملة (الطابع الزمني ل حقبة Unix) int اختيارية
الأرباح_المطلوبة للمعاملة الأرباح الناتجة من المعاملة int اختيارية
currency نوع عملة المعاملة سلسلة اختيارية
quantity كمية السلع في المعاملة سلسلة اختيارية
السعر السعر لكل سلعة في المعاملة int اختيارية
معرّف_التكلفة تكلفة السلع / الخدمات من المعاملة int اختيارية
الملف_الربحي إجمالي الربح من المعاملة int اختيارية
product_id رمز التخزين التعريفي / معرّف المنتج في المعاملة سلسلة اختيارية
transaction_description وصف آخر / بيانات وصفية / معلّمات أخرى عن المعاملة سلسلة اختيارية
نوع_الحدث مثال: مرات ظهور الإعلانات التلفزيونية، والبريد الإلكتروني التسويقي، وزيارات الموقع الإلكتروني، والزيارة إلى المتجر، وما إلى ذلك. سلسلة اختيارية
event_id (معرّف_الحدث) رقم التعريف الفريد للحدث أعلاه سلسلة اختيارية
event_timestamp تاريخ الحدث (الطابع الزمني ل حقبة Unix) int اختيارية
قناتك_البيانات الوصفية بيانات وصفية إضافية أو معلومات عن قناة نقطة الاتصال هذه سلسلة اختيارية

إحالة نقاط الاتصال المتعددة

يمكنك قياس الإحالة من خلال الجمع بين نقاط اتصال الطرف الأول ونقاط الاتصال من بيانات Google.

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
نوع_الحدث مثال: مرات ظهور الإعلانات التلفزيونية، والبريد الإلكتروني التسويقي، وزيارات الموقع الإلكتروني، والزيارة إلى المتجر، وما إلى ذلك. سلسلة مطلوب
event_id (معرّف_الحدث) رقم التعريف الفريد للحدث أعلاه سلسلة مطلوب
event_timestamp تاريخ الحدث (الطابع الزمني ل حقبة Unix) int مطلوب
حساب الائتمان قيمة الرصيد (مُستخدَمة في الإحالة) - مثل عدد الإحالات الناجحة int اختيارية
قناتك_البيانات الوصفية بيانات وصفية إضافية أو معلومات عن قناة نقطة الاتصال هذه سلسلة اختيارية

مقاييس الأداء

قياس أداء الحملة مقسّمًا حسب الخصائص الديمغرافية أو شرائح الجمهور ذي الاهتمامات المشتركة أو شرائح المستخدمين التابعة للطرف الأول

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية

المسار إلى إحالة الإحالة الناجحة

حلِّل أداء مسارات الإحالة الناجحة باستخدام نقاط الاتصال المخصّصة، بما في ذلك نقاط اتصالك الأولى.

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
نوع_الحدث مثال: مرات ظهور الإعلانات التلفزيونية، والبريد الإلكتروني التسويقي، وزيارات الموقع الإلكتروني، والزيارة إلى المتجر، وما إلى ذلك. سلسلة مطلوب
event_id (معرّف_الحدث) رقم التعريف الفريد للحدث أعلاه سلسلة مطلوب
event_timestamp تاريخ الحدث (الطابع الزمني ل حقبة Unix) int مطلوب
حساب الائتمان قيمة الرصيد (مُستخدَمة في الإحالة) - مثل عدد الإحالات الناجحة int اختيارية
قناتك_البيانات الوصفية بيانات وصفية إضافية أو معلومات عن قناة نقطة الاتصال هذه سلسلة اختيارية

التداخل بين الناشرين

حلِّل مدى وصول الحملات وعدد مرات الظهور لكل الناشرين، مقسَّمةً حسب شرائح المستخدمين لدى الطرف الأول.

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية

أداء الحملة في آنٍ واحد

قياس تأثير أداء العرض على الحملات المتوازية، مُقسَّمة حسب شرائح المستخدمين الأولى

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية
transaction_id رقم التعريف الفريد لهذه المعاملة سلسلة اختيارية
تاريخ_المعاملة تاريخ المعاملة (الطابع الزمني ل حقبة Unix) int اختيارية
الأرباح_المطلوبة للمعاملة الأرباح الناتجة من المعاملة int اختيارية
currency نوع عملة المعاملة سلسلة اختيارية
quantity كمية السلع في المعاملة سلسلة اختيارية
السعر السعر لكل سلعة في المعاملة int اختيارية
معرّف_التكلفة تكلفة السلع / الخدمات من المعاملة int اختيارية
الملف_الربحي إجمالي الربح من المعاملة int اختيارية
product_id رمز التخزين التعريفي / معرّف المنتج في المعاملة سلسلة اختيارية
transaction_description وصف آخر / بيانات وصفية / معلّمات أخرى عن المعاملة سلسلة اختيارية
نوع_الحدث مثال: مرات ظهور الإعلانات التلفزيونية، والبريد الإلكتروني التسويقي، وزيارات الموقع الإلكتروني، والزيارة إلى المتجر، وما إلى ذلك. سلسلة اختيارية
event_id (معرّف_الحدث) رقم التعريف الفريد للحدث أعلاه سلسلة اختيارية
event_timestamp تاريخ الحدث (الطابع الزمني ل حقبة Unix) int اختيارية
قناتك_البيانات الوصفية بيانات وصفية إضافية أو معلومات عن قناة نقطة الاتصال هذه سلسلة اختيارية

مقارنة الحملات

مقارنة الأداء في جميع حملات Google وغيرها من الحملات.

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الاشتراكات الداعمة القناة التي عرضتها هذه الحملة (على سبيل المثال، Facebook أو التلفزيون أو غير ذلك) سلسلة مطلوب
الشريك اسم الشريك إذا كان مضمّنًا سلسلة اختيارية
منهج اسم استراتيجية معيّنة سلسلة اختيارية
البيانات الوصفية للحملة بيانات وصفية إضافية أو معلومات عن هذه الحملة سلسلة اختيارية
التاريخ تاريخ نشاط الحملة (الطابع الزمني ل حقبة Unix) int مطلوب
مرات الظهور عدد مرات الظهور من هذه الحملة في هذا التاريخ int مطلوب
النقرات عدد النقرات من هذه الحملة في هذا التاريخ int مطلوب
الإحالات الناجحة عدد الإحالات الناجحة من هذه الحملة في هذا التاريخ int مطلوب
التكلفة التكلفة الإجمالية من هذه الحملة في هذا التاريخ int مطلوب

المقارنة بين الجمهور ذي الاهتمامات المشتركة والتصنيف

ابحث عن التداخل بين شرائح المستخدمين للطرف الأول وشرائح الجمهور ذات الاهتمامات المشتركة وشرائح الجمهور في السوق.

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية

تحليل الإحالات الناجحة للتطبيقات

قياس تأثير الحملة على السلوك داخل التطبيق

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
التاريخ تاريخ النشاط على التطبيقات المتوافقة مع الأجهزة الجوّالة (الطابع الزمني ل حقبة Unix) int مطلوب
تثبيت قيمة منطقية تمثل ما إذا كان قد تم تسجيل حدث التثبيت في هذا اليوم منطقي مطلوب
التسجيل قيمة منطقية تمثّل ما إذا كان قد تم تسجيل حدث التسجيل في هذا اليوم منطقي مطلوب
login قيمة منطقية تمثّل ما إذا كان قد تم تسجيل حدث تسجيل الدخول في هذا اليوم منطقي مطلوب
عمليات الشراء داخل التطبيق إجمالي عدد عمليات الشراء داخل التطبيق في هذا اليوم int مطلوب

حساب عائد الاستثمار

يمكنك قياس العائدات المتزايدة استنادًا إلى بيانات الإحالات الناجحة للطرف الأول.

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
transaction_id رقم التعريف الفريد لهذه المعاملة سلسلة مطلوب
تاريخ_المعاملة تاريخ المعاملة (الطابع الزمني ل حقبة Unix) int مطلوب
الأرباح_المطلوبة للمعاملة الأرباح الناتجة من المعاملة int مطلوب
currency نوع عملة المعاملة سلسلة اختيارية
quantity كمية السلع في المعاملة سلسلة اختيارية
السعر السعر لكل سلعة في المعاملة int اختيارية
معرّف_التكلفة تكلفة السلع / الخدمات من المعاملة int اختيارية
الملف_الربحي إجمالي الربح من المعاملة int اختيارية
product_id رمز التخزين التعريفي / معرّف المنتج في المعاملة سلسلة اختيارية
transaction_description وصف آخر / بيانات وصفية / معلّمات أخرى عن المعاملة سلسلة اختيارية

تفعيل الجمهور المخصّص

إنشاء شرائح جمهور مخصّصة وتفعيلها استنادًا إلى بيانات الطرف الأول وبيانات Google

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية

تقديم عرض سعر مخصّص

تحسين استراتيجيات عروض الأسعار في "مساحة العرض والفيديو 360" استنادًا إلى بيانات الطرف الأول وبيانات Google

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية

الأداء بين الناشرين

قياس مقاييس الأداء مُقسَّمة حسب الناشر أو مُقسَّمة حسب الناشر وشرائح مستخدمي الطرف الأول

اسم الحقل الوصف النوع مطلوبة/اختيارية
مفتاح الانضمام التغييرات بناءً على مفتاح الانضمام الذي تستخدمه سلسلة مطلوب
الجنس الجنس سلسلة اختيارية
العمر العمر int اختيارية
مدينة المدينة سلسلة اختيارية
بلد البلد سلسلة اختيارية
حالة_دورة الحياة حالة مسار الإحالة الناجحة للعميل: غير معروف، أو جارٍ الإعداد، أو متفاعل، أو غير نشط، وما إلى ذلك. سلسلة اختيارية
حالة_الولاء المستوى الفضي والذهبي والبلاتيني والماسي وما إلى ذلك سلسلة اختيارية
تاريخ_شراء_آخر تاريخ آخر عملية شراء (الطابع الزمني لموسم Unix) int اختيارية
product_purchase_product (آخر_شراء_المنتج) تاريخ آخر شراء / شراء للمنتج سلسلة اختيارية
last_contacted_date تاريخ آخر تفاعل / تفاعل (الطابع الزمني لنهاية Unix) int اختيارية
القيمة الدائمة القيمة الدائمة للعميل int اختيارية
نوع_الاشتراك النوع الفرعي للمنتج / الاشتراك الذي يستخدمه العميل، مثل الخطة المميّزة أو الخطة العائلية سلسلة اختيارية