Is there a plan to allow customizations/additions ...
# gooddata-cn
s
Is there a plan to allow customizations/additions to the LDM per workspace in the multi-tenant hierarchical design? We have use cases where we would like to have specialized data models per customer; The underlying schema would be the same but the LDM model that shows up in the data model view would include custom datasets for some customers.
Is there any alternative to achieving this use case?
j
Even now you can achieve this, but only through APIs (or python SDK). You can PUT additional attributes or whole datasets into child workspaces and it should work out of the box. I am not 100% sure that the final model users will see in GUI LDM Modeler app in the child workspace will be correct, but it should be. Please, test it
s
Thank you I will test that out and let you know
Hi @Jan Soubusta just checking in on this - While I am able to add in cutom datasets in the child workspace; I am unable to create a reference to a dataset in the parent LDM. Is that a limitation or is there another way to do this?
j
It should work, we cover this use case in our tests, e.g.:
You have to specify the ID of the parent dataset using the workspace prefix
But this is going to be changed soon, right, @Jiri Schmid. Can you describe what @Sheldon Nathan can expect in this future in this area?
s
@Jiri Schmid any guidance on what @Jan Soubusta is referring to?
j
I reviewed the corresponding design document. In the future, we no longer generate these prefixes. In the case of conflict between parent and child IDs, we will apply "parent-win" strategy. We introduce new APIs reporting conflicts. Finally, we provide a new option to specify an object prefix setting on workspace level(optional). Once specified, we will check all incoming object IDs and return user errors if these object IDs are not aligned with the prefix setting.
s
@Jan Soubusta would it be possible to provide an example to make this clearer?
j
Generally, in the future object IDs(e.g. fact ID, label ID, metric ID, ...) will never contain the workspace prefix. Both entities and layout APIs can now return object IDs with the prefix, if you work with child workspaces.