۲.۱ شناخت محدودیت های سیستم های مدیریت پایگاه داده های رابطه ای

دوره آموزش هادوپ سید محمدامین ساجدی

در این ویدئو درباره اینکه چرا باید از پایگاه داده های رابطه ای به سمت بزرگ داده و هادوپ مهاجرت کرد صحبت می کنیم. این ویدئو قسمتی از ویدئوهای دوره اموزشی Hadoop Fundamentals از لیندا هست که توسط خودم ترجمه و دوبله شده.

مشاهده ویدئو:


متن ویدئو جهت استفاده:

درصورت وجود اشتباه تایپی پیشاپیش از شما عذرخواهی می کنم

میخوایم یه نگاهی به پایگاه داده های موجود بندازیم. و یعنی درباره SQL Server و کلا خانواده SQL بحث می کنیم. همین که داده ها دارن روز به روز زیاد و زیادتر می شن و شرکت ها و سازمان های مختلف می خوان وارد عرصه بزرگ داده بشن، استفاده از پایگاه داده های رابطه ای به تنهایی اونها رو محدود می کنه. اما این محدودیت ها چی هستن؟

اولین محدودیت گسترش پذیری هست. تا الان شرکت ها پروژه هایی داشتن که از نظر حجمی به گیگابایت می رسیدن اما در حال حاضر حجم پروژه ها به ترابایت و پتا بایت رسیده. با اینکه این امکان هم وجود داره که پایگاه داده های رابطه ای در حد ترابایت یا حتی توزیع شده داشته باشیم اما این کار خیلی سخت، پیچیده و هزینه بر هست که اصلا ارزش انجام دادن نداره. 00:45

مشکل بعدی که وجود داره بحث سرعت دسترسی و پردازش داده هاست. امروزه کاربران می گن که پردازش ها یا دسترسی های بلادرنگ نیاز دارن و نمی تونن منتظر بمونن تا پردازش سنگینی انجام بشه. درواقع سرعت بالا و بالاتری می خوان. و همگی می دونیم که پایگاه داده های رابطه ای برای این دوموضوع یعنی گسترش پذیری و سرعت عملکرد خوبی از خودشون نشون نمیدن. 01:07

مشکلات دیگه ای هم هست مثل، قابلیت پرس و جو زدن به روش ها و حالت های مختلف، انجام پردازش های غیر معمول و پیچیده مثلا پردازش های یادگیری ماشینی. اما با وجود این کمبودها قرار نیست پایگاه داده های رابطه ای کنار زده بشن. این ها هم در کنار کار ما در بزرگ داده حضور دارند. راه حلی که ارائه میشه سیستم فایل هادوپ هست که همه این مشکلات رو برای ما حل می کنه. 01:29

اگر بخوایم درباره پایگاه داده های موجود صحبت کنیم، به جرات می تونم بگم که امروزه بیش از هر زمانی در عصر کامپیوتر، تنواع پایگاه داده ای داریم. اما توی انتخاب پایگاه داده مناسب باید چه نکاتی رو در نظر داشته باشیم؟

اول از همه باید پشتیبانی و هماهنگی از سیستم فایل های جدید رو درنظر داشته باشیم. تا قبل از اینکه هادوپ وارد کار بشه، اکثر فایل ها بصورت XML ذخیره می شدن، پس باید حواسمون به این موضوع باشه چراکه یکی از قسمت های اصلی هادوپ، سیستم فایل توزیع شده اون یا همون HDFS هست. 02:06

این سیستم فایل برای جایگزینی کامل هر سیستم فایلی که تا الان داشته استفاده میشده طراحی و وارد صحنه شده. HDFS بسیار قدرتمنده و درباره ریز به ریز عملیات های مورد نیاز جهت دسترسی درست و سریع و کم هزینه به فایل ها و داده های موجود طراحی شده. 02:22

در حال حاضر فقط محدود به انتخاب از میان پایگاه داده های رابطه ای نیستیم. بلکه تنوع ساختاری و عملکردی زیادی توی پایگاه داده ها وجود داره که می تونیم از میان اون ها انتخاب کنیم. توی خانواده پایگاه داده های NoSQL دسته بندی های مختلفی از پایگاه داده ها وجود داره. از جمله پایگاه داده های کلید-مقدارمثل ردیس، ستونی مثل کاساندرا، اسنادی مثل مانگو دی بی، گرافی مثل نئو فور جی، و …. . برای بیشتر پروژه های بزرگ داده ای، پایگاه داده های NoSQL راه حل های خوب و مناسبی بحساب میان. اشتباهی که بین افراد زیادی دیده شده اینه که هادوپ رو با یه پایگاه داده اشتباه می گیرن. اما هادوپ یک پایگاه داده نیست. 03:01

بلکه هادوپ یه سیستم فایل جایگزین به همراه کتابخونه ای برای پردازش هست. معمولا توی پیاده سازی هایی که از هادوپ انجام می دیم حداقل یک پایگاه داده  NoSQL رو هم بکار می گیریم. یکم پیچیده شد نه؟ نگران نباشید، توی این دوره باهم جلو می ریم و دونه دونه موضوعات و موارد ممکن رو با هم بررسی می کنیم. 03:18

بازهم می گم که پایگاه داده های رابطه ای همچنان پابرجا هستن و قراره کارهایی که برای اون طراحی شدن رو انجام بدن. درواقع کارهایی رو انجام می دن که هادوپ برای اون کارها طراحی نشده. پس قرار نیست پایگاه داده های رابطه ای رو با رفتن به سمت بزرگ داده کنار بزاریم. اونا هنوزم جزئی از کارمون هستن. پس هروقت که می خواین هادوپ رو وارد کارتون کنین، به این معناست که می خواین به سیستم رابطه ای موجودتون اون رو اضافه کنین. نه اینکه اون رو جایگزین سیستم قبلیتون کنید. 03:40

هادوپ به یه چیزی بنام HBase تعامل خیلی زیادی داره. توی این دوره دربارش صحبت می کنیم. همونطور که گفتم هادوپ یک سیستم فایل جایگزین و جدیده که استفاده از اون خیلی رایج شده. گفتیم که اسمش HDFS هست . HDFS تکنولوژی هست که براساس تکنولوژی GFS یا google file system در گوگل توسعه داده شده. 04:01

10 سال پیش گوگل درباره این سیستم فایلی که طراحی کرده بود مقاله ای منتشر کرد و همین باعث شد که جامعه متن باز به سراغ اون رفت و هادوپ رو طراحی کرد. پس بدونید که GFS و HDFS پیاده سازی های بسیار مشابهی دارن. 04:20

HBase اسم پایگاه داده ستون گسترده ای هست که استفاد هاز اون کنار هادوپ خیلی رایج شده. یکی از پایگاه داده های NoSQL بحساب میاد. ساختارش به این صورته که کلید داره و برای هرکلید بین 1 تا n مقدار می تونه داشته باشه. بزارین یه مثال براتون بزنم تا بهتر متوجه بشید. فرض کنید که مشتری رو دارید و برای هر مشتری هم اطلاعاتش رو دارد. توی یک پایگاه داده رابطه ای ممکنه 2 یا چندین چدول جدا از هم برای ذخیره این اطلاعات داشته باشید.04:46

اما توی Hbase یک شماره مشتری دارید و روبروی اون ویژگی ها و فیلدهای مختلف اطلاعاتی اون رو خواهید داشت. مثلا فیلد نام و ادرس رو دارین…بقیه فیلدها رو هم به همین صورت خواهید داشت. موضوعی که HBase رو NoSQL می کنه اینه که چینش و وجود فیلدها و ستونها می تونه متفاوت باشه. مثلا مشتری بعدی من ممکنه نام داشته باشه اما فیلدی برای ادرس نداشته باشه. به همین خاطر اندازه ستون ها یا فیلدهای هر مشتری می تونه متفاوت از بقیه باشه. و این یعنی هیچ ساختار ثابتی نداریم. 05:21


دیگر سرفصل های دوره آموزشی هادوپ

1 مقدمه
2 چرا از پایگاه داده های رابطه ای دور شویم؟
3 هادوپ چیست؟
4 درک اجزای اساسی هادوپ
5 راه اندازی محیط توسعه هادوپ
6 درک MapReduce
7 پیکربندی MapReduce
8 درک MapReduce 2.0 YARN
9 درک Hive
10 درک Pig
11 شناخت روند کار و متصل کننده ها
12 دیگر کتابخانه های هادوپ
13 شناخت Spark
14 بصری سازی خروجی هادوپ به همراه ابزارها
15 نتیجه گیری