Page MenuHomePhabricator

Investigation spike: Keyword grouping feature
Open, Needs TriagePublic8 Estimated Story Points

Description

We had some good ideas on how to implement this in a low effort, resource-friendly way. Let's have a spike to look into it further and be able to write tickets and estimate.

Event Timeline

kai.nissen renamed this task from Investigation spike to Investigation spike: Keyword grouping feature.Jan 31 2024, 12:52 PM
kai.nissen created this task.
kai.nissen set the point value for this task to 8.Jan 31 2024, 12:55 PM

We have investigated this and decided to group values at the "data source", to avoid having to touch the analysis columns at all. We have an implementation for donations and memberships at https://github.com/wmde/fundraising-backend/pull/950

The donation and membership changes are a bit of on outlier, since we're modifying each donation and membership item. The other data sources already query data aggregated by keyword, so the easiest way to do further aggregation is to

  • use a decorator implementation of the Matomo data source interface, that wraps the original class and adds the related keywords together.
  • use an improved implementation of the database-based readers that allows for aggregation of keywords through modifying database queries (although we could trade a bit of efficiency for consistency here and also use the decorator approach)

This approach also allows us to split our parent ticket T341680: Enable FOC backend to group keywords when collecting/calculating results into sub-tickets for each additional data source:

  • Visitors
  • Impressions
  • GoalConversions (@kai.nissen is that still used?)
  • BannerLinks

Tickets TBD