Skip to navigation

Direct Data Share

What Direct Data Share is and the platforms it supports.

About

Direct Data Share connects Benchling to your own cloud data platform. Data moves between the two without an integration you have to build and run.

It works in two directions:

DirectionFlowWhat you get
OutboundBenchling → your platformYour Benchling records as Apache Iceberg tables that you can query from Snowflake, Databricks, Spark, or any Iceberg client
InboundYour platform → BenchlingTables from your Snowflake or Databricks account imported into Benchling as datasets your scientists can use in entries, analyses, and Insights

You configure both directions with your Benchling representative rather than on your own.

Direct Data Share is in open beta. Expect the shared schema and connection flows to keep evolving. Inbound is further gated behind per-tenant enablement. See that page for current availability.

Supported platforms

PlatformDirectionNotes
SnowflakeOutbound and inboundQuery outbound tables from a Benchling-managed account or a listing mounted in your own account. Inbound reads from a Snowflake account you control.
DatabricksOutbound and inboundOutbound reads the same Iceberg tables through Unity Catalog federation. Inbound reads from a Unity Catalog-governed schema in your workspace. Both require a separate enablement step beyond base Snowflake access. Ask your Benchling representative.
Any Iceberg REST client (Spark, Trino, Flink, PyIceberg, etc.)Outbound onlyThe shared tables are plain Apache Iceberg, so any Iceberg REST catalog client can read them.

There is no generic-Iceberg path into Benchling; inbound reads from Snowflake or Databricks only.

Access control

Outbound sharing applies per tenant. Your credential can assume exactly one role, which has read-only access to your tenant’s schema and nothing else. It cannot write, and it cannot reach another tenant’s data.

Within that scope, Direct Data Share does not filter per end user. The outbound share presents one tenant-wide view, so everyone querying with the credential sees the same rows regardless of their Benchling permissions. Treat the credential as granting broad read access to your tenant’s shared data. If your analysts should see only part of it, apply your own access controls in your platform (Snowflake roles, Unity Catalog grants, or views).

A role you create in your own account (a Snowflake role, or the Databricks equivalent) scopes inbound sharing. Benchling runs its queries as that role, so what Benchling can read is exactly what you grant it. See Inbound: Snowflake for the recommended grants.

Next steps

  • Outbound: Connect to your Benchling data and query it, with example Snowflake queries including schema-field joins.
  • Inbound: Bring tables from your Snowflake or Databricks account into Benchling as datasets.