نیک آموز > وبلاگ > مهندسی داده > آموزش Apache Superset از صفر تا ساخت داشبورد در ۹ گام
آموزش Apache Superset از صفر تا ساخت داشبورد در ۹ گام

آموزش Apache Superset از صفر تا ساخت داشبورد در ۹ گام

نوشته شده توسط: تیم فنی نیک آموز
تاریخ انتشار: ۱۶ بهمن ۱۴۰۰
آخرین بروزرسانی: 24 اسفند 1404
زمان مطالعه: 10 دقیقه
۳.۸
(۵)

آموزش Apache Superset یکی از موضوعات مهم در حوزه هوش تجاری و بصری‌سازی داده‌ها است. در اکثر شرکت‌ها، کاربران نهایی یک انبار داده شامل تحلیلگران، دانشمندان داده و افراد تجاری هستند. بصری‌سازی داده‌ها ابزاری قدرتمند برای کمک به انسان در درک الگوهای موجود در داده‌ها محسوب می‌شود. هنگام بررسی داده‌ها، کاربران معمولاً ابزارهایی را ترجیح می‌دهند که به آن‌ها امکان ایجاد تجسم‌های گرافیکی، ساخت داشبورد و اشتراک‌گذاری نتایج با سایر کاربران را بدهد.

اگر سوالات زیر ذهن شما را به خود مشغول داشته‌اند،

  • یک جایگزین منبع باز خوب برای ابزارهای گران قیمت هوش تجاری مانند Looker کدام است؟
  • چگونه با Apache Superset شروع کنیم؟

باید گفت این مقاله از نیک آموز دقیقا مناسب شماست. چون در این مقاله قصد داریم، به معماری آموزش Apache Superset بپردازیم، به یک انبار داده متصل شویم و نحوه ساخت نمودارها و داشبوردها را یاد بگیریم.

 

 💡 با شرکت در دوره Data Lakehouse مقدماتی یاد بگیرید تسک‌های داده‌ای را تحلیل، اولویت‌بندی و اجرایی کنید. 

 

آموزش Apache Superset شامل کامپوننت های زیر است

  • وب سرور (می‌تواند چندین نمونه را اجرا کند)
  • پایگاه داده Metadata
  • Cache layer لایه کش
  • صف پیام برای کوئری‌های ناهمگام

وب سرور یک اپلیکیشن flask python است که از SQLalchemy ORM برای اتصال به هر پایگاه داده استفاده می‌کند. ما می‌توانیم انبارهای داده را برای اتصال به آن پیکربندی کنیم.

آموزش Apache Superset: نصب و راه‌اندازی

ما از docker-compose برای توسعه زیرساخت محلی خود استفاده خواهیم کرد. پیش‌نیازها عبارتنداز:

  • docker
  • git
git clone https://github.com/josephmachado/sde_superset_demo.git
cd sde_superset_demo
docker-compose up –d

ما در اینجا از یک کانتینر داکر برای Superset استفاده خواهیم کرد. این اساساً وب سرور، SQLlite db را برای پایگاه داده متادیتا اجرا می‌کند و ما همچنین یک نمونه Postgres را برای انبار داده خود ایجاد می‌کنیم. از آنجایی که قرار نیست کوئری های طولانی را اجرا کنیم، می‌توانیم از قسمت اجرای ناهمگام صرف نظر کنیم.

چند دقیقه به کانتینرها فرصت دهید تا تنظیم شوند و سپس به آدرس http://localhost:8080 مراجعه کنید تا نمونه Apache Superset خود را ببینید. نام کاربری و رمز عبور به صورت زیر خواهد بود. username: adminpassword: superset

در پوشه sde_superset_demo یک فولدر داده با مقداری داده مشاهده خواهید کرد. در فایل docker-compose مشاهده می‌کنید که فولدر داده را در این خط ./data:/data در کانتینر قرار داده است.

 

معماری آموزش Apache Superset
معماری آموزش Apache Superset

 

کانتینر رسمی Postgres شامل یک ویژگی راه‌اندازی است که هر کوئری را که در فولدر /docker-entrypoint-initdb.d کانتینر باشد بلافاصله پس از راه‌اندازی کانتینر اجرا می‌کند. ما از این روال برای ایجاد یک شِما، یک جدول و بارگذاری داده‌ها از فایل adult.data استفاده می‌کنیم.

اگر به فایل init.SQLنگاه کنید، اسکریپت ایجاد جدول را خواهید دید.

CREATE SCHEMA clickstream;
DROP TABLE IF EXISTS clickstream.people;
CREATE TABLE IF NOT EXISTS clickstream.people (
age INT,
workclass VARCHAR(100),
fnlwgt BIGINT,
education VARCHAR(100),
education_num INT,
marital_status VARCHAR(100),
occupation VARCHAR(100),
relationship VARCHAR(100),
race VARCHAR(100),
sex VARCHAR(100),
capital_gain INT,
capital_loss INT,
hours_per INT,
native_country VARCHAR(100),
earnings VARCHAR(50)
);
COPY clickstream.people
FROM '/data/adult.data' DELIMITER ',';

شروع استفاده از Apache Superset

اکنون که راه‌اندازی زیرساخت محلی خود را به انجام رساندیم، می‌توانیم از Apache Superset برای ایجاد داشبورد و استخراج داده‌های خود استفاده کنیم.

  • اتصال به انبار داده

ابتدا باید به انبار داده اتصالی را برقرار کنیم. از آنجایی که وب سرور از sql alchemy استفاده می‌کند و ما از postgres برای انبار داده خود استفاده می‌کنیم، می‌توانیم یک رشته اتصال با استفاده از کتابخانه Psycopg ایجاد کنیم. رشته اتصال به صورت زیر است.

postgresql+psycopg2://sde:password@warehouse:5432/warehouse

فرمت اصلی رشته اتصال به صورت زیر است:

postgresql+psycopg2://user_name:user_password@host:5432/database

 

شروع استفاده از Apache Superset
شروع استفاده از Apache Superset

 

به مسیر Sources >> Databases بروید و یک پایگاه داده جدید به نام warehouse با نام کاربری و رمز عبوری که در رشته اتصال تعریف کرده‌اید، ایجاد کنید و اتصال را تست کنید. Superset به انبار داده متصل می‌شود. قبل از فشار دادن دکمه ذخیره، حتماً گزینه‌های Allow CREATE TABLE AS، Allow CREATE VIEW AS و Allow DML را بررسی کنید.

  • کوئری داده در SQL Lab

ما می‌توانیم کوئری داده‌ها را در SQL Lab اجرا کنیم. به مسیر SQL Lab >> SQL Editor بروید. در اینجا می‌توانید یک کوئری ساده sql بنویسید و آن را مطابق شکل اجرا کنید.

 

کوئری داده در SQL Lab
کوئری داده در SQL Lab

 

این یک کلاینت استاندارد SQL است که در آن می‌توانید کوئری بنویسید و داده‌ها را استخراج کنید. با کلیک بر روی دکمه Explore به صفحه نمودار هدایت می‌شوید، جایی که می‌توانید شروع به بصری‌سازی داده‌ها کنید.

 

 💡 برای درک عمیق‌تر تسک‌های واقعی، یادگیری اصولی در یک دوره مهندسی داده می‌تواند بهترین نقطه شروع شما باشد. 

 

  • ایجاد نمودار

نمودارها بر اساس یک جدول ایجاد می‌شوند. برای ایجاد نمودار ابتدا باید یک جدول تعریف کنیم.

  • ۱-۳) افزودن جدول

به مسیر Sources >> Tables بروید، روی علامت افزودن رکورد جدید (یعنی علامت +) کلیک کنید و clickstream را به عنوان شِما و people را به عنوان نام جدول وارد کنید.

 

 

افزودن جدول
افزودن جدول
افزودن رکورد جدید
افزودن رکورد جدید

 

  • ۲-۳) ایجاد نمودار

برای ایجاد نمودار به سربرگ Charts بروید و علامت افزودن رکورد جدید + را کلیک کنید.

 

ایجاد نمودار
ایجاد نمودار

 

برای نمودار اول، نموداری ایجاد می‌کنیم که کل سود سرمایه را به صورت یک عدد بزرگ (Big Number) نشان دهد. آن را به عنوان total_cap_gain ذخیره می‌کنیم.

 

Big Number
Big Number

 

  • ۳-۳) ایجاد داشبورد

داشبورد می‌تواند از یک یا چند نمودار تشکیل شده باشد و می‌تواند بین افراد به اشتراک گذاشته شود. برای ایجاد داشبورد، روی سربرگ Dashboards کلیک کنید و علامت افزودن (+) را فشار دهید. نام آن را cap gain dashboard و قسمت Slug را cgdash قرار ‌دهید. تصویر زیر این قسمت از نرم‌افزار را نشان می‌دهد.

 

ایجاد داشبورد
ایجاد داشبورد

 

پس از ذخیره داشبورد، روی آن کلیک کنید. اکنون دکمه EDIT DASHBOARD را فشار دهید. در ویرایشگر داشبورد، یک ردیف را بکشید و رها کنید. به نمودارهایی که با استفاده از charts & filters ایجاد کرده‌اید، دسترسی پیدا کنید. آنها را در یک ردیف، در کنار یکدیگر قرار دهید. دکمه SAVE CHANGES را فشار دهید. و بالای صفحه Draft را به Published تغییر دهید. تصویر زیر این قسمت از نرم‌افزار را نشان می‌دهد.

 

EDIT DASHBOARD
EDIT DASHBOARD

 

 💡 راه‌اندازی یک پروژه مهندسی داده برای تازه‌کاران می‌تواند اولین قدم جدی شما برای ورود به دنیای واقعی پروژه‌های داده باشد.

 

با لینک زیر دیگر کاربران superset می‌توانند به داشبوردی که شما ایجاد کرده‌اید دسترسی داشته باشند. توجه داشته باشید که cgdash نام قسمت slug بود که هنگام ایجاد داشبورد انتخاب کردیم.

http://localhost:8088/superset/dashboard/cgdash/

می‌توانید نمودارها و داشبوردهای خود را مطابق با نیازهایتان سفارشی کنید. با استفاده از دستور زیر، زیرساخت محلی که ایجاد کرده‌اید را down کنید.

docker-compose down –v

مزایا و معایب

 

مزایا عبارتنداز:

  • متن باز.
  • تعداد زیادی آیتم‌های بصری‌سازی پیش ساخته دارد.
  • از Apache Superset برای ایجاد داشبوردها در برنامه‌های داده خود می‌توان استفاده کرد.
  • جامعه گسترده‌ای از استفاده کنندگان که باعث می‌شود برای رفع مشکلات سریع به جواب برسیم.
  • معماری وب سرور ساده.
  • کنترل دسترسی کاربر Granular.
  • پشتیبانی از دیتابیس‌های MonetDB ،Postgres ،Oracle ،SQLite ،MySQL و Microsoft SQL Server
  • قابلیت فعال‌سازی کَش برای بالا بردن سرعت نمایش داده‌ها.

معایب عبارتنداز:

  • این برنامه هنوز از پایگاه داده NoSQL پشتیبانی نمی‌کند.
  • کاربران برای استفاده از این ابزار باید دانش SQL داشته باشند. مهندسان می‌توانند در ایجاد views و غیره کمک کنند. اما برای اینکه کاربران نهایی به عنوان یک ابزار هوش تجاری بتوانند از آن استفاده کنند، باید SQL را یاد بگیرند.

سخن پایانی آموزش Apache Superset

 

امیدواریم این مقاله درک خوبی از  آموزش Apache Superset، مزایا و معایب آن و نحوه استفاده از آن برای ایجاد بصری‌سازی داده‌ها و داشبورد به شما داده باشد. ویژگی‌های بیشتری مانند هشدارهای زمان بندی شده و ایجاد تجسم‌های سفارشی دارد که در این مقاله به آنها نپرداخته‌ایم.

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

 

 

سوالات متداول آموزش Apache Superset

 

۱. Apache Superset چیست و چه کاربردی دارد؟

Apache Superset یک ابزار متن‌باز در حوزه هوش تجاری است که برای تحلیل داده‌ها، ایجاد نمودارهای تحلیلی و ساخت داشبوردهای بصری استفاده می‌شود.

۲. آموزش Apache Superset برای چه افرادی مناسب است؟

آموزش Apache Superset برای تحلیلگران داده، دانشمندان داده و کاربران تجاری که با داده‌ها کار می‌کنند و نیاز به ساخت داشبورد و تجسم اطلاعات دارند مناسب است.

۳. چرا بصری‌سازی داده‌ها در ابزارهایی مانند Superset اهمیت دارد؟

بصری‌سازی داده‌ها کمک می‌کند الگوها، روندها و ارتباطات موجود در داده‌ها سریع‌تر و دقیق‌تر توسط کاربران درک شوند.

۴. معماری آموزش Apache Superset از چه بخش‌هایی تشکیل شده است؟

معماری آموزش Apache Superset شامل وب سرور، پایگاه داده متادیتا، لایه کش و صف پیام برای اجرای کوئری‌های ناهمگام است.

۵. وب سرور Apache Superset بر چه فناوری‌هایی ساخته شده است؟

وب سرور این سیستم یک اپلیکیشن مبتنی بر Python و Flask است که از SQLAlchemy ORM برای اتصال به پایگاه‌های داده مختلف استفاده می‌کند.

۶. برای شروع آموزش Apache Superset چه پیش‌نیازهایی لازم است؟

برای نصب و اجرای این ابزار در محیط محلی معمولاً به Docker و Git نیاز است و می‌توان با docker-compose زیرساخت آن را راه‌اندازی کرد.

۷. پس از نصب Superset چگونه می‌توان به محیط آن دسترسی داشت؟

بعد از اجرای کانتینرها می‌توان با مراجعه به آدرس http://localhost:8080 وارد محیط Superset شد و از نام کاربری و رمز عبور پیش‌فرض استفاده کرد.

۸. در آموزش Apache Superset چگونه می‌توان به انبار داده متصل شد؟

در آموزش Apache Superset اتصال به انبار داده از طریق تعریف یک رشته اتصال پایگاه داده و ثبت آن در بخش Databases انجام می‌شود.

۹. SQL Lab در Apache Superset چه کاربردی دارد؟

SQL Lab محیطی برای نوشتن و اجرای کوئری‌های SQL است که کاربران می‌توانند از آن برای استخراج و بررسی داده‌ها استفاده کنند.

۱۰. چگونه می‌توان در Superset داشبورد ایجاد کرد؟

کاربران ابتدا نمودارها را بر اساس جداول داده ایجاد می‌کنند و سپس با اضافه کردن آن‌ها در بخش Dashboards یک داشبورد تحلیلی می‌سازند که قابلیت اشتراک‌گذاری نیز دارد.

 

 

💡 یادگیری را همین‌جا متوقف نکنید؛ مقالات بعدی را بخوانید و دانش خود را گسترش دهید:

 

 

 

منبع

 

 

https://www.startdataengineering.com/post/apache-superset-tutorial

چه رتبه ای می‌دهید؟

میانگین ۳.۸ / ۵. از مجموع ۵

اولین نفر باش

title sign
دانلود مقاله
آموزش Apache Superset از صفر تا ساخت داشبورد در ۹ گام
فرمت PDF
8 صفحه
حجم 1 مگابایت
دانلود مقاله
title sign
معرفی نویسنده
تیم فنی نیک آموز
مقالات
414 مقاله توسط این نویسنده
تیم فنی نیک آموز
title sign
معرفی محصول
دوره Data Lakehouse مقدماتی
حسن احمدخانی

دوره آنلاین Data Lakehouse مقدماتی

طلایی
55,750,000 تومان39,025,000 تومان
نقره‌ای
15,750,000 تومان11,025,000 تومان
title sign
دیدگاه کاربران