{"id":2249,"date":"2025-11-04T22:25:16","date_gmt":"2025-11-04T21:25:16","guid":{"rendered":"https:\/\/www.strehle.de\/tim\/?p=2249"},"modified":"2025-11-08T23:00:00","modified_gmt":"2025-11-08T22:00:00","slug":"netflix-technology-blog-model-once-represent-everywhere","status":"publish","type":"post","link":"https:\/\/www.strehle.de\/tim\/weblog\/archives\/2025\/11\/04\/netflix-technology-blog-model-once-represent-everywhere\/","title":{"rendered":"Netflix Technology Blog: Model Once, Represent Everywhere"},"content":{"rendered":"\n<p>Alex Hutter, Alexandre Bertails, Claire Wang, Haoyuan He, Kishore Banala, Peter Royal, Shervin Afshar \u2013 <a href=\"https:\/\/netflixtechblog.com\/uda-unified-data-architecture-6a6aee261d8d\">Model Once, Represent Everywhere: UDA (Unified Data Architecture) at Netflix<\/a>:<\/p>\n\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201eCore business concepts like \u2018actor\u2019 or \u2018movie\u2019 are modeled in many places: in our Enterprise GraphQL Gateway powering internal apps, in our asset management platform storing media assets, in our media computing platform that powers encoding pipelines, to name a few. Each system models these concepts differently and in isolation, with little coordination or shared understanding.\u201c<\/p><p>\u201eUDA needs to solve the data integration problem. We needed a data catalog unified with a schema registry, but with a hard requirement for semantic integration. Connecting business concepts to schemas and data containers in a graph-like structure, grounded in strong semantic foundations, naturally led us to consider a knowledge graph approach. We chose RDF and SHACL as the foundation for UDA\u2019s knowledge graph.\u201c<\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Alex Hutter, Alexandre Bertails, Claire Wang, Haoyuan He, Kishore Banala, Peter Royal, Shervin Afshar \u2013 Model Once, Represent Everywhere: UDA (Unified Data Architecture) at Netflix: \u201eCore business concepts like \u2018actor\u2019 or \u2018movie\u2019 are modeled in many places: in our Enterprise GraphQL Gateway powering internal apps, in our asset management platform storing media assets, in our [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_share_on_mastodon":"0"},"categories":[1],"tags":[10],"class_list":["post-2249","post","type-post","status-publish","format-standard","hentry","category-weblog","tag-links"],"share_on_mastodon":{"url":"","error":""},"_links":{"self":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/2249","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/comments?post=2249"}],"version-history":[{"count":1,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/2249\/revisions"}],"predecessor-version":[{"id":2250,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/2249\/revisions\/2250"}],"wp:attachment":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/media?parent=2249"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/categories?post=2249"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/tags?post=2249"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}