Apache.Spark.Connect
0.1.2-alpha
dotnet add package Apache.Spark.Connect --version 0.1.2-alpha
NuGet\Install-Package Apache.Spark.Connect -Version 0.1.2-alpha
<PackageReference Include="Apache.Spark.Connect" Version="0.1.2-alpha" />
<PackageVersion Include="Apache.Spark.Connect" Version="0.1.2-alpha" />
<PackageReference Include="Apache.Spark.Connect" />
paket add Apache.Spark.Connect --version 0.1.2-alpha
#r "nuget: Apache.Spark.Connect, 0.1.2-alpha"
#addin nuget:?package=Apache.Spark.Connect&version=0.1.2-alpha&prerelease
#tool nuget:?package=Apache.Spark.Connect&version=0.1.2-alpha&prerelease
Apache Spark Connect Client for C#
This project houses the experimental client for Spark Connect for Apache Spark written in C#.
Current State of the Project
Currently, the Spark Connect client for C# is highly experimental and should not be used in any production setting.
Getting started
This section explains how run Spark Connect C# locally from scratch.
Step 1: Install Docker Desktop - for running a Spark Server in a Container.
Step 2: Install Dotnet 8 CLI.
💡 Tip: Install Visual Studio Community Edition for a rich debugging experience in C#.
Step 3: Clone this repo via git
.
Step 4: Spin up Spark Connect Server in a container:
Powershell:
$GIT_ROOT = git rev-parse --show-toplevel
Set-Location -Path "${GIT_ROOT}\projects\spark-connect-csharp\src\spark.connect.test\Common\SparkHost"
docker-compose -f docker-compose-spark-connect-server.yaml up -d
Bash:
GIT_ROOT=$(git rev-parse --show-toplevel)
cd "${GIT_ROOT}/projects/spark-connect-csharp/src/spark.connect.test/Common/SparkHost"
docker-compose -f docker-compose-spark-connect-server.yaml up -d
Step 5: Run the demo project spark.connect.demo
for an end-to-end demonstration.
$GIT_ROOT = git rev-parse --show-toplevel
Set-Location -Path "${GIT_ROOT}\projects\spark-connect-csharp\src\spark.connect.demo"
dotnet run --project spark.connect.demo.csproj
GIT_ROOT=$(git rev-parse --show-toplevel)
cd "${GIT_ROOT}/projects/spark-connect-csharp/src/spark.connect.demo"
dotnet run --project spark.connect.demo.csproj
High Level Design
TODO
Features
TODO
Contributing
This project uses a Devcontainer to manage Build Dependencies. The Devcontainer is tested upon every commit, to ensure the development environment is always ready.
See the Devcontainer on how to get a development environment setup using Docker Desktop.
Built With
These are the tools this project is built and maintained with:
- nx - Build management tool
- docker - Containerization
- devcontainer - VS Code dev container
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net8.0
- Apache.Arrow (>= 16.0.0)
- Google.Protobuf (>= 3.23.1)
- Grpc.Core (>= 2.46.6)
- Grpc.Core.Api (>= 2.55.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.1.2-alpha | 90 | 4/22/2024 |
0.1.1-alpha | 66 | 4/21/2024 |
0.1.0-alpha | 73 | 4/21/2024 |
Initial Release