Sprawdź dane testów A/B za pomocą BigQuery

Oprócz przeglądania danych eksperymentów testów A/B w konsoli Firebase możesz sprawdzać i analizować dane eksperymentów w BigQuery. Chociaż testy A/B nie mają osobnej tabeli BigQuery, członkostwa w eksperymentach i wariantach są przechowywane w każdym zdarzeniu Google Analytics w tabelach zdarzeń Analytics.

Właściwości użytkownika zawierające informacje o eksperymencie mają postać userProperty.key like "firebase_exp_%" lub userProperty.key = "firebase_exp_01" , gdzie 01 to identyfikator eksperymentu, a userProperty.value.string_value zawiera indeks (liczony od zera) wariant eksperymentu.

Możesz użyć tych właściwości użytkownika eksperymentu, aby wyodrębnić dane eksperymentu. Daje to możliwość dzielenia wyników eksperymentu na wiele różnych sposobów i niezależnej weryfikacji wyników testów A/B.

Aby rozpocząć, wykonaj następujące czynności zgodnie z opisem w tym przewodniku:

  1. Włącz eksport BigQuery dla Google Analytics w konsoli Firebase
  2. Uzyskaj dostęp do danych testów A/B za pomocą BigQuery
  3. Przeglądaj przykładowe zapytania

Włącz eksport BigQuery dla Google Analytics w konsoli Firebase

Jeśli korzystasz z planu Spark, możesz korzystać z piaskownicy BigQuery , aby uzyskać dostęp do BigQuery bezpłatnie, z zastrzeżeniem ograniczeń Sandbox . Więcej informacji znajdziesz w artykule Cennik i piaskownica BigQuery .

Najpierw upewnij się, że eksportujesz dane Analytics do BigQuery:

  1. Otwórz zakładkę Integracje , do której dostęp uzyskasz poprzez > Ustawienia projektu w konsoli Firebase .
  2. Jeśli używasz już BigQuery z innymi usługami Firebase, kliknij Zarządzaj . W przeciwnym razie kliknij opcję Link .
  3. Przeczytaj artykuł Informacje o łączeniu Firebase z BigQuery , a następnie kliknij Dalej .
  4. W sekcji Konfiguruj integrację włącz przełącznik Google Analytics .
  5. Wybierz region i wybierz ustawienia eksportu.

  6. Kliknij opcję Link do BigQuery .

W zależności od wybranej metody eksportowania danych udostępnienie tabel może zająć nawet jeden dzień. Więcej informacji o eksportowaniu danych projektu do BigQuery znajdziesz w artykule Eksportowanie danych projektu do BigQuery .

Uzyskaj dostęp do danych testów A/B w BigQuery

Przed zapytaniem o dane do konkretnego eksperymentu warto uzyskać niektóre lub wszystkie z poniższych informacji, które można wykorzystać w zapytaniu:

  • Identyfikator eksperymentu: można go uzyskać z adresu URL strony przeglądu eksperymentu . Na przykład, jeśli Twój adres URL wygląda następująco https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25 , identyfikator eksperymentu to 25 .
  • Identyfikator usługi Google Analytics : To jest Twój 9-cyfrowy identyfikator usługi Google Analytics. Można to znaleźć w Google Analytics; pojawia się również w BigQuery, gdy rozwiniesz nazwę projektu, aby wyświetlić nazwę tabeli zdarzeń Google Analytics ( project_name.analytics_000000000.events ).
  • Data eksperymentu: aby utworzyć szybsze i wydajniejsze zapytanie, dobrą praktyką jest ograniczenie zapytań do partycji tabeli zdarzeń dziennych Google Analytics, które zawierają dane eksperymentu – tabel oznaczonych sufiksem YYYYMMDD . Jeśli więc eksperyment trwał od 2 lutego 2024 r. do 2 maja 2024 r., należy określić wartość _TABLE_SUFFIX between '20240202' AND '20240502' . Aby zapoznać się z przykładem, zobacz Wybieranie wartości konkretnego eksperymentu .
  • Nazwy zdarzeń: zazwyczaj odpowiadają one metrykom celu skonfigurowanym w eksperymencie. Na przykład zdarzenia in_app_purchase , ad_impression lub user_retention .

Po zebraniu informacji potrzebnych do wygenerowania zapytania:

  1. Otwórz BigQuery w konsoli Google Cloud.
  2. Wybierz swój projekt, a następnie wybierz opcję Utwórz zapytanie SQL .
  3. Dodaj swoje zapytanie. Przykładowe zapytania do uruchomienia znajdziesz w temacie Eksplorowanie przykładowych zapytań .
  4. Kliknij Uruchom .

Zapytaj o dane eksperymentu, korzystając z automatycznie wygenerowanego zapytania konsoli Firebase

Jeśli korzystasz z planu Blaze, na stronie Przegląd eksperymentu znajduje się przykładowe zapytanie, które zwraca nazwę eksperymentu, warianty, nazwy zdarzeń i liczbę zdarzeń dla przeglądanego eksperymentu.

Aby uzyskać i uruchomić automatycznie wygenerowane zapytanie:

  1. W konsoli Firebase otwórz Testowanie A/B i wybierz eksperyment Testowania A/B, do którego chcesz wysłać zapytanie, aby otworzyć Przegląd eksperymentu .
  2. W menu Opcje w obszarze Integracja z BigQuery wybierz Zapytanie o dane eksperymentu . Spowoduje to otwarcie Twojego projektu w BigQuery w konsoli konsoli Google Cloud i udostępnienie podstawowego zapytania, którego możesz użyć do wysyłania zapytań o dane eksperymentu.

Poniższy przykład przedstawia wygenerowane zapytanie dla eksperymentu z trzema wariantami (łącznie z wartością bazową) o nazwie „Eksperyment powitalny zimą”. Zwraca nazwę aktywnego eksperymentu, nazwę wariantu, unikalne zdarzenie i liczbę zdarzeń dla każdego zdarzenia. Należy pamiętać, że konstruktor zapytań nie określa nazwy projektu w nazwie tabeli, ponieważ otwiera się bezpośrednio w projekcie.

  /*
    This query is auto-generated by Firebase A/B Testing for your
    experiment "Winter welcome experiment".
    It demonstrates how you can get event counts for all Analytics
    events logged by each variant of this experiment's population.
  */
  SELECT
    'Winter welcome experiment' AS experimentName,
    CASE userProperty.value.string_value
      WHEN '0' THEN 'Baseline'
      WHEN '1' THEN 'Welcome message (1)'
      WHEN '2' THEN 'Welcome message (2)'
      END AS experimentVariant,
    event_name AS eventName,
    COUNT(*) AS count
  FROM
    `analytics_000000000.events_*`,
    UNNEST(user_properties) AS userProperty
  WHERE
    (_TABLE_SUFFIX BETWEEN '20240202' AND '20240502')
    AND userProperty.key = 'firebase_exp_25'
  GROUP BY
    experimentVariant, eventName

Aby zapoznać się z dodatkowymi przykładami zapytań, przejdź do Eksploruj przykładowe zapytania .

Przeglądaj przykładowe zapytania

W poniższych sekcjach przedstawiono przykłady zapytań, których można użyć do wyodrębnienia danych eksperymentu testu A/B z tabel zdarzeń Google Analytics.

Wyodrębnij wartości odchylenia standardowego zakupu i eksperymentu ze wszystkich eksperymentów

Dane z wyników eksperymentu możesz wykorzystać do niezależnej weryfikacji wyników testów A/B Firebase. Poniższa instrukcja BigQuery SQL wyodrębnia warianty eksperymentu, liczbę unikalnych użytkowników w każdym wariancie i sumuje łączne przychody ze zdarzeń in_app_purchase i ecommerce_purchase oraz odchylenia standardowe dla wszystkich eksperymentów w zakresie czasu określonym jako daty rozpoczęcia i zakończenia _TABLE_SUFFIX . Możesz użyć danych uzyskanych w wyniku tego zapytania za pomocą generatora istotności statystycznej do jednostronnych testów t, aby sprawdzić, czy wyniki dostarczone przez Firebase odpowiadają Twojej własnej analizie.

Aby uzyskać więcej informacji na temat sposobu, w jaki testowanie A/B oblicza wnioskowanie, zobacz temat Interpretowanie wyników testów .

  /*
    This query returns all experiment variants, number of unique users,
    the average USD spent per user, and the standard deviation for all
    experiments within the date range specified for _TABLE_SUFFIX.
  */
  SELECT
    experimentNumber,
    experimentVariant,
    COUNT(*) AS unique_users,
    AVG(usd_value) AS usd_value_per_user,
    STDDEV(usd_value) AS std_dev
  FROM
    (
      SELECT
        userProperty.key AS experimentNumber,
        userProperty.value.string_value AS experimentVariant,
        user_pseudo_id,
        SUM(
          CASE
            WHEN event_name IN ('in_app_purchase', 'ecommerce_purchase')
              THEN event_value_in_usd
            ELSE 0
            END) AS usd_value
      FROM `PROJECT_NAME.analytics_ANALYTICS_ID.events_*`
      CROSS JOIN UNNEST(user_properties) AS userProperty
      WHERE
        userProperty.key LIKE 'firebase_exp_%'
        AND event_name IN ('in_app_purchase', 'ecommerce_purchase')
        AND (_TABLE_SUFFIX BETWEEN 'YYYYMMDD' AND 'YYYMMDD')
      GROUP BY 1, 2, 3
    )
  GROUP BY 1, 2
  ORDER BY 1, 2;

Wybierz wartości konkretnego eksperymentu

Poniższe przykładowe zapytanie ilustruje sposób uzyskania danych do konkretnego eksperymentu w BigQuery. To przykładowe zapytanie zwraca nazwę eksperymentu, nazwy wariantów (w tym linię bazową), nazwy zdarzeń i liczbę zdarzeń.

  SELECT
    'EXPERIMENT_NAME' AS experimentName,
    CASE userProperty.value.string_value
      WHEN '0' THEN 'Baseline'
      WHEN '1' THEN 'VARIANT_1_NAME'
      WHEN '2' THEN 'VARIANT_2_NAME'
      END AS experimentVariant,
    event_name AS eventName,
    COUNT(*) AS count
  FROM
    `analytics_ANALYTICS_PROPERTY.events_*`,
    UNNEST(user_properties) AS userProperty
  WHERE
    (_TABLE_SUFFIX BETWEEN 'YYYMMDD' AND 'YYYMMDD')
    AND userProperty.key = 'firebase_exp_EXPERIMENT_NUMBER'
  GROUP BY
    experimentVariant, eventName