توسعه DATA VAULT و انتقال به BUSINESS DATA VAULT

در مقاله قبلی، در مورد مبانی DATA VAULT صحبت کردم، عناصر اصلی DATA VAULT و هدف آنها را شرح دادم. این را نمی توان موضوع DATA VAULT را تمام شده تلقی کرد، باید در مورد مراحل بعدی تکامل DATA VAULT صحبت کرد.

و در این مقاله بر توسعه DATA VAULT و گذار به BUSINESS DATA VAULT یا به سادگی BUSINESS VAULT تمرکز خواهم کرد.

دلایل ظهور BUSINESS DATA VAULT

لازم به ذکر است که DATA VAULT در عین داشتن نقاط قوت خاصی خالی از اشکال نیست. یکی از این معایب مشکل در نوشتن پرس و جوهای تحلیلی است. کوئری ها تعداد قابل توجهی JOIN دارند، کد طولانی و دست و پا گیر است. همچنین داده های وارد شده به DATA VAULT دچار هیچ گونه دگرگونی نمی شوند، بنابراین از نظر تجاری، DATA VAULT به شکل خالص آن هیچ ارزش مطلقی ندارد.

برای رفع این کاستی ها بود که روش DATA VAULT با عناصری مانند:

  • جداول PIT (نقطه در زمان)؛
  • جداول BRIDGE;
  • مشتقات از پیش تعریف شده

بیایید نگاهی دقیق تر به هدف این عناصر بیندازیم.

جداول PIT

به طور معمول، یک نهاد تجاری (HUB) ممکن است حاوی داده‌هایی با نرخ‌های به‌روزرسانی متفاوت باشد، برای مثال، اگر در مورد داده‌هایی صحبت می‌کنیم که مشخصه یک شخص است، می‌توان گفت که اطلاعات مربوط به یک شماره تلفن، آدرس یا ایمیل دارای نرخ به‌روزرسانی بالاتری نسبت به موارد گفته شده است. نام کامل، مشخصات پاسپورت، وضعیت تاهل یا جنسیت.

بنابراین هنگام تعیین ماهواره ها باید فرکانس به روز رسانی آنها را در نظر داشته باشید. چرا مهم است؟

اگر ویژگی‌هایی را با نرخ به‌روزرسانی متفاوت در یک جدول ذخیره می‌کنید، باید هر بار که مشخصه‌ای که اغلب تغییر می‌کند به‌روزرسانی می‌شود، یک ردیف به جدول اضافه کنید. نتیجه افزایش فضای دیسک و افزایش زمان اجرای پرس و جو است.

اکنون که ماهواره ها را بر اساس فرکانس به روز رسانی تقسیم کرده ایم و می توانیم داده ها را به طور مستقل در آنها بارگذاری کنیم، باید اطمینان حاصل کنیم که می توانیم داده های به روز را دریافت کنیم. بهتر است، بدون استفاده از JOIN های غیر ضروری.

بگذارید توضیح بدهم، به عنوان مثال، شما باید اطلاعات فعلی (طبق تاریخ آخرین به روز رسانی) را از ماهواره هایی که نرخ به روز رسانی متفاوتی دارند به دست آورید. برای انجام این کار، نه تنها باید یک JOIN ایجاد کنید، بلکه باید چندین درخواست تودرتو (برای هر ماهواره حاوی اطلاعات) با انتخاب حداکثر تاریخ به‌روزرسانی MAX (تاریخ به‌روزرسانی) ایجاد کنید. با هر JOIN جدید، چنین کدی رشد می کند و خیلی سریع درک آن دشوار می شود.

جدول PIT برای ساده‌سازی چنین پرسش‌هایی طراحی شده است؛ جداول PIT همزمان با نوشتن داده‌های جدید در DATA VAULT پر می‌شوند. جدول PIT:

توسعه DATA VAULT و انتقال به BUSINESS DATA VAULT

بنابراین، ما اطلاعاتی در مورد ارتباط داده ها برای همه ماهواره ها در هر نقطه از زمان داریم. با استفاده از JOIN به جدول PIT، می توانیم پرس و جوهای تودرتو را به طور کامل حذف کنیم، طبیعتاً با این شرط که PIT هر روز و بدون شکاف پر شود. حتی اگر شکاف هایی در PIT وجود داشته باشد، می توانید آخرین داده ها را تنها با استفاده از یک پرس و جوی تودرتو در خود PIT دریافت کنید. یک پرس و جو تو در تو سریعتر از پرس و جوهای تودرتو برای هر ماهواره پردازش می شود.

بریج

جداول BRIDGE نیز برای ساده سازی پرس و جوهای تحلیلی استفاده می شود. با این حال، آنچه با PIT متفاوت است، ابزاری برای ساده‌سازی و سرعت بخشیدن به درخواست‌ها بین هاب‌ها، لینک‌ها و ماهواره‌های مختلف است.

جدول شامل تمام کلیدهای لازم برای همه ماهواره ها است که اغلب در پرس و جوها استفاده می شود. علاوه بر این، در صورت لزوم، در صورت نیاز به نام کلیدها برای تجزیه و تحلیل، می توان کلیدهای کسب و کار هش شده را با کلیدهایی به صورت متن تکمیل کرد.

واقعیت این است که بدون استفاده از BRIDGE، در فرآیند دریافت داده‌های واقع در ماهواره‌های متعلق به هاب‌های مختلف، لازم است که نه تنها خود ماهواره‌ها، بلکه پیوندهایی که هاب‌ها را به هم متصل می‌کنند، JOIN ایجاد کنیم.

وجود یا عدم وجود BRIDGE با پیکربندی ذخیره سازی و نیاز به بهینه سازی سرعت اجرای پرس و جو تعیین می شود. ارائه یک نمونه جهانی از BRIGE دشوار است.

مشتقات از پیش تعریف شده

نوع دیگری از شی‌هایی که ما را به BUSINESS DATA VAULT نزدیک‌تر می‌کنند، جداول حاوی شاخص‌های از پیش محاسبه‌شده هستند. چنین جداول واقعاً برای تجارت مهم هستند؛ آنها حاوی اطلاعاتی هستند که طبق قوانین داده شده جمع آوری شده و دسترسی به آن را نسبتاً آسان می کنند.

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

به عنوان مثال، هاب حاوی اطلاعات یک کارمند ممکن است شامل یک ماهواره با شاخص هایی مانند:

  • حداقل دستمزد؛
  • حداکثر حقوق؛
  • میانگین درامد؛
  • مجموع تجمعی دستمزدهای تعهدی و غیره

منطقی است که مشتقات از پیش تعریف شده را در جدول PIT همان هاب قرار دهید، سپس می توانید به راحتی برش های داده را برای یک کارمند در تاریخ انتخاب شده خاص بدست آورید.

نتیجه گیری

همانطور که تمرین نشان می دهد، استفاده از DATA VAULT توسط کاربران تجاری به چند دلیل تا حدودی دشوار است:

  • کد پرس و جو پیچیده و دست و پا گیر است.
  • فراوانی JOIN بر عملکرد کوئری ها تأثیر می گذارد.
  • نوشتن پرس و جوهای تحلیلی نیاز به دانش برجسته ای از طراحی ذخیره سازی دارد.

برای ساده کردن دسترسی به داده ها، DATA VAULT با اشیاء اضافی گسترش می یابد:

  • جداول PIT (نقطه در زمان)؛
  • جداول BRIDGE;
  • مشتقات از پیش تعریف شده

بعد مقاله من قصد دارم به نظر خودم جالب ترین چیز را برای کسانی که با BI کار می کنند بگویم. من راه هایی را برای ایجاد جداول واقعیت و جداول ابعاد بر اساس DATA VAULT ارائه خواهم کرد.

مطالب مقاله بر اساس موارد زیر است:

  • بر انتشارات کنتا گرازیانو، که علاوه بر توضیحات مفصل، شامل نمودارهای مدل است.
  • کتاب: "ساخت انبار داده مقیاس پذیر با DATA VAULT 2.0"؛
  • ماده مبانی خزانه داده.

منبع: www.habr.com

اضافه کردن نظر