Steveovo modelování dat: zvládněte strategie správy verzí
Úvod:
V tomto článku prozkoumáme dva odlišné přístupy k verzování záznamů v datovém modelu a nabídneme vám poznatky a strategie, jak efektivně spravovat více verzí záznamů a jejich podřízených záznamů.
Tyto strategie jsou nezbytné pro návrháře objektových modelů, u kterých je správa verzí zásadní.
Přístupy k verzování záznamů
Existují dva hlavní přístupy k verzování záznamů:
- Přístup rovnocenných záznamů
- Přístup podřízených verzí
Pojďme se na každý přístup podívat podrobněji a pochopit jeho implementaci, výhody a nevýhody.
Přístup rovnocenných záznamů
V přístupu rovnocenných záznamů se každá verze záznamu vytváří jako samostatný, rovnocenný záznam pod objektem nejvyšší úrovně. Tato metoda je přímočará a příkladem je, jak Salesforce implementuje nabídky (quotes) pod příležitostmi.

Implementace:
Každá verze je samostatný záznam pod objektem nejvyšší úrovně.
Jeden ze záznamů můžete označit jako hlavní, ale všechny verze jsou vidět v zobrazeních seznamu, souvisejících seznamech a sestavách.
Výhody:
- Jednoduchá a přímočará implementace.
Nevýhody:
- Všechny verze jsou vidět, takže je těžké je od sebe odlišit.
- Mezi jednotlivými verzemi není jasná vazba ani auditní stopa.
Bez důsledného vynucování může vzniknout víc hlavních nebo rozpracovaných záznamů.
Přístup podřízených verzí
Přístup podřízených verzí znamená vytvořit dvě úrovně objektů: nadřazený objekt nejvyšší úrovně a podřízený objekt pro každou verzi. Tento přístup umožňuje čisté verzování a systém záznamu změn.

Implementace:
- Objekt nejvyšší úrovně představuje konfiguraci a podřízené objekty představují jednotlivé verze.
- Každá podřízená verze má automaticky zvyšované číslo a stav (např. archivovaná, aktivní, čekající).
- Aktivní verze je uzamčená a používá se v produkci, zatímco rozpracovanou verzi lze upravovat.
- Po aktivaci se rozpracovaná verze stane aktivní a předchozí aktivní verze se archivuje.
Výhody:
- Poskytuje jasnou auditní stopu a historickou dokumentaci.
- Zajišťuje, že v jednu chvíli je aktivní jen jedna verze.
- Archivované záznamy slouží jako nezměněné historické záznamy.
Nevýhody:
- Některým uživatelům se může zdát složitý, ale u důležitých procesů, jako jsou flow, je nezbytný.
Příklad implementace v Salesforce

Salesforce implementuje podobný přístup u flow. V Salesforce existuje objekt flow nejvyšší úrovně s podřízenými verzemi flow. Každá verze má automaticky zvyšované číslo, takže vzniká podrobný historický záznam každého flow, jeho vytvoření a dat aktivace.
Tato implementace zajišťuje, že v jednu chvíli je aktivní jen jedno flow, a poskytuje spolehlivý a efektivní mechanismus správy verzí.
Část 5: Závěr
Porozumět verzování záznamů a zvolit pro něj správný přístup je v modelování dat zásadní. Přístup rovnocenných záznamů je jednoduchý, ale přístup podřízených verzí nabízí větší kontrolu a efektivní auditní stopu. Když si prostudujete implementaci v Salesforce a zvážíte své konkrétní výzvy datového modelu, můžete zvolit přístup, který vašim potřebám odpovídá nejlépe.
Zůstaňte naladěni!
Další poznatky a tipy najdete tady na www.SteveTechArc.com a na kanálu @SteveTechArc (opens in a new tab) na YouTube. Přihlaste se k odběru a vylepšete s námi své dovednosti v modelování dat!
Pomáháme měnit svět sdílením zajímavých myšlenek s kolegy architekty a se všemi, kdo jsou na cestě k architektovi!
STA 2.1