[GA4] Схема на BigQuery Export

В тази статия са обяснени форматът и схемата на данните за собствеността в Google Анализ 4 и данните от Google Анализ за Firebase, които се експортират в BigQuery.

Набори от данни

За всяка собственост в Google Анализ 4 и всеки проект във Firebase, свързан с BigQuery, към проекта Ви в BigQuery се добавя един набор от данни на име analytics_<property_id>. Номерът на собствеността е идентификационният номер на собствеността Ви в Анализ, който можете да намерите в настройките на собствеността в Google Анализ 4 и в настройките за анализ на приложения във Firebase. Всяка собственост в Google Анализ 4 и всяко приложение, за което е активирано експортирането в BigQuery, ще експортира данните си в този набор.

Таблици

Във всеки набор от данни се създава таблица events_YYYYMMDD всеки ден, ако опцията „Ежедневно експортиране“ е активирана.

Ако опцията „Поточно експортиране“ е активирана, се създава таблица events_intraday_YYYYMMDD. Тази таблица се попълва непрекъснато в течение на деня, докато събитията се записват. Тази таблица се изтрива в края на всеки ден, след като events_YYYYMMDD завърши.

Не всички устройства, на които се задействат събития, изпращат данните си до Анализ в същия ден, в който са задействани събитията. За да се вземе предвид това забавяне, Анализ ще актуализира ежедневните таблици (events_YYYYMMDD) със събития за съответните дати до три дни след датите на събитията. Събитията ще бъдат с правилното клеймо за дата и час, независимо дали пристигат със закъснение. Събитията, които пристигнат след този тридневен прозорец, не се записват.

 

Ако използвате тестова среда на BigQuery, не се импортират събития в рамките на деня и се прилагат допълнителни лимити.

Надстройте от тестовата среда, ако искате импортиране в рамките на деня.

Графи

Всяка графа в таблицата events_YYYYMMDD представлява конкретен за събитието параметър. Имайте предвид, че някои параметри са вложени в ЗАПИСИ, а някои от тях, като например items и event_params, могат да се повтарят.Графите в таблицата са описани по-долу.

събитие
Полетата за събитие съдържат информация, която идентифицира дадено събитие по уникален начин.
Име на полето Тип данни Описание
event_date НИЗ Датата, на която е регистрирано това събитие (формат YYYYMMDD в регистрираната часова зона на приложението Ви).
event_timestamp ЦЯЛО ЧИСЛО Часът (в микросекунди, Координирано универсално време), в който това събитие е било регистрирано при клиента.
event_previous_timestamp ЦЯЛО ЧИСЛО Часът (в микросекунди, Координирано универсално време), в който това събитие по-рано е регистрирано при клиента.
event_name НИЗ Името на събитието.
event_value_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Стойността в преобразувана валута (в щатски долари) на параметъра value на събитието.
event_bundle_sequence_id ЦЯЛО ЧИСЛО Поредният идентификационен номер на пакета, в който са качени тези събития.
event_server_timestamp_offset ЦЯЛО ЧИСЛО Времеви интервал между момента на събиране и момента на качване, в микросекунди.

ЗАПИС event_params

ЗАПИСЪТ event_params може да съхранява параметри на ниво кампания и такива за контекстни събития, както и дефинирани от потребителя параметри за събития. ЗАПИСЪТ event_params се повтаря за всеки ключ, свързан с дадено събитие

Наборът от параметри, съхранявани в ЗАПИСА event_params, е уникален за всяко внедряване. За да видите пълния списък с параметри за събитието за Вашето внедряване, подайте заявка за списъка с параметри за събитието

Име на полето Тип данни Описание
event_params.key НИЗ Името на параметъра на събитието.
event_params.value ЗАПИС Запис, който съдържа стойността на параметъра на събитието.
event_params.value.string_value НИЗ Ако параметърът на събитието е представен чрез низ, например URL адрес или име на кампания, той се попълва в това поле.
event_params.value.int_value ЦЯЛО ЧИСЛО Ако параметърът на събитието е представен от цяло число, той се попълва в това поле.
event_params.value.double_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Ако параметърът на събитието е представен с двойна стойност, тя се попълва в това поле.
event_params.value.float_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Ако параметърът на събитието е представен от стойност с плаваща запетая, тя се попълва в това поле. Това поле понастоящем не се използва.

ЗАПИС item_params

ЗАПИСЪТ Item_params може да съхранява параметри на артикули в магазина, както и дефинирани от потребителите параметри на артикули. Наборът от параметри, съхранявани в ЗАПИСА item_params, е уникален за всяко внедряване.

Име на полето Тип данни Описание
item_params.key НИЗ Името на параметъра на артикула.
item_params.value ЗАПИС Запис, който съдържа стойността на параметъра на артикула.
item_params.value.string_value НИЗ Ако параметърът на артикула е представен чрез низ, той се попълва в това поле.
item_params.value.int_value ЦЯЛО ЧИСЛО Ако параметърът на артикула е представен от цяло число, той се попълва в това поле.
item_params.value.double_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Ако параметърът на артикула е представен с двойна стойност, тя се попълва в това поле.
item_params.value.float_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Ако параметърът на артикула е представен от стойност с плаваща запетая, тя се попълва в това поле.
потребител
Тези полета съдържат информация, която идентифицира по уникален начин потребителя, свързан със събитието.
Име на полето Тип данни Описание
is_active_user БУЛЕВА СТОЙНОСТ

Дали потребителят е бил активен (True) или неактивен (False) в който и да е момент от календарния ден.

Включено е само в ежедневните таблици (events_YYYYMMDD).

user_id НИЗ Уникален идентификатор, зададен на потребителя.
user_pseudo_id НИЗ Псевдонимен идентификатор (напр. идентификатор на екземпляра на приложението) за потребителя.
user_first_touch_timestamp ЦЯЛО ЧИСЛО Часът (в милисекунди), в който потребителят е отворил приложението или е посетил сайта за първи път.

полета privacy_info

Полетата privacy_info съдържат информация въз основа на състоянието на съгласието на потребителя, когато режимът на получаване на съгласие е активиран.
Име на полето Тип данни Описание
privacy_info.ads_storage НИЗ

Дали за потребителя е активирано насочване на рекламите.

Възможни стойности: Yes, No, Unset

privacy_info.analytics_storage НИЗ

Дали за потребителя е активирано съхранение в Анализ.

Възможни стойности: Yes, No, Unset

privacy_info.uses_transient_token НИЗ

Дали потребител в мрежата е отказал съхранение в Анализ, а програмистът е активирал измерването без „бисквитки“ въз основа на временни означения в данните от сървъра.

Възможни стойности: Yes, No, Unset

ЗАПИС user_properties

ЗАПИС user_properties съдържа всички зададени от Вас характеристики на потребителя. Повтаря се за всеки ключ, свързан с даден потребител.
Име на полето Тип данни Описание
user_properties.key НИЗ Името на характеристиката на потребителя.
user_properties.value ЗАПИС Запис със стойността на характеристиката на потребителя.
user_properties.value.string_value НИЗ Стойността на характеристиката на потребителя под формата на низ.
user_properties.value.int_value ЦЯЛО ЧИСЛО Стойността на характеристиката на потребителя под формата на цяло число.
user_properties.value.double_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Стойността на характеристиката на потребителя под формата на число с плаваща запетая с двойна точност.
user_properties.value.float_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Това поле в момента не се използва.
user_properties.value.set_timestamp_micros ЦЯЛО ЧИСЛО Часът (в микросекунди), в който характеристиката на потребителя е зададена за последен път.

ЗАПИС user_ltv

ЗАПИСЪТ user_ltv съдържа информация за стойността за целия период за потребителя. Този ЗАПИС не се попълва в таблици в рамките на деня.
Име на полето Тип данни Описание
user_ltv.revenue ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Стойността за целия период (приходи) за потребителя. Това поле не се попълва в таблици в рамките на деня.
user_ltv.currency НИЗ Стойността за целия период (валута) за потребителя. Това поле не се попълва в таблици в рамките на деня.
устройство
ЗАПИСЪТ на устройството съдържа информация за устройството, от което произхожда събитието.
Име на полето Тип данни Описание
device.category НИЗ Категорията на устройството (настолен компютър, таблет или мобилно устройство).
device.mobile_brand_name НИЗ Името на марката на устройството.
device.mobile_model_name НИЗ Името на модела на устройството.
device.mobile_marketing_name НИЗ Маркетинговото име на устройството.
device.mobile_os_hardware_model НИЗ Информация за модела на устройството, извлечена директно от операционната система.
device.operating_system НИЗ Операционната система на устройството.
device.operating_system_version НИЗ Версията на операционната система.
device.vendor_id НИЗ Идентификаторът за доставчици IDFV (налице само ако не се събира идентификаторът за рекламодатели IDFA).
device.advertising_id НИЗ Идентификатор за рекламиране/IDFA.
device.language НИЗ Езикът на операционната система.
device.time_zone_offset_seconds ЦЯЛО ЧИСЛО Часовата разлика с GMT в секунди.
device.is_limited_ad_tracking БУЛЕВА СТОЙНОСТ

Настройката на устройството за ограничаване на проследяването на рекламите.

Под iOS14 и по-нови версии се връща false, ако IDFA не е нула.

device.web_info.browser НИЗ Браузърът, в който потребителят е видял съдържанието.
device.web_info.browser_version НИЗ Версията на браузъра, в който потребителят е видял съдържанието.
device.web_info.hostname НИЗ Името на хоста, свързано с регистрираното събитие.

geo

ЗАПИСЪТ geo съдържа информация за географското местоположение, откъдето е започнало събитието.
Име на полето Тип данни Описание
geo.continent НИЗ Континентът, откъдето са отчетени събитията, въз основа на IP адреса.
geo.sub_continent НИЗ Субконтинентът, откъдето са отчетени събитията, въз основа на IP адреса.
geo.country НИЗ Държавата, откъдето са отчетени събитията, въз основа на IP адреса.
geo.region НИЗ Регионът, откъдето са отчетени събитията, въз основа на IP адреса.
geo.metro НИЗ Градската област, откъдето са отчетени събитията, въз основа на IP адреса.
geo.city НИЗ Градът, откъдето са отчетени събитията, въз основа на IP адреса.
app_info
ЗАПИСЪТ app_info съдържа информация за приложението, в което е било стартирано събитието.
Име на полето Тип данни Описание
app_info.id НИЗ Името или идентификационният номер на пакета за приложението.
app_info.firebase_app_id НИЗ Идентификационният номер на приложението във Firebase
app_info.install_source НИЗ Магазинът, от който е инсталирано приложението.
app_info.version НИЗ versionName за приложението (Android) или кратката версия на пакета.
collected_traffic_source

ЗАПИСЪТ collected_traffic_source съдържа данните за източниците на трафик, които са били събрани със събитието.

Име на полето Тип данни Описание
manual_campaign_id НИЗ Ръчно зададеният идентификатор на кампанията (utm_id), събран със събитието.
manual_campaign_name НИЗ Ръчно зададеното име на кампанията (utm_campaign), събрано със събитието.
manual_source НИЗ Ръчно зададеният източник на кампанията (utm_source), събран със събитието. Включва и анализирани синтактично параметри от параметрите за препратка, а не само стойности на UTM.
manual_medium НИЗ Ръчно зададеният носител за кампанията (utm_medium), събран със събитието. Включва и анализирани синтактично параметри от параметрите за препратка, а не само стойности на UTM.
manual_term НИЗ Ръчно зададената ключова дума/термин за кампанията (utm_term), събрани със събитието.
manual_content НИЗ Допълнителните ръчно зададени метаданни за кампанията (utm_content), събрани със събитието.
gclid НИЗ Идентификаторът на Google за кликване, събран със събитието.
dclid НИЗ Идентификаторът в Google Marketing Platform (GMP), събран със събитието.
srsltid НИЗ Идентификаторът в Google Merchant Center, събран със събитието.
traffic_source

ЗАПИСЪТ traffic_source съдържа информация за източника на трафик, чрез който потребителят е придобит за първи път. Този запис не се попълва в таблици в рамките на деня.

Забележка: Стойностите на traffic_source не се променят, ако потребителят взаимодейства с последващи кампании след инсталирането.

Име на полето Тип данни Описание
traffic_source.name НИЗ Името на маркетинговата кампания, чрез която първо е придобит потребителят. Това поле не се попълва в таблици в рамките на деня.
traffic_source.medium НИЗ Името на носителя (платено търсене, органично търсене, имейл и т.н.), чрез който първо е придобит потребителят. Това поле не се попълва в таблици в рамките на деня.
traffic_source.source НИЗ Името на мрежата, чрез която първо е придобит потребителят. Това поле не се попълва в таблици в рамките на деня.
поток и платформа
Полетата за поток и платформата съдържат информация за потока и платформата на приложението.
Име на полето Тип данни Описание
stream_id НИЗ Численият идентификационен номер на потока от данни, от който произхожда събитието.
platform НИЗ Платформата на потока от данни (мрежата, iOS или Android), от която произхожда събитието.
електронна търговия;
ЗАПИСЪТ на електронна търговия съдържа информация за всички събития при електронна търговия, които са били настроени на уебсайт или приложение.
Име на полето Тип данни Описание
ecommerce.total_item_quantity ЦЯЛО ЧИСЛО Общият брой артикули в това събитие, което е сумата на items.quantity.
ecommerce.purchase_revenue_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Приходите от покупка от това събитие, представени в щатски долари със стандартно обозначение за валутната единица. Попълва се само за събитие, свързано с покупка.
ecommerce.purchase_revenue ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Приходите от покупка от това събитие, представени в местната валута със стандартно обозначение за валутната единица. Попълва се само за събитие, свързано с покупка.
ecommerce.refund_value_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Възстановената сума в това събитие, представена в щатски долари със стандартно обозначение за валутната единица. Попълва се само за събитие с възстановяване на сума.
ecommerce.refund_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Възстановената сума в това събитие, представена в местната валута със стандартно обозначение за валутната единица. Попълва се само за събитие с възстановяване на сума.
ecommerce.shipping_value_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Разходите за доставка в това събитие, представени в щатски долари със стандартно обозначение за валутната единица.
ecommerce.shipping_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Разходите за доставка в това събитие, представени в местната валута.
ecommerce.tax_value_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Данъчната стойност в това събитие, представена в щатски долари със стандартно обозначение за валутната единица.
ecommerce.tax_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Данъчната стойност в това събитие, представена в местната валута със стандартно обозначение за валутната единица.
ecommerce.transaction_id НИЗ Идент. № на транзакцията при електронна търговия.
ecommerce.unique_items ЦЯЛО ЧИСЛО Броят отделни артикули в това събитие въз основа на item_id, item_name и item_brand.
артикули
ЗАПИСЪТ items съдържа информация за артикулите, включени в дадено събитие. Повтаря се за всеки артикул.
Име на полето Тип данни Описание
items.item_id НИЗ Идентификаторът на артикула.
items.item_name НИЗ Името на артикула.
items.item_brand НИЗ Марката на артикула.
items.item_variant НИЗ Вариантът на артикула.
items.item_category НИЗ Категорията на артикула.
items.item_category2 НИЗ Подкатегорията на артикула.
items.item_category3 НИЗ Подкатегорията на артикула.
items.item_category4 НИЗ Подкатегорията на артикула.
items.item_category5 НИЗ Подкатегорията на артикула.
items.price_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Цената на артикула в щатски долари със стандартно обозначение за валутната единица.
items.price ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Цената на артикула в местната валута.
items.quantity ЦЯЛО ЧИСЛО Количество от артикула. Ако не е посочено, количеството се задава на 1.
items.item_revenue_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Приходите от този артикул, изчислени, като price_in_usd * количество. Попълва се само за събития, свързани с покупка, в щатски долари със стандартно обозначение за валутната единица.
items.item_revenue ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Приходите от този артикул, които се изчисляват като цена * количество. Попълва се само за събития, свързани с покупка, в местната валута със стандартно обозначение за валутната единица.
items.item_refund_in_usd ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Стойността на възстановяването на този артикул, изчислена като price_in_usd * количество. Попълва се само за събития с възстановяване на средства в щатски долари със стандартно обозначение за валутната единица.
items.item_refund ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Стойността на възстановяването на този артикул, изчислена като цена * количество. Попълва се само за събития с възстановяване на средства в местната валута със стандартно обозначение за валутната единица.
items.coupon НИЗ За този артикул е приложен код на талон.
items.affiliation НИЗ Партньорство за продукти, при което се посочва компания за доставки или физически съществуващи магазини.
items.location_id НИЗ Местоположението, свързано с артикула.
items.item_list_id НИЗ Идентификационният номер на списъка, в който артикулът е бил представен на потребителя.
item.item_list_name НИЗ Името на списъка, в който артикулът е бил представен на потребителя.
Items.item_list_index НИЗ Позицията на артикула в списък.
items.promotion_id НИЗ Идентификационният номер на промоцията за продукта.
items.promotion_name НИЗ Името на промоцията за продукта.
items.creative_name НИЗ Името на файл за създаване на реклама, използван в промоционално каре.
items.creative_slot НИЗ Името на рекламното каре на файла за създаване на реклама.

ЗАПИС item_params

ЗАПИСЪТ item_params съхранява дефинираните от Вас персонализирани параметри на артикулите. Обърнете внимание, че предварително зададените параметри на артикулите, като например item_id, item_name и др., не са включени тук, а вместо това се експортират като изрични полета.

Наборът от параметри, съхранявани в ЗАПИСА item_params, е уникален за всяко внедряване. За да научите повече за внедряванията на електронна търговия и масива items в Google Анализ 4, вижте Измерване на електронната търговия.

Име на полето Тип данни Описание
items.item_params.key НИЗ Името на параметъра на артикула.
items.item_params.value ЗАПИС Запис, който съдържа стойността на параметъра на артикула.
items.item_params.value.string_value НИЗ Ако параметърът на артикула е представен чрез низ, той се попълва в това поле.
items.item_params.value.int_value ЦЯЛО ЧИСЛО Ако параметърът на артикула е представен от цяло число, той се попълва в това поле.
items.item_params.value.double_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Ако параметърът на артикула е представен с двойна стойност, тя се попълва в това поле.
items.item_params.value.float_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Ако параметърът на артикула е представен от стойност с плаваща запетая, тя се попълва в това поле.

Редове

Данните за едно събитие могат да бъдат представени на един или няколко реда в зависимост от това дали съдържат повтарящи се ЗАПИСИ. Събитие page_view с няколко event_params например ще изглежда подобно на следната таблица. Първият ред съдържа името, датата, времевото клеймо на събитието и други данни, които не се повтарят. ЗАПИСЪТ event_params се повтаря за всеки параметър, свързан със събитието. Тези повтарящи се ЗАПИСИ се попълват директно на редовете, следващи първоначалния ред на събитието.

event_date event_timestamp event_name event_params.key event_params_value.string_value
20220222 1643673600483790 page_view page_location https://example.com
      page_title Начало
      среден referral
      източник google
      page_referrer https://www.google.com
      <parameters...> <values...>

 

В потребителския интерфейс на GA4 се показват следните данни за събития.

Съображения за актуализиране на SDK до Android 17.2.5 (или по-нова версия) и/или iOS 16.20.0 (или по-нова версия)

Ако сте използвали предишни версии на SDK и планирате да надстроите до Android 17.2.5 (или по-нова версия) и/или iOS 16.20.0 (или по-нова версия), трябва да вземете предвид следното:

  • За да използвате текущата схема на BigQuery Export, трябва да надстроите SDK до Android 17.2.5 (или по-нова версия) и/или iOS 16.20.0 (или по-нова версия).Когато използвате по-стари версии на SDK, експортираните данни ще отразяват старата схема.
  • След надстройването ще имате достъп до данните за елементите само в рамките на масива с повтарящи се елементи; данните за елементите вече няма да са налице в стандартните параметри за събития, както преди тези версии на SDK.
  • Тази промяна бе извършена, за да се поддържа анализ на няколко продукта.
  • В резултат може да се наложи да коригирате препратките си към данните за артикулите/продуктите.
Използвайте този скрипт, за да мигрирате наборите данни в BigQuery от старата схема за експортиране към новата
  1. Влезте в профила си на страницата с Cloud Platform Console >: Manager resources.
  2. Отворете проекта, чиито данни искате да мигрирате, и кликнете върху Activate Google Cloud Shell в горната част на страницата.
  3. Когато обвивката се отвори, копирайте скрипта по-долу във файл на име migration_script.sql:
    1. Изпълнете командата cat > migration_script.sql
    2. Копирайте и поставете дадения по-долу скрипт в обвивката.
    3. Натиснете Ctrl+D за запазване и излизане.
    Скрипт (migration_script.sql):
      SELECT
      @date AS event_date,
      event.timestamp_micros AS event_timestamp,
      event.previous_timestamp_micros AS event_previous_timestamp,
      event.name AS event_name,
      event.value_in_usd  AS event_value_in_usd,
       user_dim.bundle_info.bundle_sequence_id AS event_bundle_sequence_id,
      user_dim.bundle_info.server_timestamp_offset_micros as event_server_timestamp_offset,
      (
      SELECT
        ARRAY_AGG(STRUCT(event_param.key AS key,
            STRUCT(event_param.value.string_value AS string_value,
              event_param.value.int_value AS int_value,
              event_param.value.double_value AS double_value, 
              event_param.value.float_value AS float_value) AS value))
      FROM
        UNNEST(event.params) AS event_param) AS event_params,
      user_dim.first_open_timestamp_micros AS user_first_touch_timestamp,
      user_dim.user_id AS user_id,
      user_dim.app_info.app_instance_id AS user_pseudo_id,
      "" AS stream_id,
      user_dim.app_info.app_platform AS platform,
      STRUCT( user_dim.ltv_info.revenue AS revenue,
        user_dim.ltv_info.currency AS currency ) AS user_ltv,
      STRUCT( user_dim.traffic_source.user_acquired_campaign AS name,
          user_dim.traffic_source.user_acquired_medium AS medium,
          user_dim.traffic_source.user_acquired_source AS source ) AS traffic_source,
      STRUCT( user_dim.geo_info.continent AS continent,
        user_dim.geo_info.country AS country,
        user_dim.geo_info.region AS region,
        user_dim.geo_info.city AS city ) AS geo,
      STRUCT( user_dim.device_info.device_category AS category,
        user_dim.device_info.mobile_brand_name,
        user_dim.device_info.mobile_model_name,
        user_dim.device_info.mobile_marketing_name,
        user_dim.device_info.device_model AS mobile_os_hardware_model,
        @platform AS operating_system,
        user_dim.device_info.platform_version AS operating_system_version,
        user_dim.device_info.device_id AS vendor_id,
        user_dim.device_info.resettable_device_id AS advertising_id,
        user_dim.device_info.user_default_language AS language,
        user_dim.device_info.device_time_zone_offset_seconds AS time_zone_offset_seconds,
        IF(user_dim.device_info.limited_ad_tracking, "Yes", "No") AS is_limited_ad_tracking ) AS device,
      STRUCT( user_dim.app_info.app_id AS id,
        @firebase_app_id  AS firebase_app_id,
        user_dim.app_info.app_version AS version,
        user_dim.app_info.app_store AS install_source ) AS app_info,
      (
      SELECT
        ARRAY_AGG(STRUCT(user_property.key AS key,
            STRUCT(user_property.value.value.string_value AS string_value,
              user_property.value.value.int_value AS int_value,
              user_property.value.value.double_value AS double_value,
              user_property.value.value.float_value AS float_value,
              user_property.value.set_timestamp_usec AS set_timestamp_micros ) AS value))
      FROM
        UNNEST(user_dim.user_properties) AS user_property) AS user_properties
    FROM
      `SCRIPT_GENERATED_TABLE_NAME`,
      UNNEST(event_dim) AS event
      
  4. Отворете нов екземпляр на обвивката и копирайте дадения по-долу скрипт на bash във файл на име migration.sh:
    1. Изпълнете командата cat > migration.sh
    2. Копирайте и поставете дадения по-долу скрипт в обвивката.
    3. Натиснете Ctrl+D за запазване и излизане.
    Променете скрипта, така че да включва валидните за Вас идентификационен номер на собственост в Анализ, идентификатор на проект в BigQuery, идентификатор на приложение във Firebase, име на набора от данни в BigQuery, както и началната и крайната дата за желаните данни.
    Скрипт (migration.sh):
    # Идентификационен номер на собствеността в Анализ за проекта. Можете да го намерите в Настройки на Анализ във Firebase.
    PROPERTY_ID=Идентификационният номер на собствеността Ви в Анализ
    
    # Проект в BigQuery за експортиране.
    BQ_PROJECT_ID=„Идентификационният номер на проекта Ви в BigQuery“ (напр. „firebase-public-project“)
    
    # Идентификационен номер на приложението във Firebase за приложението.
    FIREBASE_APP_ID=„Идентификационният номер на приложението Ви във Firebase“ (напр. „1:300830567303:ios:09b1ab1d3ca29bda“)
    
    # Набор от данни, от който да се импортира.
    BQ_DATASET=„Името на набора от данни в BigQuery, от който искате да импортирате“ (напр. „com_firebase_demo_IOS“)
    
    # Платформа
    PLATFORM=„Платформата на приложението. ANDROID или IOS“
    
    # Период от време, за който искате да пуснете мигриране, включително [START_DATE,END_DATE].
    START_DATE=20180324
    END_DATE=20180327
    
    # Не променяйте скрипта по-долу, освен ако не знаете какво правите :)
    startdate=$(date -d"$START_DATE"  +%Y%m%d) || exit -1
    enddate=$(date -d"$END_DATE"  +%Y%m%d) || exit -1
    
    # Повторете за всички дати.
    DATE="$startdate"
    while [ "$DATE" -le "$enddate" ]; do
    
            # Таблица в BigQuery, съставена от горепосочените параметри.
            BQ_TABLE="$BQ_PROJECT_ID.$BQ_DATASET.app_events_$DATE"
    
            echo "Migrating $BQ_TABLE"
    
            cat migration_script.sql | sed -e "s/SCRIPT_GENERATED_TABLE_NAME/$BQ_TABLE/g" | bq query \
            --debug_mode \
            --allow_large_results \
            --noflatten_results \
            --use_legacy_sql=False \
            --destination_table analytics_$PROPERTY_ID.events_$DATE \
            --batch \
            --append_table \
            --parameter=firebase_app_id::$FIREBASE_APP_ID \
            --parameter=date::$DATE \
            --parameter=platform::$PLATFORM \
            --project_id=$BQ_PROJECT_ID
    
    
            temp=$(date -I -d "$DATE + 1 day")
            DATE=$(date -d "$temp" +%Y%m%d)
    
    done
    exit
    
    # КРАЙ НА СКРИПТА
    
    
  5. Отворете нов екземпляр на обвивката и изпълнете командата bash migration.sh
Стара схема за експортиране

user_dim

Име на полето Тип данни Описание
user_dim ЗАПИС Запис с величините на потребителя.
user_dim.user_id НИЗ User ID, зададен чрез API на setUserId.
user_dim.first_open_timestamp_micros ЦЯЛО ЧИСЛО Часът (в микросекунди), в който потребителят е отворил приложението за първи път.
user_dim.user_properties ЗАПИС Повторен запис с характеристиките на потребителя, зададени чрез API setUserProperty.
user_dim.user_properties.key НИЗ Името на характеристиката на потребителя.
user_dim.user_properties.value ЗАПИС Запис с информация за характеристиката на потребителя.
user_dim.user_properties.value.value ЗАПИС Запис със стойността на характеристиката на потребителя.
user_dim.user_properties.value.value.string_value НИЗ Стойността на характеристиката на потребителя под формата на низ.
user_dim.user_properties.value.value.int_value ЦЯЛО ЧИСЛО Стойността на характеристиката на потребителя под формата на цяло число.
user_dim.user_properties.value.value.double_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Стойността на характеристиката на потребителя под формата на число с плаваща запетая с двойна точност.
user_dim.user_properties.value.set_timestamp_usec ЦЯЛО ЧИСЛО Часът (в микросекунди), в който характеристиката на потребителя е зададена за последен път.
user_dim.user_properties.value.index ЦЯЛО ЧИСЛО Индексът (0 – 24) на характеристиката на потребителя.
user_dim.device_info ЗАПИС Запис с информация за устройството.
user_dim.device_info.device_category НИЗ Категорията на устройството (настолен компютър, таблет или мобилно устройство).
user_dim.device_info.mobile_brand_name НИЗ Името на марката на устройството.
user_dim.device_info.mobile_model_name НИЗ Името на модела на устройството.
user_dim.device_info.mobile_marketing_name НИЗ Маркетинговото име на устройството.
user_dim.device_info.device_model НИЗ Моделът на устройството.
user_dim.device_info.platform_version НИЗ Версията на операционната система.
user_dim.device_info.device_id НИЗ Идентификаторът IDFV за доставчици (налице само при липса на идентификатор IDFA за рекламодатели).
user_dim.device_info.resettable_device_id НИЗ Идентификатор за рекламиране/IDFA.
user_dim.device_info.user_default_language НИЗ Езикът на операционната система.
user_dim.device_info.device_time_zone_offset_seconds ЦЯЛО ЧИСЛО Часовата разлика с GMT в секунди.
user_dim.device_info.limited_ad_tracking БУЛЕВА СТОЙНОСТ Настройката на устройството за ограничаване на проследяването на рекламите.
user_dim.geo_info ЗАПИС Запис с географската информация на потребителя.
user_dim.geo_info.continent НИЗ Континентът, откъдето са отчетени събитията, въз основа на IP адреса.
user_dim.geo_info.country НИЗ Държавата, откъдето са отчетени събитията, въз основа на IP адреса.
user_dim.geo_info.region НИЗ Регионът, откъдето са отчетени събитията, въз основа на IP адреса.
user_dim.geo_info.city НИЗ Градът, откъдето са отчетени събитията, въз основа на IP адреса.
user_dim.app_info ЗАПИС Запис с информация за приложението.
user_dim.app_info.app_version НИЗ versionName за приложението (Android) или кратката версия на пакета.
user_dim.app_info.app_instance_id НИЗ Уникалният идентификатор за този екземпляр на приложението.
user_dim.app_info.app_store НИЗ Магазинът, чрез който е инсталирано това приложение.
user_dim.app_info.app_platform НИЗ Платформата, на която се изпълнява това приложение.
user_dim.traffic_source ЗАПИС Името на източника на трафик, използван за придобиване на потребителя. Това поле не се попълва в таблици в рамките на деня.
user_dim.traffic_source.user_acquired_campaign НИЗ Името на маркетинговата кампания, чрез която е придобит потребителят. Това поле не се попълва в таблици в рамките на деня.
user_dim.traffic_source.user_acquired_medium НИЗ Името на канала (платено търсене, органично търсене, имейл и т.н.), чрез който е придобит потребителят. Това поле не се попълва в таблици в рамките на деня.
user_dim.traffic_source.user_acquired_source НИЗ Името на мрежата, чрез която е придобит потребителят. Това поле не се попълва в таблици в рамките на деня.
user_dim.bundle_info ЗАПИС Запис с информация за пакета, в който са качени тези събития.
user_dim.bundle_info.bundle_sequence_id ЦЯЛО ЧИСЛО Поредният идентификационен номер на пакета, в който са качени тези събития.
user_dim.ltv_info ЗАПИС Запис с информация за стойността за целия период за този потребител. Това поле не се попълва в таблици в рамките на деня.
user_dim.ltv_info.revenue ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Стойността за целия период (приходи) за този потребител. Това поле не се попълва в таблици в рамките на деня.
user_dim.ltv_info.currency НИЗ Стойността за целия период (валута) за този потребител. Това поле не се попълва в таблици в рамките на деня.
 

event_dim

Име на полето Тип данни Описание
event_dim ЗАПИС Повторен запис с информация относно събитията в този пакет.
event_dim.date НИЗ Датата, на която е регистрирано това събитие (формат YYYYMMDD в регистрираната часова зона на приложението Ви.)
event_dim.name НИЗ Името на това събитие.
event_dim.params ЗАПИС Повторен запис с параметрите за това събитие.
event_dim.params.key НИЗ Ключът на параметъра на събитието.
event_dim.params.value ЗАПИС Запис със стойността на параметъра на събитието.
event_dim.params.value.string_value НИЗ Стойността на параметъра на събитието под формата на низ.
event_dim.params.value.int_value ЦЯЛО ЧИСЛО Стойността на параметъра на събитието под формата на цяло число.
event_dim.params.value.double_value ЧИСЛО С ПЛАВАЩА ЗАПЕТАЯ Двойната стойност на параметъра на събитието.
event_dim.timestamp_micros ЦЯЛО ЧИСЛО Часът (в микросекунди, Координирано универсално време), в който това събитие е регистрирано при клиента.
event_dim.previous_timestamp_micros ЦЯЛО ЧИСЛО Часът (в микросекунди, Координирано универсално време), в който това събитие по-рано е регистрирано при клиента.

Това полезно ли бе?

Как можем да направим подобрения?
Търсене
Изчистване на търсенето
Затваряне на търсенето
Приложения на Google
Главно меню
4299924018570037515
true
Търсене в Помощния център
true
true
true
true
true
69256
false
false