
اگر با دیتابیس، انبار داده یا سیستمهای تجزیه و تحلیل کار کرده باشی، احتمالاً اسم «معماری مدالین» (Medallion Architecture) یا همان معماری سهلایهٔ «Bronze – Silver – Gold» را شنیدهای.
این معماری یکی از استانداردهای مدرن دنیای داده است و تقریباً در تمام پلتفرمهای مطرح مثل Oracle ADW، Databricks، Snowflake و Lakehouse بهکار میرود.
هدف این معماری خیلی ساده است:
«داده را از خامترین حالت، به ارزشمندترین و قابل تحلیلترین شکل ممکن تبدیل کن.»
اما این ساده بهنظر رسیدن، پشتصحنهی مهمی دارد. در ادامه دقیقاً توضیح میدهم هر لایه چه نقشی دارد و چرا وجودش ضروری است.
در این مقاله آموزش Data Engineering، توضیح میدهیم هر لایه چه کاری انجام میدهد و چگونه باعث ارزشآفرینی در پروژههای داده میشود.
سالها مدل ETL (استخراج–تبدیل–بارگذاری) قلب معماری داده در سازمانها بود. هر دادهای که از ERP، فایلهای CSV یا سیستمهای CRM میآمد، ابتدا در سرورهای میانی پردازش میشد و بعد وارد انباره داده میگردید.
پیشنهاد می کنم این مقاله زیر رو حتما مطالعه کنی.
در این مقاله شما می خوانید
لایهٔ Bronze — جایی که همهچیز از همینجا شروع میشود
Bronze همان جایی است که داده را «بدون هیچ تغییری» واردش میکنی.
هرچیزی که از منبع میخوانی—چه CSV باشد، چه لاگ، چه رکورد دیتابیس—بدون دستکاری وارد Bronze میشود.
ویژگیهای کلیدی Bronze:
- داده خام و دستنخورده است
- فقط append میشود، یعنی تاریخچه همیشه حفظ میشود
- منبع حقیقت (Single Source of Truth) برای بازسازی داده است
- هیچ پاکسازی یا فیلتر جدی روی آن انجام نمیشود
ارزش این لایه چیه؟ اعتماد.
هر زمان شک کردی داده خراب شده یا لایههای بالا مشکل دارند، کافیست دوباره از Bronze بازسازی کنی.
لایهٔ Silver — جایی که داده تبدیل به «دادهٔ قابل اعتماد» میشود
در Silver، داده بالاخره نفسی تازه میکشد.
اینجا جایی است که داده تمیز میشود، استاندارد میشود و از حالت بههمریخته به چیزی تبدیل میشود که بتوانی روی آن حساب باز کنی.
کارهایی که در Silver معمولاً انجام میدهی:
- حذف رکوردهای تکراری
- تبدیل تایپها (مثل تاریخ، عدد و…)
- Validate کردن داده
- پاکسازی Nullها
- یکپارچهسازی چند منبع داده
- ساختن نسخهٔ استاندارد و قابل مصرف
نتیجه؟
دادهای که هنوز خام نیست، اما هنوز هم تحلیلی کامل نشده؛
چیزی بینابین—داده تمیز و قابل اتکا.
لایهٔ Gold — جایی که داده تبدیل به «پول و تصمیم» میشود
Gold همانجایی است که خروجی نهایی تحلیلها شکل میگیرد.
همان دادهای که قرار است وارد داشبورد شود، برای مدیرعامل گزارش شود یا خوراک مدلهای ML باشد.
در Gold چه کارهایی انجام میدهیم؟
- ساخت fact table و dimension table
- ساخت KPIهای جدی:
- فروش روزانه
- نرخ رشد
- دستهبندیهای پرفروش
- تحلیل رفتار مشتری
- CLTV، Churn و …
- آمادهسازی داده برای ابزارهای تحلیل مثل Power BI و Tableau
- ساخت Data Mart تخصصی برای هر تیم
Gold یعنی ارزش. یعنی خروجی نهایی.
یعنی جایی که تمام زحمات دو لایهٔ قبلی خودش را نشان میدهد.
مسیر تبدیل داده: Bronze → Silver → Gold
اگر بخواهیم این سه لایه را خیلی ساده خلاصه کنیم:
- Bronze: «جمع کردن دادهٔ خام»
- Silver: «تمیز کردن و استاندارد کردن»
- Gold: «تحلیل، Insight و ارزش»
هرچه از پایین به بالا میروی، داده تمیزتر، ساختارمندتر و ارزشمندتر میشود.
یک مثال کاربردی از معماری Medallion
فرض کن یک فروشگاه آنلاین داری و از سه منبع داده ورودی داری:
- سفارشها
- مشتریان
- محصولات
مرحله ۱: ذخیره در Bronze
هیچ تغییری نمیدهی، فقط ذخیره:
bronze.orders
bronze.customers
bronze.products
مرحله ۲: پاکسازی در Silver
مثلاً رکوردهای Canceled حذف میشود، تایپها درست میشود، Nullها پاک میشود و داده استاندارد میشود.
مثال:
SELECT order_id,
CAST(order_amount AS NUMBER) AS amount,
CAST(order_date AS DATE) AS order_date,customer_id,product_id
FROM bronze.orders
WHERE order_status = ‘completed’;
مرحله ۳: ساخت Fact Table در Gold
تحلیلمحور:
SELECT o.order_id,
o.amount,
o.order_date,
c.customer_age,
c.province,
p.category,
p.brand
FROM silver.orders_clean o
LEFT JOIN silver.customers_clean c ON o.customer_id = c.customer_id
LEFT JOIN silver.products_clean p ON o.product_id = p.product_id;
حالا داده آماده نمایش در داشبورد Power BI است.
مزیتهای مدالین نسبت به روشهای قدیمی
این معماری چند ویژگی جذاب دارد:
- خطاها سریع پیدا میشوند
- امکان بازسازی کامل لایهها از Bronze وجود دارد
- مدیریت داده سادهتر و استانداردتر میشود
- برای Lakehouse طراحی شده و آیندهنگر است
- برای Oracle Cloud، Databricks، Snowflake و BigQuery کاملاً سازگار است
سوالات متداول درباره معماری Medallion در مهندسی داده
معماری Medallion یک مدل سهلایه (Bronze، Silver، Gold) برای مدیریت و تبدیل داده است که کمک میکند دادهٔ خام بهصورت مرحلهبهمرحله تمیز، استاندارد و تحلیلی شود.
دلیل اینکه این معماری در Lakehouse و پلتفرمهایی مثل Oracle ADW، Databricks و Snowflake اهمیت دارد این است که کیفیت داده را تضمین میکند، هزینه پردازش را پایین میآورد و مسیر تبدیل داده کاملاً شفاف و قابل ردیابی میشود.
بهبیان سادهتر، مدالین باعث میشود تیمها همیشه به دادهٔ درست و قابل اعتماد دسترسی داشته باشند.
Bronze محل ذخیرهی دادهٔ خام و بدون تغییر است؛ فقط ingest و ذخیرهسازی.
Silver جایی است که داده تمیز میشود، نرمالسازی میشود و یکپارچه میشود.
Gold مرحلهٔ نهایی است؛ جایی که داده برای تحلیل، داشبورد، KPI، مدلهای ML و تصمیمگیری آماده میشود.
درواقع:
- Bronze = جمعآوری داده
- Silver = پاکسازی و استانداردسازی
- Gold = ارزش و Insight نهایی
نه، دلیلش این است که دادهٔ خام معمولاً ناقص، تکراری، ناسازگار و حتی گاهی اشتباه است.
اگر مستقیم وارد تحلیل شود، هم نتایج غلط میدهد و هم عیبیابی آن بسیار سخت است.
معماری مدالین با جدا کردن لایهها باعث میشود کیفیت داده مرحلهبهمرحله بهتر شود.
اگر یکی از لایهها خراب شد، میتوانی از لایهٔ قبلی آن را دوباره بازسازی کنی.
این یعنی پایداری، شفافیت و اعتماد بیشتر در کل سیستم داده.
در کسبوکارهای فروش آنلاین، دادهها از منابع مختلف میآیند: سفارشها، مشتریان، محصولات، پرداخت، رفتار کاربران و…
Medallion کمک میکند این دادههای پراکنده و پر از خطا ابتدا در Bronze جمع شوند، در Silver تمیز و یکپارچه شوند، و در Gold تبدیل به Data Mart تحلیل فروش شوند.
خروجی Gold به شما KPIهایی مثل فروش روزانه، دستهبندیهای پرفروش، نرخ رشد، CLTV و تحلیل رفتار مشتری میدهد.
این دادهٔ غنیشده مستقیماً خوراک داشبورد مدیرعامل، تیم محصول و مارکتینگ میشود و در نهایت باعث تصمیمگیری بهتر و افزایش درآمد میشود.
جمعبندی
معماری مدالین (Medallion Architecture) یک مدل سهلایهای شامل Bronze، Silver و Gold است که به شما کمک میکند دادهٔ خام را مرحلهبهمرحله تمیز، استاندارد و تحلیلی کنید.
📥 اگر سوالی داری در مورد معماری مدالین (Medallion Architecture) داری، در بخش کامنتها بپرس.
سؤالی درباره این مقاله داری؟
اگر نکتهای در این مقاله برات مبهم بود یا خواستی بیشتر بدونی، همین حالا برام بنویس تا دقیق و صمیمی پاسخت رو بدم — مثل یه گفتوگوی واقعی 💬
برو به صفحه پرسش و پاسخ
دیدگاهتان را بنویسید