Skip to content

[FEATURE] Support PPL language through customizable search strategy #741

@joshuali925

Description

@joshuali925

Is your feature request related to a problem?

In OpenSearch Dashboards there can be datasource types that do not support DSL, such as S3. Currently the maps are built using DSL queries, this makes them not usable with those datasource types.

What solution would you like?

Support PPL language through PPL search strategy defined by core (code)

data.search.registerSearchStrategy(SEARCH_STRATEGY.PPL, pplSearchStrategy);

Discover currently calls the search strategy defined by the datasource type, for example (code)

  public search(request: IOpenSearchDashboardsSearchRequest, options: ISearchOptions) {
    const dataset = this.queryService.queryString.getQuery().dataset;
    const datasetType = dataset?.type;
    let strategy = datasetType === DATASET.S3 ? SEARCH_STRATEGY.PPL_ASYNC : SEARCH_STRATEGY.PPL;

It would be good for maps to also support search through search strategy, and we can send queries in PPL to support maps using datasources that do not support DSL.

What alternatives have you considered?

Add DSL support to all datasources, but this is not very feasible because they may not be stored in OpenSearch.

Do you have any additional context?

There are open-ended areas like PPL does not support all aggregations used by maps, and how to correctly map the UI configuration to PPL query.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions