در این نوشتار سعی خواهم کرد تا معرفی مختصری از DataOps داشته باشم و به این موضوع بپردازم که چه لزومی دارد به سمت این مفهوم جدید حرکت کنیم.
برای شروع تشریح مفهوم DataOps، فرض میکنیم شما با مفهوم DevOps آشنا هستید( در غیر این صورت شما را به تعریف یک خطی RackSpace از DevOps ارجاع میدهم که می گوید: رویکردی که در آن توسعه دهندگان نرمافزار با تیم عملیات پشتیبانی با یکدیگر همکاری میکنند تا به صورت مداوم، قابل اعتماد و استاندارد شده همراه با فرآیندهای خودکار نرمافزار و بستر مورد نیاز آن را ایجاد نمایند.)
در نگاه اول به نظر میآید که DevOpsو DataOps به دلیل اینکه هر دو برای پاسخ به نیاز مقیاس کردن تحویل سرویس (به عبارت بهتر پاسخ سریع به نیاز مشتری یا سازمان) ایجاد شده اند، خاستگاه یکسانی دارند.
امروزه DevOps یک ضرورت برای مواجهه با چالش های تیم توسعه، اضافه کردن کدها به سیستم یا نرمافزار و در نهایت پیچیدهتر شدن سیستمها می باشد. DataOps نیز یک ضرورت برای مواجهه با فضایی است که در آن با رشد روزافزونی تولید و توسعه پروژه های تحلیل داده در جریان می باشد. بنابراین تفاوت بنیادین بین این دو مفهوم وجود دارد: نقطه تأثیر این دو !
دواپس در حوزه توسعه و تحلیل سیستمها و نرمافزارها مطرح میشود که شامل رسیدگی و بررسی مولفه ها، وابستگیها و کانتینرها ( container) در چرخه حیات سیستم می شود. در این تعریف، چرخه حیات داده، جایی است که DevOps دغدغه یا نگرانی درباره آن ندارد.
اگر ما از یک داشبورد اطلاعاتی مشتمل بر چارتها یا سیستمهای پیشنهاد دهنده استفاده کنیم، داده و اطلاعات بیش از پیش برای ما اهمیت پیدا می کند. واضح و مبرهن است که هر سیستم یا اپلیکیشن داده مصرف و تولید میکند.
یکی از اصلیترین تفاوتهای این دو مفهوم این است که داده همیشه در محیط عملیاتی وجود دارد. وقتی یک دانشمند داده بر روی مدل یادگیری ماشین در حال کار می باشد، پس به دادههای بلادرنگ (داده های عملیاتی) نیاز دارد. درواقع نیاز است تا تیم داده و تیم عملیات در مرحله راه اندازی و اساساً در کلیه مراحل پروژه با یکدیگر همکاری داشته باشند.
انتخاب فرمت ذخیره سازها، مدل محاسباتی، مدل عملکرد، نظارت بر سیستمها و سازوکارها و محدودیتهای تکنلوژیکی، مواردی هستند که بدون نگاه از هر دو منظر ( داده و عملیات) نمیتوان آنها را به انجام رساند.
اگر DevOps چابکی را برای سازمان به ارمغان میآورد، میتوان ادعا کرد که نتیجه DataOps همکاری تنگاتنگ بین دو تیم یا دو واحد در یک سازمان می باشد. به عنوان مثال اگر تغییر ناگهانی در دادهها رخ دهد که بر اساس آن مدل سازی و تصمیم گیری در محیط عملیاتی صورت می گرفته است، تیم کسب و کار باید از این تغییر مطلع شود تا تغییرات لازم را سمت خود اعمال کند.
در مجموع DataOps وظایف زیر را شامل میشود :
خودکاری سازی سیر تکامل پلتفرمها، پروژه ها و محصولات، تبیین نحوه انجام تست در محیط های عملیاتی و نظارت فنی بر اساس معیارهای کسب و کار و در نظر گرفتن قابلیتهای تطابق منابع فنی.
زمانی میتوان DataOpsرا در یک سازمان مطرح نمود که میزان و تنوع داده ها، ارزش بیشتری نسبت به اپلیکیشن و سیستمهای سازمان پیدا کند که با توجه به روند پیشرفت مباحثی نظیر اینترنت اشیاء، این زمان برای بسیاری از سازمان ها فرارسیده است یا نزدیک می باشد.
سؤال آخر این است که DataOps یک استاندارد است یا موقعیت شغلی؟ همانطور که اشاره شد DataOps در مورد قرار دادن و نگاهداری از داده ها، مدل ها، دانش و جریان های کاری در محیط عملیاتی می باشد. متناسب با اندازه سازمان و فرآیندهای آن ممکن است این وظایف به دانشمند داده یا مهندس داده نیز محول شود.
ولی در نهایت، این وظایف نیاز به یک کمیته با دانش و آگاهی نسبت به سیستمها و محیط های عملیاتی دارد که میتوانند بر روی عملکرد دانشمند یا مهندس داده تأثیر گذار باشند.
انتظار میرود که در آینده نه چندان دور، DataOps به طور گسترده و به خودی خود به عنوان یک موقعیت شغلی بیشتر مطرح شود.