solovyov.net

Колись у сиву давнину (навесні 2017, щоб бути точним) написав нам OWOX з цікавою пропозицією: додайте наш скрипт на сайт і ми перекинемо всі ваші події у веб-аналітиці в BigQuery.

BigQuery - це такий Data Warehouse від Гугла, який вміє ворочати ну дуже великими обсягами даних. Тобто суть пропозиції у тому, що ми зможемо аналізувати те, що відбувається, не так, як задумано у Google Analytics, а як завгодно. Ну дуже цікаво, погодьтеся? Єдина річ — що вони за те хотіли доволі багато грошей. Не пам'ятаю суму, але це точно навіть не тисячі доларів на рік.

Скажу вам, що жаба для мене як мотиватор схоже непогано працює. У сенсі ну скільки там тієї роботи — записати дані у BigQuery? Зробив на фронті, щоб події GA копіювалися нам в спеціальний апі, той скидає їх у кафку, а потім з кафки перекидається у BigQuery. Все супер, і потім ми з того виростили свою аналітику з ClickHouse'ом — до речі, по тій самій причині, BigQuery недешевий, коли даси йому складне запитання. :))

Але був один нюанс. Для конекту до бігквері я використав гугловську джавну лібу, і щоб усе запрацювало, витратив довбаний тиждень. Бо апі в неї — гівно, помилки — гівно, підхід до авторизації — гівно, і взагалі. А як вишенька на торті — при оновленні вона ламалася. Десь всередині, то NPE якийсь, то ще щось. Не статична типізація, а хрін зна що.

Ну типу інжиніринг від Гугла, що ви взагалі очікуєте. 🤕

Так і була в нас кілька років забита у залежностях стара версія, від лютого 19-го року. А вчора настрій був, сів, вичистив з коду останнього користувача і прибив лібу з залежностей. Кайф. ☺️

А по мотивах тих страждань я написав власну лібу, яка просто використовує HTTP і тому не ламається. Не дивлячісь на назву, ми її для бігквері вже не юзаємо, а як інтерфейс до гугла - аж бігом. :)

(@ tg)