Stijn Habekotté
07/19/2022, 8:11 AMAlternative paths found in model
) to go away.
It's obvious it shows that for a situation like in the screenshot, but no matter how we define the different relationships, the warning stays.
We have looked at the following documentation on your website.
We have also tried ignoring the warning, but then. Statistics, that are from a certain device, can not be filtered on the zone that device is in. So it clearly isn't working, like the warning would suggest.
We hope you people can help us, thank you in advance!
Best regards,
Stijn Habekott*é*Tomas Muchka
07/19/2022, 8:53 AMStijn Habekotté
07/19/2022, 9:00 AMTomas Muchka
07/19/2022, 9:00 AMStijn Habekotté
07/19/2022, 9:00 AMTomas Muchka
07/19/2022, 10:33 AMStijn Habekotté
07/19/2022, 12:10 PMTomas Muchka
07/19/2022, 12:22 PMTomas Muchka
07/19/2022, 12:24 PMStijn Habekotté
07/19/2022, 1:23 PMJan Soubusta
07/19/2022, 2:17 PMTomas Muchka
07/19/2022, 2:22 PMJakub Sterba
07/19/2022, 11:36 PMselect count({attribute/devices_zone_id}) where {attribute/establishment_name}="XY"
. may either count all devices_zone_ids for devices in given establishment or zones in given establishment. In hypothetical case zone in the bridge dataset (Devices zone) may relate to different establishment than device in the same dataset which may lead to inconsistent results. This is the reason why the warning is displayed.
Zones in this model cannot be used for filtering of fact datasets connected to Devices dimension dataset because there is not oriented path from Zones to Devices. M:N edge from Devices zone bridge dataset to Devices dataset would enable it but such edge is not allowed due to some restrictions which are documented in https://help.gooddata.com/doc/enterprise/en/data-integration/data-modeling-in-gooddata/many-to-many-in-logical-data-models (see Example 2). This restriction is in place for domains ending with on.gooddata.com . For GoodData CN (self hosted) and new GoodData Cloud offering (domain ending with cloud.gooddata.com slightly different restrictions are in place which are documented here: https://www.gooddata.com/developers/cloud-native/doc/hosted/model-data/evolve-ldm/many-to-many-in-ldm/#limitations-to-mn . I think the GD.CN and GD.Cloud is more favourable for modeling of the data as you describe. Can you confirm which platform are you using?Jakub Sterba
07/19/2022, 11:50 PMJakub Sterba
07/19/2022, 11:52 PMJakub Sterba
07/19/2022, 11:58 PMJakub Sterba
07/20/2022, 12:02 AMStijn Habekotté
07/20/2022, 8:28 AMStijn Habekotté
07/20/2022, 8:28 AM"content=ldm status=400 error={\"detail\":\"dataset=devices is referenced by anotherDataset=devices_zone with multivalue reference and has its own references\",\"status\":400,\"title\":\"Bad Request\",\"traceId\":\"34b2f555f937de49\"}"
Stijn Habekotté
07/20/2022, 8:30 AMOndrej Stumpf
07/20/2022, 11:42 AMdevices
) and at the same time, the same dataset is pointed to by any other dataset (in our case, the establishment
). To make the error go away, I suggest to make the M:N edge point to zones
instead of devices
, see the attached model.
If you combine this with the approach @Jakub Sterba suggested (i.e. split establishment
into establishment of device
and establishment of zone
), hopefully it should cover your use cases.Stijn Habekotté
07/20/2022, 12:23 PMStijn Habekotté
07/20/2022, 12:23 PMOndrej Stumpf
07/20/2022, 12:45 PMdevices
is referenced using M:N edge from device_zone
and at the same time, devices
references devicetypes
. If you remove the edge between devicetypes
and devices
, it will work.
By "splitting", @Jakub Sterba meant creating two distinct datasets, one linked with devices
, the other with zones
.Ondrej Stumpf
07/20/2022, 1:22 PMdevicetypes
, you could inline it into devices
, i.e. add a new attribute to devices
with the name type
.
Anyway, you managed to start quite a big internal discussion here at GoodData 🙂. I'm now creating an internal ticket to investigate the issue more deeply and perhaps relax the validations.Stijn Habekotté
07/20/2022, 2:20 PMAnne-Mirthe
07/20/2022, 2:46 PMJan Soubusta
07/20/2022, 3:01 PMStijn Habekotté
08/02/2022, 3:08 PM