I am migrating one analysis from one AWS account to another, and I am following this tutorial.
I correctly created the data source and datasets in my target account. However, I get the following error when migrating the analysis:
'Errors': [{'Type': 'COLUMN_GROUP_REPLACEMENT_MISSING',
'Message': "Required column group 'Coordinates' is missing in dataset ... " },
{'Type': 'COLUMN_GROUP_REPLACEMENT_MISSING',
'Message': "Required column group 'Coordinates' is missing in dataset ... " }]
The column Coordinates that is generating the error is a hierarchy that I created in the datasets of my source account. Here is an illustration:
It seems that the dataset hierarchies are not created when migrating the datasets.
@Max The hierarchy is already created in the dataset of my source account. I am creating a script that automatically migrates my analyses. However, when I migrate the datasets from my source to my target account, the hierarchies are not created in the migrated dataset of my target account.
Is there anyway to migrate the datasets and their hierarchies?
Hi @jcatulo - Can you please describe the data sets to see whether the fields are properly shown as well. This is just to ensure data sets which is created by UI is also provide the correct details from CLI. Also in your analysis ensure you are pointing to right data source arn.
In parallel, please submit a ticket to AWS Customer support team ( Link to raise the ticket - Creating support cases and case management - AWS Support) so that they can see the details in screen share session and guide you. If you do not have access, request your aws admin to submit a case on behalf of you.
It seems the issue was in one of the parameters of the function create_data_set. As I previously explained, I am creating a script that automatically migrates my analyses. For that, I am using the library boto3.
When we want to migrate a dataset with hierarchies, we need to add the parameter ColumnGroup to the function create_data_set, using the same configuration of the source dataset. To do that, I first called the function describe_data_set in my source account and, then, I used the output of that function as input for the create_data_set function.
Thank you @jcatulo for sharing the solution with the QuickSight Community! @Max and @Sanjeeb2022 Thanks for continuing to sharing your expertise on the Community!