Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[TASK][MEDIUM] JDBC result format negotiation for Arrow or Thrift #5379

Open
2 of 3 tasks
pan3793 opened this issue Oct 8, 2023 · 2 comments
Open
2 of 3 tasks

[TASK][MEDIUM] JDBC result format negotiation for Arrow or Thrift #5379

pan3793 opened this issue Oct 8, 2023 · 2 comments
Assignees

Comments

@pan3793
Copy link
Member

pan3793 commented Oct 8, 2023

Code of Conduct

Search before creating

  • I have searched in the task list and found no similar tasks.

Mentor

  • I have sufficient knowledge and experience of this task, and I volunteer to be the mentor of this task to guide contributors to complete the task.

Skill requirements

  • Knowledge about JDBC
  • Basic Knowledge with Scala Programming

Background and Goals

Arrow is one of supported JDBC result format which helps to maximize the fetching performance with verticalization, while Thrift is remained as default result format. Arrow requires Kyuubi Hive driver support. Currently, the result format can be switched via kyuubi.operation.result.format config, by session configs from client side, or can be set on server side configs. This requires pre-connection assertions and lack of flexibility for both client and server side.
To introduce result format negotiation, the server provides an mechanism to minimize the gap for prefered result set.

Implementation steps

  • Add preferred result format list on server side config. For example. arrow, thrift implies that server will prefer to use Arrow if no client preferred format information, while thrift is also support.
  • And if client set kyuubi.operation.result.format config, it means the server tries to follow the dedicated result format. When the server fails to lookup targeted result format in supported list config, the server should throws unsupported exceptions.

Additional context

Original reporter is @bowenliang123

@khwj
Copy link

khwj commented Oct 18, 2023

I'd like to tackle this task.

@bowenliang123
Copy link
Contributor

bowenliang123 commented Oct 18, 2023

Thanks, it would be great to bring this feature to the end users with server-side config and negotiation.

Assigned this task to @khwj .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

No branches or pull requests

3 participants