Page MenuHomePhabricator

Connect Trino to banner data (Kafka topic)
Open, MediumPublic

Description

This is a replacement for the existing kafka->librdkafka/kafkatee->log_file->django_banner_stats->pgehres-database pipeline.

Current kafka topic "webrequest_text is consumed and filtered into two buckets:

  • landingpages - filtered for hostname "donate.wikimedia.org"
  • beaconImpressions - filtered for string "beacon/impression" and sampled 1:10

There is/was an alternate kafka topic that FR no longer consumes that is based on eventlogging. This approach does not require filtering/sampling on the consumer side IIRC.

We will need to decide which to consume, and each approach is a compromise. The first (webrequest_text) may lose data during high traffic because of network limitations. The eventlogging based approach may undercount due to client side browser behavior. History and technical discussion of the different approaches can be found here T236835: FRUEC: Debug minor discrepancy in landing page data between old and new pipelines and more broadly here T183978: [Epic] Fundraising kafkatee changes.

Related: T253050: Bring Banner History data into Fundraising infrastructure

Event Timeline

Jgreen renamed this task from [Trino] Connect to banner data (Kafka topic) to [Trino/MinIO] Connect to banner data (Kafka topic).Nov 5 2024, 10:25 PM
Jgreen updated the task description. (Show Details)
IAckerman-WMF renamed this task from [Trino/MinIO] Connect to banner data (Kafka topic) to Connect Trino to banner data (Kafka topic).Apr 15 2025, 1:02 PM

@IAckerman-WMF do we want to compare the output of the two pipelines in the description? I don't know if there are still discrepancies between the two. On the other hand we might want to continue using the webrequest_text since we're more familiar with it. lmk what you think!

@Ottomata is the eventlogging dataset still relevant, or is there a replacement? I see this phab and that the wikitech page is archived:
https://phabricator.wikimedia.org/T238230
https://wikitech.wikimedia.org/wiki/Analytics/Archive/EventLogging

is the eventlogging dataset still relevant

Depends on what you mean! ;)

The old EventLogging python based backend is no more, but we migrated legacy EventLogging streams to Event Platform in place.

https://wikitech.wikimedia.org/wiki/Event_Platform/EventLogging_legacy#Migration_to_Event_Platform may help answer your question.

continue using the webrequest_text

You might want to consider using Test Kitchen capabilities (which is built on Event Platform) if you are trying to count impressions. cc @JVanderhoop-WMF

Happy to help @AStein-WMF if you have any questions about Test Kitchen. Product teams are using it to measure impressions, page views, etc so it could be a good like-like comparison with e.g. trends in readership.