ساختار مدل داده Tableau
مدل داده Tableau، یک نمودار است که به Tableau میگوید چگونه باید دادهها را در جداول پایگاه داده متصل، پرسوجو (Query) کند. هر منبع دادهای که در Tableau ایجاد میکنید، دارای یک مدل داده است.
ساختار مدل داده توسط جداولی ایجاد میشود که شما آنها را به بوم (canvas) در صفحه منبع داده (Data Source page) اضافه میکنید. یک مدل داده میتواند ساده باشد، مانند یک جدول واحد؛ یا میتواند پیچیدهتر باشد، با چندین جدول که از ترکیبات مختلف روابط (relationships)، اتصالها (joins) و ادغامها (unions) استفاده میکنند.
مدل داده Tableau دارای دو لایه است:
۱. لایه منطقی (Logical Layer)
- نمای پیشفرض که ابتدا در بوم صفحه منبع داده میبینید، لایه منطقی منبع داده است.
- در این لایه، دادهها را با استفاده از روابط (relationships) (که گاهی به آنها “نودل” نیز گفته میشود) ترکیب میکنید.
- این لایه را به عنوان بوم روابط (Relationships canvas) در صفحه منبع داده در نظر بگیرید.
۲. لایه فیزیکی (Physical Layer)
- لایه بعدی، لایه فیزیکی است.
- در این لایه، دادهها را بین جداول با استفاده از اتصالها (joins) و ادغامها (unions) ترکیب میکنید.
- هر جدول منطقی حداقل شامل یک جدول فیزیکی در این لایه است.
- این لایه را به عنوان بوم اتصال/ادغام (Join/Union canvas) در صفحه منبع داده در نظر بگیرید.
- برای مشاهده یا اضافه کردن اتصالها و ادغامها، روی یک جدول منطقی دوبار کلیک کنید.
| LOGICAL LAYER | PHYSICAL LAYER | |
|---|---|---|
| بوم روابط در صفحه منبع داده | بوم Join/Union در صفحه منبع داده | |
| جداولی که به اینجا میکشانید، جداول منطقی نامیده میشوند. | جداولی که به اینجا میکشانید، جداول فیزیکی نامیده میشوند. | |
| جداول منطقی میتوانند به جداول منطقی دیگر مرتبط باشند. | جداول فیزیکی را میتوان به جداول فیزیکی دیگر متصل یا متحد کرد | |
| جداول منطقی مانند ظروفی برای جداول فیزیکی هستند. | برای مشاهده جداول فیزیکی، روی یک جدول منطقی دوبار کلیک کنید | |
| سطح جزئیات در سطح ردیف جدول منطقی است | سطح جزئیات در سطح ردیف جداول فیزیکی ادغام شده است | |
| جداول منطقی مجزا (نرمالسازی شده) باقی میمانند و در منبع داده ادغام نمیشوند. | جداول فیزیکی در یک جدول واحد و مسطح ادغام میشوند که جدول منطقی را تعریف میکند. |
لایههای مدل داده
مدل داده Tableau از دو لایه تشکیل شده است که هر یک وظیفه خاصی در سازماندهی و ترکیب دادهها دارند:
۱. لایه منطقی (Logical Layer)
- نمای اصلی: این لایهای است که در بالاترین سطح منبع داده مشاهده میکنید.
- روش ترکیب داده: در این لایه، جداول را با استفاده از روابط (relationships) به جای اتصالها (joins) ترکیب میکنید. به همین دلیل به آن بوم روابط (Relationships canvas) نیز گفته میشود.
- نحوه عملکرد: وقتی دادهها را از چندین جدول ترکیب میکنید، هر جدولی که به بوم میآورید باید با جدول دیگری رابطه داشته باشد.
- عدم نیاز به تعریف Join: شما نیازی به تعریف انواع اتصال (join types) ندارید؛ Tableau به طور خودکار و بر اساس فیلدها و زمینه تحلیل در کاربرگ (worksheet)، نوع اتصال مناسب را در حین تجزیه و تحلیل انتخاب میکند.
۲. لایه فیزیکی (Physical Layer)
- روش ترکیب داده: این لایه جایی است که میتوانید دادهها را با استفاده از اتصالها (joins) و ادغامها (unions) ترکیب کنید. همچنین تنها در این بوم است که میتوانید از محورگردانی (pivots) استفاده کنید.
- نام دیگر: این لایه را میتوان بوم اتصال/ادغام (Join/Union canvas) نامید.
- سابقه: در نسخههای قبلی Tableau، لایه فیزیکی تنها لایه موجود در مدل داده بود.
- ساختار: هر جدول منطقی میتواند شامل یک یا چند جدول فیزیکی در داخل خود باشد.
نکته مهم
- شما همچنان میتوانید منابع داده تکجدولی را در Tableau ایجاد کنید که از اتصالها (joins) و ادغامها (unions) استفاده میکنند.
- رفتار تحلیل تکجدولی در Tableau تغییری نکرده است.
- کارپوشههای (workbooks) ارتقا یافته شما دقیقاً مانند قبل از نسخه 2020.2 عمل خواهند کرد.
درک مدل داده
در نسخههای قبلی Tableau (قبل از 2020.2)، مدل داده فقط یک لایه فیزیکی داشت. در Tableau 2020.2 و نسخههای بعدی، مدل داده دارای یک لایه منطقی (معنایی) و یک لایه فیزیکی است. این به شما گزینههای بیشتری برای ترکیب دادهها با استفاده از طرحوارهها برای تطبیق با تحلیل شما میدهد.
در نسخههای قبلی Tableau (قبل از 2020.2)، مدل داده در منبع داده شما شامل یک لایه فیزیکی واحد بود که در آن میتوانستید اتصالات (joins) و اتصالات (universities) را مشخص کنید. جداول اضافه شده به لایه فیزیکی (joined یا unioned) یک جدول مسطح (denormalized) واحد برای تجزیه و تحلیل ایجاد میکنند.
مدل داده جدید Tableau: لایه منطقی و فیزیکی
در نسخه Tableau 2020.2 و نسخههای بعدی، مدل داده در منبع داده شما شامل یک لایه معنایی (semantic layer) جدید در بالای لایه فیزیکی است که لایه منطقی نامیده میشود. در این لایه میتوانید چندین جدول را اضافه کرده و آنها را به یکدیگر مرتبط (Relate) کنید.
- حفظ استقلال: جداول در لایه منطقی در منبع داده ادغام (merge) نمیشوند؛ آنها متمایز (normalized) باقی میمانند و سطح جزئیات اصلی (native level of detail) خود را حفظ میکنند.
- جدول منطقی به عنوان کانتینر: هر جدول منطقی به عنوان یک “کانتینر” برای جداول فیزیکی ادغام شده عمل میکند. یک جدول منطقی میتواند حاوی یک جدول فیزیکی واحد باشد یا شامل چندین جدول فیزیکی باشد که از طریق اتصالها (joins) یا ادغامها (unions) با هم ادغام شدهاند.
ساخت یک مدل داده جدید
هنگامی که یک یا چند جدول را به لایه منطقی اضافه میکنید، در واقع در حال ساخت مدل داده برای منبع داده خود هستید. یک منبع داده میتواند از یک جدول منطقی واحد تشکیل شود یا میتوانید چندین جدول را به بوم بکشید تا یک مدل پیچیدهتر ایجاد کنید.
گامهای ساخت مدل
- جدول ریشه (Root Table): اولین جدولی که به بوم میکشید، به جدول ریشه مدل داده در منبع داده شما تبدیل میشود.
- جداول اضافی: پس از افزودن جدول ریشه، میتوانید جداول اضافی را به هر ترتیبی بکشید. باید در نظر بگیرید که کدام جداول باید با یکدیگر مرتبط شوند و جفت فیلدهای تطبیقدهنده (matching field pairs) را که برای هر رابطه تعریف میکنید، مشخص نمایید.
- مدل ستارهای (Star Schema): اگر در حال ایجاد یک طرحواره ستارهای هستید، میتواند مفید باشد که جدول واقعیت (fact table) را ابتدا بکشید و سپس جداول بُعد (dimension tables) را با آن مرتبط کنید.
- حذف: حذف یک جدول در بوم به طور خودکار فرزندان مرتبط آن را نیز حذف میکند. اگر جدول ریشه را حذف کنید، تمام جداول دیگر مدل نیز حذف میشوند.
تعریف روابط
- جفت فیلدهای تطبیقدهنده: هر رابطه باید حداقل از یک جفت فیلد تطبیقدهنده تشکیل شده باشد. میتوانید چندین جفت فیلد را برای ایجاد یک رابطه ترکیبی (compound relationship) اضافه کنید.
- نوع داده: جفتهای تطبیقدهنده باید دارای نوع داده (data type) یکسانی باشند. تغییر نوع داده در صفحه منبع داده، این الزام را تغییر نمیدهد. Tableau همچنان از نوع داده موجود در پایگاه داده زیرین برای پرسوجوها استفاده خواهد کرد.
- فیلدهای محاسباتی: روابط میتوانند بر اساس فیلدهای محاسباتی (calculated fields) باشند.
- عملگرها: هنگام تعریف رابطه، میتوانید با استفاده از عملگرها (operators) مشخص کنید که فیلدهای مورد استفاده در روابط چگونه باید با هم مقایسه شوند.
مدل چند جدولی
برای ایجاد یک مدل چند جدولی، جداول را به لایه منطقی بوم صفحه منبع داده بکشید.
جداولی که به لایه منطقی بوم صفحه منبع داده میکشانید باید با یکدیگر مرتبط باشند. وقتی جداول اضافی را به بوم لایه منطقی میکشانید، Tableau به طور خودکار تلاش میکند تا بر اساس محدودیتهای کلیدی موجود و فیلدهای منطبق، رابطه را ایجاد کند تا رابطه را تعریف کند. اگر نتواند فیلدهای منطبق را تعیین کند، باید آنها را انتخاب کنید.
اگر هیچ محدودیتی شناسایی نشود، یک رابطه چند به چند ایجاد میشود و یکپارچگی ارجاعی روی برخی از رکوردها تنظیم میشود. این تنظیمات پیشفرض یک انتخاب ایمن هستند و بیشترین انعطافپذیری را برای منبع داده شما فراهم میکنند. تنظیمات پیشفرض از اتصالات بیرونی کامل پشتیبانی میکنند و با جمعآوری دادههای جدول قبل از تشکیل اتصالات در طول تجزیه و تحلیل، پرسوجوها را بهینه میکنند. تمام دادههای ستون و ردیف از هر جدول برای تجزیه و تحلیل در دسترس قرار میگیرند.
میتوانید با دوبار کلیک کردن روی جدول، دادههای بیشتری را در داخل هر جدول منطقی اضافه کنید. این کار لایه فیزیکی بوم صفحه منبع داده را باز میکند. اگر نیاز به استفاده از اتصالات یا اتحادیهها دارید، میتوانید جداولی را که میخواهید به هم متصل یا متحد کنید، به بوم لایه فیزیکی بکشید. جداول فیزیکی در جدول منطقی خود ادغام میشوند.
مدل تک جدولی
برای ایجاد یک مدل تک جدولی، یک جدول را به داخل لایه منطقی صفحه منبع داده بکشید. سپس میتوانید از فیلدهای آن جدول در پنجره داده برای تجزیه و تحلیل استفاده کنید.
مدل تک جدولی که شامل جداول دیگر است
شما میتوانید با دوبار کلیک کردن روی جدول، دادههای بیشتری را درون جدول منطقی تکی اضافه کنید. این کار لایه فیزیکی بوم صفحه منبع داده را باز میکند. اگر نیاز به استفاده از اتصال یا اتحاد دارید، میتوانید جداولی را که میخواهید به هم متصل یا متحد شوند، به بوم لایه فیزیکی بکشید. جداول فیزیکی در جدول منطقی خود ادغام میشوند.
این مثال جدول Book را در بوم روابط (لایه منطقی) منبع داده نشان میدهد. دوبار کلیک کردن روی جدول منطقی Book، بوم اتصال/اتحاد (لایه فیزیکی) را باز میکند.
در این مثال، اتصالها، جداول Award و Info را با جدول Book ادغام میکنند. در این حالت، اتصال بین Book و Award به صورت یک به چند و در سطح جزئیات awards خواهد بود. این کار مقادیر اندازهگیری Book و Info را کپی میکند. برای جلوگیری از تکرار، میتوانید Award و Info را به Book ربط دهید به جای اینکه آنها را در داخل جدول منطقی Book به هم متصل کنید.
طرحوارههای مدل داده پشتیبانیشده
قابلیتهای مدلسازی داده در Tableau (نسخه 2020.2 و جدیدتر) برای آسانتر کردن تجزیه و تحلیل بر روی سناریوهای رایج دادههای چندجدولی — از جمله مدلهای داده ستارهای (star) و برفی (snowflake) — طراحی شدهاند.
انواع مدلهای زیر در منابع داده Tableau پشتیبانی میشوند:
مدل تکجدولی (Single-table):
-
- تجزیه و تحلیل بر روی یک جدول منطقی واحد که ترکیبی از ابعاد (dimensions) و معیارها (measures) را در بر دارد، دقیقاً مانند نسخههای قبل از Tableau 2020.2 کار میکند.
- شما میتوانید یک جدول منطقی را با استفاده از ترکیبی از اتصالها (joins)، ادغامها (unions)، SQL سفارشی (custom SQL) و غیره بسازید.
مدلهای ستارهای و برفی (Star and Snowflake Schemas)
در انبارهای داده سازمانی (Enterprise Data Warehouses)، رایج است که دادهها در طرحوارههای ستارهای (Star) یا برفی (Snowflake) سازماندهی شوند. در این مدلها:
- معیارها (Measures) در یک جدول واقعیت مرکزی (Fact Table) قرار دارند.
- ابعاد (Dimensions) به صورت جداگانه در جداول بُعد مستقل (Dimension Tables) ذخیره میشوند.
این ساختار داده از جریانهای رایج تحلیل مانند جمعبندی (rollup) و جزئیسازی (drill down) پشتیبانی میکند.
این مدلها را میتوان مستقیماً با استفاده از روابط (relationships) در قابلیتهای مدلسازی داده که از Tableau 2020.2 به بعد در دسترس هستند، نشان داد:
- ابتدا جدول واقعیت (fact table) را به مدل بکشید.
- سپس جداول بُعد (dimension tables) را به جدول واقعیت (در یک طرحواره ستارهای) یا به سایر جداول بُعد (در یک طرحواره برفی) مرتبط کنید.
تنظیمات عملکرد (Performance Options)
Tableau از اطلاعات مدلسازی داده شما برای بهینهسازی پرسوجوها استفاده میکند:
۱. کاردینالیتی (Cardinality) یا رابطه چندبهچند:
- به طور معمول، در یک مدل ستارهای یا برفی که به خوبی مدلسازی شده است، روابط بین جدول واقعیت و جداول بُعد به صورت چندبهیک (many-to-one) خواهند بود.
- اگر این اطلاعات در انبار داده شما رمزگذاری شده باشد، Tableau به طور خودکار از آن برای تنظیم گزینههای عملکرد (Performance Options) رابطه استفاده میکند.
- در غیر این صورت، میتوانید این اطلاعات را به صورت دستی تنظیم کنید.
۲. یکپارچگی ارجاعی (Referential Integrity):
- در یک مدل ستارهای یا برفی که به خوبی مدلسازی شده است، هر سطر در جدول واقعیت باید دارای یک ورودی تطبیقدهنده در هر یک از جداول بُعد باشد.
- اگر این شرط درست باشد و در محدودیتهای یکپارچگی انبار داده شما ثبت شده باشد، Tableau به طور خودکار از این اطلاعات برای تنظیم یکپارچگی ارجاعی در گزینههای عملکرد استفاده میکند.
- دادههای نامنطبق: اگر برخی از سطرهای جدول واقعیت ورودی تطبیقدهندهای در جدول بُعد نداشته باشند (که گاهی اوقات “ابعاد دیررس (late-arriving dimensions)” یا “واقعیتهای زودرس (early-arriving facts)” نامیده میشوند):
- Tableau به طور پیشفرض، هنگام محاسبه معیارها، همه سطرها را نگه میدارد.
- اما ممکن است هنگام نمایش سرآیندهای بُعد (dimension headers)، مقادیر مربوطه را حذف کند.
مدلهای ستارهای و برفی (Snowflake) با معیارها در بیش از یک جدول
در برخی طرحوارههای ستارهای و برفی، تمام معیارهای (measures) مورد نیاز برای تحلیل شما در جدول واقعیت (fact table) مرکزی قرار دارند. با این حال، اغلب معیارهای دیگری که مورد علاقه هستند ممکن است با جداول بُعد (dimension tables) مرتبط باشند. حتی اگر جداول بُعد به طور صریح حاوی معیار نباشند، در تحلیل معمول است که بخواهید مقادیر ابعاد را شمارش (count) یا به شکل دیگری تراکمسازی (aggregate) کنید.
در چنین مواردی، تمایز بین جداول واقعیت و ابعاد کمتر واضح میشود. برای ایجاد وضوح در هنگام مشاهده مدل داده، توصیه میشود:
- ریزدانهترین (finest grain) جدول را ابتدا به بوم منبع داده اضافه کنید.
- سپس همه جداول دیگر را به آن جدول اولیه مرتبط کنید.
مزیت استفاده از روابط (Relationships)
اگر این جداول را با استفاده از اتصال (join) به یک جدول منطقی واحد ادغام میکردید:
- معیارهای موجود در جداول بُعد تکرار (replicated) میشدند.
- این تکرار منجر به تراکمهای تحریف شده (distorted aggregates) میشد، مگر اینکه با استفاده از محاسبات LOD (سطح جزئیات) یا COUNT DISTINCT احتیاط میکردید تا مقادیر تکراری را حذف کنید.
اما اگر به جای اتصال، بین این جداول رابطه (relationship) ایجاد کنید:
- Tableau قبل از انجام عملیات اتصال، معیارها را تراکمسازی (aggregate) میکند.
- این روش از بروز مشکل تکرار غیرضروری جلوگیری میکند.
- نتیجه آن، راحت شدن شما از نیاز به پیگیری دقیق سطح جزئیات معیارهای خود است.
تحلیل چندواقعیتی (Multi-fact Analysis) در Tableau
در نسخه 2024.2 و بعد از آن، قابلیتهای مدلسازی داده در Tableau از تحلیل چندواقعیتی (multi-fact analysis) از طریق استفاده از روابط چندواقعیتی (multi-fact relationships) پشتیبانی میکند.
مدل روابط چندواقعیتی (Multi-fact Relationship Model)
- ساختار: این مدل دادهای است که دارای چندین جدول پایه (multiple base tables) است. این ساختار اجازه میدهد تا جداول نامرتبط نیز در مدل وجود داشته باشند، به شرطی که جداول مشترک (shared tables) دیگری نیز در مدل موجود باشند.
- نحوه اتصال دادهها (“Stitching”): در طول تجزیه و تحلیل، فیلدهای موجود در یک جدول مشترک (مانند بعد زمان یا مکان) جداول دادهای را که در غیر این صورت نامرتبط هستند، بر اساس ابعاد مشترکی که در آن سهیم هستند، به هم “میدوزند” (stitch) (مثل رخداد در یک مکان یا زمان یکسان).
- حفظ مزایا: تمام مزایای روابط حفظ میشوند، از جمله حفظ ریزدانگی (grain) یا سطح جزئیات اصلی (native level of detail) هر جدول.
عملکرد پرسوجو (Query Performance)
- انتخاب هوشمند Join: مانند مدلهای تکجدولی، Tableau بهترین نوع اتصال (join type) را بر اساس ساختار ویژوالسازی (viz) تعیین میکند.
- انواع Join گسترشیافته: در یک مدل روابط چندواقعیتی، گزینههای اتصال گسترش یافته و شامل Outer Joins و Cross Joins میشوند تا سطوح مختلف ارتباط بین جداول را مدیریت کنند.
سناریوهای استفاده از مدل روابط چندواقعیتی (Multi-fact)
متن زیر، سناریوهای مختلفی را که نشان میدهند باید به جای استفاده از یک منبع داده تکجدولی، یک مدل روابط چندواقعیتی (multi-fact relationship model) با چندین جدول پایه (base tables) بسازید، توضیح میدهد:
۱. روابط دایرهای (Circular Relationships)
- مشکل: روابط دایرهای (Cycles) در مدلهای تکجدولی (که در آنها همه جداول به هم مرتبط هستند) پشتیبانی نمیشوند.
- راهحل: اگر تلاش میکنید یک منبع داده با یک چرخه بسازید، باید از روابط چندواقعیتی استفاده کنید و جدول پاییندستی در چرخه را به جای اینکه بخشی از یک جدول پایه باشد، به یک جدول پایه دیگر تبدیل کنید.
۲. ابعاد تأیید شده (Conformed Dimensions) و روابط OR زمینهای (Contextual OR)
این سناریو مربوط به جداولی است که بر اساس مجموعههای یکسانی از بندهای رابطه (مانند تاریخ و مکان) مرتبط هستند:
- ابعاد تأیید شده (Conformed Dimensions): اگر مجموعهای از جداول دارید که بر اساس مجموعههای یکسانی از بندهای رابطه مرتبط هستند، آن ابعاد باید استخراج شده و به جداول مشترک (shared tables) تبدیل شوند.
- این امر به ویژه مفید است زیرا برای اینکه جداول برای آن رکوردها مرتبط باشند، چندین بند رابطه باید همگی درست باشند (منطقاً یک AND).
- روابط OR زمینهای (Contextual OR): اگر، به جای یک AND، میخواهید رکوردهایی را تحلیل کنید که در آنها ممکن است تنها یکی از شرایط در یک زمان درست باشد (یک OR زمینهای)، این انعطافپذیری با تنظیم مدل داده با جداول بُعد مشترک (shared dimension tables) به جای آن فراهم میشود.
۳. تلفیقهای معادل (Equivalent Blends)
- مشکل: اگر از ویژگی تلفیق داده (Data Blending) استفاده میکنید اما میخواهید یک تلفیق معادل داشته باشید بدون نیاز به منابع داده اولیه (Primary) و ثانویه (Secondary)، مدل چندواقعیتی راه حل است.
- راهحل: یک مدل داده بسازید که منابع داده استفاده شده در تلفیق را به همراه فیلدهای پیوند دهنده (linking fields) آنها در یک یا چند جدول مشترک ترکیب کند. این کار اساساً عملکرد تلفیق را در چارچوب یک مدل داده واحد تکرار میکند.
الزامات روابط در یک مدل داده
- هنگام ارتباط دادن جداول، فیلدهایی که روابط را تعریف میکنند باید نوع داده یکسانی داشته باشند. تغییر نوع داده در صفحه منبع داده، این الزام را تغییر نمیدهد. Tableau همچنان از نوع داده در پایگاه داده اصلی برای پرسوجوها استفاده میکند.
- شما نمیتوانید روابط را بر اساس فیلدهای جغرافیایی تعریف کنید.
- روابط دایرهای در مدل داده پشتیبانی نمیشوند.
- شما نمیتوانید روابط بین منابع داده منتشر شده را تعریف کنید.
عواملی که مزایای استفاده از جداول مرتبط را محدود میکنند
- دادههای کثیف در جداول (یعنی جداولی که با یک مدل ساختار یافته خوب ایجاد نشدهاند و شامل ترکیبی از معیارها و ابعاد در چندین جدول هستند) میتوانند تجزیه و تحلیل چند جدولی را پیچیدهتر کنند.
- استفاده از فیلترهای منبع داده، توانایی Tableau را برای حذف اتصال در دادهها محدود میکند. حذف اتصال اصطلاحی است برای نحوه سادهسازی پرسوجوها توسط Tableau با حذف اتصالات غیرضروری.
- جداولی با مقادیر زیاد و نامتناسب در روابط.
- در نسخههای 2020.2 تا 2024.1: مرتبط کردن چندین جدول واقعیت با جداول ابعاد چندگانه (تلاش برای مدلسازی ابعاد مشترک یا منطبق). در نسخه 2024.2 و بالاتر، میتوانید از روابط چند واقعیتی برای رسیدگی به این موارد استفاده کنید.
برای خرید لایسنس نرم افزار Tableau ، میتوانید از خدمات ما استفاده نموده و درخواست خود را از طریق فرم زیر ثبت نمایید.










بدون دیدگاه