نتفلیکس: معرفی چارچوب Upper برای یکپارچه سازی داده‌ها

نتفلیکس: معرفی چارچوب Upper برای یکپارچه سازی داده‌ها

شرکت نتفلیکس با هدف استانداردسازی تعریف دامنه در سیستم‌های مهندسی محتوای خود، چارچوب مدل‌سازی حوزه Unified (Upper) را معرفی کرده است. پیش از این، تیم‌ها مدل‌های دامنه جداگانه‌ای داشتند که نیازمند ترجمه سفارشی بین هر جفت سیستم بود. Upper با ایجاد یک لایه مفهومی سازگار، پشتیبانی مهندسی را در حالی که شرکت به سمت رویدادهای زنده، بازی‌سازی، تبلیغات و تولید محتوای جهانی حرکت می‌کند، تسهیل می‌سازد.

Upper بر پایه استانداردهای W3C مانند RDF برای نمایش نمودارهای مفهومی و SHACL برای اعتبارسنجی بنا شده است. این چارچوب اصل «مدل‌سازی یکبار، نمایش همه‌جا» را در سراسر اکوسیستم داده فعال می‌کند. Upper مفاهیم را از طریق موجودیت‌های کلیدی‌شده، ویژگی‌های آن‌ها و روابطشان در مرزهای دامنه سازماندهی می‌کند.

طراحی گرامر مدل‌سازی و ساختار اعتبارسنجی به گونه‌ای است که با تکامل تعاریف، سازگاری حفظ شود. مفاهیم کلیدی‌شده را می‌توان به‌صورت یکنواخت گسترش داد و امکان افزودن ویژگی‌ها یا روابط جدید بدون تغییر در تعاریف موجود فراهم می‌شود؛ این امر به دامنه‌ها اجازه می‌دهد تا در طول زمان بدون شکستن مدل‌های موجود توسعه یابند.

جالب است بدانید که Upper از رویکرد «گراف نام‌گذاری‌شده اول» برای مدل داده استفاده می‌کند، جایی که هر گراف نام‌گذاری شده مطابق با یک مدل حاکم در نمودار دانش است. این نمودار دانش شامل سه جزء اصلی: مدل‌های دامنه، نمایش‌های ظاهری داده و نگاشت‌ها است که مفاهیم را تعریف می‌کنند، محل داده‌ها را مشخص کرده و مفاهیم را به منابع داده فیزیکی پیوند می‌دهند.

در هسته UDA، موجودیت‌های دامنه تعریف‌شده در Upper از طریق فرآیندی به نام «پروژکشن» به نمایش‌دهنده‌های ظاهری داده تبدیل می‌شوند. پروژکشن‌ها مصنوعات فنی ملموس مانند طرح‌های GraphQL، سوابق Avro، جداول Apache Iceberg، طرح‌های SQL و انواع Java را تولید می‌کنند که سیستم‌های پایین دستی می‌توانند از آن‌ها استفاده کنند.

UDA نگاشت‌های صریح بین تعاریف مفهومی و این ظاهرهای داده فیزیکی را حفظ می‌کند تا اطمینان حاصل شود که با تکامل مدل‌ها، سازگاری حفظ می‌شود. نکته مهم اینجاست که نتفلیکس معتقد است این رویکرد به تغییرات در مفاهیم دامنه اجازه می‌دهد تا به‌طور خودکار به همه نمایش‌ها منتشر شوند و از بروزرسانی‌های دستی پشتیبانی کنند.

در آینده، نتفلیکس قصد دارد Upper و UDA را برای پشتیبانی از پروژکشن‌های اضافی مانند Protobuf/gRPC، تجسم نمودارهای دانش داده‌های نمونه برای پرس‌وجو و پروفایلینگ، و همچنین رسیدگی به چالش‌هایی که در ابتدا توسط Graph Search ایجاد شده‌اند گسترش دهد. مهندسان نتفلیکس هدفشان ارتقای قابلیت کشف‌پذیری، خودکارسازی و قابلیت تعامل در سراسر اکوسیستم محتوا و داده‌های رو به رشد نتفلیکس است.

📌 توجه: این مطلب از منابع بین‌المللی ترجمه و بازنویسی شده است.