opensearch-project / opensearch-project/opensearch-java

[FEATURE] Send search request query DSL json directly to search request

Open
#525 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Java
Stars
165
Forks
250
Avg merge
1d 18h
Merged PRs (30d)
26

Description

Is your feature request related to a problem?

Data Prepper is going to support configurable queries that will utilize the opensearch java client for search requests.

The query DSL is being taken is as a json string, and the opensearch java client does not support passing a Map or json string to pass this query DSL directly.

However, the opensearch java client requires queries to be modeled using the opensearch java client classes

What solution would you like?

An option to pass the search request directly to the SearchRequest class instead of having to model it piece by piece

What alternatives have you considered?

modeling the entirety of a search request in Java in Data Prepper. This does not scale well

Do you have any additional context?

Add any other context or screenshots about the feature request here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the OpenSearch Java client's SearchRequest API and tracing how search requests are currently modeled and sent. Determine where a JSON query DSL string could be accepted directly, and verify that Data Prepper can submit the request without modeling the full query in Java.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, backend-api-design
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.