Go to file
ulysses-you ed585770f9
[KYUUBI #284][FOLLOWUP] Fix a race condition in engine redirect log file initialization
![ulysses-you](https://badgen.net/badge/Hello/ulysses-you/green) [![PR 289](https://badgen.net/badge/Preview/PR%20289/blue)](https://github.com/yaooqinn/kyuubi/pull/289) [&#10088;?&#10089;](https://pullrequestbadge.com/?utm_medium=github&utm_source=yaooqinn&utm_campaign=badge_info)<!-- PR-BADGE: PLEASE DO NOT REMOVE THIS COMMENT -->

<!--
Thanks for sending a pull request!  Here are some tips for you:
  1. If this is your first time, please read our contributor guidelines: https://kyuubi.readthedocs.io/en/latest/community/contributions.html
-->

fixes #284
closes #289

<!--
Please clarify why the changes are needed. For instance,
  1. If you add a feature, you can talk about the user case of it.
  2. If you fix a bug, you can clarify why it is a bug.
-->
Fix the problem if some thread overwrite the same file.

- Add some test cases that check the changes thoroughly including negative and positive cases if possible
- Add screenshots for manual tests if appropriate
- [Run test](https://kyuubi.readthedocs.io/en/latest/tools/testing.html#running-tests) locally before make a pull request

Squashed commit of the following:

commit 64445287c9522d33a797dd123b0683732cd50ebe
Author: ulysses-you <ulyssesyou18@gmail.com>
Date:   Fri Jan 15 15:22:41 2021 +0800

    fix

commit e74229a614e727eef605d4ab496631972174c3cc
Author: ulysses-you <ulyssesyou18@gmail.com>
Date:   Fri Jan 15 14:30:33 2021 +0800

    change

commit 91e94d4a11d343a5b833a99b9970f14c29981c04
Author: ulysses-you <ulyssesyou18@gmail.com>
Date:   Fri Jan 15 11:56:24 2021 +0800

    nit
2021-01-15 15:38:56 +08:00
.github minor 2021-01-14 20:53:10 +08:00
bin add HADOOP_CONF_DIR to classpath 2020-11-19 00:30:25 +08:00
build followup [add SparkSQLEngine idle check] fix #251 2020-11-18 16:41:43 +08:00
conf Spark Conf temp 2020-12-31 15:02:21 +08:00
dev Tune pom 2021-01-09 23:30:46 +08:00
docs [KYUUBI #284] Sesson submit log should be overwritten 2021-01-14 20:42:11 +08:00
externals Tune pom 2021-01-09 23:30:46 +08:00
kyuubi-assembly Tune pom 2021-01-09 23:30:46 +08:00
kyuubi-common [KYUUBI #284] Sesson submit log should be overwritten 2021-01-14 20:42:11 +08:00
kyuubi-ha Tune pom 2021-01-09 23:30:46 +08:00
kyuubi-main [KYUUBI #284][FOLLOWUP] Fix a race condition in engine redirect log file initialization 2021-01-15 15:38:56 +08:00
_config.yml add documentation for kyuubi deployment 2018-07-30 19:19:46 +08:00
.gitignore support query log for async exec 2020-11-27 16:40:07 +08:00
.readthedocs.yml readthedocs 2020-11-03 14:59:32 +08:00
.travis.yml PR ISSUE and Contribution Guide (#287) 2021-01-14 20:28:30 +08:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-03-07 15:54:22 +08:00
codecov.yml readme 2021-01-12 21:38:28 +08:00
LICENSE Initial commit 2017-12-18 17:05:10 +08:00
pom.xml [KYUUBI#282] Downgrade libthrift:0.9.3 due to THRIFT-4805 2021-01-14 16:56:44 +08:00
README.md [DOC] Add v1.0.2 Documentation 2021-01-13 17:50:16 +08:00
scalastyle-config.xml Create Kyuubi Project Spark SQL Engine 2020-06-09 10:34:47 +08:00

Kyuubi

License GitHub release codecov Build Status HitCount DepShield Badge Documentation Status

Kyuubi is a high-performance universal JDBC and SQL execution engine, built on top of Apache Spark. The goal of Kyuubi is to facilitate users to handle big data like ordinary data.

It provides a standardized JDBC interface with easy-to-use data access in big data scenarios. End-users can focus on developing their own business systems and mining data value without having to be aware of the underlying big data platform (compute engines, storage services, metadata management, etc.).

Kyuubi relies on Apache Spark to provide high-performance data query capabilities, and every improvement in the engine's capabilities can help Kyuubi's performance make a qualitative leap. In addition, Kyuubi improves ad-hoc responsiveness through the engine caching, and enhances concurrency through horizontal scaling and load balancing. It provides complete authentication and authentication services to ensure data and metadata security. It provides robust high availability and load balancing to help you guarantee the SLA commitment. It provides a two-level elastic resource management architecture to effectively improve resource utilization while covering the performance and response requirements of all scenarios including interactive, or batch processing and point queries, or full table scans. It embraces Spark and builds an ecosystem on top of it, which allows Kyuubi to quickly expand its existing ecosystem and introduce new features, such as cloud-native support and Data Lake/Lake House support.

Kyuubi's vision is to build on top of Apache Spark and Data Lake technologies to unify the portal and become an ideal data lake management platform. It can support data processing e.g. ETL, and analytics e.g. BI in a pure SQL way. All workloads can be done on one platform, using one copy of data, with one SQL interface.

Online Documentation

Since Kyuubi 1.0.0, the Kyuubi online documentation is hosted by https://readthedocs.org/. You can find the specific version of Kyuubi documentation as listed below.

For 0.8 and earlier versions, please check the project docs folder directly.

Quick Start

Ready? Getting Started with Kyuubi.

Contributing

All bits of help are welcome. You can make various types of contributions to Kyuubi, including the following but not limited to,

  • Help new users in chat channel or share your success stories w/ us - Gitter
  • Improve Documentation - Documentation Status
  • Test releases - GitHub release
  • Improve test coverage - codecov
  • Report bugs and better help developers to reproduce
  • Review changes
  • Make a pull request
  • Promote to others
  • Click the star button if you like this project

Aside

The project took its name from a character of a popular Japanese manga - Naruto. The character is named Kyuubi Kitsune/Kurama, which is a nine-tailed fox in mythology. Kyuubi spread the power and spirit of fire, which is used here to represent the powerful Apache Spark. It's nine tails stands for end-to end multi-tenancy support of this project.