Your data pipelines, simplified

Using the Sling Platform is the easiest way to develop, test and manage your Sling jobs.

Sling Platform UI

Pipeline without the headache

1

Connect an Agent

The sling agent can run anywhere (Mac, Linux or Windows), and waits for data jobs.

2

Add your Connections

Use the same env.yaml to easily define your connections.

3

Run Sling Jobs

Schedule your replications and get alerted for specific status.

best value

Built-in Editor (IDE)

With the included Editor, you can see your replications compiled live, as well as discover streams.

Parallel Stream Runs

With an agent, you can run your replication streams in parallel, allowing you to fully utilize your machine's resources.

Multiple Projects

Each project defines a specific workspace for your agents, connections and jobs. You can have an unlimited number of projects.

Observability / Monitoring

Monitor your tables and files for volume, existence, freshness, and schema changes, all with a YAML file.

Run Checks

A Sling check evaluates a specific condition, and can alert you of the output depending on your configuration.

Use Hooks

Hooks can be used to trigger actions before or after a replication stream. Hook types include: query, check, notify, http, and more.

connections

Explore your Data

Your can easily explore to see what files, folders or tables/schemas are present in your connection. You can even Preview the data before using it in a pipeline.

Explore your Data
jobs

Define Jobs

Many ways to customize jobs, including running specific streams, tags, overriding the mode to full-refresh / backfill. And more.

Define Jobs
history

See Historical Logs

The history view lets you see history details such as number of rows / bytes transferred, duration, status in a tabular fashion.

See Historical Logs
executions

See Job Run Details

The execution panel lets you see details such as number of rows / bytes transferred, duration, status and debug logs.

See Job Run Details
agents

Manage Agents

The UI allows you to manage development & production agent as well as seeing their status. You get notified if any issues arise.

Manage Agents

Transparent and Predictable Pricing

We believe in simple and predictable pricing. No hidden costs, no surprises. Scroll down to learn more about the Sling Agent and our pricing structure.

Free

$ 0

(free)
  • Incremental & Backfill Mode Incremental mode loads only new or updated data, while backfill mode loads data from a specified date range. Other available modes include: full-refresh, truncate and snapshot.
  • Wildcard Selection Allows the use of wildcard characters in selection criteria, enabling more flexible selections of streams (source tables or files).
  • Runtime & Custom Variables Support for both runtime and custom variables that can be used in YAML configurations, enabling powerful scaling and automation.
  • Column Hashing Provides a transform to create a hash of column values for data protection. Other transforms include: encoding/decoding, uuid parsing, cleaning accents, and more.
  • Schema Evolution Ability to detect schema changes and automatically updates the target schema to match the source schema, ensuring compatibility and preventing errors.
  • Custom Table DDL Allows the definition of custom Data Definition Language (DDL) for target table creation.
  • Unlimited Connections You can connect as many sources & targets as you want to your projects.
  • Smart Editor (IDE) You can use the editor to preview data, validate for errors, as well as compile your replications live.
  • Development Agent A development agent is a special agent, with defined limits, that is used for development purposes. See below for more details.

Standard

$ 79 / mo

(paid monthly)
  • Incremental & Backfill Mode Incremental mode loads only new or updated data, while backfill mode loads data from a specified date range. Other available modes include: full-refresh, truncate and snapshot.
  • Wildcard Selection Allows the use of wildcard characters in selection criteria, enabling more flexible selections of streams (source tables or files).
  • Runtime & Custom Variables Support for both runtime and custom variables that can be used in YAML configurations, enabling powerful scaling and automation.
  • Column Hashing Provides a transform to create a hash of column values for data protection. Other transforms include: encoding/decoding, uuid parsing, cleaning accents, and more.
  • Schema Evolution Ability to detect schema changes and automatically updates the target schema to match the source schema, ensuring compatibility and preventing errors.
  • Custom Table DDL Allows the definition of custom Data Definition Language (DDL) for target table creation.
  • Unlimited Connections You can connect as many sources & targets as you want to your projects.
  • Smart Editor (IDE) You can use the editor to preview data, validate for errors, as well as compile your replications live.
  • Development Agent A development agent is a special agent, with defined limits, that is used for development purposes. See below for more details.
  • Alerting (Email, Slack, Discord) You can setup alerts to be notified when certain conditions are met, such as: error, warning, or success.
  • Parallel Stream Runs You can run multiple streams in parallel, which can dramatically speed up your data loading process.
  • Production Agent A production agent enables scheduled jobs. See below for details.
  • Column Constraints Constraints are column-level rules that evaluate at runtime whether a given value meets specific conditions, such as equality, inequality, or pattern matching.
  • Checks & Hooks A check evaluates conditions based on specified expressions and attributes to determine if certain criteria are met within data sources or configurations. Hooks can be used to trigger actions before or after a replication stream. Hook types include: query, check, notify, http (webhook), and more.(Coming Soon)
  • Smart Backfill & Incremental Takes the pain out of backfilling. You provide the backfill range, and Sling will partition into smaller chunks/jobs, backfilling automatically. Also, when loading large amount of files incrementally, the Sling Platform maintains state, and continue to the next batch in order.(Coming Soon)

Platform

Coming Soon

(paid monthly)
  • Incremental & Backfill Mode Incremental mode loads only new or updated data, while backfill mode loads data from a specified date range. Other available modes include: full-refresh, truncate and snapshot.
  • Wildcard Selection Allows the use of wildcard characters in selection criteria, enabling more flexible selections of streams (source tables or files).
  • Runtime & Custom Variables Support for both runtime and custom variables that can be used in YAML configurations, enabling powerful scaling and automation.
  • Column Hashing Provides a transform to create a hash of column values for data protection. Other transforms include: encoding/decoding, uuid parsing, cleaning accents, and more.
  • Schema Evolution Ability to detect schema changes and automatically updates the target schema to match the source schema, ensuring compatibility and preventing errors.
  • Custom Table DDL Allows the definition of custom Data Definition Language (DDL) for target table creation.
  • Unlimited Connections You can connect as many sources & targets as you want to your projects.
  • Smart Editor (IDE) You can use the editor to preview data, validate for errors, as well as compile your replications live.
  • Development Agent A development agent is a special agent, with defined limits, that is used for development purposes. See below for more details.
  • Alerting (Email, Slack, Discord) You can setup alerts to be notified when certain conditions are met, such as: error, warning, or success.
  • Parallel Stream Runs You can run multiple streams in parallel, which can dramatically speed up your data loading process.
  • Production Agent A production agent enables scheduled jobs. See below for details.
  • Column Constraints Constraints are column-level rules that evaluate at runtime whether a given value meets specific conditions, such as equality, inequality, or pattern matching.
  • Checks & Hooks A check evaluates conditions based on specified expressions and attributes to determine if certain criteria are met within data sources or configurations. Hooks can be used to trigger actions before or after a replication stream. Hook types include: query, check, notify, http (webhook), and more.
  • Smart Backfill & Incremental Takes the pain out of backfilling. You provide the backfill range, and Sling will partition into smaller chunks/jobs, backfilling automatically. Also, when loading large amount of files incrementally, the Sling Platform maintains state, and continue to the next batch in order.
  • Historical Reports In your DB Push data about job runs as well as replication / stream metadata into your database. This can be used for internal reporting, monitoring, and other purposes.
  • Observability / Monitoring This allows monitoring of volume, existence, freshness, and schema changes, over time, for database and file objects. Alert rules can be setup for any of these metrics.
  • Roles & SSO Integration This allows specific user role definition as well as SSO integration.
  • Platform Self-Hosting This allows you to host the whole platform in your private network, allowing you full control & security.
  • Priority support

Frequently Asked Questions

What is an agent?

To put it simply, an agent is a container for your data pipelines. It runs in the background and waits for data jobs (such as replications). You can run an agent using Docker or by using the Sling CLI. An agent can run on any machine (Windows, Mac, Linux) and connects to the control server via a secure WebSocket connection (TLS). There is no need to open ports or configure firewalls.

Can I self-host my agent?

Yes! This is a core feature of the Sling Data Platform. This way you can have full control over your costs. You can backfill as many times as you want, and you can run as many jobs your machine can handle.

What about my Connection Credentials?

If you choose to self-host your Sling Agent, you can define a local env.yaml file to store your connection credentials (on the machine). Using this method, the sensitive credentials will never leave the agent. You can also store your credentials in the Sling Control Server, per project, which is securely transmitted over TLS and encrypted at rest.

I'm interested in features of a paid Plan, but want to use the Sling CLI without an Agent

Yes, this will be possible but is still being ironed out. The Sling CLI will check for an environment variable token when invocated and will permit respective features the Plan. Stay tuned!

How does the agent work?

Upon starting, the agent will connect to the control server, using a provided API Key, and will wait for jobs to be assigned to it. It will then execute the job (data will flow only through it) and then send the results back to the control server (such as logs, errors, number of rows processed, etc). The agent will continue to run and wait for new jobs to be assigned to it.

How do development and production agents differ?

A development agent is a special agent, with defined limits, that is used for development purposes. It is not billed, nor intended for production use, and therefore will not be selected for scheduled jobs. All plans include one development agent, which is ran self-hosted. On the other hand, a production agent will be selected for scheduled jobs, and requires a paid plan.

How many production agents will I need?

One production agent is enough for most projects. Each job is ran concurrently using the Sling CLI, which is a fairly lightweight process (often needing under 100MB of memory). You can simply scale your machine vertically (more CPU, RAM) if you need to process more jobs, the one agent will scale with it. If you have multiple projects, you will need additional agents, as each agent can only be linked with one project.

Can I self-host the control server along with the agent?

Not yet! But this is very much on the roadmap, and will allow you to have full control over the whole platform. If you are interested in this solution, please let us know!