این پست با Preshen Goobiah و Johan Olivier از Capitec نوشته شده است.
آپاچی اسپارک یک سیستم پردازش توزیع شده منبع باز پرکاربرد است که به دلیل مدیریت حجم کاری داده در مقیاس بزرگ مشهور است. در میان توسعه دهندگان Spark که با آن کار می کنند، کاربرد مکرری پیدا می کند آمازون EMR, آمازون SageMaker, چسب AWS و برنامه های سفارشی Spark.
آمازون Redshift یکپارچهسازی یکپارچه با Apache Spark را ارائه میدهد و به شما امکان میدهد به راحتی به دادههای Redshift خود در هر دو خوشه ارائه شده Amazon Redshift و آمازون Redshift بدون سرور. این ادغام امکانات تجزیه و تحلیل AWS و راه حل های یادگیری ماشین (ML) را گسترش می دهد و انبار داده را برای طیف گسترده تری از برنامه ها قابل دسترسی می کند.
با ادغام Amazon Redshift برای Apache Spark، می توانید به سرعت شروع کنید و بدون زحمت برنامه های Spark را با استفاده از زبان های محبوبی مانند Java، Scala، Python، SQL و R توسعه دهید. برنامه های شما می توانند به طور یکپارچه از انبار داده Amazon Redshift خود بخوانند و بنویسند و در عین حال عملکرد بهینه و ثبات تراکنش را حفظ کنند. علاوه بر این، از بهبود عملکرد از طریق بهینهسازیهای pushdown بهرهمند میشوید که کارایی عملیات خود را بیشتر میکند.
Capitec، بزرگترین بانک خرده فروشی آفریقای جنوبی با بیش از 21 میلیون مشتری بانکداری خرده فروشی، با هدف ارائه خدمات مالی ساده، مقرون به صرفه و در دسترس به منظور کمک به بانکداری بهتر مردم آفریقای جنوبی به منظور بهتر زندگی کردن آنها، تلاش می کند. در این پست، ما در مورد ادغام موفقیت آمیز کانکتور منبع باز Amazon Redshift توسط تیم Feature Platform خدمات مشترک Capitec بحث می کنیم. در نتیجه استفاده از آمازون Redshift برای Apache Spark، بهرهوری توسعهدهندگان تا 10 برابر افزایش یافت، خطوط لوله تولید ویژگی سادهتر شد و تکرار دادهها به صفر رسید.
فرصت کسب و کار
19 مدل پیشبینی برای استفاده از 93 ویژگی ساخته شده با چسب AWS در بخشهای اعتبار خرده فروشی Capitec وجود دارد. رکوردهای ویژگی با حقایق و ابعاد ذخیره شده در Amazon Redshift غنی شده است. Apache PySpark برای ایجاد ویژگیها انتخاب شد، زیرا مکانیزمی سریع، غیرمتمرکز و مقیاسپذیر برای به هم زدن دادهها از منابع مختلف ارائه میدهد.
این ویژگیهای تولید نقش مهمی در فعالسازی برنامههای وام ثابت در زمان واقعی، برنامههای کارت اعتباری، نظارت بر رفتار ماهانه اعتبار دستهای و شناسایی دستهای دستمزد روزانه در کسبوکار دارند.
مشکل منبع داده
برای اطمینان از قابلیت اطمینان خطوط لوله داده PySpark، داشتن داده های سطح رکورد ثابت از جداول ابعادی و واقعی ذخیره شده در انبار داده سازمانی (EDW) ضروری است. سپس این جداول در زمان اجرا به جداول Enterprise Data Lake (EDL) متصل می شوند.
در طول توسعه ویژگی، مهندسان داده به یک رابط بدون درز برای EDW نیاز دارند. این رابط به آنها اجازه می دهد تا به داده های لازم از EDW در خطوط لوله داده دسترسی پیدا کرده و آنها را ادغام کنند و توسعه و آزمایش کارآمد ویژگی ها را ممکن می سازد.
فرآیند حل قبلی
در راه حل قبلی، مهندسان داده تیم محصول 30 دقیقه در هر اجرا صرف کردند تا داده های Redshift را به صورت دستی در معرض Spark قرار دهند. مراحل شامل موارد زیر بود:
- یک کوئری پیش فرض در پایتون بسازید.
- ارسال یک UNLOAD پرس و جو از طریق Amazon Redshift Data API.
- داده های کاتالوگ در کاتالوگ داده چسب AWS از طریق AWS SDK برای پانداها با استفاده از نمونه برداری.
این رویکرد مشکلاتی را برای مجموعه دادههای بزرگ ایجاد میکرد، نیاز به تعمیر و نگهداری مکرر از تیم پلتفرم داشت و برای خودکارسازی پیچیده بود.
نمای کلی راه حل فعلی
Capitec توانست این مشکلات را با ادغام Amazon Redshift برای Apache Spark در خطوط لوله تولید ویژگی حل کند. معماری در نمودار زیر تعریف شده است.
گردش کار شامل مراحل زیر است:
- کتابخانه های داخلی از طریق AWS Glue PySpark نصب می شوند AWS CodeArtifact.
- یک کار AWS Glue اعتبار خوشه Redshift را از آن بازیابی می کند مدیر اسرار AWS و اتصال Redshift آمازون (تزریق اعتبار کلاستر، بارگیری مکانها، فرمتهای فایل) را از طریق کتابخانه داخلی مشترک تنظیم میکند. ادغام Amazon Redshift برای Apache Spark نیز از استفاده پشتیبانی می کند هویت AWS و مدیریت دسترسی (IAM) به اعتبارنامه ها را بازیابی کنید و به Amazon Redshift متصل شوید.
- جستار Spark به یک جستار بهینه سازی شده Amazon Redshift ترجمه شده و به EDW ارسال می شود. این امر توسط آمازون Redshift برای Apache Spark انجام می شود.
- مجموعه داده EDW در یک پیشوند موقت در an بارگیری می شود سرویس ذخیره سازی ساده آمازون سطل (Amazon S3).
- مجموعه داده EDW از سطل S3 از طریق آمازون Redshift برای Apache Spark در مجریان Spark بارگذاری می شود.
- مجموعه داده EDL از طریق کاتالوگ داده چسب AWS در مجریان Spark بارگذاری می شود.
این مؤلفه ها با هم کار می کنند تا اطمینان حاصل شود که مهندسان داده و خطوط لوله داده تولید ابزارهای لازم را برای پیاده سازی آمازون Redshift برای Apache Spark، اجرای پرس و جوها و تسهیل تخلیه داده ها از Amazon Redshift به EDL دارند.
استفاده از ادغام Amazon Redshift برای Apache Spark در AWS Glue 4.0
در این بخش، ما کاربرد ادغام Redshift Amazon را برای Apache Spark با غنیسازی جدول درخواست وام در دریاچه داده S3 با اطلاعات مشتری از انبار داده Redshift در PySpark نشان میدهیم.
La dimclient
جدول در Amazon Redshift شامل ستون های زیر است:
- ClientKey – INT8
- ClientAltKey – VARCHAR50
- PartyIdentifierNumber – VARCHAR20
- ClientCreateDate - تاریخ
- لغو شد – INT2
- RowIsCurrent – INT2
La loanapplication
جدول در کاتالوگ داده چسب AWS شامل ستون های زیر است:
- شناسه رکورد - BIGINT
- تاریخ ورود - TIMESTAMP
- PartyIdentifierNumber – STRING
جدول Redshift از طریق آمازون Redshift برای Apache Spark خوانده می شود و در حافظه پنهان ذخیره می شود. کد زیر را ببینید:
سوابق درخواست وام از دریاچه داده S3 خوانده می شود و با آن غنی می شود dimclient
جدول اطلاعات آمازون Redshift:
در نتیجه، رکورد درخواست وام (از دریاچه داده S3) با آن غنی می شود ClientCreateDate
ستون (از Amazon Redshift).
چگونه ادغام Amazon Redshift برای Apache Spark مشکل منبع داده را حل می کند
ادغام Amazon Redshift برای Apache Spark به طور موثر مشکل منبع داده را از طریق مکانیسم های زیر برطرف می کند:
- خواندن به موقع – ادغام Amazon Redshift برای رابط Apache Spark جداول Redshift را بهموقع میخواند و از ثبات دادهها و طرحواره اطمینان حاصل میکند. این به ویژه برای نوع 2 ابعاد آهسته در حال تغییر (SCD) و زمان جمع آوری حقایق عکس فوری. با ترکیب این جداول Redshift با جداول سیستم منبع AWS Glue Data Catalog از EDL در خطوط لوله تولید PySpark، کانکتور یکپارچه سازی یکپارچه داده ها از چندین منبع را در عین حفظ یکپارچگی داده ها را امکان پذیر می کند.
- پرس و جوهای Redshift بهینه شده - ادغام Redshift آمازون برای Apache Spark نقش مهمی در تبدیل طرح جستجوی Spark به یک جستجوی Redshift بهینه شده ایفا می کند. این فرآیند تبدیل، تجربه توسعه را برای تیم محصول با رعایت اصل محلی بودن داده ها ساده می کند. پرس و جوهای بهینه سازی شده از قابلیت ها و بهینه سازی عملکرد آمازون Redshift استفاده می کنند و از بازیابی و پردازش کارآمد داده ها از Amazon Redshift برای خطوط لوله PySpark اطمینان حاصل می کنند. این به سادهسازی فرآیند توسعه و در عین حال بهبود عملکرد کلی عملیات منبع داده کمک میکند.
کسب بهترین عملکرد
ادغام آمازون Redshift برای Apache Spark به طور خودکار فشار پایین محمول و پرس و جو را برای بهینه سازی عملکرد اعمال می کند. شما می توانید با استفاده از قالب پیش فرض پارکت که برای تخلیه با این ادغام استفاده می شود، بهبود عملکرد را به دست آورید.
برای جزئیات بیشتر و نمونه کد، مراجعه کنید جدید – آمازون Redshift ادغام با آپاچی اسپارک.
مزایای راه حل
پذیرش ادغام چندین مزیت قابل توجه برای تیم به همراه داشت:
- افزایش بهره وری توسعه دهندگان - رابط PySpark ارائه شده توسط ادغام، بهره وری توسعه دهندگان را تا ضریب 10 افزایش داد و تعامل نرم تر با Amazon Redshift را امکان پذیر کرد.
- حذف تکثیر داده ها - جداول Redshift فهرستبندیشده تکراری و AWS Glue در دریاچه داده حذف شدند و در نتیجه یک محیط داده کارآمدتر ایجاد شد.
- کاهش بار EDW - ادغام تخلیه انتخابی داده ها را تسهیل می کند و با استخراج تنها داده های ضروری، بار روی EDW را به حداقل می رساند.
Capitec با استفاده از آمازون Redshift برای Apache Spark راه را برای بهبود پردازش داده ها، افزایش بهره وری و اکوسیستم مهندسی ویژگی کارآمدتر هموار کرده است.
نتیجه
در این پست، نحوه اجرای موفقیت آمیز Apache Spark Amazon Redshift توسط تیم Capitec را برای Apache Spark برای ساده کردن گردش کار محاسبات ویژگی های آنها مورد بحث قرار دادیم. آنها بر اهمیت استفاده از خطوط لوله داده PySpark غیرمتمرکز و مدولار برای ایجاد ویژگی های مدل پیش بینی کننده تاکید کردند.
در حال حاضر، ادغام آمازون Redshift برای Apache Spark توسط 7 خط لوله داده تولید و 20 خط لوله توسعه استفاده می شود و کارایی آن را در محیط Capitec نشان می دهد.
در حال حرکت رو به جلو، تیم پلتفرم ویژگی خدمات مشترک در Capitec قصد دارد تا پذیرش ادغام Amazon Redshift را برای Apache Spark در حوزههای مختلف تجاری گسترش دهد، با هدف افزایش بیشتر قابلیتهای پردازش دادهها و ترویج شیوههای کارآمد مهندسی ویژگیها.
برای اطلاعات بیشتر در مورد استفاده از آمازون Redshift برای Apache Spark، به منابع زیر مراجعه کنید:
درباره نویسنده
پرشن گوبیا مهندس اصلی یادگیری ماشین برای پلتفرم ویژگی در Capitec است. او بر طراحی و ساخت اجزای Feature Store برای استفاده سازمانی متمرکز است. در اوقات فراغت از مطالعه و سفر لذت می برد.
یوهان اولیویه یک مهندس ارشد یادگیری ماشین برای پلتفرم مدل Capitec است. او یک کارآفرین و علاقه مند به حل مشکلات است. او از موسیقی و معاشرت در اوقات فراغت خود لذت می برد.
سودیپتا باغچی یک معمار ارشد راه حل متخصص در خدمات وب آمازون است. او بیش از 12 سال تجربه در زمینه داده و تجزیه و تحلیل دارد و به مشتریان در طراحی و ساخت راه حل های تجزیه و تحلیل مقیاس پذیر و با کارایی بالا کمک می کند. خارج از محل کار، او عاشق دویدن، سفر و بازی کریکت است. با او ارتباط برقرار کنید لینک.
سید حمیر یک معمار ارشد راه حل متخصص تجزیه و تحلیل در خدمات وب آمازون (AWS) است. او بیش از 17 سال تجربه در معماری سازمانی با تمرکز بر داده ها و AI/ML دارد و به مشتریان AWS در سطح جهانی کمک می کند تا نیازهای تجاری و فنی خود را برطرف کنند. می توانید با او ارتباط برقرار کنید لینک.
Vuyisa Maswana یک معمار ارشد راه حل در AWS، مستقر در کیپ تاون است. Vuyisa تمرکز زیادی بر کمک به مشتریان در ایجاد راه حل های فنی برای حل مشکلات تجاری دارد. او از سال 2019 از Capitec در سفر AWS آنها پشتیبانی کرده است.
- محتوای مبتنی بر SEO و توزیع روابط عمومی. امروز تقویت شوید.
- PlatoData.Network Vertical Generative Ai. به خودت قدرت بده دسترسی به اینجا.
- PlatoAiStream. هوش وب 3 دانش تقویت شده دسترسی به اینجا.
- PlatoESG. کربن ، CleanTech، انرژی، محیط، خورشیدی، مدیریت پسماند دسترسی به اینجا.
- PlatoHealth. هوش بیوتکنولوژی و آزمایشات بالینی. دسترسی به اینجا.
- منبع: https://aws.amazon.com/blogs/big-data/simplifying-data-processing-at-capitec-with-amazon-redshift-integration-for-apache-spark/
- : دارد
- :است
- $UP
- 06
- 1
- 10
- 100
- 12
- 16
- 17
- 19
- 20
- 2019
- 30
- 7
- a
- قادر
- دسترسی
- در دسترس
- انجام
- در میان
- اضافی
- اطلاعات اضافی
- علاوه بر این
- نشانی
- آدرس
- چسبیدن
- اتخاذ
- مقرون به صرفه
- AI / ML
- هدف
- اهداف
- اجازه دادن
- اجازه می دهد تا
- همچنین
- آمازون
- آمازون خدمات وب
- خدمات وب آمازون (AWS)
- در میان
- an
- علم تجزیه و تحلیل
- و
- آپاچی
- جرقه آپاچی
- کاربرد
- برنامه های کاربردی
- اعمال میشود
- روش
- معماری
- هستند
- مناطق
- AS
- At
- خودکار بودن
- بطور خودکار
- AWS
- چسب AWS
- بانک
- بانکداری
- مستقر
- زیرا
- رفتار
- سود
- مزایای
- بهترین
- بهتر
- میان
- بزرگترین
- تقویت شده
- هر دو
- گسترده تر
- ساختن
- بنا
- ساخته
- کسب و کار
- by
- CAN
- قابلیت های
- کلبه
- کارت
- کاتالوگ
- متغیر
- مشتری
- مشتریان
- خوشه
- CO
- رمز
- ستون
- ستون ها
- ترکیب
- پیچیده
- اجزاء
- محاسبه
- اتصال
- ارتباط
- استوار
- شامل
- زمینه
- تبدیل
- تبدیل
- ایجاد
- ایجاد
- مجوزها و اعتبارات
- اعتبار
- کارت اعتباری
- کریکت
- بسیار سخت
- سفارشی
- مشتریان
- روزانه
- داده ها
- دریاچه دریاچه
- پردازش داده ها
- انبار داده
- مجموعه داده ها
- غیر متمرکز
- به طور پیش فرض
- مشخص
- نشان دادن
- طرح
- طراحی
- جزئیات
- توسعه
- توسعه دهنده
- توسعه دهندگان
- پروژه
- مختلف
- بعد
- ابعاد
- بحث و تبادل نظر
- بحث کردیم
- توزیع شده
- مختلف
- به آسانی
- اکوسیستم
- به طور موثر
- اثر
- بهره وری
- موثر
- زحمت
- حذف شد
- تاکید
- را قادر می سازد
- را قادر می سازد
- مهندس
- مهندسی
- مورد تأیید
- بالا بردن
- افزایش
- غنی شده
- غنی سازی
- اطمینان حاصل شود
- حصول اطمینان از
- سرمایه گذاری
- علاقهمند
- موسس شرکت
- محیط
- ضروری است
- اتر (ETH)
- موجود
- گسترش
- گسترش می یابد
- تجربه
- تسهیل کردن
- تسهیل
- واقعیت
- عامل
- حقایق
- FAST
- ویژگی
- امکانات
- پرونده
- مالی
- خدمات مالی
- پیدا می کند
- تمرکز
- متمرکز شده است
- تمرکز
- پیروی
- برای
- قالب
- به جلو
- مکرر
- از جانب
- توابع
- بیشتر
- افزایش
- نسل
- دریافت کنید
- GitHub
- در سطح جهانی
- اداره
- آیا
- he
- کمک
- کمک
- کمک می کند
- او را
- خود را
- چگونه
- HTML
- HTTP
- HTTPS
- IAM
- شناسایی
- هویت
- انجام
- اجرا
- واردات
- اهمیت
- بهبود یافته
- ارتقاء
- in
- مشمول
- شامل
- افزایش
- اطلاعات
- ادغام
- ادغام
- تمامیت
- اثر متقابل
- رابط
- داخلی
- به
- مسائل
- IT
- ITS
- جاوه
- کار
- پیوستن
- پیوست
- سفر
- دریاچه
- زبان ها
- بزرگ
- در مقیاس بزرگ
- رهبری
- یادگیری
- ترک کرد
- کتابخانه ها
- کتابخانه
- پسندیدن
- لینک
- زنده
- بار
- وام
- مکان
- دوست دارد
- دستگاه
- فراگیری ماشین
- نگهداری
- نگهداری
- ساخت
- روش
- دستی
- مکانیزم
- مکانیسم
- میلیون
- به حداقل رساندن
- دقیقه
- ML
- مدل
- مدل
- پیمانهای
- نظارت بر
- ماهیانه
- بیش
- کارآمدتر
- چندگانه
- موسیقی
- لازم
- of
- پیشنهادات
- زیتون
- on
- فقط
- باز کن
- منبع باز
- عملیات
- بهینه
- بهینه سازی
- بهینه
- سفارش
- خارج از
- روی
- به طور کلی
- پانداها
- ویژه
- کلمه عبور
- برای
- کارایی
- برنامه
- برنامه
- سکو
- افلاطون
- هوش داده افلاطون
- PlatoData
- بازی
- بازی
- نقش
- محبوب
- مطرح
- فرصت
- پست
- شیوه های
- پیش بینی
- قبلی
- اصل
- مشکل
- حل مسئله
- مشکلات
- روند
- در حال پردازش
- محصول
- تولید
- بهره وری
- ترویج
- ارائه
- ارائه
- پــایتــون
- نمایش ها
- به سرعت
- R
- محدوده
- خواندن
- مطالعه
- زمان واقعی
- رکورد
- سوابق
- مکرر
- کاهش
- مراجعه
- قابلیت اطمینان
- مشهور
- نیاز
- ضروری
- مورد نیاز
- تصمیم
- منابع
- نتیجه
- نتیجه
- خرده فروشی
- بانکداری خرده فروشی
- نقش
- دویدن
- در حال اجرا
- حقوق
- SC
- اسکالا
- مقیاس پذیر
- حوزه
- sdk
- بدون درز
- یکپارچه
- اسرار
- بخش
- دیدن
- انتخاب شد
- انتخاب
- انتخابی
- ارشد
- خدمات
- مجموعه
- چند
- به اشتراک گذاشته شده
- نمایشگاه
- قابل توجه
- ساده
- ساده کردن
- ساده
- پس از
- به آرامی
- صاف تر
- عکس فوری
- So
- معاشرت کردن
- راه حل
- مزایا
- حل
- حل می کند
- منبع
- منابع
- سپارش
- جنوب
- جرقه
- متخصص
- صرف
- SQL
- آغاز شده
- مراحل
- ذخیره سازی
- ذخیره شده
- ساده کردن
- ساده
- رشته
- قوی
- ارسال
- موفق
- موفقیت
- پشتیبانی
- پشتیبانی از
- سیستم
- جدول
- تیم
- فنی
- موقت
- تست
- که
- La
- منبع
- شان
- آنها
- سپس
- اینها
- آنها
- این
- از طریق
- زمان
- به
- با هم
- ابزار
- شهر
- معامله ای
- سفر
- URL
- استفاده کنید
- استفاده
- با استفاده از
- سودمندی
- استفاده
- با استفاده از
- ارزشمند
- از طريق
- انبار کالا
- بود
- مسیر..
- we
- وب
- خدمات وب
- بود
- در حین
- با
- در داخل
- مهاجرت کاری
- همکاری
- گردش کار
- گردش کار
- کارگر
- نوشتن
- سال
- به همراه داشت
- شما
- شما
- زفیرنت
- صفر