Tìm hiểu về khoá tổng hợp cho Báo cáo phân bổ

Khoá tổng hợp là gì, cách sử dụng các khoá đó trong API Báo cáo phân bổ và cách bạn có thể chuyển đổi mục tiêu thành khoá.

Là một công ty công nghệ quảng cáo đang chạy các chiến dịch ở nhiều địa điểm cho nhiều danh mục sản phẩm khác nhau, bạn muốn giúp nhà quảng cáo trả lời các câu hỏi sau:

  1. Mỗi chiến dịch của tôi ở mỗi khu vực địa lý đã tạo ra bao nhiêu giao dịch mua cho mỗi danh mục sản phẩm?
  2. Mỗi chiến dịch của tôi ở mỗi khu vực địa lý đã tạo ra bao nhiêu doanh thu từ mỗi danh mục sản phẩm?

Mặc dù nhiều công ty công nghệ quảng cáo khuyến khích nhà quảng cáo định cấu hình nhiều loại chuyển đổi, nhưng việc tập trung vào các lượt chuyển đổi quan trọng nhất (chẳng hạn như lượt mua hàng) là một cách hay để đảm bảo rằng kết quả tóm tắt chi tiết và chính xác cho những sự kiện quan trọng này.

Để làm như vậy, bạn cần suy nghĩ về những câu hỏi mà bạn muốn trả lời trước khi thu thập dữ liệu.

Phương diện, khoá và giá trị

Để trả lời những câu hỏi này, hãy cùng tìm hiểu phương diện, khoá và giá trị.

Kích thước

Để hiểu cách chiến dịch của bạn đang tạo ra doanh thu, như được mô tả ở đây, bạn sẽ cần theo dõi các phương diện sau:

  • Mã chiến dịch quảng cáo: giá trị nhận dạng cho chiến dịch cụ thể.
  • Mã địa lý: khu vực địa lý nơi quảng cáo được phân phát.
  • Danh mục sản phẩm: loại sản phẩm bạn đã xác định.

Mặc dù phương diện Mã chiến dịch và Mã địa lý được xác định khi quảng cáo được phân phát (thời gian phân phát quảng cáo), nhưng Danh mục sản phẩm sẽ được xác định từ sự kiện kích hoạt, khi người dùng hoàn tất lượt chuyển đổi (thời gian chuyển đổi).

Các kích thước bạn muốn theo dõi cho ví dụ này được thể hiện trong hình ảnh sau đây:

Mã chiến dịch, Mã khu vực địa lý và danh mục sản phẩm.
Các phương diện cần theo dõi

Khoá tổng hợp (bộ chứa) là gì?

Các thuật ngữ của bộ chứa và khoá tổng hợp đều đề cập đến cùng một nội dung. Khoá tổng hợp được dùng trong các API trình duyệt dùng để định cấu hình báo cáo. Thuật ngữ bộ chứa được dùng trong các báo cáo tổng hợp và báo cáo tóm tắt, cũng như trong các API dịch vụ tổng hợp.

Khoá tổng hợp (gọi tắt là khoá) là một phần dữ liệu đại diện cho giá trị của các phương diện đang được theo dõi. Sau đó, dữ liệu sẽ được tổng hợp dọc theo từng khoá tổng hợp.

Ví dụ: giả sử bạn đang theo dõi các thứ nguyên Danh mục sản phẩm, ID địa lý và ID chiến dịch.

Khi người dùng tại ID địa lý 7 nhìn thấy quảng cáo cho ID chiến dịch 12 và sau đó chuyển đổi bằng cách mua sản phẩm trong Danh mục sản phẩm 25, bạn có thể đặt khóa tổng hợp giống như quảng cáo trong hình sau:

Khoá tổng hợp cho một lượt chuyển đổi.

Sau này bạn sẽ thấy khoá tổng hợp không giống hệt như vậy trong thực tế, nhưng bây giờ hãy tập trung vào thông tin có trong khoá đó.

Giá trị tổng hợp là gì?

Để trả lời câu hỏi của bạn về các khía cạnh mà chúng tôi đã nêu, bạn cần biết:

  • Số giao dịch mua hàng (số lượt mua hàng). Sau khi được tổng hợp và xuất hiện trong báo cáo tóm tắt, đây sẽ là tổng số lượt mua hàng (giá trị tóm tắt).
  • Doanh thu từ mỗi giao dịch mua (giá trị giao dịch mua). Sau khi được tổng hợp và xuất hiện trong báo cáo tóm tắt, giá trị này sẽ là tổng doanh thu (giá trị tóm tắt).

Mỗi giá trị trong số này (số lượt mua hàng cho một lượt chuyển đổi và giá trị giao dịch mua cho một lượt chuyển đổi) là một giá trị tổng hợp. Bạn có thể coi các giá trị tổng hợp là giá trị của mục tiêu đo lường.

Câu hỏi Giá trị tổng hợp = Mục tiêu đo lường
Số giao dịch mua... Số lượt mua
Doanh thu là bao nhiêu... Giá trị giao dịch mua

Khi một người dùng ở Khu vực địa lý ID 7 nhìn thấy một quảng cáo cho ID chiến dịch 12 và sau đó chuyển đổi bằng cách mua một sản phẩm của Danh mục sản phẩm 25 với giá $120 (giả sử đơn vị tiền tệ của bạn là USD), bạn có thể đặt khoá tổng hợp và các giá trị tổng hợp như sau:

Khoá và giá trị tổng hợp.
Khoá tổng hợp và các giá trị tổng hợp. Lưu ý: Các giá trị tổng hợp được in đậm trên nền xanh dương.

Các giá trị tổng hợp được tính tổng theo từng khoá đối với nhiều người dùng để tạo ra thông tin chi tiết tổng hợp, dưới dạng các giá trị tóm tắt trong các báo cáo tóm tắt.

Đang tạo thông tin chi tiết tổng hợp.

Các giá trị tổng hợp được tính tổng để tạo ra thông tin chi tiết tổng hợp cho các mục tiêu đo lường của bạn.

Xin lưu ý rằng sơ đồ này bỏ qua quy trình giải mã và thể hiện một ví dụ đơn giản mà không áp dụng nhiễu. Trong phần tiếp theo, chúng ta sẽ trình bày về ví dụ này bằng độ nhiễu.

Từ khoá và giá trị cho đến báo cáo

Bây giờ, hãy thảo luận về mối liên hệ giữa các giá trị và khoá tổng hợp với các báo cáo.

Các báo cáo tổng hợp

Khi người dùng nhấp hoặc xem quảng cáo rồi chuyển đổi sau đó, bạn hướng dẫn trình duyệt lưu trữ cặp {Aggregat key, aaggregate value}.

Trong ví dụ của chúng tôi, khi người dùng nhấp hoặc xem quảng cáo rồi chuyển đổi sau đó, bạn hướng dẫn trình duyệt tạo hai lượt đóng góp (một lượt đóng góp cho mỗi mục tiêu đo lường).

Đang tạo hai nội dung đóng góp.

Sau này, bạn sẽ thấy rằng báo cáo tổng hợp {Aggregat key, aaggregate value} không giống hệt như báo cáo này, nhưng hiện tại, hãy tập trung vào thông tin có trong báo cáo.

Khi bạn hướng dẫn trình duyệt tạo hai lượt đóng góp, trình duyệt sẽ tạo một báo cáo tổng hợp (nếu có thể khớp lượt chuyển đổi với lượt xem hoặc lượt nhấp trước đó).

Một báo cáo tổng hợp có:

Báo cáo tổng hợp thu được.

Báo cáo tổng hợp có định dạng JSON và bao gồm một trường tải trọng sẽ được dùng làm dữ liệu đầu vào cho báo cáo tóm tắt cuối cùng.

Tải trọng này chứa một danh sách các lượt đóng góp, mỗi lượt đóng góp là một cặp {khoá tổng hợp, giá trị tổng hợp}:

  • nhóm: khoá tổng hợp, được mã hoá dưới dạng chuỗi byte.
  • value: giá trị tổng hợp cho mục tiêu đo lường đó, được mã hoá dưới dạng một chuỗi byte.

Ví dụ:

{
  "data": [
    {
      "bucket": "111001001",
      "value": "11111010000",
    }
  ],
  "operation": "histogram"
}

Trong thực tế, báo cáo tổng hợp được mã hoá theo cách làm cho bộ chứa và giá trị trông khác với trong ví dụ trước (tức là bộ chứa có thể trông giống như \u0000\u0000\x80\u0000). Bộ chứagiá trị đều là chuỗi byte.

Báo cáo tóm tắt

Báo cáo tổng hợp được tổng hợp trên nhiều trình duyệt và thiết bị (người dùng) như sau:

  • Một công nghệ quảng cáo yêu cầu báo cáo tóm tắt cho một tập hợp các khoá nhất định và một tập hợp các báo cáo tổng hợp nhất định đến từ nhiều trình duyệt (người dùng).
  • Báo cáo tổng hợp được giải mã bằng dịch vụ tổng hợp.
  • Đối với mỗi khoá, các giá trị tổng hợp của báo cáo tổng hợp sẽ được tổng hợp.
  • Độ nhiễu sẽ được thêm vào giá trị tóm tắt.
Báo cáo tổng hợp cùng với kết quả tổng hợp, giải mã và nhiễu sẽ tạo thành một báo cáo tóm tắt.

Kết quả là một báo cáo tóm tắt chứa một tập hợp các cặp {khoá tổng hợp, giá trị tóm tắt}.

Báo cáo tóm tắt chứa một tập hợp các cặp khoá-giá trị theo kiểu từ điển JSON. Mỗi cặp chứa:

  • nhóm: khoá tổng hợp, được mã hoá dưới dạng chuỗi byte.
  • giá trị: giá trị tóm tắt bằng thập phân cho một mục tiêu đo lường nhất định, được tổng hợp từ tất cả báo cáo tổng hợp hiện có với độ nhiễu tăng.

Ví dụ:

[
  {"bucket": "111001001", "value": "2558500"}, 
  {"bucket": "111101001", "value": "3256211"}, 
  {...}
]

Trong thực tế, báo cáo tóm tắt được mã hoá theo cách làm cho nhóm và giá trị trông khác với được nêu trong ví dụ (tức là bộ chứa có thể trông giống như \u0000\u0000\x80\u0000). Bộ chứagiá trị đều là chuỗi byte.

Khoá tổng hợp trong thực tế

Khoá tổng hợp (bộ chứa) do một công ty công nghệ quảng cáo xác định, thường theo 2 bước: khi người dùng nhấp vào hoặc xem quảng cáo và khi người dùng chuyển đổi.

Cấu trúc khoá

Chúng tôi sẽ sử dụng thuật ngữ cấu trúc khoá để chỉ định tập hợp thứ nguyên được mã hoá thành khoá.

Ví dụ: ID chiến dịch x GeoID x Danh mục sản phẩm là cấu trúc chính.

Cấu trúc khoá.

Các loại khoá

Các giá trị tổng hợp được tổng hợp cho một khoá nhất định trên nhiều người dùng/trình duyệt. Tuy nhiên, chúng tôi thấy rằng các giá trị tổng hợp có thể theo dõi các mục tiêu đo lường khác nhau, chẳng hạn như giá trị mua hàng hoặc số lượng mua hàng. Bạn muốn đảm bảo rằng dịch vụ tổng hợp sẽ tổng hợp các giá trị tổng hợp cùng loại.

Để làm như vậy, trong mỗi khoá, hãy mã hoá một phần dữ liệu cho bạn biết giá trị tóm tắt đại diện cho mục tiêu đo lường mà khoá này đang đề cập đến. Một cách để làm việc đó là tạo phương diện bổ sung cho khoá của bạn đại diện cho loại mục tiêu đo lường.

Trong ví dụ trước đó, loại mục tiêu đo lường này sẽ có thể có hai giá trị khác nhau:

  • Số lượt mua hàng là loại mục tiêu đo lường đầu tiên.
  • Giá trị giao dịch mua là loại mục tiêu đo lường thứ hai.
Mục tiêu đo lường và các loại mục tiêu đo lường.

Nếu bạn có n mục tiêu đo lường, thì loại mục tiêu đo lường sẽ có n loại giá trị.

Bạn có thể coi phương diện của khoá là một chỉ số. Ví dụ: "số lượt giao dịch mua của một sản phẩm nhất định trên mỗi chiến dịch theo khu vực địa lý".

Kích thước khoá, kích thước kích thước

Kích thước khoá tối đa được xác định bằng bit – số lượng số 0 và số ở dạng nhị phân để tạo khoá đầy đủ. API cho phép độ dài khoá là 128 bit.

Kích thước này cho phép các phím rất chi tiết, nhưng các khoá chi tiết hơn có nhiều khả năng dẫn đến các giá trị nhiễu hơn. Bạn có thể đọc thêm về tiếng ồn trong bài viết Tìm hiểu về tiếng ồn.

Như đã giới thiệu trước đó, thứ nguyên được mã hoá thành khoá tổng hợp. Mỗi phương diện có một số lượng giá trị riêng biệt nhất định, tức là số lượng giá trị riêng biệt mà phương diện đó có thể nhận. Tuỳ thuộc vào số lượng giá trị riêng biệt, mỗi phương diện cần được biểu thị bằng một số lượng bit nhất định. Với n bit, bạn có thể biểu thị 2n tuỳ chọn riêng biệt.

Ví dụ: Phương diện Quốc gia có thể có số lượng giá trị riêng biệt là 200, vì có khoảng 200 quốc gia trên thế giới. Cần bao nhiêu bit để mã hóa thứ nguyên này?

7 bit sẽ chỉ lưu trữ 27 =128 tuỳ chọn riêng biệt, nhỏ hơn 200 cần thiết.

8 bit sẽ lưu trữ 28 =256 tùy chọn riêng biệt, nhiều hơn 200 tùy chọn cần thiết, vì vậy, bạn có thể sử dụng n=8 bit để mã hóa thứ nguyên này.

Mã hoá khoá

Khi bạn đặt các khóa trong trình duyệt, chúng phải được mã hoá bằng hệ thập lục phân. Trong báo cáo tóm tắt, khoá sẽ xuất hiện trong tệp nhị phân (và được đặt tên là nhóm).

Đặt hai phần khoá để có một khoá đầy đủ

Giả sử bạn sử dụng một khoá để theo dõi các phương diện sau:

  • Mã chiến dịch
  • Mã khu vực địa lý
  • Danh mục sản phẩm

Mặc dù phương diện Mã chiến dịch và Mã địa lý được xác định khi quảng cáo được phân phát (thời gian phân phát quảng cáo), nhưng danh mục sản phẩm sẽ được xác định từ một sự kiện kích hoạt, khi người dùng hoàn tất lượt chuyển đổi (thời gian chuyển đổi).

Trong thực tế, điều này có nghĩa là bạn sẽ thiết lập khoá theo 2 bước:

  1. Bạn sẽ thiết lập một phần của khoá — Mã chiến dịch x Mã địa lý — tại thời điểm nhấp hoặc xem.
  2. Bạn sẽ đặt phần thứ hai của khoá — Danh mục sản phẩm — tại thời điểm chuyển đổi.

Những phần này của phím được gọi là mảnh phím.

Một khoá được tính bằng cách lấy XOR (^) của các phần khoá.

Đang XOR các phần chính.

Ví dụ:

  • Phần khoá phía nguồn = 0x159
  • Phần khoá phía điều kiện kích hoạt = 0x400
  • Khoá = 0x159 ^ 0x400 = 0x559

Căn chỉnh các phần chính

Với hai đoạn khoá 64 bit được mở rộng đến 128 bit bằng cách sử dụng các bộ đệm/độ lệch 64 bit được đặt cẩn thận (16 số 0), các đoạn khoá XOR tương đương với việc nối chúng, dễ giải thích và xác minh hơn:

  • Phần khoá phía nguồn = 0xa7e297e7c8c8d0540000000000000000
  • Phần khoá phía điều kiện kích hoạt = 0x0000000000000000674fbe308a597271
  • Khoá =
    • 0xa7e297e7c8c8d0540000000000000000 ^ 0x0000000000000000674fbe308a597271 =
    • 0xa7e297e7c8c8d054674fbe308a597271

Nhiều khoá cho mỗi lượt nhấp hoặc lượt xem quảng cáo

Trong thực tế, bạn có thể đặt nhiều khoá cho mỗi sự kiện nguồn phân bổ (lượt nhấp vào quảng cáo hoặc lượt xem quảng cáo). Ví dụ: bạn có thể đặt:

  • Khoá theo dõi Mã khu vực địa lý x Mã chiến dịch.
  • Một khoá khác theo dõi Loại mẫu quảng cáo x Mã chiến dịch.

Hãy tham khảo Chiến lược B để tìm hiểu một ví dụ khác.

Mã hoá phương diện thành khoá

Khi yêu cầu báo cáo tóm tắt, bạn cần cho dịch vụ tổng hợp biết bạn muốn truy cập những chỉ số nào bằng cách yêu cầu báo cáo tóm tắt cho một nhóm khoá tổng hợp nhất định.

Báo cáo tóm tắt có chứa các cặp {key, Summary value} thô và không có thông tin bổ sung về khoá. Điều này có nghĩa là:

  • Khi đặt khoá khi người dùng xem hoặc nhấp vào quảng cáo và sau đó chuyển đổi, bạn cần đặt khoá một cách đáng tin cậy dựa trên giá trị của phương diện mà chúng đại diện.
  • Khi xác định các khóa bạn muốn yêu cầu báo cáo tóm tắt, bạn cần phải tạo hoặc truy cập nhanh chóng các khóa giống với các khóa được đặt khi người dùng xem hoặc nhấp vào quảng cáo và chuyển đổi, dựa trên giá trị của phương diện mà bạn muốn xem dữ liệu tổng hợp.

Mã hoá phương diện bằng bản đồ cấu trúc khoá

Để mã hoá các phương diện thành các khoá, bạn có thể tạo và duy trì bản đồ cấu trúc khoá trước, khi xác định các khoá của mình (trước thời gian phân phát quảng cáo).

Sơ đồ cấu trúc khoá thể hiện từng phương diện và vị trí của chúng trong khoá.

Trong thực tế, việc tạo và duy trì bản đồ cấu trúc khoá có nghĩa là bạn phải triển khai và duy trì logic của bộ giải mã. Nếu bạn đang tìm một phương thức không yêu cầu phải làm việc đó, hãy cân nhắc sử dụng phương pháp dựa trên hàm băm.

Ví dụ:

Giả sử bạn lên kế hoạch theo dõi cả số lượt mua hàng và giá trị lượt mua hàng cho các chiến dịch, khu vực địa lý và sản phẩm cụ thể.

Bạn cần phải thêm các phương diện danh mục sản phẩm, mã khu vực địa lý và mã chiến dịch vào khoá của mình. Ngoài ra, do muốn theo dõi hai mục tiêu đo lường khác nhau (số lượt mua hàng và giá trị giao dịch mua), nên bạn cần thêm một phương diện trong khoá để theo dõi loại khoá. Điều này sẽ cho phép bạn xác định giá trị tổng hợp thực sự đại diện cho giá trị nào sau khi nhận được các cặp {key, tổng hợp giá trị} trong báo cáo tóm tắt.

Với các mục tiêu đo lường này, khoá của bạn có các phương diện sau:

  • Danh mục sản phẩm
  • Loại mục tiêu đo lường
  • Mã khu vực địa lý
  • Mã chiến dịch

Bây giờ, khi xem xét từng phương diện, giả sử trường hợp sử dụng của bạn cần theo dõi những yếu tố sau:

  • 29 danh mục sản phẩm.
  • 8 khu vực địa lý: Bắc Mỹ, Trung Mỹ, Nam Mỹ, Châu Âu, Châu Phi, Châu Á, Caribbean và Châu Đại Dương.
  • 16 chiến dịch khác nhau.

Dưới đây là số lượng bit bạn cần để mã hóa mỗi thứ nguyên trong khóa của mình:

  • Danh mục sản phẩm: 5 bit (25 = 32 > 29).
  • Loại mục tiêu đo lường: 1 bit. Mục tiêu đo lường là số lượt mua hàng hoặc giá trị mua hàng, có nghĩa là hai khả năng riêng biệt; do đó, một bit là đủ để lưu trữ dữ liệu này.
  • Mã nhận dạng địa lý: 3 bit (23 = 8). Bạn cũng sẽ xác định bản đồ phương diện cho Mã địa lý để biết mỗi giá trị nhị phân đại diện cho khu vực địa lý nào. Bản đồ phương diện cho phương diện Mã địa lý của bạn có thể có dạng như sau:

    Giá trị nhị phân trong khoá Khu vực địa lý
    000 Bắc Mỹ
    001 Trung Mỹ
    010 Nam Mỹ
    011 Châu Âu
    100 Châu Phi
    101 Châu Á
    110 Caribbean
    111 Châu Đại dương

  • Mã chiến dịch: 4 bit (24 = 16)

Các khoá theo cấu trúc này sẽ dài 13 bit (5 + 1 + 3 + 4).

Trong ví dụ này, sơ đồ cấu trúc khoá cho các khoá này sẽ có dạng như sau:

Sơ đồ cấu trúc khoá.

Thứ tự của các phương diện trong khoá này là tuỳ thuộc vào bạn.

Để minh hoạ cách thứ nguyên tạo cấu trúc chính, chúng tôi sẽ sử dụng cách biểu diễn nhị phân, đó là lý do tại sao ID chiến dịch (bit đầu tiên) là giá trị ở ngoài cùng bên phải và danh mục sản phẩm (bit cuối cùng) là giá trị ở ngoài cùng bên trái.

Trong mỗi chiều, bit có ý nghĩa nhất — bit có giá trị số lớn nhất — là bit ở ngoài cùng bên trái. Bit có ý nghĩa nhất — bit có giá trị số nhỏ nhất — là bit ở ngoài cùng bên phải.

Hãy xem cách bạn sử dụng bản đồ cấu trúc khoá để giải mã khoá.

Hãy lấy 0b1100100111100 làm khoá ví dụ tuỳ ý và giả sử bạn có một cách để biết khoá này tuân theo sơ đồ cấu trúc khoá trong hình minh hoạ trước.

Theo bản đồ cấu trúc khoá, khoá này sẽ giải mã thành:

11001 0 011 1100
ALT_TEXT_HERE

Vì vậy, khoá 0b1100100111100 biểu thị số lượt mua hàng của Danh mục sản phẩm 25, cho Mã chiến dịch 12 được triển khai ở Châu Âu.

Mã hoá phương diện bằng hàm băm

Thay vì sử dụng sơ đồ cấu trúc khoá, bạn có thể dùng hàm băm để tự động tạo khoá một cách nhất quán và đáng tin cậy.

Hàm này hoạt động như sau:

  1. Chọn một thuật toán băm.
  2. Tại thời điểm phân phát quảng cáo, hãy tạo một chuỗi bao gồm tất cả các phương diện bạn muốn theo dõi và giá trị của các phương diện đó. Để tạo đoạn khoá phía nguồn, hãy băm chuỗi này và cân nhắc thêm một hậu tố 64 bit gồm số 0 để căn chỉnh chuỗi đó với phần khoá phía điều kiện kích hoạt và giúp dễ hiểu hơn về việc XOR.
    • Phần khoá phía nguồn
      = <64-bit hex hash("COUNT, campaignID=12, geoID=7"))><64-bit 00000000...>
    • Lưu ý rằng COUNT mã hoá tương tự như measureObjectiveType=0 trong phương pháp tiếp cận bản đồ cấu trúc chính. COUNT gọn gàng hơn và rõ ràng hơn.
  3. Tại thời điểm chuyển đổi, hãy tạo một chuỗi bao gồm tất cả các phương diện bạn muốn theo dõi và giá trị của các phương diện đó. Để tạo một đoạn khoá phía điều kiện kích hoạt, hãy băm chuỗi này và thêm một tiền tố 64 bit là số 0:
    • Phần khoá phía trình kích hoạt = <64-bit 00000000...><64-bit hex hash("productCategory=25")>
  4. Trình duyệt XOR các phần khoá này để tạo khoá.
    • Khoá tổng hợp 128 bit
      = <hàm băm đoạn khoá phía nguồn phía nguồn 64-bit><64-bit hàm băm phần khoá phía nguồn hệ lục phân>
  5. Sau đó, khi bạn đã sẵn sàng yêu cầu báo cáo tóm tắt cho khoá này, hãy tạo báo cáo nhanh chóng:
    • Dựa trên các phương diện mà bạn quan tâm, hãy tạo một phần khoá phía nguồn và phía điều kiện kích hoạt như bạn đã làm trước đó.
      • Phần khoá phía nguồn
        = <64-bit hex hash("COUNT, campaignID=12, geoID=7"))><64-bit 00000000...>
      • Phần khoá phía trình kích hoạt
        = <64-bit 00000000...><64-bit hex hash("productCategory=25")>
      • phần khoá phía điều kiện kích hoạt = toHex(hash("productCategory=25"))
    • Giống như trình duyệt, XOR các phần khoá này để tạo cùng một khoá mà trình duyệt đã tạo trước đó.
      • Khoá tổng hợp 128 bit
        = <hàm băm đoạn khoá phía nguồn 64 bit><hàm băm đoạn khoá phía nguồn 64 bit>

Một vài mẹo thiết thực nếu bạn đang sử dụng phương pháp dựa trên hàm băm này:

  • Luôn sử dụng cùng một thứ tự phương diện. Điều này đảm bảo rằng hệ thống có thể tạo lại hàm băm của bạn một cách đáng tin cậy. ("COUNT, CampaignID=12, GeoID=7" sẽ không tạo hàm băm giống như "COUNT, GeoID=7, CampaignID=12"). Một cách đơn giản để thực hiện việc này là sắp xếp các thứ nguyên theo chữ và số. Đây là những gì chúng ta sẽ thực hiện trong ví dụ, ngoại trừ việc chúng ta luôn đặt COUNT hoặc GIÁ TRỊ mục đầu tiên trong phương diện — đây là một lựa chọn dễ đọc, vì COUNT hoặc GIÁ TRỊ mã hoá thông tin hơi khác về mặt khái niệm so với tất cả các phương diện khác.
  • Theo dõi tập hợp phương diện bạn đang sử dụng trong khoá. Bạn muốn tránh việc tạo khoá dựa trên một tập hợp phương diện mà bạn chưa từng sử dụng.
  • Sẽ hiếm khi xảy ra xung đột hàm băm nếu bạn sử dụng một hàm băm phù hợp. Tuy nhiên, việc kiểm tra các hàm băm đã sử dụng trước đó (nên được lưu trữ để diễn giải kết quả từ dịch vụ tổng hợp) có thể tránh được việc tạo ra các khoá mới xung đột với các khoá cũ.

Tìm hiểu cách sử dụng khoá dựa trên hàm băm trong thực tế trong ví dụ về một lượt chuyển đổi cho mỗi lượt nhấp hoặc lượt xem.

Các giá trị tổng hợp trong thực tế

Công ty công nghệ quảng cáo đặt các giá trị tổng hợp khi người dùng chuyển đổi.

Để bảo vệ quyền riêng tư của người dùng, giới hạn đối với số lượng đóng góp của mỗi người dùng. Trên tất cả các giá trị tổng hợp được liên kết với một nguồn duy nhất (lượt nhấp vào quảng cáo hoặc lượt xem), không giá trị nào có thể cao hơn giới hạn đóng góp nhất định.

Chúng tôi gọi giới hạn này là CONTRIBUTION_BUDGET. Trong nội dung giải thích, hạn mức này được gọi là ngân sách L1, nhưng giống với CONTRIBUTION_BUDGET.

Để thảo luận chi tiết hơn về ngân sách khoản đóng góp, hãy tham khảo Ngân sách đóng góp cho báo cáo tóm tắt.

Ví dụ: một chuyển đổi cho mỗi nhấp chuột hoặc lượt xem

Trong ví dụ này, giả sử bạn đang muốn trả lời các câu hỏi sau:

  • Những danh mục sản phẩm nào có giá trị nhất ở mỗi khu vực?
  • Chiến lược chiến dịch nào hiệu quả nhất ở mỗi khu vực?

Cũng giả sử rằng đối với trường hợp sử dụng của bạn, bạn cần thông tin chi tiết hằng tuần.

Bạn cũng cần theo dõi những điều sau:

  • 16 chiến dịch khác nhau.
  • 8 khu vực địa lý: Bắc Mỹ, Trung Mỹ, Nam Mỹ, Châu Âu, Châu Phi, Châu Á, Caribbean và Châu Đại Dương.
  • 29 danh mục sản phẩm.

Nội dung đánh giá

Mặc dù nhiều công ty công nghệ quảng cáo khuyến khích nhà quảng cáo định cấu hình nhiều loại chuyển đổi, nhưng việc tập trung vào các lượt chuyển đổi quan trọng nhất (chẳng hạn như lượt mua hàng) là một cách hay để đảm bảo rằng kết quả tổng hợp chi tiết và chính xác cho các sự kiện chuyển đổi quan trọng này. Trên thực tế, bạn càng đo lường nhiều chỉ số, thì ngân sách đóng góp cho mỗi chỉ số càng nhỏ và do đó, mỗi giá trị có thể càng nhiễu hơn. Do đó, bạn cần phải chọn kỹ những gì cần đo lường.

Trong ví dụ này, chúng tôi sẽ tập trung vào những thiết lập chiến dịch chỉ đo lường một lượt chuyển đổi trên mỗi lượt nhấp hoặc lượt xem: một lượt mua hàng.

Bạn vẫn sẽ đo lường cả số lượt mua hàng và giá trị giao dịch mua, cũng như xem nhiều số liệu thống kê tổng hợp quan trọng như tổng giá trị giao dịch mua và thông tin chi tiết về địa lý. Việc này giúp đảm bảo độ nhiễu hợp lý và đảm bảo áp dụng một phương pháp đơn giản để điều chỉnh theo tỷ lệ cho ngân sách khoản đóng góp của bạn.

Còn đơn vị tiền tệ thì sao?

Việc chạy chiến dịch ở các khu vực khác nhau có nghĩa là cần tính đến đơn vị tiền tệ. Bạn có thể:

  • Đặt đơn vị tiền tệ làm phương diện chuyên biệt trong khoá tổng hợp.
  • Hoặc dự đoán đơn vị tiền tệ từ mã chiến dịch và chuyển đổi tất cả đơn vị tiền tệ thành đơn vị tiền tệ tham chiếu.

Trong ví dụ này, chúng tôi sẽ giả định rằng bạn có thể dự đoán đơn vị tiền tệ từ một mã chiến dịch. Nhờ đó, bạn có thể quy đổi mọi giá trị giao dịch mua nhất định từ nội tệ của người dùng sang đơn vị tiền tệ tham chiếu mà bạn chọn. Bạn cũng có thể thực hiện chuyển đổi đó nhanh chóng, khi người dùng mua một mặt hàng.

Với kỹ thuật này, tất cả các giá trị tổng hợp đều có cùng đơn vị tiền tệ tham chiếu và do đó có thể được tổng hợp để tạo ra tổng giá trị giao dịch mua tổng hợp — một giá trị giao dịch mua tóm tắt.

Chuyển mục tiêu thành khoá

Với các mục tiêu và chỉ số đo lường, bạn có nhiều lựa chọn cho chiến lược chính của mình. Hãy tập trung vào hai trong số các chiến lược sau:

  • Chiến lược A: một cấu trúc khoá chi tiết.
  • Chiến lược B: hai cấu trúc khoá thô.

Chiến lược A: một cây sâu (một cấu trúc khoá chi tiết)

Trong chiến lược A, bạn sử dụng một cấu trúc khoá chi tiết, bao gồm tất cả các kích thước bạn cần:

Một cấu trúc khoá chi tiết

Tất cả khoá của bạn đều sử dụng cấu trúc này.

Bạn đã chia cấu trúc khoá này thành 2 loại chính để hỗ trợ 2 mục tiêu đo lường.

  • Loại khoá 0: loại mục tiêu đo lường = 0, được bạn quyết định xác định là số lượt mua hàng.
  • Loại khoá 1: loại mục tiêu đo lường = 1, mà bạn quyết định xác định là giá trị giao dịch mua hàng.

Báo cáo tóm tắt có dạng như sau:

Chiến lược Báo cáo tóm tắt.

Bạn có thể xem chiến lược A là chiến lược "một cây sâu":

  • Mỗi giá trị tóm tắt trong báo cáo tóm tắt đều được liên kết với tất cả các phương diện bạn đang theo dõi.
  • Bạn có thể tổng hợp các giá trị tóm tắt này cùng với từng phương diện trong số này để các dữ liệu tổng hợp này có thể chi tiết nhất có thể bằng số lượng phương diện mà bạn có.

Với chiến lược A, bạn sẽ trả lời các câu hỏi của mình như sau:

Câu hỏi Answer
Những danh mục sản phẩm nào có giá trị nhất ở mỗi khu vực? Tổng số lượng và giá trị giao dịch mua hàng tóm tắt có trong báo cáo tóm tắt trên tất cả các chiến dịch.
Theo đó, bạn sẽ biết được số lượt mua và giá trị giao dịch mua trên mỗi Mã địa lý x Danh mục sản phẩm.
Đối với từng khu vực, hãy so sánh giá trị giao dịch mua và số lượng của các danh mục sản phẩm.
Chiến lược chiến dịch nào hiệu quả nhất ở mỗi khu vực? Tổng số lượng và giá trị giao dịch mua hàng tóm tắt có trong báo cáo tóm tắt, trên tất cả các danh mục sản phẩm.
Theo đó, bạn sẽ biết được số lượt mua và giá trị của mỗi Mã chiến dịch x Mã địa lý.
Đối với từng khu vực, hãy so sánh giá trị giao dịch mua và số lượng các chiến dịch khác nhau.

Với chiến lược A, bạn cũng có thể trả lời trực tiếp câu hỏi thứ ba sau:

"Mỗi chiến dịch của tôi ở mỗi khu vực địa lý tạo ra bao nhiêu doanh thu từ mỗi sản phẩm?"

Mặc dù các giá trị tóm tắt sẽ nhiều nhiễu, nhưng bạn có thể xác định trường hợp sự khác biệt về giá trị được đo lường giữa từng chiến dịch không phải là do riêng biệt về độ nhiễu. Tìm hiểu cách thực hiện việc này trong phần Tìm hiểu về tiếng ồn.

Chiến lược B: hai cây nông (hai cấu trúc khoá thô)

Trong chiến lược B, bạn sử dụng 2 cấu trúc khoá thô, mỗi cấu trúc bao gồm một tập con các kích thước cần thiết:

Cấu trúc khoá 1 và cấu trúc khoá 2.

Bạn chia từng cấu trúc chính này thành hai loại chính để hỗ trợ hai mục tiêu đo lường.

  • Loại mục tiêu đo lường = 0. Bạn sẽ quyết định xác định loại mục tiêu này là số lượt mua hàng.
  • Loại mục tiêu đo lường = 1, mà bạn quyết định xác định là giá trị mua hàng.

Bạn sẽ có 4 loại chính:

  • Loại khoá I-0: Cấu trúc khoá I, số lượt mua hàng.
  • Loại khoá I-1: Cấu trúc khoá I, giá trị giao dịch mua.
  • Loại khoá II-0: Cấu trúc khoá II, số lượt mua.
  • Loại khoá II-1: Cấu trúc khoá II, giá trị mua.

Báo cáo tóm tắt có dạng như sau:

Chiến lược báo cáo tóm tắt B.

Bạn có thể xem chiến lược B là chiến lược "hai cây nông":

  • Giá trị tóm tắt trong báo cáo tóm tắt liên kết với một trong hai tập hợp phương diện nhỏ.
  • Bạn có thể tổng hợp các giá trị tóm tắt này cùng với từng phương diện trong các nhóm này. Điều này có nghĩa là các dữ liệu tổng hợp này không sâu như trong tuỳ chọn A, vì có ít phương diện để tổng hợp hơn.

Với chiến lược B, bạn sẽ trả lời các câu hỏi của mình như sau:

Câu hỏi Answer
Những danh mục sản phẩm nào có giá trị nhất ở mỗi khu vực? Truy cập trực tiếp vào số lượng và giá trị giao dịch mua tóm tắt có trong báo cáo tóm tắt.
Chiến lược chiến dịch nào hiệu quả nhất ở mỗi khu vực? Truy cập trực tiếp vào số lượng và giá trị giao dịch mua tóm tắt có trong báo cáo tóm tắt.

Quyết định: Chiến lược A

Chiến lược A đơn giản hơn; tất cả dữ liệu đều tuân theo cùng một cấu trúc khoá, điều này cũng có nghĩa là bạn chỉ có một cấu trúc khoá để duy trì.

Tuy nhiên, với chiến lược A, bạn cần tổng hợp các giá trị tóm tắt mà bạn nhận được trong báo cáo tóm tắt để trả lời một số câu hỏi của bạn. Mỗi giá trị tóm tắt trong số này đều gây nhiễu. Bằng cách tổng hợp dữ liệu đó, bạn cũng sẽ tổng hợp độ nhiễu.

Điều này không đúng với chiến lược B, trong đó các giá trị tóm tắt được hiển thị trong báo cáo tóm tắt đã cung cấp thông tin bạn cần. Điều này có nghĩa là chiến lược B có thể sẽ ít chịu ảnh hưởng từ độ nhiễu hơn so với chiến lược A.

Làm cách nào để xác định nên sử dụng chiến lược nào? Đối với các nhà quảng cáo hoặc chiến dịch hiện tại, bạn có thể dựa vào dữ liệu trong quá khứ để xác định xem số lượt chuyển đổi có phù hợp hơn cho chiến lược A hoặc chiến lược B hay không. Tuy nhiên, đối với nhà quảng cáo hoặc chiến dịch mới, bạn có thể quyết định:

  • Thu thập dữ liệu của một tháng bằng các khoá chi tiết (Chiến lược A). Vì bạn đang kéo dài thời gian thu thập dữ liệu, nên các giá trị tóm tắt sẽ cao hơn và độ nhiễu sẽ tương đối thấp hơn.
  • Đánh giá với độ chính xác hợp lý về số lượt chuyển đổi hằng tuần và giá trị giao dịch mua.

Trong ví dụ này, giả sử rằng số lượt mua hàng và giá trị giao dịch mua hằng tuần đủ cao để chiến lược A dẫn đến tỷ lệ phần trăm nhiễu mà bạn cho là có thể chấp nhận được cho trường hợp sử dụng của mình.

Vì chiến lược A đơn giản hơn và dẫn đến tác động nhiễu mà không ảnh hưởng đến khả năng đưa ra quyết định, nên bạn quyết định chọn chiến lược A.

Chọn một thuật toán băm

Bạn quyết định áp dụng phương pháp dựa trên hàm băm để tạo khoá. Để làm như vậy, bạn cần chọn một thuật toán băm để hỗ trợ phương pháp đó.

Giả sử bạn đã chọn SHA-256. Bạn cũng có thể sử dụng một thuật toán đơn giản hơn và kém an toàn hơn như MD5.

Trong trình duyệt: đặt khoá và giá trị

Bây giờ, bạn đã quyết định cấu trúc khoá và thuật toán băm, bạn đã sẵn sàng đăng ký khoá và giá trị khi người dùng nhấp hoặc xem quảng cáo và sau đó chuyển đổi.

Tiếp theo là phần tổng quan về tiêu đề mà bạn sẽ thiết lập để đăng ký khoá và giá trị trong trình duyệt:

Đăng ký các khoá và giá trị cho một lượt xem hoặc lượt nhấp.
Đăng ký các khoá và giá trị cho một lượt chuyển đổi.

Thiết lập phần khoá phía nguồn

Khi người dùng nhấp hoặc xem một quảng cáo, hãy đặt các khoá tổng hợp trong tiêu đề Attribution-Reporting-Register-Aggregatable-Source. Ở giai đoạn này, đối với mỗi khoá, bạn chỉ có thể đặt một phần của khoá hoặc phần khoá, được biết tại thời điểm phân phát quảng cáo.

Hãy tạo các phần chính:

Phần khoá phía nguồn cho mã khoá... Chuỗi chứa các giá trị phương diện mà bạn muốn đặt Hàm băm của chuỗi này dưới dạng hex, được cắt thành 64 bit đầu tiên (64/4 = 16 ký tự1) Hàm băm hex có thêm các số 0 để đơn giản hoá quá trình XOR. Đây là phần khoá phía nguồn.
key_purchaseCount COUNT, CampaignID=12, GeoID=7 0x3cf867903fbb73ec 0x3cf867903fbb73ec0000000000000000
key_purchaseValue GIÁ TRỊ, Mã chiến dịch=12, Mã địa lý=7 0x245265f432f16e73 0x245265f432f16e730000000000000000
1Mỗi chữ số thập lục phân đại diện cho 4 bit (chữ số nhị phân).

Bây giờ, hãy cùng thiết lập các yếu tố chính:

// Upon receiving the request from the publisher site
res.set(
  "Attribution-Reporting-Register-Aggregatable-Source",
  JSON.stringify(
   [{
    "id": "key_purchaseCount", 
    "key_piece": "0x3cf867903fbb73ec0000000000000000"
    }, {
    "id": "key_purchaseValue", 
    "key_piece": "0x245265f432f16e730000000000000000"
    }]
))

Xin lưu ý rằng mã nhận dạng chính sẽ không xuất hiện trong báo cáo cuối cùng. Chúng chỉ được dùng khi đặt các khoá trong trình duyệt để có thể liên kết các phần khoá phía nguồn và phía điều kiện kích hoạt với nhau và kết hợp thành một khoá đầy đủ.

Không bắt buộc: báo cáo cấp sự kiện

Nếu bạn cần sử dụng các báo cáo cấp sự kiện cùng với báo cáo tổng hợp để đảm bảo rằng đối với một nguồn nhất định, dữ liệu cấp sự kiện (mã sự kiện nguồn và dữ liệu điều kiện kích hoạt) có thể được so khớp.

Ví dụ: bạn có thể sử dụng cả hai báo cáo nếu bạn dự định sử dụng các báo cáo cấp sự kiện để chạy các mô hình mà theo đó những loại quảng cáo có xu hướng dẫn đến nhiều lượt mua hàng nhất.

Người dùng chuyển đổi

Khi người dùng chuyển đổi, yêu cầu pixel thường được gửi đến máy chủ công nghệ quảng cáo. Khi nhận được yêu cầu này:

  • Thiết lập các phần khoá phía chuyển đổi (phía điều kiện kích hoạt) để hoàn tất khoá. Bạn sẽ thiết lập các phần khoá này thông qua tiêu đề Attribution-Reporting-Register-Aggregatable-Trigger-Data.
  • Đặt giá trị tổng hợp cho lượt chuyển đổi đó, thông qua tiêu đề Attribution-Reporting-Register-Aggregatable-Values.

Thiết lập các phần khoá phía điều kiện kích hoạt để hoàn tất khoá

Hãy tạo các phần chính:

Phần khoá phía điều kiện kích hoạt cho mã khoá... Chuỗi chứa các giá trị phương diện mà bạn muốn đặt Hàm băm của chuỗi này dưới dạng hệ lục phân, được cắt thành 64 bit đầu tiên (64/4 = 16 ký tự1) Hàm băm hệ lục phân có thêm các số 0 để simplify việc XOR. Đây là phần khoá phía nguồn.
key_purchaseCount Danh mục sản phẩm=25 0x1c7ce88c4904bbe2 0x0000000000000000f9e491fe37e55a0c
key_purchaseValue (tương tự) (tương tự) (tương tự)
1Mỗi chữ số thập lục phân đại diện cho 4 bit (chữ số nhị phân).

Bây giờ, hãy cùng thiết lập các yếu tố chính:

// Upon receiving the pixel request from the advertiser site
res.set(
  "Attribution-Reporting-Register-Aggregatable-Trigger-Data",
  JSON.stringify(
    [
      // Each dictionary independently adds pieces to multiple source keys
      { "key_piece": "0x0000000000000000f9e491fe37e55a0c",
        "source_keys": ["key_purchaseCount", "key_purchaseValue"]}, 
    ]
))

Hãy lưu ý cách bạn thêm cùng một đoạn khoá vào một số khoá bằng cách liệt kê một số mã nhận dạng khoá trong source_keys – đoạn khoá sẽ được thêm vào cả hai khoá.

Thiết lập các giá trị tổng hợp

Trước khi đặt các giá trị tổng hợp, bạn cần tăng quy mô của các giá trị đó để giảm độ nhiễu.

Giả sử bạn đã thực hiện một giao dịch mua cho loại sản phẩm 25 với giá $52.

Bạn sẽ không trực tiếp thiết lập những giá trị này ở dạng tổng hợp:

  • key_purchaseCount: 1 lượt chuyển đổi
  • key_purchaseValue: 52 USD

Thay vào đó, trước khi đăng ký các giá trị tổng hợp này, bạn cần chia tỷ lệ các giá trị đó để giảm thiểu độ nhiễu.

Bạn có hai mục tiêu để chi tiêu ngân sách đóng góp, vì vậy, bạn có thể quyết định chia ngân sách đóng góp thành hai.

Trong trường hợp này, mỗi mục tiêu được phân bổ tối đa là CONTRIBUTION_BUDGET/2 (=65.536/2=32.768).

Giả sử giá trị mua hàng tối đa cho một người dùng dựa trên nhật ký mua của tất cả người dùng trên trang web là 1.500 đô la. Có thể có những trường hợp ngoại lệ, ví dụ: rất ít người dùng đã chi tiêu vượt quá số tiền đó, nhưng bạn có thể quyết định bỏ qua những ngoại lệ này.

Hệ số tỷ lệ cho giá trị giao dịch mua phải là:

((CONTRIBUTION_BUDGET/2) / 1.500) = 32.768/1.500 = 21,8~ 22

Hệ số tỷ lệ cho số lượt mua hàng là 32.768/1 = 32.768, vì bạn đã quyết định theo dõi tối đa một lượt mua hàng trên mỗi lượt nhấp vào quảng cáo hoặc lượt xem (sự kiện nguồn).

Giờ đây, bạn có thể đặt các giá trị sau:

  • key_purchaseCount: 1*32.768 = 32.768
  • key_purchaseValue: 52*22 = 1.144

Trong thực tế, bạn sẽ thiết lập các lớp này như sau bằng cách sử dụng tiêu đề chuyên biệt Attribution-Reporting-Register-Aggregatable-Values:

// Instruct the browser to schedule-send a report
res.set(
  "Attribution-Reporting-Register-Aggregatable-Values",
  JSON.stringify(
    {
  "key_purchaseCount": 32768,
  "key_purchaseValue": 1144,
    }
))

Báo cáo tổng hợp đã được tạo

Trình duyệt sẽ so khớp lượt chuyển đổi với một lượt xem hoặc lượt nhấp trước đó rồi tạo một báo cáo tổng hợp, bao gồm cả tải trọng được mã hoá bên cạnh siêu dữ liệu báo cáo.

Sau đây là ví dụ về dữ liệu có thể được tìm thấy trong tải trọng của báo cáo tổng hợp, nếu dữ liệu đó có thể đọc được ở dạng văn bản thô:

[ {
  key: 0x3cf867903fbb73ecf9e491fe37e55a0c, // = source-side key piece XOR conversion-side key piece for the key key_purchaseCount 
  value: 32768 // the scaled value for 1 conversion, in the context of [CONTRIBUTION_BUDGET/2]
}, {
  key: 0x245265f432f16e73f9e491fe37e55a0c, // source-side key piece XOR conversion-side key piece for the key key_purchaseValue 
  value: 1144 // the scaled value for $52, in the context of [CONTRIBUTION_BUDGET/2] 
}]

Tại đây, bạn có thể thấy hai lượt đóng góp riêng biệt trong một báo cáo tổng hợp duy nhất.

Yêu cầu báo cáo tóm tắt

  • Báo cáo tổng hợp theo lô. Làm theo lời khuyên được đưa ra trong tính năng Gộp nhóm.
  • Tạo khoá bạn muốn xem dữ liệu. Ví dụ: để xem dữ liệu tóm tắt cho COUNT (tổng số giao dịch mua hàng) và GIÁ TRỊ (tổng giá trị giao dịch mua) cho ID chiến dịch 12 x ID địa lý 7 x Danh mục sản phẩm 25:
Chỉ số bạn muốn yêu cầu1 Phần khoá phía nguồn Phần khoá phía điều kiện kích hoạt Khoá để yêu cầu dịch vụ tổng hợp2
Tổng số giao dịch mua (COUNT) 0x3cf867903fbb73ec
0000000000000000
0x00000000000000
00f9e491fe37e55a0c
0x3cf867903fbb73
ecf9e491fe37e55a0c
Tổng giá trị giao dịch mua (VALUE) 0x245265f432f16e73
0000000000000000
0x0000000000000000
f9e491fe37e55a0c
0x245265f432f16e73
f9e491fe37e55a0c
1Chỉ số bạn đang muốn yêu cầu (đối với Mã chiến dịch 12 x Mã khu vực địa lý 7 x Danh mục sản phẩm 25). 2Khoá yêu cầu dịch vụ tổng hợp = Phần khoá phía nguồn XOR Phần khoá phía điều kiện kích hoạt.
  • Yêu cầu dữ liệu tóm tắt gửi đến dịch vụ tổng hợp cho các khoá này.

Xử lý báo cáo tóm tắt

Cuối cùng, bạn sẽ nhận được một báo cáo tóm tắt có thể có dạng như sau:

[
  {"bucket": "00111100111110000110011110010000001111111011101101110011111011001111100111100100100100011111111000110111111001010101101000001100", 
    "value": "2558500"}, 
  {"bucket": "00100100010100100110010111110100001100101111000101101110011100111111100111100100100100011111111000110111111001010101101000001100", 
    "value": "687060"}, 
… 
]

Nhóm đầu tiên là khoá COUNT ở dạng nhị phân. Nhóm thứ hai là khoá GIÁ TRỊ trong tệp nhị phân. Lưu ý rằng mặc dù các khoá không đồng nhất (COUNT so với GIÁ TRỊ), nhưng chúng được đưa vào cùng một báo cáo.

Giảm kích thước các giá trị

  • 2.558.500 là số lượt mua hàng cho khoá này, được tăng tỷ lệ theo hệ số tỷ lệ đã tính toán trước đó. Hệ số tỷ lệ cho số lượt mua là 32.768. Chia 2.558.500 cho ngân sách đóng góp của mục tiêu: 2.558.500/32.768 = 156,15 giao dịch mua.
  • 687.060 → 687.060/22 = Tổng giá trị giao dịch mua là 31.230 USD.

Do đó, báo cáo tóm tắt cung cấp cho bạn những thông tin chi tiết sau:

Within the reporting time period, campaign #12
run in Europe drove about 156 purchases (± noise)
for the product category #25.
Within the reporting time period, campaign #12
run in Europe drove $31,230 of purchases (± noise)
for the product category #25.