Skip to main content

Prerequisites

Before installing the Delta Sharing Reference Server, ensure you have:

Java Runtime

Java 8 or higher installed on your system

Cloud Storage Access

Access credentials for your cloud storage (S3, Azure, GCS, or R2)

Delta Lake Tables

Delta Lake or Parquet tables stored on cloud storage

Network Access

Ability to open a port for the server (default: 8080)

Verify Java Installation

Check your Java version:
java -version
You should see output indicating Java 8 or higher. If Java is not installed, download it from:

Download the Server

The pre-built Delta Sharing Server package is available from the official GitHub releases page.
1

Navigate to GitHub Releases

2

Download the Latest Package

Download the file named delta-sharing-server-x.y.z.zip from the latest releaseFor example, to download version 0.7.8:
wget https://github.com/delta-io/delta-sharing/releases/download/v0.7.8/delta-sharing-server-0.7.8.zip
Replace 0.7.8 with the latest version number from the releases page
3

Verify the Download

Ensure the file downloaded successfully:
ls -lh delta-sharing-server-*.zip

Extract the Package

Once downloaded, extract the server package:
unzip delta-sharing-server-0.7.8.zip
This creates a directory structure like:
delta-sharing-server-0.7.8/
├── bin/
│   ├── delta-sharing-server       # Unix/Linux startup script
│   └── delta-sharing-server.bat   # Windows startup script
├── conf/
│   └── delta-sharing-server.yaml.template
├── lib/
│   └── *.jar                       # Server dependencies
└── README.md
  • bin/: Contains startup scripts for different operating systems
  • conf/: Configuration directory for server settings and cloud credentials
  • lib/: Java libraries and dependencies required by the server
  • README.md: Quick reference documentation

Move to Installation Directory

Move the extracted directory to your preferred installation location:
sudo mv delta-sharing-server-0.7.8 /opt/delta-sharing-server
Or keep it in your home directory:
mv delta-sharing-server-0.7.8 ~/delta-sharing-server

Verify Installation

Verify the installation by checking the server version:
cd /opt/delta-sharing-server
./bin/delta-sharing-server --version
If you encounter permission errors, ensure the startup script is executable:
chmod +x bin/delta-sharing-server

Installation Methods Comparison

Pros:
  • Quick and easy installation
  • No build tools required
  • Stable, tested releases
Cons:
  • Less flexible for customization
  • Requires manual updates
Best for: Most users, production-like environments

Building from Source (Optional)

For developers or users who need the latest features:
1

Clone the Repository

git clone https://github.com/delta-io/delta-sharing.git
cd delta-sharing
2

Build the Server Package

build/sbt server/universal:packageBin
This generates server/target/universal/delta-sharing-server-x.y.z.zip
3

Extract and Install

cd server/target/universal
unzip delta-sharing-server-*.zip
sudo mv delta-sharing-server-* /opt/delta-sharing-server
Building from source requires:
  • JDK 8 or higher
  • SBT (Scala Build Tool)
  • Git

System Service Setup (Optional)

For production deployments, configure the server as a system service:
Create a service file at /etc/systemd/system/delta-sharing-server.service:
[Unit]
Description=Delta Sharing Reference Server
After=network.target

[Service]
Type=simple
User=delta-sharing
WorkingDirectory=/opt/delta-sharing-server
ExecStart=/opt/delta-sharing-server/bin/delta-sharing-server -- --config /opt/delta-sharing-server/conf/delta-sharing-server.yaml
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target
Enable and start the service:
sudo systemctl daemon-reload
sudo systemctl enable delta-sharing-server
sudo systemctl start delta-sharing-server
sudo systemctl status delta-sharing-server

Next Steps

Now that the server is installed:

Configure the Server

Set up shares, schemas, and tables

Cloud Storage Setup

Configure cloud storage authentication

Set Up Authorization

Secure your server with authentication

Docker Deployment

Use the pre-built Docker image instead

Build docs developers (and LLMs) love