โ01-17-2024 02:17 PM
Does anyone know if there's a way to specify an alternate Unity schema in a DLT workflow using the @Dlt.table syntax? In my case, Iโm looping through folders in Azure datalake storage to ingest data. Iโd like those folders to get created in different schemas within a single (or multiple) unity catalog.
For example:
I tried specifying the 3 dot nomenclature in the table name in my @Dlt.table syntax and received an error โINVALID_PARAMETER_VALUE.INVALID_FIELD CreateStagingTable name is not a valid name.โ Specifying the โpathโ attribute also returns an error that I canโt do that with Unity. When creating the workflow Iโm allowed to leave the schema blank but I canโt figure out how to specify it in my code.
Iโve been googling around for a couple days and couldnโt find an answer. Would love if you could suggest a solution that didnโt involve having to create separate workflows for each schema.
โ01-29-2024 10:53 AM
For anyone following along, I heard back from our Databricks rep and the training team that this is, in fact, not possible today as Kaniz suggests.
> When configuring your Delta Live Tables pipeline with UC, you are prompted to select a UC catalog and schema. All tables created in the DLT pipeline will be created under that UC catalog and schema - you cannot create tables outside of this catalog / schema within the same DLT pipeline.
They recommend creating a separate pipeline for each Unity schema you need to update, and that there may be a potential fix to this sometime in Q1 2024. In the meantime, I'll move forward the long way.
โ01-18-2024 05:01 AM
Thank you for the response @Retired_mod. It was close, but not exactly what I needed. I already know most of what you mentioned, except this one sentence:
You can also specify the catalog and schema in your code using the @Dlt.table syntax.
This is the part that I can't figure out. How do you do this using @dlt syntax? I can't find any documentation on this, and when I try using "3 dots" to specify this, I receive errors. The "path" attribute also doesn't work for this. In the DLT python reference there is no reference to this. Can you explain how to do this?
โ01-22-2024 05:45 AM
Hello, just checking in here. Would love if there was a solution. I tried using a "catalog" parameter in my @Dlt syntax but of course that didn't work.
โ01-29-2024 10:53 AM
For anyone following along, I heard back from our Databricks rep and the training team that this is, in fact, not possible today as Kaniz suggests.
> When configuring your Delta Live Tables pipeline with UC, you are prompted to select a UC catalog and schema. All tables created in the DLT pipeline will be created under that UC catalog and schema - you cannot create tables outside of this catalog / schema within the same DLT pipeline.
They recommend creating a separate pipeline for each Unity schema you need to update, and that there may be a potential fix to this sometime in Q1 2024. In the meantime, I'll move forward the long way.
โ03-21-2024 10:45 AM
@cpayne_vax now that we are at end of Q1-24, do we have the ability to write to any schema dynamically?
โ06-09-2024 02:17 PM - edited โ06-09-2024 02:18 PM
I haven't found the way so far to do that. I should create separate pipelines.
Someone, any update about the possibility to write to different schemas using same pipeline?
โ06-13-2024 10:04 PM
Please let me know if there is way by which we can define schema dynamically in 1 delta live table pipeline in same catalog as below
For example:
Tuesday
Databricks announced that this feature will be available in public preview in Q4.2024. With this will be possible publish tables to arbitrary catalogs and schemas from one single DLT pipeline.
Join a Regional User Group to connect with local Databricks users. Events will be happening in your city, and you wonโt want to miss the chance to attend and share knowledge.
If there isnโt a group near you, start one and help create a community that brings people together.
Request a New Group