-
Notifications
You must be signed in to change notification settings - Fork 51
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into Release/MediaPlayer/0.9.0
- Loading branch information
Showing
13 changed files
with
1,381 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file added
BIN
+122 KB
...efining-the-data-to-collect-with-data-poducts/ui/images/conflict_resolution.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+54.6 KB
...gn/defining-the-data-to-collect-with-data-poducts/ui/images/success_upgrade.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+227 KB
...ata-to-collect-with-data-poducts/ui/images/upgrade-event-specification-diff.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+68.3 KB
...ata-to-collect-with-data-poducts/ui/images/upgrade-event-specification-page.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+43.9 KB
...-to-collect-with-data-poducts/ui/images/upgrade-event-specification-warning.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -56,4 +56,50 @@ Data Products created prior to the release of [Source Applications](../../organi | |
|
||
Event specifications which contain previously added application IDs will need to be updated to use the identifiers inherited from the Source Applications selected at Data Product level. This process can be done manually but you can reach out to our Support team to help you with that by either logging a request through our Snowplow [BDP Console](https://console.snowplowanalytics.com/) or by directly emailing [[email protected]](mailto:[email protected]). | ||
|
||
![Updating existing Event Specifications](images/edit-existing-event-specification.png) | ||
![Updating existing Event Specifications](images/edit-existing-event-specification.png) | ||
|
||
## Upgrading Event Specification Instructions | ||
|
||
When working with Event Specifications of a Data Product, it’s essential to account for the evolution of underlying [Data Structures](../../managing-your-data-structures/index.md). Data Structures define reusable JSON schemas, which can be referenced by different Event Specifications (events and entities). Each Event Specification may contain instructions, which rely on a specific version of a Data Structure, adding another layer to specialize or constraint Event Specifications in a more granular way. | ||
|
||
### Versioning of Data Structures | ||
|
||
As data and events evolve, Data Structures may be updated to new versions, which can be either compatible or incompatible with previous ones. These changes may cause potential conflicts with the instructions in Event Specifications (both events and entities) that reference an older version of the Data Structure. | ||
|
||
### Semi-Automatic Upgrade of Event Specifications via the UI | ||
|
||
To streamline the process of upgrading an Event Specification to the latest version of a Data Structure, we’ve implemented a mechanism that allows you to update Event Specification instructions through the UI. Here’s how it works: | ||
|
||
When a new version of a Data Structure becomes available, the system will indicate that the event or entities referenced by the data structure has a new version available, showing an **'Upgrade'** button in the UI. | ||
|
||
![Upgrade Event Specification warning](images/upgrade-event-specification-warning.png) | ||
|
||
Clicking the button navigates to a new page, informing the user of the new version they are upgrading to, along with a **'View Changes'**. | ||
|
||
![Upgrade Event Specification page](images/upgrade-event-specification-page.png) | ||
|
||
When clicked it will show the differences between the current version of the Data Structure and the one the user intends to upgrade to. | ||
|
||
![Upgrade Event Specification diff](images/upgrade-event-specification-diff.png) | ||
|
||
At the bottom, a button will allow users to confirm the upgrade. One of two things can happen when the upgrade is confirmed: | ||
|
||
#### 1. Successful automatic upgrade | ||
|
||
- If the Event Specification instructions are compatible with the new Data Structure version, the system will automatically upgrade the Event Specification to the latest version of the Data Structure. | ||
- All instructions will be updated seamlessly without any further user intervention. | ||
|
||
![Automatic upgrade Event Specification](images/success_upgrade.png) | ||
|
||
#### 2. Conflict detection and resolution | ||
|
||
If the new version of the Data Structure introduces incompatibilities with the existing Event Specification instructions, the system will flag the conflicting properties. | ||
|
||
- The UI will prompt the user to resolve these conflicts before the Event Specification can be upgraded. | ||
- The conflict resolution UI provides options to the user tp modify or delete each instruction depending on the type of incompatibility: | ||
- **Remove conflicting instructions**: If a specific property is no longer present in the new Data Structure. | ||
- **Modify conflicting instructions**: If a property in the new Data Structure has been changed in an incompatible way (e.g., type change, added/removed enum values, added pattern, etc.). | ||
|
||
![Conflict resolution Event Specification](images/conflict_resolution.png) | ||
|
||
This mechanism ensures that teams can benefit from updated Data Structures while maintaining the integrity and accuracy of their Event Specifications. Users are empowered to make informed decisions during the upgrade process, with clear visual cues and options to handle conflicts effectively. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.