У меня есть таблица (в Google BigQuery), показывающая URL-адрес, который посещают люди. Люди представлены 10-символьным идентификатором.
Если пользователь посетил URL-адрес один раз, в таблице будет 1 строка. Есть около 90 миллионов уникальных людей (id) и около 400 тысяч уникальных доменов.
Моя цель — получить для каждого домена количество уникальных людей, посетивших его. Результат будет показан в интерфейсе, где пользователь сможет выбрать домен или нет, а также увидеть общее количество выбранных людей (то есть сумму уникальных идентификаторов, посетивших выбранные им домены).
Дело в том, что некоторые люди могли посещать несколько доменов. Таким образом, общая сумма будет неправильной. У меня есть версия, в которой я просто получаю количество уникальных идентификаторов, посетивших домен для каждого домена, а затем в интерфейсе я просто добавляю к общему количеству, когда выбран веб-сайт, и удаляю из общего количества, когда домен не выбран. Конечно, это не решает проблему двойного подсчета идентификаторов.
Большое количество доменов не позволяет просто вычислить каждое возможное пересечение. Также я хочу запросить BigQuery только один раз из соображений скорости и стоимости. Я чувствую, что нет реального решения без использования BigQuery после каждого выбора, может ли кто-нибудь сказать мне, если я что-то пропустил?
Спасибо