Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

Doubleclick campaign manager is a web-based ad management system for advertisers and agencies. It helps you manage your digital campaigns across websites and mobile. The plugins will allow users to perform ETL over reporting data for their display ad campaigns.

Use case(s)

  • Read and replicate all of the Doubleclick Campaign Manager report data from your Google account. This allows you to merge ad data with other data sources such as customer information enrich it.

User Storie(s)

  • As a data pipeline developer, I should be able to pull data from Doubleclick Campaign Manager, so that I can use it in my analytics pipelines with other data sources.
  • As a data pipeline developer, I should be able to specify parameters for generating a report, and use the report data as a source in my pipeline
  • As a data pipeline developer, I should not be exposed to the details such as where the report is stored, etc. It should be automatically managed by CDAP. I should only see the data from the report as output from my source.
  • As a data pipeline developer, once I've specified parameters for Doubleclick Campaign Manager data, Data Fusion should handle and populate schema automatically, so I do not need any manual work.
  • As a data pipeline developer, I should be able to pick the type of report to generate. It should be one of Instant, Standard, Floodlight, Path to Conversion (P2C), Reach, Cross-Dimension Reach or GRP. It should default to Standard.
  • As a data pipeline developer, I should be able to specify the time range to pull the DCM data for. It should default to the last month's data. The possible values should be "LAST_14_DAYS", "LAST_24_MONTHS", "LAST_30_DAYS", "LAST_365_DAYS", "LAST_60_DAYS", "LAST_7_DAYS", "LAST_90_DAYS", "MONTH_TO_DATE", "PREVIOUS_MONTH", "PREVIOUS_QUARTER", "PREVIOUS_WEEK", "PREVIOUS_YEAR", "QUARTER_TO_DATE", "TODAY", "WEEK_TO_DATE", "YEAR_TO_DATE", "YESTERDAY".
  • As a data pipeline developer, I should be able to specify dimensions to be included in the DCM data. I should be able to select the dimensions based on the chosen report type.
  • As a data pipeline developer, I should be able to specify the metrics to be included in the DCM data. I should be able to select the metrics depending on the chosen report type. Full list here

Plugin Type

  •  Batch Source
  •  Batch Sink 
  •  Real-time Source
  •  Real-time Sink
  •  Action
  •  Post-Run Action
  •  Aggregate
  •  Join
  •  Spark Model
  •  Spark Compute

Configurables

This section defines properties that are configurable for this plugin. 

User Facing NameTypeDescriptionConstraints
App IDstringApplication ID
Access tokenstringAccess token
Report typeSelectOne of  Instant, Standard, Floodlight, Path to Conversion (P2C), Reach, Cross-Dimension Reach or GRP. Defaults to Standard
Date RangeSelectOne of "Last 14 days", "Last 24 months", "Last 30 days", "Last 365 days", "Last 60 days", "Last 7 days", "Last 90 days", "Month to data", "Previous Month", "Previous quarter", "Previous week", "Previous year", "Quarter to date", "Today", "Week to date", "Year to date", "Yesterday". Defaults to "Last 30 days"
DimensionsSelectA list of dimensions based on the report type. Defaults to all. Full list here
MetricsSelectA list of metrics based on the report type. Defaults to all. Full list hereIntermediate storage locationSelectGCS | S3 | HDFS | Azure
Advanced propertiesTextA set of advanced properties to include in the report criteria, based on the selected report type. Full list is here

Design / Implementation Tips

  • It seems like the flow for this plugin will be:
    1. Once the pipeline starts, request to create a report - https://developers.google.com/doubleclick-advertisers/v3.2/reports/insert
    2. Once the report is created, make an async request to run the report - https://developers.google.com/doubleclick-advertisers/v3.2/reports/run
    3. Keep polling for the report to be generated, then download it using https://developers.google.com/doubleclick-advertisers/guides/download_reports
    4. Once downloaded, read the CSV report and convert it into StructuredRecords for parallel execution.

Design

Approach(s)

Properties

Security

Limitation(s)

Future Work

  • Some future work – HYDRATOR-99999
  • Another future work – HYDRATOR-99999

Test Case(s)

  • Test case #1
  • Test case #2

Sample Pipeline

Please attach one or more sample pipeline(s) and associated data. 

Pipeline #1

Pipeline #2

References

https://developers.google.com/doubleclick-advertisers/getting_started


Table of Contents

Table of Contents
stylecircle

Checklist

  •  User stories documented 
  •  User stories reviewed 
  •  Design documented 
  •  Design reviewed 
  •  Feature merged 
  •  Examples and guides 
  •  Integration tests 
  •  Documentation for feature 
  •  Short video demonstrating the feature