Skip to content

[Reporting/CSV Export] Use points-in-time for paging through search responses #112865

@tsullivan

Description

@tsullivan

Points in Time

Goal: Reporting CSV Export uses _scroll as the search API in Elasticsearch for paging through the results.If the hits are sorted based on unique value(s), using Points-In-Time would be more optimal than using _scroll.

Challenge: paging through search responses using the point-in-time depends on having unique values for the sort keys, which is something the user might not be concerned with when creating a view in Discover. There is no way for Reporting to know if the search responses will have duplicate sort keys.

Here are some success scenarios where using PIT would be best:

  1. Works by default:
    • The user has a view in Discover where the hits are sorted based on their "time field", which has unique values
    • Each sort key is unique, as no records that have the same timestamp.
  2. Works by explicit user action:
    • The user has a view in Discover where the hits are sorted based on their "time field", which aren't unique
    • They click a 2nd field to sort by, which is unique per-timestamp in its values
    • Each sort key is unique, as no records have the same combination of timestamp-and-other-field.

To solve the goal, Reporting needs a way to know if the request fits a success scenario for PIT.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Feature:Reporting:CSVReporting issues pertaining to CSV file exportenhancementNew value added to drive a business resultimpact:lowAddressing this issue will have a low level of impact on the quality/strength of our product.loe:mediumMedium Level of Effortneeds-teamIssues missing a team labelzDeprecated Feature:ReportingUse Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions