-
Notifications
You must be signed in to change notification settings - Fork 919
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
[WIP] Kyuubi Connect #6642
base: master
Are you sure you want to change the base?
[WIP] Kyuubi Connect #6642
Conversation
} | ||
|
||
// FIXME this is dummy implementation to discard any uploaded artifacts | ||
override def addArtifacts(respObserver: StreamObserver[proto.AddArtifactsResponse]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is the only unimplemented method, so uploading artifacts does not work now.
it must be fixed before moving on to the next step.
* @param spark A [[SparkSession]] instance | ||
* that this backend service holds to run [[org.apache.kyuubi.operation.Operation]]s. | ||
*/ | ||
class SparkGrpcBackendService(name: String, spark: SparkSession) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do I understand correctly, that this class is not used at all and we just start the SparkConnect gRPC server in the SparkGrpcFrontendService
?
Hi @yaooqinn @pan3793 @tigrulya-exe , Will Kyuubi Connect support AuthN (LDAP) and AuthZ (Apache Ranger)? |
ec568a3
to
e8eb156
Compare
d7c328a
to
a12b76b
Compare
Hi @pan3793 What is the protocol between Kyuubi server and KyuubiGrpcEngine, it is the Spark connect protocol or else? |
Does it support running on k8s? How is the Spark app created? As far as I know Spark connect server only support creating in client mode, so it must be different from how we create Kyuubi Spark SQL engine, right? |
Awesome. I'd like to take a shot at this feature. |
This is a quick and dirty PR that implements the Spark Connect (gRPC-based) protocol, which allows you to use
pyspark
orspark-shell
withremote sc://<host>:<port>
mode to connect Kyuubi and run Spark queries.DISCLAIMER: this patch is not ready for review, and I know it breaks the existing functionalities, which will be fixed later.
For explorers who want to try this early version:
Source Code under development
Requirements
JAVA_HOME
points to Java 17SPARK_HOME
points to/path/of/spark-4.0.0-preview2-bin-hadoop3
Run
Run within IDEA
build/mvn clean install -DskipTests
to build the project and produce the Spark engine jarkyuubi-server/src/main/scala/org/apache/kyuubi/server/KyuubiServer.scala
using IDEAYou can set
SPARK_HOME
,KYUUBI_CONF_DIR
in the Run/Debug Configuration DialogRun within Terminal
The gRPC service listens 10999 by default.
Connect to Kyuubi Connect
Spark Connect Scala client (Requires: Java 17, Spark 4.0.0-preview2)
Or using PySpark Connect client (Requires: Python >=3.9)
Run examples
Checklist 📝
Be nice. Be informative.