Problem
A social publishing archive preserves uploaded filenames rather than canonical asset IDs, so the same clip receives multiple identities after minor renames.
Solution
Root Cause / Diagnostic:
Relying on arbitrary, mutable filenames as database primary keys causes duplicate records whenever a file is renamed for a specific platform or marketing test. A single video clip becomes five disparate database entries, destroying analytics consolidation and making cross-platform performance tracking impossible.
Actionable Fix:
1. Generate an immutable Universal Asset UUID (or canonical alphanumeric ID) upon clip creation and register it as the permanent database primary key.
2. Embed the immutable UUID into the file's internal metadata (XMP/EXIF/ID3 or QuickTime User Data tag) so the identity persists regardless of external filename changes.
3. Audit publishing analytics dashboards to group and aggregate performance metrics by canonical Asset ID rather than published filename.
Pro Tip:
Use persistent metadata tagging in FFmpeg (-metadata comment="UUID:...") to write the canonical ID directly into the container header, ensuring automated analytics parsers can always extract the true parent ID.
Relying on arbitrary, mutable filenames as database primary keys causes duplicate records whenever a file is renamed for a specific platform or marketing test. A single video clip becomes five disparate database entries, destroying analytics consolidation and making cross-platform performance tracking impossible.
Actionable Fix:
1. Generate an immutable Universal Asset UUID (or canonical alphanumeric ID) upon clip creation and register it as the permanent database primary key.
2. Embed the immutable UUID into the file's internal metadata (XMP/EXIF/ID3 or QuickTime User Data tag) so the identity persists regardless of external filename changes.
3. Audit publishing analytics dashboards to group and aggregate performance metrics by canonical Asset ID rather than published filename.
Pro Tip:
Use persistent metadata tagging in FFmpeg (-metadata comment="UUID:...") to write the canonical ID directly into the container header, ensuring automated analytics parsers can always extract the true parent ID.