Intel IAA چیست؟
یکی از مشکلات رایجی که شرکتهای کوچک و بزرگ با آن روبرو هستند، شناسایی زودهنگام فرصتهای تجاری جدید از طریق پیادهسازی پرسوجوهای سریع در پایگاههای داده و تحلیلها است. اینتل برای حل این مشکل در پردازندههای زئون از فناوری کارآمدی استفاده میکند که شتابدهنده تحلیلهای درون حافظهای اینتل Intel® IAA مخفف In-Memory Analytics Accelerator نام دارد. فناوری کاربردی که قصد داریم در این مقاله با آن آشنا شویم.
خرید سرور اچ پی در نتسا با گارانتی معتبر
فهرست محتوا
تجزیه و تحلیل داده با Intel IAA چیست؟ چگونه کار میکند؟
شتابدهنده تحلیل درون حافظهای اینتل (Intel® In-Memory Analytics Accelerator) با هدف پردازش سریع اطلاعات و دستیابی به بینشهای موردنیاز سازمانها طراحی شده و در اصل یک شتابدهنده سختافزاری است که فشردهسازی و از حالت فشرده خارج کردن با توان عملیاتی بسیار بالا را به همراه توابع ابتدایی تحلیل ارائه میدهد. توابع تحلیلی به طور معمول برای فیلتر کردن دادهها در طول پردازش محاورهها استفاده میشوند. این شتابدهنده عمدتا در ارتباط با برنامههایی مانند پایگاههای داده، تحلیل کلان دادهها و خوشههای درون حافظه و موارد مشابه استفاده میشوند. این معماری قدرتمند از فرمتهایی مانند کدگذاری هافمن (Huffman) و Deflate پشتیبانی میکند. برای فرمت Deflate، این شتابدهنده از فهرستنویسی جریان فشرده برای دسترسی تصادفی کارآمد پشتیبانی میکند.
پیشنهاد مطالعه: بررسی پردازنده های نسل 4 اینتل زئون
Intel IAA مجموعه دادههای عظیم یا به عبارت سادهتر کلان دادهها را اسکن و فیلتر میکند. به بیان دقیقتر، وظایفی که قرار است هستههای پردازنده به آنها رسیدگی کنند را تفکیک میکند، دادهها را برای بهبود عملکرد فشرده و از حالت فشرده خارج میکند تا پهنای باند حافظه به یکباره مصرف نشود. Intel IAA در پردازندههای نسل 4 و 5 زئون اینتل و در آینده در پردازندههای Intel Xeon 6 که یک معماری ماژولار x86 جدید را معرفی میکنند، تعبیه شده است. پردازندههای Intel Xeon 6 به معماران مرکز داده این امکان را میدهند تا زیرساختهایی را که برای نیازها و حجم کاری منحصر به فرد پیادهسازی شدهاند، پیکربندی کنند. پردازندههای Intel Xeon 6 امکان انتخاب دو میکرو معماری پردازنده مرکزی مختلف را فراهم میکنند – هستههای عملکردی (P-core) و هستههای کارآمد (E-core) – که تناسبی میان عملکرد و بازده را در ارتباط با طیف وسیعی از حجمهای کاری در مرکز داده ارائه میدهند. پردازندههای Intel Xeon 6 با هستههای P برای عملکرد بالا به ازای هر هسته بهینهسازی شدهاند و توانایی رسیدگی به بارهای کاری سنگین را دارند. پردازندههای Intel Xeon 6 با هستههای E برای دستیابی به تراکم هسته بالا و عملکرد استثنایی به ازای هر وات بهینهسازی شدهاند و مزایای قابل توجهی را هنگام پردازش بارهای کاری ابری ارائه میکنند که نیازمند توان عملیاتی موازی هستند.
پیشنهاد مطالعه: بررسی پردازنده های نسل 5 اینتل زئون
توسعهی کارآمدتر Intel IAA با تحلیل سریعتر و دقیقتر دادهها
پایگاههای داده و دریاچههای داده (Data Lake) به طور مداوم از نظر حجم و پیچیدگی در حال رشد هستند و چالشهای بیشتری را برای توسعهدهندگان و تحلیلگران ایجاد میکنند. پردازش داده – به ویژه فشردهسازی و از حالت فشردهسازی خارج کردن – مجموعه دادههای بزرگ میتواند منابع محاسباتی را تحت فشار قرار دهد، تلاشها برای توسعه و سرعت تصمیمگیریها را آهسته کند. در دنیای پر شتاب تجاری امروز، سازمانها دائما در تلاش برای دستیابی سریعتر به بینشها (insights) هستند. آنها به زیرساختی نیاز دارند که روند اجرای پرسوجوها روی پایگاههای داده و تحلیل کلان دادهها را سرعت بخشد. این امر نیازمند یک پلتفرم محاسباتی با عملکرد بالا (HPC) است که پاسخگو بوده و زمان رسیدن به نتایج را تسریع کند.
در عصر جدید، سازمانهایی که به دادهها وابسته هستند، به یک پلتفرم محاسباتی با کارایی بالا نیاز دارند تا روند توسعه را سرعت ببخشد و بینشهای تجاری را با سرعتی رقابتی در اختیارشان قرار دهد. پردازندههای مقیاسپذیر زئون اینتل با قابلیت داخلی شتابدهنده تحلیل درون حافظهای اینتل (Intel® In-Memory Analytics Accelerator) به این نیاز پاسخ میدهند. فناوری Intel IAA با انجام وظایف فشردهسازی، از حالت فشردهسازی خارج کردن و سایر کارهای محاسباتی سنگین پردازنده مرکزی، روند اجرای پرس و جوهای پایگاه داده را سرعت بخشیده و عملکرد را بهینه میکند. این شتابدهندهی اختصاصی میتواند نیاز به کارتهای گران قیمت PCI یا سایر سختافزارهای اضافی که به طور معمول نیاز به یکپارچهسازی دارند، ایجاد گلوگاههای داده و مصرف برق اضافی را کاهش داده یا حذف کند.
موارد استفاده Intel IAA چیست؟
اینتل IAA در ارتباط با سناریوهای زیر بهترین عملکرد را ارائه میدهد:
- تحلیل کلان داده: اجازه میدهد تا پایگاههای داده درون حافظه را سریعتر اجرا کنید تا تحلیلهایی که برای جذب مشتریان جدید، برنامهریزی کمپینهای بازاریابی، شناسایی ریسکها، نوآوری در محصولات یا بهینهسازی شبکههای زنجیره تامین مورد استفاده قرار میگیرند را در مدت زمان کوتاهتری به دست آورند.
- هوش تجاری (BI): اجازه میدهد سرعت پایگاههای داده را افزایش دهید تا دستیابی به بینشها با صرف زمان کمتری انجام شود که میتواند به ایجاد مزیت رقابتی و کمک به سازمانها برای پاسخگویی سریعتر به مشتریان کمک کند.
- تجارت الکترونیک: روند استخراج اطلاعات از پایگاههای داده را افزایش میدهد تا وبسایتها بتوانند سریعتر به تعاملات مشتری پاسخ دهند. ایجاد یک تجربه مثبت برای مشتری، آنها را درگیر نگه میدارد و باعث بازگشت آنها میشود.
به طور کلی، از طریق اجرای سریعتر بررسی روی پایگاههای داده و تحلیل ورود و خروج اطلاعات در جدیدترین پردازندههای زئون اینتل بر پایه فناوری Intel IAA ارائه میدهند، می تواند دستیابی به فرصتهای تجاری جدید را برآورده کند . دور از انتظار نیست.
پیشنهاد مطالعه: نگاهی به سرویس اینتل On Demand
شتاببخشی Intel IAA به روند انجام بارهای کاری بانکهای اطلاعاتی
از طریق بهینهسازی عملکرد پایگاههای داده و تحلیلها با هدف دستیابی به بازدهی بالاتر، Intel IAA روی پردازندههای نسل ششم زئون اینتل فرآیند رسیدن به بینشها را سریعتر میکند. همچنین، با اجرای پرس و جوهای سریعتر روی پایگاههای داده، فرصتهای تجاری جدیدی در اختیار کسب و کارها قرار میگیرد. نگارش دوم Intel IAA روی پردازندههای نسل ۶ زئون اینتل تا ۱.۵ برابر خروجی بهتر نسبت به نسخه قبلی یعنی نگارش 1 ارائه میدهد. به بیان دقیقتر، در نگارش دوم همراه با افزایش چشمگیر پهنای باند داده (۶۰ گیگابیت بر ثانیه در مقابل ۳۰ گیگابیت بر ثانیه)، پهنای باند داخلی (شبکه داخلی) (۶۴ گیگابیت بر ثانیه در مقابل ۵۰ گیگابیت بر ثانیه) نیز به میزان قابل توجهی افزایش پیدا میکند.
توابع اینتل IAA
همانطور که در شکل ۱ نشان داده شده است، اینتل IAA وظایفی مانند رمزگذاری، تحلیل و فشردهسازی را انجام میدهد. بخش تحلیل شامل سه زیرمجموعه است: رمزگذاری و رمزگشایی، از حالت فشرده خارج کردن و فیلتر کردن. این توابع به هم مرتبط هستند و توسعهدهندگان میتوانند به صورت ترکیبی از آنها برای دستیابی به نتایج دلخواه استفاده کنند. همچنین، یک توسعهدهنده میتواند از Intel IAA برای رمزگذاری یا فشردهسازی ورودی به صورت جداگانه استفاده کند.
پشتیبانی نرمافزار Intel IAA
اینتل ابزارها و فناوریهایی را ارائه میدهد که به بهبود امنیت و عملکرد کمک میکند و به توسعهدهندگان در پیادهسازی خطمشیها و برنامهنویسی امنتر کمک میکند. از طریق بهکارگیری کتابخانهها و میانافزارهای اینتل مانند کتابخانه پردازش پرس و جو اینتل Intel® QPL سرنام (Intel® Query Processing Library)، سازمانها میتوانند پایگاههای داده درون حافظهای و تحلیل کلان دادهها را با سرعت و عملکرد بسیار بیشتری اجرا کنند.
لازم به توضیح است که قابلیتهای قدرتمند فشردهسازی و از حالت فشردهسازی خارج کردن اطلاعات از طریق بهکارگیری کتابخانه پردازش پرس و جو اینتل (Intel® QPL) به تسریع اجرای عملیات کمک میکند. این فناوری میتواند باعث کاهش هزینههای محاسباتی، صرفهجویی در پهنای باند حافظه و در نهایت دستیابی به توان عملیاتی بالاتر برای پردازش پرسوجوها شود.
همانطور که در شکل زیر نشان داده شده است، کتابخانه پردازش پرسوجو اینتل (Intel® QPL) روی درایورهای سختافزار و سیستم عامل اجرا میشوند. این کتابخانه، اینتل IAA را با صفهای کاری و دسترسی به ماشینهای مجازی (VM) یکپارچه میکند و همچنین جابهجایی عملیات تحلیلی از برنامهها به اینتل IAA را برای دستیابی به عملکرد بهتر تسهیل میکند.
برای کسب اطلاعات بیشتر در مورد اینکه چگونه کتابخانه پردازش پرس و جو اینتل (Intel® QPL) به توسعهدهندگان در بهبود عملکرد پایگاههای داده، دادههای سازمانی، ارتباطات و برنامههای علمی و فنی کمک میکند، پیشنهاد میکنیم به منابع آموزشی اینتل مراجعه کنید.
ویژگیهای تحلیل داده در شتابدهنده اینتل IAA
به طور کلی، شتابدهنده اینتل IAA از سه بلوک عملکردی اصلی تشکیل شده است: فشردهسازی، رمزگذاری و تحلیل. بخش تحلیل شامل سه زیرمجموعه است: رمزگشایی، از حالت فشردهسازی خارج کردن و فیلتر کردن. همانطور که در شکل زیر نشان داده شده است، این توابع به هم مرتبط هستند تا هرگونه عملیات تحلیلی بتواند ترکیبی از رمزگشایی / از حالت فشردهسازی خارج کردن / فیلتر کردن (به عنوان مثال، رمزگشایی-فیلتر) را انجام دهد. همچنین، میتوان ورودی را به صورت جداگانه فشرده یا رمزگذاری کرد. البته، به این نکته توجه داشته باشید که فشردهسازی و رمزگذاری را نمیتوان با هیچ عملیات دیگری ترکیب کرد.
لازم به توضیح است که همه بلوکهای عملکردی و ویژگیها در تمام نسخههای شتابدهندهها در دسترس نیستند. این بلوکها و ویژگیها از طریق رجیسترهای قابلیتی، به ویژه OPCAP، GENCAP و IAACAP در دسترس قرار دارند. بنابراین، نرمافزارها قبل از استفاده از قابلیتی که توسط یکی از این رجیسترها توصیف شده است، باید وضعیت این رجیسترها را بررسی کنند.
اینتل IAA از حالت فشردهسازی اطلاعات مطابق با استاندارد فشردهسازی Deflate که در RFC 1951 توضیح داده شده است، پشتیبانی میکند. همچنین، اینتل IAA از فشردهسازی Deflate به همراه مکانیزم محاسبهی CRC سفارشی پشتیبانی میکند و میتوانند مستقیما در حافظه نوشته شوند.
رمزگذاری و رمزگشایی Intel IAA
مولفه رمزگذاری و رمزگشایی اینتل IAA از الگوریتمهای GCM-AES128 با کلیدهای ۱۲۸ بیتی، GCM-AES256، CFB-AES128، CFB-AES256، XTS-AES128 و XTS-AES256 پشتیبانی میکند.
فیلتر SQL Intel IAA
بخش تابع فیلتر SQL یک یا دو جریان ورودی را دریافت میکند؛ یک ورودی اصلی و در برخی موارد یک ورودی ثانویه. ورودی اصلی میتواند از حافظه خوانده شود. جریانهای داده به طور منطقی شامل یک آرایه از مقادیر بدون علامت هستند؛ با این حال، آنها ممکن است به روشهای مختلفی فرمتدهی شوند، به عنوان مثال به صورت یک آرایهی فشرده. اگر عرض بیت مقادیر ۱ باشد، جریان به عنوان یک “بردار بیتی” نامیده میشود، در غیر این صورت، به عنوان یک “آرایه” نامیده میشود. خروجی تابع فیلتر بسته به عملکرد آن میتواند یک آرایه یا یک بردار بیتی باشد.
علاوه بر تولید داده خروجی، یک CRC 32 بیتی و یک checksum XOR از جریان داده محاسبه میشود که پرداختن به آن خارج از حوصله این مقاله است. همچنین، چند عملیات “جمع” روی دادههای خروجی انجام میشود. در نهایت اطلاعات CRC، checksum XOR و جمعها در رکورد مشخصی نوشته میشوند. این شتابدهنده فرآیند ذخیره پایگاههای داده ستونی را به شکل فشرده انجام میدهد تا حجم اشغالشده حافظه کم میشود. علاوه بر افزایش ظرفیت موثر حافظه، این امر با انجام تابع فیلتر که برای پرس و جوهای پایگاه داده استفاده میشود به صورت لحظهای، باعث کاهش پهنای باند موردنیاز حافظه میشود و در نتیجه مانع استفاده از تمام پهنای باند حافظه برای انتقال دادههای خام بدون فشرده شدن میشود.
ابزارهای اضافی مخصوص توسعهدهندگان برای اینتل IAA
اینتل با ارائه طیف وسیعی از منابع و ابزارها، کار توسعه برنامههای کاربردی جدید با پردازندههای نسل 6 زئون اینتل و اینتل IAA را برای توسعهدهندگان آسانتر میکند:
- ابر توسعهدهنده اینتل (Intel® Developer Cloud): منبعی برای توسعهدهندگان برای یادگیری، تست، نمونهسازی و اجرای حجم کاری روی مجموعهای از جدیدترین سختافزارهای اینتل.
- ابر توسعهدهنده اینتل برای oneAPI: یک محیط توسعه برای یادگیری برنامهنویسی برنامههای کاربردی سازگار با معماریهای مختلف.
- منطقه توسعهدهنده اینتل (Intel® Developer Zone): منبع رسمی برای توسعه برنامهها روی سختافزار و شتابدهندههای اینتل.
- راهنمای توسعهدهنده نرمافزار برای معماریهای Intel® 64 و IA-32: مجموعهای از منابع در مورد معماریهای Intel 64 و IA-32 و محیطهای برنامهنویسی.
فعالسازی اینتل IAA برای حجمهای کاری کلیدی
اینتل مستندات گسترده و کاملی را برای معماران و مهندسان سیستم که قصد دارند اینتل IAA را در راهحلهای موجود مورد استفاده قرار دهند آماده کرده است.
- راهنمای کاربری اینتل IAA: راهنمای کاربری برای پیکربندی، یکپارچهسازی و فعالسازی آسان اینتل IAA برای حجمهای کاری خاص.
- مشخصات معماری اینتل IAA: ارائه مشخصات فنی در ارتباط با نحوه فعالسازی و پشتیبانی نرمافزار.
- ابزار مشاوره پردازنده اینتل Xeon: ابزاری برای بررسی پردازندههای زئون اینتل بر اساس محیط استقرار.
همچنین، اینتل منابع جامعی مانند کتابخانهها، افزونهها و درایورها را برای کمک به یکپارچهسازی و بهینهسازی اینتل IAA ارائه میدهد که به شرح زیر هستند:
- مستندات مرتبط با کتابخانه پردازش پرس و جو اینتل (Intel® QPL): سورس کد مربوط به کتابخانه پردازش پرس و جو اینتل در گیتهاب.
- افزونه اینتل IAA برای Kubernetes: سورس کد افزونه اینتل IAA برای Kubernetes در گیتهاب.
- هسته درایور رمزنگاری اینتل IAA: اطلاعاتی در ارتباط با نحوه فشردهسازی Intel IAA و درایور رمزنگاری.
منابع:
https://www.intel.com/content/www/us/en/content-details/787805/enhance-business-with-faster-insights-with-intel-iaa.html?DocID=787805
https://www.intel.com/content/www/us/en/content-details/721858/intel-in-memory-analytics-accelerator-architecture-specification.html