Configure Databricks permissions for zero-copy segmentation
Learn how to grant the Databricks permissions required for zero-copy segmentation.
Zero-copy segmentation uses the service principal configured for the Databricks connection to execute segment queries on the SQL warehouse. The service principal requires permission to use the warehouse, read the entity and interaction data referenced by segment rules, and create and updatesegment_resultsin the target schema.
This task explains how to grant these segmentation-specific permissions.
Prerequisites
Before you begin, confirm the following requirements:
-
You completed Databricks permission prerequisites for zero-copy segmentation.
-
You have the values for
<sp>,<catalog>, and<target_schema>. -
If segment rules use interaction attributes, you also have the values for
<interaction_catalog>,<interaction_schema>, and<interaction_table>.
Result
The connection service principal can use the SQL warehouse, read the required entity and interaction data, and create or use the segment results table. Its access remains limited to the Databricks resources granted in this procedure.
Verification steps
Run the SQL checks as the connection service principal on the warehouse assigned to the Databricks connection.
-
Confirm access to the published entity data:
SELECT COUNT(*) FROM <catalog>.<target_schema>.entities; -
If segment rules use interaction attributes, confirm access to each mapped interaction source:
SELECT COUNT(*) FROM <interaction_catalog>.<interaction_schema>.<interaction_table>; -
Evaluate a segment in Reltio Intelligent 360.
Confirm that the evaluation completes without a Databricks permission error.
-
Confirm that the connection service principal owns
segment_resultsor hasSELECTandMODIFYon the table:SELECT table_name, table_owner FROM <catalog>.information_schema.tables WHERE table_schema = '<target_schema>' AND table_name = 'segment_results'; SHOW GRANTS `<sp>` ON TABLE <catalog>.<target_schema>.segment_results;Confirm that
table_ownermatches the connection service principal, or that the grants includeSELECTandMODIFY. -
Compare the number of matching identifiers in Databricks with the segment size in Reltio:
SELECT COUNT(DISTINCT entity_id) FROM <catalog>.<target_schema>.segment_results WHERE segment_id = '<segment_id>';Confirm that the count matches the segment size displayed in Reltio Intelligent 360.
If a verification step or segment evaluation fails, use Troubleshoot zero-copy segmentation with Databricks to identify the missing permission or configuration.