SlideShare a Scribd company logo
Analyze Your User's Activities Using
BigQuery and Analytics Data
https://support.google.com/analytics/answer/9167112?hl=en
https://support.google.com/datastudio/answer/7259176
event_a event_b
event_a event_b event_a event_b
event_a event_b
Should I Use BigQuery?
what?
when? why?
who? where?
how?
Demo
What is BigQuery?
what?
What is BigQuery?
“BigQuery is an enterprise data warehouse that solves this
problem by enabling super-fast SQL queries using the
processing power of Google's infrastructure.”
https://cloud.google.com/bigquery/what-is-bigquery
https://cloud.google.com/blog/products/gcp/anatomy-of-a-bigquery-query
Let’s run a typical SQL query:
Storing Big Data
What is BigQuery?
One of the GCP Products
Data Insight Action
What is BigQuery?
Can be integrated with :
or
Something Else
When to use BigQuery?
what?
when?
When to use BigQuery?
https://www.toptal.com/database/google-bigquery-tutorial
Testing Specifications :
● Postgre Server VS BigQuery
● The table contains more than 6.9 million rows
● Different server hardware & infrastructures
● Try 6 different query untuk reporting
○ #1 #2 dan #6 are quite easy and straightforward queries
○ #3 #4 dan #5 were complex queries
● With the same queries
When to use BigQuery?
Conclusions :
● When the number of records is large (millions / billions rows)
● When you need scalable hardware / infrastructure
● When you need super-fast query execution process
● When you run a complex query
● When you have queries that run more than 5 seconds in a relational database
https://www.toptal.com/database/google-bigquery-tutorial
Why use BigQuery?
what?
when? why?
Why use BigQuery?
Do you still want to use this?
Why use BigQuery?
Do you still want to manually scaling Hardware & Infrastructure?
Who uses BigQuery?
what?
when? why?
who?
Who uses BigQuery?
https://stackshare.io/google-bigquery
Anyone can use BigQuery!
● Data Scientist
● Data Engineer
● Data Analyst
● Backend Developer
● ML / AI Enthusiast
Where can I use BigQuery?
what?
when? why?
who? where?
Where can I use BigQuery?
Cloud Console (https://console.cloud.google.com/bigquery)
Where can I use BigQuery?
Classic Web UI (https://bigquery.cloud.google.com)
Where can I use BigQuery?
Command Line Tool (CLI)
Where can I use BigQuery?
BigQuery REST API (https://cloud.google.com/bigquery/docs/reference/rest)
Using a variety of client libraries such as Java, .NET, or Python
Where can I use BigQuery?
Aqua Data Studio (https://www.aquafold.com/aquadatastudio)
Where can I use BigQuery?
DBeaver or Other Third-Party Client Tools
Where can I use BigQuery?
DBeaver or Other Third-Party Client Tools
How to use BigQuery?
what?
when? why?
who? where?
how?
Demo
How to use BigQuery?
https://medium.com/firebase-developers/using-the-unnest-function-in-bigquery-to-analyze-event-parameters-in-analytics-fb828f890b42
How to use BigQuery?
https://medium.com/firebase-developers/using-the-unnest-function-in-bigquery-to-analyze-event-parameters-in-analytics-fb828f890b42
How to know the user’s activities?
The steps are :
1. Finding the start of every session
2. Flagging session per actual timeline based on threshold for defining 'new session'
3. Mark sessions that considered to be ID for that sessions
(increment if new session for that user has detected)
Window Functions
Window functions create a new column based
on calculations performed on a subset or
“window” of the data
https://dataschool.com/how-to-teach-people-sql/how-window-functions-work/
Window Functions
Window Functions
USING ORDER BY
Window Functions
USING PARTITION BY
Window Functions
SELECT '(Optional: The data you want to select)',
[aggregate function]'(The column to perform the aggregate function on)'
OVER(Optional: PARTITION BY and/or ORDER BY)
AS '(Descriptive name)' FROM '(corresponding table)';
SYNTAX
Window Functions
LAG
https://mode.com/blog/finding-user-sessions-sql
How to know the user’s activities?
The steps are :
1. Finding the start of every session
2. Flagging session per actual timeline based on threshold for defining 'new session'
3. Mark sessions that considered to be ID for that sessions
(increment if new session for that user has detected)
How to know the user’s activities?
The steps are :
1. Finding the start of every session
2. Flagging session per actual timeline based on threshold for defining 'new session'
3. Mark sessions that considered to be ID for that sessions
(increment if new session for that user has detected)
How to know the user’s activities?
The steps are :
1. Finding the start of every session
2. Flagging session per actual timeline based on threshold for defining 'new session'
3. Mark sessions that considered to be ID for that sessions
(increment if new session for that user has detected)
Thank You
Tinggal satu hari lagi! #JuaraGCP
goo.gle/JuaraGCP

More Related Content

PDF
Java2day 2013 : Modern workflows for javascript integration
PDF
Intro to sbt-web
PDF
Web Analytics
PPTX
Serverless and IoT
PDF
ASP.NET Internals
PDF
Making App Developers More Productive
PPTX
intro to Angular js
PDF
Garelic: Google Analytics as App Performance monitoring
Java2day 2013 : Modern workflows for javascript integration
Intro to sbt-web
Web Analytics
Serverless and IoT
ASP.NET Internals
Making App Developers More Productive
intro to Angular js
Garelic: Google Analytics as App Performance monitoring

What's hot (17)

PPTX
React - Redux applications & Event Sourcing
PPTX
Isomorphic web apps with react
PPTX
Eclipse VIATRA Overview 2017
PPTX
Easier smart home development with simulators and rule engines
PDF
Command Query Responsibility Segregation and Event Sourcing
PDF
The Hitchhikers Guide To Html5 Offline Strategies (+firefoxOS)
PDF
The Art of AngularJS - DeRailed 2014
PDF
The Art of Angular in 2016 - Devoxx France 2016
PDF
Droidcon Paris 2015
PDF
Who's afraid of front end databases
PPTX
Smarter internet of things with stream and event processing virtual io_t_meet...
PDF
React vs-angular-mobile
PPTX
Using the Google Cloud -for Developers- part four
PDF
Redux data flow with angular
PDF
Web view
PDF
Introduction to ReactJS
PDF
Redux data flow with angular
React - Redux applications & Event Sourcing
Isomorphic web apps with react
Eclipse VIATRA Overview 2017
Easier smart home development with simulators and rule engines
Command Query Responsibility Segregation and Event Sourcing
The Hitchhikers Guide To Html5 Offline Strategies (+firefoxOS)
The Art of AngularJS - DeRailed 2014
The Art of Angular in 2016 - Devoxx France 2016
Droidcon Paris 2015
Who's afraid of front end databases
Smarter internet of things with stream and event processing virtual io_t_meet...
React vs-angular-mobile
Using the Google Cloud -for Developers- part four
Redux data flow with angular
Web view
Introduction to ReactJS
Redux data flow with angular
Ad

Similar to Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Data Analytics (20)

PPTX
SharePoint Saturday Atlanta 2015
PDF
Being Epic: Best Practices for Android Development
PPTX
Semantic logging with etw and slab from DCC 10/16
PDF
Designing and Implementing a Multiuser Apps Platform
PDF
Using ClickHouse for Experimentation
PDF
Big Query Basics
PPTX
Google Cloud Platform
PDF
Complex realtime event analytics using BigQuery @Crunch Warmup
PPTX
NHibernate
PPTX
Lviv .Net User Group. NHibernate
PPTX
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
PPTX
Working Software Over Comprehensive Documentation
PDF
Image archive, analysis & report generation with Google Cloud
PDF
5 Ways to Make Use of Your Google Analytics
KEY
PyCon AU 2012 - Debugging Live Python Web Applications
PPTX
MongoDB.local Seattle 2019: MongoDB Stitch Tutorial
PDF
Easy path to machine learning (Spring 2021)
PDF
Build an AI/ML-driven image archive processing workflow: Image archive, analy...
PDF
Exploring Google (Cloud) APIs with Python & JavaScript
PPTX
Altitude San Francisco 2018: Logging at the Edge
SharePoint Saturday Atlanta 2015
Being Epic: Best Practices for Android Development
Semantic logging with etw and slab from DCC 10/16
Designing and Implementing a Multiuser Apps Platform
Using ClickHouse for Experimentation
Big Query Basics
Google Cloud Platform
Complex realtime event analytics using BigQuery @Crunch Warmup
NHibernate
Lviv .Net User Group. NHibernate
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
Working Software Over Comprehensive Documentation
Image archive, analysis & report generation with Google Cloud
5 Ways to Make Use of Your Google Analytics
PyCon AU 2012 - Debugging Live Python Web Applications
MongoDB.local Seattle 2019: MongoDB Stitch Tutorial
Easy path to machine learning (Spring 2021)
Build an AI/ML-driven image archive processing workflow: Image archive, analy...
Exploring Google (Cloud) APIs with Python & JavaScript
Altitude San Francisco 2018: Logging at the Edge
Ad

More from GITS Indonesia (10)

PDF
GITS Webinar: How to Build UI/UX Portfolio that Stand Out
PDF
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
PDF
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
PDF
GITS Class #21 How to Build Your Dream Team to Achieve the Target
PDF
GITS Class #20: Building A Fast and Responsive UI in React Native
PDF
GITS Class #19: Build Large Scale Vue.js Apps with Vuex
PDF
GITS Class #17: Coding Multiple Apps with Flutter
PDF
GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...
PDF
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
PDF
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...
GITS Webinar: How to Build UI/UX Portfolio that Stand Out
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
GITS Class #21 How to Build Your Dream Team to Achieve the Target
GITS Class #20: Building A Fast and Responsive UI in React Native
GITS Class #19: Build Large Scale Vue.js Apps with Vuex
GITS Class #17: Coding Multiple Apps with Flutter
GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...

Recently uploaded (20)

PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Programs and apps: productivity, graphics, security and other tools
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
KodekX | Application Modernization Development
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Approach and Philosophy of On baking technology
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Big Data Technologies - Introduction.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
Programs and apps: productivity, graphics, security and other tools
“AI and Expert System Decision Support & Business Intelligence Systems”
KodekX | Application Modernization Development
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
sap open course for s4hana steps from ECC to s4
Approach and Philosophy of On baking technology
Empathic Computing: Creating Shared Understanding
Big Data Technologies - Introduction.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Reach Out and Touch Someone: Haptics and Empathic Computing
Review of recent advances in non-invasive hemoglobin estimation
Diabetes mellitus diagnosis method based random forest with bat algorithm
The AUB Centre for AI in Media Proposal.docx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...

Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Data Analytics

  • 1. Analyze Your User's Activities Using BigQuery and Analytics Data
  • 4. event_a event_b event_a event_b event_a event_b event_a event_b
  • 5. Should I Use BigQuery? what? when? why? who? where? how? Demo
  • 7. What is BigQuery? “BigQuery is an enterprise data warehouse that solves this problem by enabling super-fast SQL queries using the processing power of Google's infrastructure.” https://cloud.google.com/bigquery/what-is-bigquery https://cloud.google.com/blog/products/gcp/anatomy-of-a-bigquery-query Let’s run a typical SQL query: Storing Big Data
  • 8. What is BigQuery? One of the GCP Products Data Insight Action
  • 9. What is BigQuery? Can be integrated with : or Something Else
  • 10. When to use BigQuery? what? when?
  • 11. When to use BigQuery? https://www.toptal.com/database/google-bigquery-tutorial Testing Specifications : ● Postgre Server VS BigQuery ● The table contains more than 6.9 million rows ● Different server hardware & infrastructures ● Try 6 different query untuk reporting ○ #1 #2 dan #6 are quite easy and straightforward queries ○ #3 #4 dan #5 were complex queries ● With the same queries
  • 12. When to use BigQuery? Conclusions : ● When the number of records is large (millions / billions rows) ● When you need scalable hardware / infrastructure ● When you need super-fast query execution process ● When you run a complex query ● When you have queries that run more than 5 seconds in a relational database https://www.toptal.com/database/google-bigquery-tutorial
  • 14. Why use BigQuery? Do you still want to use this?
  • 15. Why use BigQuery? Do you still want to manually scaling Hardware & Infrastructure?
  • 17. Who uses BigQuery? https://stackshare.io/google-bigquery Anyone can use BigQuery! ● Data Scientist ● Data Engineer ● Data Analyst ● Backend Developer ● ML / AI Enthusiast
  • 18. Where can I use BigQuery? what? when? why? who? where?
  • 19. Where can I use BigQuery? Cloud Console (https://console.cloud.google.com/bigquery)
  • 20. Where can I use BigQuery? Classic Web UI (https://bigquery.cloud.google.com)
  • 21. Where can I use BigQuery? Command Line Tool (CLI)
  • 22. Where can I use BigQuery? BigQuery REST API (https://cloud.google.com/bigquery/docs/reference/rest) Using a variety of client libraries such as Java, .NET, or Python
  • 23. Where can I use BigQuery? Aqua Data Studio (https://www.aquafold.com/aquadatastudio)
  • 24. Where can I use BigQuery? DBeaver or Other Third-Party Client Tools
  • 25. Where can I use BigQuery? DBeaver or Other Third-Party Client Tools
  • 26. How to use BigQuery? what? when? why? who? where? how? Demo
  • 27. How to use BigQuery? https://medium.com/firebase-developers/using-the-unnest-function-in-bigquery-to-analyze-event-parameters-in-analytics-fb828f890b42
  • 28. How to use BigQuery? https://medium.com/firebase-developers/using-the-unnest-function-in-bigquery-to-analyze-event-parameters-in-analytics-fb828f890b42
  • 29. How to know the user’s activities? The steps are : 1. Finding the start of every session 2. Flagging session per actual timeline based on threshold for defining 'new session' 3. Mark sessions that considered to be ID for that sessions (increment if new session for that user has detected)
  • 30. Window Functions Window functions create a new column based on calculations performed on a subset or “window” of the data https://dataschool.com/how-to-teach-people-sql/how-window-functions-work/
  • 34. Window Functions SELECT '(Optional: The data you want to select)', [aggregate function]'(The column to perform the aggregate function on)' OVER(Optional: PARTITION BY and/or ORDER BY) AS '(Descriptive name)' FROM '(corresponding table)'; SYNTAX
  • 36. How to know the user’s activities? The steps are : 1. Finding the start of every session 2. Flagging session per actual timeline based on threshold for defining 'new session' 3. Mark sessions that considered to be ID for that sessions (increment if new session for that user has detected)
  • 37. How to know the user’s activities? The steps are : 1. Finding the start of every session 2. Flagging session per actual timeline based on threshold for defining 'new session' 3. Mark sessions that considered to be ID for that sessions (increment if new session for that user has detected)
  • 38. How to know the user’s activities? The steps are : 1. Finding the start of every session 2. Flagging session per actual timeline based on threshold for defining 'new session' 3. Mark sessions that considered to be ID for that sessions (increment if new session for that user has detected)
  • 40. Tinggal satu hari lagi! #JuaraGCP goo.gle/JuaraGCP