داده‌ها را در مقیاس مقیاس در Amazon SageMaker Studio با استفاده از جلسات تعاملی بدون سرور AWS Glue، هوش داده‌های PlatoBlockchain آماده کنید. جستجوی عمودی Ai.

با استفاده از جلسات تعاملی AWS Glue بدون سرور، داده ها را در مقیاس در استودیوی Amazon SageMaker آماده کنید.

Amazon SageMaker Studio اولین محیط توسعه کاملاً یکپارچه (IDE) برای یادگیری ماشین (ML) است. این یک رابط بصری مبتنی بر وب را ارائه می دهد که در آن می توانید تمام مراحل توسعه ML را انجام دهید، از جمله تهیه داده ها و ساخت، آموزش و استقرار مدل ها.

چسب AWS یک سرویس یکپارچه سازی داده بدون سرور است که کشف، آماده سازی و ترکیب داده ها را برای تجزیه و تحلیل، ML و توسعه برنامه آسان می کند. چسب AWS شما را قادر می‌سازد تا با استفاده از قابلیت‌های مختلف، داده‌ها را به‌طور یکپارچه جمع‌آوری، تبدیل، پاکسازی و آماده‌سازی برای ذخیره‌سازی در دریاچه‌های داده و خطوط لوله داده خود کنید. تبدیل های داخلی.

مهندسان داده و دانشمندان داده اکنون می توانند به صورت تعاملی داده ها را در مقیاس با استفاده از ادغام داخلی نوت بوک استودیو خود با جلسات Spark بدون سرور که توسط AWS Glue مدیریت می شود، آماده کنند. شروع در چند ثانیه و توقف خودکار محاسبه در حالت بیکار، جلسات تعاملی AWS Glue برای دستیابی به آماده‌سازی داده‌های مقیاس‌پذیر در استودیو، یک Spark Backend بدون سرور، با مقیاس‌پذیری بالا ارائه کنید. مزایای قابل توجه استفاده از جلسات تعاملی AWS Glue در نوت بوک های استودیو عبارتند از:

  • هیچ خوشه ای برای تهیه یا مدیریت وجود ندارد
  • بدون خوشه بیکار برای پرداخت
  • بدون نیاز به تنظیمات قبلی
  • بدون مناقشه منابع برای همان محیط توسعه
  • دقیقاً همان زمان اجرا و پلتفرم Spark بدون سرور مانند کارهای استخراج، تبدیل و بارگذاری AWS Glue (ETL)

در این پست، ما به شما نشان می دهیم که چگونه با استفاده از جلسات تعاملی AWS Glue بدون سرور، داده ها را در مقیاس در استودیو آماده کنید.

بررسی اجمالی راه حل

برای پیاده سازی این راه حل، مراحل سطح بالا زیر را انجام دهید:

  1. به روز رسانی هویت AWS و مدیریت دسترسی مجوزهای نقش (IAM).
  2. هسته جلسه تعاملی AWS Glue را راه اندازی کنید.
  3. جلسه تعاملی خود را پیکربندی کنید.
  4. جلسه تعاملی خود را سفارشی کنید و حجم کاری آماده سازی داده های مقیاس پذیر را اجرا کنید.

مجوزهای نقش IAM خود را به روز کنید

برای شروع، باید نقش اجرای IAM کاربر استودیو خود را با مجوزهای لازم به روز کنید. برای دستورالعمل های دقیق، مراجعه کنید مجوز برای جلسات تعاملی Glue در SageMaker Studio.

ابتدا سیاست های مدیریت شده را به نقش اجرایی خود اضافه می کنید:

  1. در کنسول IAM، را انتخاب کنید نقش در صفحه ناوبری
  2. نقش اجرای Studio را که استفاده می کنید پیدا کنید و نام نقش را برای رفتن به صفحه خلاصه نقش انتخاب کنید.
  3. بر ویرایش زبانه، در مجوزها را اضافه کنید منو ، انتخاب کنید خط مشی ها را ضمیمه کنید.
  4. خط مشی های مدیریت شده را انتخاب کنید AmazonSageMakerFullAccess و AwsGlueSessionUserRestrictedServiceRole
  5. را انتخاب کنید خط مشی ها را ضمیمه کنید.
    صفحه خلاصه سیاست‌های مدیریت شده شما را نشان می‌دهد که به تازگی اضافه شده‌اند. اکنون یک خط‌مشی سفارشی اضافه می‌کنید و آن را به نقش اجرایی خود پیوست می‌کنید.
  6. بر مجوزها را اضافه کنید منو ، انتخاب کنید خط مشی درون خطی ایجاد کنید.
  7. بر JSON تب، سیاست زیر را وارد کنید:
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "iam:GetRole",
                    "iam:PassRole",
                    "sts:GetCallerIdentity"
                ],
                "Resource": "*"
            }
        ]
    }

  8. رابطه اعتماد نقش خود را اصلاح کنید:
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "Service": [
                        "glue.amazonaws.com",
                        "sagemaker.amazonaws.com"
                    ]
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }

هسته جلسه تعاملی AWS Glue را راه اندازی کنید

اگر قبلاً کاربران موجود در دامنه استودیو خود دارید، ممکن است لازم باشد آنها را داشته باشید سرور Jupyter خود را خاموش و راه اندازی مجدد کنید برای برداشتن تصاویر هسته نوت بوک جدید.

پس از بارگیری مجدد، می توانید یک نوت بوک استودیو جدید ایجاد کنید و هسته دلخواه خود را انتخاب کنید. داخلی SparkAnalytics 1.0 تصویر اکنون باید در دسترس باشد، و شما می توانید هسته چسب AWS دلخواه خود را انتخاب کنید (چسب اسکالا اسپارک or چسب PySpark).

جلسه تعاملی خود را پیکربندی کنید

شما به راحتی می توانید جلسه تعاملی AWS Glue خود را با جادوهای سلول نوت بوک قبل از شروع اولیه پیکربندی کنید. جادوها دستورات کوچکی هستند که با %% در ابتدای سلول های Jupyter پیشوند شده و میانبرهایی برای کنترل محیط ارائه می دهند. در جلسات تعاملی AWS Glue، جادوها برای تمام نیازهای پیکربندی استفاده می‌شوند، از جمله:

  • % منطقه - منطقه AWS که در آن یک جلسه مقداردهی اولیه می شود. پیش فرض منطقه Studio است.
  • %iam_role - نقش IAM ARN برای اجرای جلسه شما. پیش فرض نقش اجرای SageMaker کاربر است.
  • %worker_type - نوع کارگر چسب AWS. پیش فرض استاندارد است.
  • %number_of_workers - تعداد کارگرانی که در زمان اجرای کار به آنها اختصاص داده می شود. پیش فرض پنج است.
  • %idle_timeout - تعداد دقایق عدم فعالیت که پس از آن یک جلسه به پایان می رسد. پیش فرض 2,880 دقیقه است.
  • %additional_python_modules - لیستی از ماژول های پایتون اضافی جدا شده با کاما برای گنجاندن در خوشه خود. این می تواند از PyPi یا سرویس ذخیره سازی ساده آمازون (Amazon S3).
  • %% پیکربندی - یک فرهنگ لغت با فرمت JSON متشکل از پارامترهای پیکربندی مخصوص چسب AWS برای یک جلسه

برای یک لیست جامع از پارامترهای جادویی قابل تنظیم برای این هسته، از %help جادو در دفترچه یادداشت شما

جلسه تعاملی AWS Glue شما تا زمانی که اولین سلول غیر جادویی اجرا نشود شروع نمی شود.

جلسه تعاملی خود را سفارشی کنید و حجم کاری آماده سازی داده را اجرا کنید

به عنوان مثال، سلول‌های نوت بوک زیر نشان می‌دهند که چگونه می‌توانید جلسه تعاملی AWS Glue خود را سفارشی کنید و حجم کاری آماده‌سازی داده‌های مقیاس‌پذیر را اجرا کنید. در این مثال، ما یک کار ETL را برای جمع‌آوری داده‌های کیفیت هوا برای یک شهر معین، با گروه‌بندی بر اساس ساعت روز انجام می‌دهیم.

ما جلسه خود را به گونه‌ای پیکربندی می‌کنیم که گزارش‌های Spark خود را در یک سطل S3 برای اشکال‌زدایی بلادرنگ ذخیره کنیم، که در ادامه این پست می‌بینیم. مطمئن باشید که iam_role که جلسه AWS Glue شما در حال اجرا است، دسترسی نوشتن به سطل S3 مشخص شده دارد.

%help

%session_id_prefix air-analysis-
%glue_version 3.0
%idle_timeout 60
%%configure
{
"--enable-spark-ui": "true",
"--spark-event-logs-path": "s3://<BUCKET>/gis-spark-logs/"
}

در مرحله بعد، مجموعه داده خود را مستقیماً از آمازون S3 بارگیری می کنیم. متناوبا، شما می توانید داده ها را با استفاده از کاتالوگ داده چسب AWS خود بارگیری کنید.

from pyspark.sql.functions import split, lower, hour
print(spark.version)
day_to_analyze = "2022-01-05"
df = spark.read.json(f"s3://openaq-fetches/realtime-gzipped/{day_to_analyze}/1641409725.ndjson.gz")
df_air = spark.read.schema(df.schema).json(f"s3://openaq-fetches/realtime-gzipped/{day_to_analyze}/*")

در نهایت، مجموعه داده تبدیل شده خود را در یک مکان سطل خروجی می نویسیم که تعریف کرده ایم:

df_city = df_air.filter(lower((df_air.city)).contains('delhi')).filter(df_air.parameter == "no2").cache()
df_avg = df_city.withColumn("Hour", hour(df_city.date.utc)).groupBy("Hour").avg("value").withColumnRenamed("avg(value)", "no2_avg")
df_avg.sort("Hour").show()

# Examples of reading / writing to other data stores: 
# https://github.com/aws-samples/aws-glue-samples/tree/master/examples/notebooks

df_avg.write.parquet(f"s3://<BUCKET>/{day_to_analyze}.parquet")

پس از تکمیل کار خود، می توانید بلافاصله با خاموش کردن هسته نوت بوک استودیو، جلسه تعاملی AWS Glue خود را پایان دهید یا می توانید از %stop_session سحر و جادو.

اشکال زدایی و رابط کاربری Spark

در مثال قبل، ما را مشخص کردیم ”--enable-spark-ui”: “true” استدلال همراه با الف "--spark-event-logs-path": location. این جلسه AWS Glue ما را برای ضبط گزارش جلسات پیکربندی می‌کند تا بتوانیم از Spark UI برای نظارت و اشکال‌زدایی کار چسب AWS خود در زمان واقعی استفاده کنیم.

برای فرآیند راه‌اندازی و خواندن آن گزارش‌های Spark، به آن مراجعه کنید راه اندازی سرور تاریخچه Spark. در تصویر زیر، یک کانتینر محلی Docker راه‌اندازی کرده‌ایم که اجازه خواندن سطل S3 را دارد که حاوی گزارش‌های ما است. به صورت اختیاری، می توانید میزبانی کنید ابر محاسبه الاستیک آمازون (Amazon EC2) برای انجام این کار، همانطور که در مستندات مرتبط قبلی توضیح داده شده است.

داده‌ها را در مقیاس مقیاس در Amazon SageMaker Studio با استفاده از جلسات تعاملی بدون سرور AWS Glue، هوش داده‌های PlatoBlockchain آماده کنید. جستجوی عمودی Ai.

قیمت گذاری

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

AWS برای جلسات تعاملی AWS Glue بر اساس مدت زمان فعال بودن جلسه و تعداد واحدهای پردازش داده (DPU) استفاده شده هزینه می‌گیرد. به ازای تعداد DPUهایی که برای اجرای بارهای کاری خود استفاده می‌شوند، یک نرخ ساعتی از شما دریافت می‌شود که با افزایش 1 ثانیه صورتحساب می‌شود. جلسات تعاملی AWS Glue به طور پیش‌فرض 5 DPU اختصاص می‌دهند و حداقل به 2 DPU نیاز دارند. همچنین حداقل مدت صورتحساب 1 دقیقه برای هر جلسه تعاملی وجود دارد. برای دیدن نرخ‌های چسب AWS و نمونه‌های قیمت‌گذاری، یا تخمین هزینه‌های خود با استفاده از ماشین‌حساب قیمت‌گذاری AWS، رجوع کنید به قیمت چسب AWS.

نوت بوک استودیو شما بر روی نمونه EC2 اجرا می شود و هزینه نوع نمونه ای که انتخاب می کنید، بر اساس مدت زمان استفاده از شما دریافت می شود. استودیو یک نوع نمونه EC2 پیش‌فرض از ml-t3-medium را وقتی انتخاب می‌کنید به شما اختصاص می‌دهد SparkAnalytics تصویر و هسته مرتبط می توانید نوع نمونه نوت بوک استودیو خود را متناسب با حجم کاری خود تغییر دهید. برای اطلاعات در مورد قیمت استودیوی SageMaker، مراجعه کنید قیمت گذاری آمازون SageMaker.

نتیجه

ادغام بومی نوت‌بوک‌های استودیو با جلسات تعاملی AWS Glue، آماده‌سازی یکپارچه و مقیاس‌پذیر داده بدون سرور را برای دانشمندان داده و مهندسان داده تسهیل می‌کند. ما شما را تشویق می کنیم که این قابلیت جدید را در استودیو امتحان کنید!

دیدن داده ها را با استفاده از AWS Glue Interactive Sessions آماده کنید برای اطلاعات بیشتر.


درباره نویسندگان

شان مورگانشان مورگان یک معمار ارشد راه حل های ML در AWS است. او در زمینه های تحقیقاتی نیمه هادی و دانشگاهی تجربه دارد و از تجربیات خود برای کمک به مشتریان برای رسیدن به اهداف خود در AWS استفاده می کند. در اوقات فراغت، شان یک مشارکت‌کننده/نگهدار منبع باز فعال است و رهبر گروه مورد علاقه ویژه برای افزونه‌های تنسورفلو است.

داده‌ها را در مقیاس مقیاس در Amazon SageMaker Studio با استفاده از جلسات تعاملی بدون سرور AWS Glue، هوش داده‌های PlatoBlockchain آماده کنید. جستجوی عمودی Ai.سومدا سوامی مدیر محصول اصلی در خدمات وب آمازون است. او تیم SageMaker Studio را رهبری می‌کند تا آن را در IDE انتخابی برای علم داده‌های تعاملی و گردش‌های کاری مهندسی داده بسازد. او 15 سال گذشته را صرف ساختن محصولات مصرفی و سازمانی وسواس مشتری با استفاده از یادگیری ماشین کرده است. در اوقات فراغت خود دوست دارد از زمین شناسی شگفت انگیز جنوب غربی آمریکا عکاسی کند.

تمبر زمان:

بیشتر از آموزش ماشین AWS