دادهها، مهمترین عامل تصمیمگیری هستند و امروزه هیچ سازمان بزرگی بدون اتخاذ تصمیمهای مبتنی بر دادهها قادر به اجرای درست برنامههای راهبردی نیست. در دنیای فناوری اطلاعات و مشاغل دادهمحور موقعیتهای شغلی مختلفی وجود دارند که همگی مبتنی بر دادهها هستند. با اینحال، تاکنون به این موضوع فکر کردهاید که چه چیزی دانشمند داده را از یک تحلیلگر داده یا یک مهندس داده متمایز میکند؟
بهنظر میرسد برای بیشتر کارفرمایان مهندسان داده، دانشمندان داده و تحلیلگران داده، نامهای مختلفی برای یک موقعیت شغلی یکسان هستند، در حالی که تفاوتهای قابل توجهی میان این نقشها، مجموعه مهارتها و مسئولیتهای این افراد وجود دارد. درست است که همه آنها با مجموعه دادهها در ارتباط هستند و نقش مهمی در تدوین استراتژیهای مرتبط با دادهها دارند، اما شرح وظایف مشخصی دارند.
مهندسان داده اکوسیستمهای دادهای را ایجاد، آزمایش و نگهداری میکنند. این اکوسیستمها برای شرکتها و دانشمندان داده که کار آنها تجزیهوتحلیل دادهها برای ساخت الگوریتمهای پیشگویانه است، ضروری است. به همین ترتیب، باید بگوییم کاری که مهندسان داده انجام میدهند، نقش تعیینکنندهای بر خروجی کار دانشمندان داده دارد. به بیان دقیقتر، مهندس داده بخشی از یک تیم دادهمحور است که بهطور مشترک با تحلیلگران و دانشمندان داده روی یک پروژه کار میکنند.
تحلیلگر داده (Data Analyst)
تقریبا بیشتر متخصصان فناوری اطلاعات که قصد ورود به دنیای مشاغل دادهمحور را دارند، کار خود را بهعنوان تحلیلگر داده آغاز میکنند. بهطور معمول، تحلیلگران داده به مدرک کارشناسی و دانش کافی در زمینه ریاضیات و آمار نیاز دارند. البته، مهارتهای فنی قوی یک امتیاز مثبت است و میتواند فرد را از رقبا متمایز کند. علاوه بر این، شرکتها از یک تحلیلگر داده انتظار دارند درباره روشهای مدیریت دادهها، مدلسازی و گزارشدهی دانش کافی داشته باشند.
به فرآیند استخراج اطلاعات از یک مجموعه داده، تجزیهوتحلیل داده گفته میشود. بر مبنای این تعریف، تحلیلگر دادهها فردی است که این وظیفه به او محول میشود. یک تحلیلگر داده، اطلاعات را به روشهای مختلف مثل پاکسازی، تبدیل و مدلسازی از دل دادهها استخراج میکند. امروزه، صنایع مختلف مثل فناوری اطلاعات، پزشکی، علوم اجتماعی، تجارت و غیره از تجزیهوتحلیل دادهها برای درک بهتر مسائل استفاده میکنند. دو مورد از مهمترین تکنیکهای مورد استفاده در تحلیل دادهها، آمار توصیفی یا خلاصهای و آمار استنباطی است. به همین دلیل، یک تحلیلگر داده باید در مورد این تکنیکها و ابزارهای مصورسازی دادهها، اطلاعات کافی داشته باشد. این مهارتها به او کمک میکنند تا کار خود را با تیم به اشتراک قرار دهد تا به آنها کمک کند راهحلهای درستی را اتخاذ کنند. علاوه بر این، تجزیهوتحلیل دادهها به صنایع اجازه میدهد تا کوئریهای دقیقی بنویسند و به نتایج مدنظر خود در مدت زمان کوتاهی دست پیدا کنند. دو مورد از محبوبترین و رایجترین ابزارهای مورد استفاده تحلیلگران داده، اسکیوال و مایکروسافت اکسل است.
یک تحلیلگر داده به چه مهارتهایی نیاز دارد؟
از مهارتهای مهم و زیربنایی یک تحلیلگر داده به موارد زیر باید اشاره کرد:
- آمار: داشتن پیشزمینه در زمینههای مختلف آمار برای یک تحلیلگر داده ضروری است. دانش آماری، کاوش دادهها را آسانتر میکند و باعث میشود در انجام کارها با خطاهای منطقی کمتری روبهرو شوید. همچنین، تحلیلگران داده نمیتوانند بدون استفاده از ابزارهای تجزیهوتحلیل آماری مثل متلب، SPSS و SAS کارهای خود را انجام دهند.
- SQL: فرآیند تجزیهوتحلیل دادهها بهمعنای استخراج دادهها از پایگاه داده یا انبارههای دادهها است. تحلیلگران داده از SQL بهعنوان یک ابزار قدرتمند در این زمینه استفاده میکنند.
- Microsoft Excel: درک عمیق از اکسل و ویژگیهای پیشرفته آن به تحلیلگران دادهها کمک میکند، وظایف محوله را بهشکل دقیقتر انجام دهند. اکسل فراتر از یک صفحه گسترده است و قابلیتهای کارآمدی برای تجزیهوتحلیل سریع و کار با پایگاه دادههای سبک ارائه میکند. بهطور معمول، تحلیلگران همراه با اکسل، آر یا پایتون را یاد میگیرند تا بتوانند بهشکل بهتری با کلاندادهها کار کنند.
ابزارهای مصورسازی
تحلیلگران داده باید بتوانند بازنماییهای تصویری از مجموعه دادههای پیچیده را ایجاد کنند تا درک اطلاعات برای دیگران ساده شود. برای این منظور، آنها از ابزارهای مصورسازی مثل Tableau، Infogram، QuickSight، Power BI و موارد دیگر استفاده میکنند.
مسئولیتهای اصلی یک تحلیلگر داده
بهطور معمول، مسئولیتهای یک تحلیلگر دادهها بهشرح زیر است:
- تجزیهوتحلیل دادهها از طریق آمار توصیفی
- بهکارگیری زبانهای طراحیشده برای کار با پایگاه داده با هدف بازیابی و دستکاری اطلاعات
- فیلتر کردن دادهها، پاکسازی و ویرایش دادهها در صورت لزوم
- تعامل با افراد تیم از طریق مصورسازی دادهها
- حضور در جلسات تیم با هدف درک نیازهای تجاری شرکت
- آشنایی با مباحث اولیه ریاضی
- تسلط به اکسل و SQL
- آشنایی با فرمولهسازی مسائل و مجموعه مهارتهای تحلیلی
مهندس داده (Data Engineer)
یک مهندس داده نیاز به پیشزمینه فنی قوی برای کار با دادهها و نحوه استفاده از واسطهای برنامهنویسی کاربردی (API) دارد. این متخصصان باید در زمینه نحوه پاکسازی دادهها و بهینهسازی جریانهای کاری تجربه لازم را داشته باشند. به بیان دقیقتر، مهندس داده فردی است که در جمعآوری و آمادهسازی دادهها برای کاربردهای تحلیلی، صاحب تخصص است. علاوه بر این، مهندسی داده باید در زمینه معماریهای مورد استفاده در پردازش دادهها دانش کافی داشته باشد. به عبارت دیگر، یک مهندس داده زیرساختی برای سازماندهی و ذخیرهسازی دادهها آماده میکند. این فرد، مسئول تبدیل دادهها به قالبی است که دانشمندان داده با آنها کار کنند.
مهندسان داده باید توانایی کار با دادههای ساختیافته و بدون ساختار را داشته باشند. از اینرو، باید مهارت لازم در کار با پایگاه دادههای SQL و NoSQL را داشته باشند. مهندسان داده به دانشمندان داده کمک میکنند تا وظایف محوله را سریعتر و دقیقتر انجام دهند. علاوه بر این، باید بدانند که چگونه کلاندادهها را دریافت، پاکسازی، قالببندی و تکثیر کرده و در پایگاههای دادهای بهشکل کارآمد ذخیرهسازی کنند.
بهطور کلی، مهندس دادهای که با مفاهیم و الگوریتمهای برنامهنویسی آشنا باشد و تجربه لازم را داشته باشد، بهسرعت شغل موردنظر خود را دریافت میکند. نقش یک مهندس داده شبیه به یک مهندس نرمافزار است و به این دلیل است که یک مهندس داده اطلاعات کافی درباره سیستمعاملها و معماری آنها دارد. بهطور مثال، مهندس دادهای که قرار است فرآیند توسعه زیرساختهای ابری را انجام دهد که قرار است میزبان دادههایی باشند که در زمینه تجزیهوتحلیل دادههای بلادرنگ مورد استفاده قرار گیرند، باید درباره اصول اولیه پروتکلهای شبکه و سیستمعاملهای سرور دانش کافی داشته باشد. همچنین، باید از این نکته مطلع باشد که چگونه رابطهای برنامهنویسی کاربردی را ایجاد کند که یکی از وظایف اصلی او است.
یکی دیگر از مهارتهای کلیدی موردنیاز یک مهندس داده، توانایی آزمایش دادهها است. این وظیفه مهندس داده است که کل معماری و زیرساختها را برای شناسایی خطاهای ورود به سیستم، پردازش سریع، پیادهسازی خطوط انتقال دادههای باکیفیت و عملکرد درست پایگاه داده ارزیابی کند تا مطمئن شود دانشمندان داده به یک کانال ارتباطی پایدار و مطمئن دسترسی دارند.
ابزارهای مورد استفاده مهندسان داده
مهندسان داده از ابزارهای مختلفی برای انجام وظایف خود استفاده میکنند، اما برخی از ابزارها ماهیت مشترکی دارند و همه مهندسان داده از آنها استفاده میکنند. این ابزارها بهشرح زیر هستند:
- آپاچی هدوپ (Apache Hadoop): یک پلتفرم نرمافزاری منبع مختص کلاندادهها است که همه مهندسان داده باید نحوه کار با آنرا بدانند. این بستر شامل چارچوب توزیعشده هدوپ و HDFS است که برای پردازش موثر دادهها مورد استفاده قرار میگیرد.
- اسپارک (Spark): یک پلتفرم پردازش سریع و تحلیلی کلاندادهها است که توسط بنیاد آپاچی توسعه داده شده است. این ابزار نسخه تکاملیافته هدوپ است که برای کار با دادههای دستهای و جریانی مورد استفاده قرار میگیرد.
- کوبرنتس (Kubernetes): ابزار توسعهیافته گوگل برای تنظیم خوشهها، مقیاسگذاری و خودکارسازی برنامههای کاربردی است. یک فناوری قدرتمند که تحولی بزرگ در زمینه رایانش ابری بهوجود آورده است.
- جاوا (Java): از زبانهای برنامهنویسی قدرتمند در زمینه توسعه راهحلهای نرمافزاری سازمانی است. مهندسان داده برای زیرساختهای انتقال دادهها از جاوا استفاده میکنند، هرچند انتخاب اول در این زمینه پایتون است.
- یارن (Yarn): بخشی از پروژه Hadoop Core است که به چند موتور پردازش داده اجازه میدهد تا دادههای ذخیرهسازیشده در یک سیستم را بهشکل بهینه مورد استفاده قرار دهند. یارن یک ابزار کارآمد است که با هدف بهبود عملکرد خوشه محاسباتی هدوپ مورد استفاده قرار میگیرد.
- مدیریت داده: مدیریت داده از مهارتهای اصلی موردنیاز یک مهندس داده است. مهندسان داده از زبان پرسوجوی ساختیافته (SQL) برای تعامل با پایگاههای داده استفاده میکنند.
- سیستمهای پایگاه داده: مهندسان داده باید توانایی کار با سیستمهای مبتنی بر SQL مثل MySQL، PostgreSQL Microsoft SQL Server و Oracle Database را بههمراه پایگاههای داده NoSQL مثل MongoDB ،Cassandra ،Couchbase و Oracle NoSQL Database داشته باشند.
- راهحلهای ETL: مهندسان داده برای ساخت فرایندهای انتقال دادهها بین سیستمها باید از ابزارهای ETL استفاده کنند. از ابزارهای قدرتمند در این زمینه باید به SAP Data Services، StitchData، Xplenty،Informatica و Segment اشاره کرد.
- نرمافزار انبار داده: توانایی راهاندازی انبارهای داده ابرمحور و اتصال خطوط انتقال دادهها به آنها ضروری است. برخی از راهحلهای ذخیرهسازی قدرتمند در این زمینه Amazon Redshift، Panoply، BigQuery و Snowflake هستند.
- توانایی کدنویسی: یکی از مهارتهای مشترکی که هر سه متخصص باید با آن آشنا باشند، توانایی کدنویسی به یکی از سه زبان مطرح در این زمینه یعنی پایتون، اسکالا یا جاوا است. پایتون اغلب برای ابزارهای ETL استفاده میشود. به همین دلیل، پیشنهاد ما این است که مهندسان داده مهارتهای کدنویسی خود با استفاده از این زبانها را افزایش دهند.
- ابزارهای کلاندادهها: از ابزارهای قدرتمندی که مهندسان داده برای کار با کلاندادهها به آن نیاز دارند باید به Apache Spark،Apache Kafka ، Apache Hadoop و Apache Cassandra اشاره کرد. دو مورد اول، اهمیت زیادی دارند و باید حتما با یکی از آنها آشنا باشید.
مسئولیتهای یک مهندس داده
وظایف کلی یک مهندس داده بهشرح زیر است:
- توسعه، ساخت و نگهداری از معماری دادهها
- آزمایش مکرر زیرساختهای انتقال دادهها
- مدیریت گزارش خطا و ارائه یک ساختار داده یکپارچه
- توانایی رسیدگی به دادههای خام و بدون ساختار
- ارائه توصیههایی با هدف بهبود، افزایش کیفیت و عملکرد دادهها
- اطمینان از این مسئله که دانشمندان داده توانایی کار با ساختارهای داده را دارند
- توسعه فرآیندهایی با هدف مدلسازی دادهها، استخراج و تولید دادهها
- تسلط بر ابزارهای برنامهنویسی مثل پایتون و جاوا
- توانایی بسط دادن قابلیتهای کاربردی ابزارهای ETL
- تسلط بر SQL و فناوریهای NoSQL مثل Cassandra و MongoDB
- دانش کافی درباره انبار دادهها و فناوریهای کلانداده مانند هدوپ، اسپارک، Pig و Hive
دانشمند داده (Data Scientist)
متخصص علم داده یا دانشمند داده، فردی است که دادههای دیجیتالی پیچیده را تحلیل و تفسیر میکند. برای این منظور، یک دانشمند داده باید در زمینه تجزیهوتحلیل آماری پیشرفته، یادگیری ماشین، پایش دادهها و غیره مهارت کافی داشته باشد.
علم دادهها یک حوزه بینرشتهای است که ماحصل اشتراک ریاضیات، آمار و برنامهنویسی است، با اینحال، بهنظر میرسد با پیشرفت فناوریها، رویکردهای بینرشتهای، در حال پیدایش و گسترش هستند. صنایع با کمک دانش داده قادر به اتخاذ تصمیمات دادهمحور هستند. دادهها در همهجا وجود دارند و اگر بهدرستی استفاده شوند، ارزش افزوده منحصربهفردی در اختیار شرکتها قرار میدهند. با این حال، بهدلیل منحنی یادگیری سخت، امروزه دانشمندان داده خبره کمی وجود دارند که قادر به تحلیل درست دادهها هستند. همین مسئله، باعث پیدایش شکاف بزرگی در این زمینه شده است.
برخی کاربران، تصور میکنند که ساخت مدلهای یادگیری ماشین تنها وظیفه یک دانشمند داده است، در حالی که این متخصصان پس از آنکه خروجی قابل استنادی را دریافت کردند، در مرحله بعد باید یافتهها را با استفاده از ابزارهای مصورسازی دادهها به اطلاعاتی که برای مدیران عامل قابل فهم باشد، تبدیل کنند. تنها پس از پذیرش نتایج است که دانشمندان داده متوجه میشوند وظایف خود را بهشکل درست انجام داده و پروژه را به اتمام رساندهاند.
همانگونه که اشاره کردیم، مجموعه مهارتهای اصلی یک تحلیلگر داده، حول محور دسترسی، مدیریت و پردازش دادهها است. از طرف دیگر، یک مهندس داده برای ساخت الگوریتمهای کامل، در کنار تسلط بر آمار و ریاضیات به سطح متوسطی از برنامهنویسی نیاز دارد. یک دانشمند داده باید در هر دو زمینه مهارت کافی داشته باشد تا بتواند دادهها را بهدرستی درک کند و از تکنیکهای آماری و ریاضیات بههمراه دانش برنامهنویسی عمیق در زمینه ساخت مدلها استفاده کند.
دانشمند داده یکی از مشاغل پرطرفدار حوزه فناوری اطلاعات است. بهطوریکه موسسات معتبری مثل MIT آنرا جذابترین شغل قرن 21 توصیف کردهاند. دانشمندان داده برای انجام درست وظایف خود به مجموعه مهارتهای مختلفی نیاز دارند. این افراد باید در زمینه کار با جبر خطی و آمار استاد باشند و بتوانند فرمولها و الگوریتمها را به برنامههای کاربردی تبدیل کنند.
مهارتهای مورد نیاز یک دانشمند داده
مجموعه مهارتهایی که یک دانشمند داده باید داشته باشد، ترکیبی از مهارتهای تحلیلگر و مهندس داده است. با اینحال، مهارتهای دیگری نیز وجود دارد که از مهمترین آنها به موارد زیر باید اشاره کرد:
- زبان برنامهنویسی آر (R): این زبان برنامهنویسی، ویژگیهای منحصربهفردی دارد که آنرا برای کار با دادهها به گزینه مناسبی تبدیل کرده است. با استفاده از این زبان برنامهنویسی میتوان هر مدل اطلاعاتی را پردازش کرد و مشکلات آماری را حل کرد.
- زبان برنامهنویسی پایتون (Python): یکی از ابزارهای مهمی است که یک دانشمند داده باید در جعبه ابزار خود داشته باشد. بیشتر متخصصان، این زبان را بهدلیل اکوسیستم ویژه آن در کار با دادهها، جایگزین مناسبی برای جاوا، پرل یا سیپلاسپلاس میدانند.
- هدوپ: تسلط بر هدوپ، باعث میشود تا شانس یک دانشمند داده برای احراز یک موقعیت شغلی نسبت به رقبا بیشتر شود. دانشمندان دادهای که تجربه کار با فناوریهایی مثل Hive ،Pig و ابزارهای ابرمحور مثل Amazon S3 را داشته باشند، شانس استخدام بیشتری دارند.
- SQL: دانشمندان داده باید مهارت کافی در زمینه کار با پایگاههای داده داشته باشند و بتوانند از SQL بدون مشکل استفاده کنند. SQL به دانشمندان داده کمک میکند تا کوئریهای دقیق بهینهشدهای برای اجرا روی پایگاههای داده بنویسند.
- جبر، آمار و یادگیری ماشین: دانشمندان داده برای انجام وظایف محوله باید آشنایی کاملی با جبر خطی و آمار داشته باشند.
- ابزارهای مصورسازی دادهها: روزانه حجم زیادی از دادهها توسط سازمانها تولید میشود. بهترین راه برای نشان دادن این حجم از دادهها بهشکلی قابل فهم برای کاربران، مصورسازی آنها است.
- مهارتهای ارتباطی: شرکتهایی که به دنبال یک دانشمند داده خبره هستند سعی میکنند، افرادی را استخدام کنند که مهارتهای ارتباطی نرم برای تعامل با اعضا یک تیم را داشته باشند.
مسئولیتهای یک دانشمند داده
از مهمترین مسئولیتهای یک دانشمند داده به موارد زیر باید اشاره کرد:
- انجام پیشپردازش دادهها، شامل تغییر داده و پاکسازی دادهها
- استفاده از ابزارهای مختلف یادگیری ماشین برای پیشبینی و طبقهبندی الگوها در دادهها
- بهبود عملکرد و دقت الگوریتمها از طریق بهینهسازی مدلها
- درک نیازهای شرکت و فرمولبندی مشکلات
- توانایی داستانسرایی با هدف ارائه مطالب فنی در قالب ساده به افراد غیرفنی
- تسلط بر مهارتهای ریاضی و آماری
- توانایی مدیریت اطلاعات ساختاری و غیرساختاری
- دانش عمیق در زمینه زبانهای برنامهنویسی پایتون، آر و SAS
- آشنایی با الگوریتمها و مدلهای مطرح یادگیری ماشین
- آشنایی با معماری SQL و NoSQL
- آشنایی با ابزارهای قابل استفاده برای کلاندادهها
کلام آخر
همانگونه که مشاهده کردید، شرح وظایف، مسئولیتها و کاری که این سه متخصص انجام میدهند، شباهتهای زیادی به یکدیگر دارد، اما یکسان نیستند. دانشمند داده فردی است که در تمام فعالیتهای مربوط با دادهها حرف اول را میزند. نقش مهندس داده را باید شبیه به متصلکننده دو عنوان شغلی تحلیلگر داده و دانشمند داده توصیف کرد، زیرا با جمعآوری و سازماندهی دادهها و ایجاد خطوط انتقال دادهها به متخصصان کمک میکند بهشکل سادهای به دادههای موردنیاز خود دسترسی داشته باشند.
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟