[Umbrella] Extension points documentation improvement
- Dominant language
- Scala
- Stars
- 2.4k
- Forks
- 1k
- PR merge metrics
- No merged PRs in 30d
Description
### Code of Conduct
- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
### Search before asking
- [X] I have searched in the [issues](https://github.com/apache/incubator-kyuubi/issues) and found no similar issues.
### Describe the proposal
Besides the base use case, Kyuubi also has some extension points for
extending use cases. By defining plugin of your own or applying
third-party ones, kyuubi allows to run your plugin's functionality at
the specific point.
The extension points can be divided into server side extensions and
engine side extensions.
Server side extensions are applied by kyuubi administrators to extend the
ability of kyuubi servers.
Engine side extensions are applied to kyuubi engines, some of them can be
managed by administrators, some of them can be applied by end-users dynamically
at runtime.
This umbrella aims to improve the documentation of extension points for
end-users, administrators, and developers to extend the abilities of kyuubi
platform.
**Documentation Writing Principles:**
- General ones http://www.cypressmedia.net/articles/article/26/six_principles_of_technical_writing
- Using markdown or reStructuredText(recommended)
- More about how users or developers shall use an API, feature etc, less about what it is.
### Task list
### Pre-work
- Build content for extension points documentation
### Server Side Extensions
- Configure Kyuubi to use Custom Authentication (√)
- Inject Session Conf with Custom Config Advisor(√) https://github.com/apache/incubator-kyuubi/pull/3175
- Handle Events with Custom Event Handler
- Manage Applications against Extra Cluster Managers(√) https://github.com/apache/incubator-kyuubi/pull/3178
- add missing ones here
### Engine Side Extensions
#### Extensions for Spark
- Z-Ordering Support (√)
- Auxiliary Optimization Rules (√)
- Kyuubi Spark AuthZ Plugin (√)
- Auxiliary SQL Functions (√)
- Connectors for Spark SQL Query Engine (duplicated, see #3059)
- add missing ones here
#### Extensions for Flink
- Connectors for Flink SQL Query Engine (duplicated, see #3059)
- add missing ones here
#### Extensions for Hive
- Connectors for Hive SQL Query Engine (duplicated, see #3059)
- add missing ones here
#### Extensions for Trino
- Connectors for Trino Query Engine (duplicated, see #3059)
- add missing ones here
### Are you willing to submit PR?
- [ ] Yes I am willing to submit a PR!
Contributor guide
Research direction
Use the task list as the scope: review the server-side and engine-side extension sections, including the Spark, Flink, Hive, and Trino items and linked duplicates or pull requests. Done means the missing extension points are identified and documentation for end-users, administrators, and developers is added according to the stated writing principles.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- spark
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100