پایگاه داده(Database) چیست؟
پایگاه داده مجموعهی سازمان یافته از دادهها و یا اطلاعات است.
امروزه جریان عظیمی از اطلاعات وجود دارد، ذخیرهسازی این اطلاعات به منظور دسترسی و استفاده آسان از آن در شرایط مورد نیاز چالش جدی است. پایگاه دادهها را میتوان به سه دسته تقسیم بندی کرد:
متمرکز: تمامی اطلاعات در یک کامپیوتر ذخیرهسازی میشود. برای دستیابی به اطلاعات ذخیره شده باید به کامپیوتر اصلی که سرور نامیده میشود متصل شوید.
غیر متمرکز: در این حالت سیستم ذخیرهی مرکزی وجود ندارد و برخی سرورها دادهها را به کاربران ارائه میکنند. سرورها به یکدیگر متصل شدهاند.
توزیع شده: سیستم ذخیرهسازی اطلاعات وجود ندارد. تمامی گرهها حاوی دادهها هستند. کاربران با یکدیگر برابر هستند و حقوق یکسانی دارند.
پایگاه دادههای مرسوم چگونه در زندگی روزمره مورد استفاده قرار میگیرند؟
اگرچه پایگاههای دادهی کلاسیک برای مدت زمان طولانی مورد استفاده قرار میگیرند، مسائل متعددی در این زمینه وجود دارد.
امنیت: اگر شخصی به سرور دادهها دسترسی پیدا کند، میتواند دادههایی را به سرور اضافه کند، دادهها را تغییر دهد و یا آنها را حذف نماید.
قابلیت اطمینان: درصورت افزایش تعداد درخواستها ممکن است سرور دچار اختلال شده و به درخواستها پاسخ ندهد.
دسترسی: در صورتی که سیستم ذخیرهسازی مرکزی دچار مشکل گردد، قادر به دریافت اطلاعات نخواهید بود مگر آنکه مشکل مرتفع گردد. بعلاوه، کاربران مختلف نیازهای مختلفی خواهند داشت اما فرآیندها یکنواخت بوده و میتواند موجب نارضایتی مشتریان گردد.
نرخ انتقال دادهها: در صورتی که سرورها در کشورها و یا قارههای دیگری قرار گیرند، ممکن است ارتباط با سرور با مشکلاتی همراه گردد.
مقیاس پذیری: از آنجایی که ظرفیت سرور محدود است و ترافیک نمیتواند بینهایت شود، تغییر مقیاس شبکههای متمرکز دشوار است.
پایگاههای دادهی غیر متمرکز و توزیع شده میتوانند این مشکلات را مرتفع کنند.
آیا پایگاه دادههای غیرمتمرکز میتوانند مشکلات امنیتی را رفع کنند؟
پایگاههای دادهی غیر متمرکز دارای سیستم ذخیرهسازی متمرکز نیستند؛ یعنی تمامی دادهها در میان گرههای شبکه(کامپیوترها) توزیع میشوند. در صورتی که دادهای در هر یک از گرهها تغییر کند، در میان تمامی کامپیوترهای شبکه بازتاب مییابد. در صورت پذیرش تغییرات، دادههای جدید در میان تمامی کاربران شبکه توزیع میگردد. در غیر این صورت، دادهها با دادههای دیگر گرهها منطبق میگردد. بنابراین سیستم بهطور خودکفا دادهها را تنظیم میکند. این نوع از پایگاه دادهها از حملات عمدی و یا تغییرات تصادفی اطلاعات محافظت میگردند.
قابلیت اطمینان، سطح دسترسی و نرخ انتقال اطلاعات
شبکههای غیر متمرکز میتوانند افزایش درخواستها را بر روی شبکه، بهشکل قابل توجهی تحمل کنند.
تمامی گرههای شبکه دارای اطلاعات میباشند. بنابراین، درخواستها در میان گرهها توزیع میشوند. در نتیجه ترافیک بر یک کامپیوتر ایجاد نمیشود و در میان تمامی گرهها توزیع میشود. در این حالت، ظرفیت کلی شبکه بسیار بیشتر از یک پایگاه دادهی متمرکز است.
با توجه بهاین که تعداد کامپیوترهای موجود در شبکههای غیر متمرکز و یا توزیع شده بالا است، اجرای حملات DDoS تنها در صورت بالاتر بودن ظرفیت در اختیار مهاجم نسبت به شبکه امکان پذیر است. اما اجرای حملات مشابه بسیار پرهزینه و دشوار خواهد بود. در یک مدل متمرکز، پاسخ زمانی بسیار طولانی است. بنابراین میتوان شبکههای توزیع شده و غیر متمرکز را امن در نظر گرفت.
ممکن است کاربران در سراسر جهان قرار گرفته باشند و به همین دلیل ارتباطات اینترنتی مشکلاتی را بهوجود آورد. در شبکههای غیر متمرکز و توزیع شده کاربران میتوانند گرهها را انتخاب کنند و فعالیت خود را با اطلاعات مورد نیاز انجام دهند.
مقیاس پذیری
شبکهی متمرکز را نمیتوان بهطور با اهمیتی گسترش داد. در مدل متمرکز تمامی کاربران به سرور متصل میشوند. تنها سرور تمامی اطلاعات را ذخیره میکند. بنابراین تمامی درخواستهای مربوط به دریافت، تغییر، افزودن و یا حذف دادهها از طریق کامپیوتر اصلی انجام میشود. اما منابع سرور محدود است. در نتیجه قادر است به تعداد مشخصی از شرکتکنندگان بهطور کارآمد خدمترسانی کند. درصورت افزایش تعداد کاربران، ممکن است بار سرور در طی زمان اضافه بار فراتر از محدودیت قرار بگیرد. از آنجایی که در مدلهای غیر متمرکز و توزیع شده بار در میان چندین کامپیوتر توزیع میشود، این مسئله مشاهده نمیشود.
چگونه میتوان پایگاه دادههای غیر متمرکز و توزیع شده را راهاندازی کرد؟
پایگاههای داده به ارتباط میان بخشهای مختلف در خط تولید سرعت میبخشند. به عنوان مثال؛ در مسیر استفاده از یک ماشین مراحل مختلفی از جمله مونتاژ، فروش و بیمه وجود دارد. در هر مرحله اسناد و گزارشهای زیادی تهیه میشود. در صورت نیاز به شفافیت، درخواستها به مقامات مختلفی ارسال میشوند و این فرآیند به زمان زیادی نیاز دارد. در این شرایط مکان، ناهماهنگی در ارتباط ناشی از زبان و ساختار اداری ممکن است مشکلات جدی ایجاد کند.
بلاکچین قادر است از این مشکلات جلوگیری کند. تمامی اطلاعات مربوط به هر ماشین در شبکه ذخیره میشود. این دادهها بدون تایید کاربران قابل حذف و یا تغییر نیست. همچنین در هر زمان امکان دسترسی به اطلاعات مورد نیاز وجود دارد. قراردادهای هوشمند پیادهسازی بلاکچین را تسهیل میکند. میتوان CarFix را بهعنوان نمونهی عملی از فرآیند اشاره شده عنوان کرد. تیم این شرکت بر روی توسعهی چرخهی زندگی خودرو با استفاده از بلاکچین فعالیت میکند.
نظر شما در رابطه با بهکارگیری پایگاههای داده بهصورت غیر متمرکز و توزیع شده چیست؟ آیا پایگاههای دادهی متمرکز جایگاه خود را در آینده از دست خواهند داد؟ نظر خود را به صورت کامنت با ما درمیان بگذارید.