Анализ журналов Gmail в BigQuery - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь определить общее количество сообщений, отправленных с моей учетной записи G Suite. Я передаю свои журналы в BigQuery.

Сообщения могут появляться в журналах несколько раз, поэтому я могу сосчитать отдельные заголовки сообщений.

SELECT 
count (DISTINCT message_info.rfc2822_message_id) as MessageIDCount
FROM `my data set`

Это будет считать общее количество входящих и исходящих сообщений, поэтому, если я хочу только исходящие, я могу добавить WHEN message_info.message_set.type = 8.

Но пределы отправки для gmail https://support.google.com/a/answer/2956491#sendinglimitsforrelay

Пределы отправки - это не только общее количество отправленных сообщений, которые он рассчитывает в зависимости от количества получателей.

Я заинтересован в выполнении запроса, который предоставит общее количество отправленных сообщений, где, если я отправлю электронное письмо двум людям, оно будет считаться как 2, Если я отправлю 10, это будет считаться как 10 и т. Д.

По сути, я хочу определить, насколько я был близок к достижению лимитов отправки на данный день.

Есть предложения?

1 Ответ

0 голосов
/ 16 января 2019

Ниже для BigQuery Standard SQL

#standardSQL
SELECT 
  DATE(TIMESTAMP_MICROS(event_info.timestamp_usec)) day,
  COUNT(address) AS total_recipients  
FROM `project.dataset.gmail_log`, 
UNNEST(message_info.destination) AS destination
WHERE EXISTS (SELECT 1 FROM UNNEST(message_info.message_set) WHERE type = 8)
GROUP BY day  

будет возвращать ежедневное общее количество получателей в формате ниже

Row day         total_recipients     
1   2019-01-10  100  
2   2019-01-11  100  
3   2019-01-12  100  
4   2019-01-13  100  
5   2019-01-14  100    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...