Warning: Declaration of tie_mega_menu_walker::start_el(&$output, $item, $depth, $args, $id = 0) should be compatible with Walker_Nav_Menu::start_el(&$output, $item, $depth = 0, $args = Array, $id = 0) in /home3/afgsaane/public_html/wp-content/themes/jarida/functions/theme-functions.php on line 1904
پایگاه داده های تعبیه شده | سایت تخصصی کامپیوتر afgsaa
خانه » عمومی » مقاله » پایگاه داده های تعبیه شده

پایگاه داده های تعبیه شده

DataBase

امروزه در بین توسعه دهندگانی که بر پایه نرم افزارهای آزاد کار می کنند، پایگاه داده هایی نظیر MySQL یا PostgreSQL بسیار محبوب هستند. اما گونه دیگری از پایگاه های داده وجود دارند که با معماری سرویس دهنده و سرویس گیرنده کار نمی کنند. این گونه از پایگاه های داده به صورت تعبیه شده (داخل خود برنامه) و به شکل یک کتابخانه مانند کتابخانه های دیگر کار می کنند یعنی با شروع برنامه ، کار آن نیز آغاز شده و با به پایان رسیدن آن، به کار خود پایان می دهد. سوالی که مطرح می شود این است که اصولا در چه مواردی می توان از آ نها استفاده کرد. از عمده ترین کاربر دهای آ نها در سیستم های Embed  همانند اندروید است. این پایگاه های داده معمولا نیازی به اعمال تنظیمات پیچیده مانند تنظیماتی که در سیستم های مبتنی بر سرویس دهنده/ سرویس گیرنده شاهد هستیم ، ندارند. به همین دلیل نرم افزار گزینه مناسبی برای محیط هایی محسوب می شود که دسترسی به آن به صورت روزمره کار آسانی نیست.در این مقاله قصد داریم تعدادی از این پایگاه داده ها را معرفی و بررسی کنیم.

*** SQLite : یک پایگاه داده رابطه ای است که تقریبا تمامی توسعه دهندگان آن را می شناسند. این کتابخانه به زبان C نوشته شده است و بخش عمده ای از استاندارد SQL را پوشش می دهد. کل اطلاعات پایگا ه داده در یک فایل ذخیره می شود و از آنجایی که اکثر زبا نهای برنامه نویسی از آن پشتیبانی می کنند، از قابلیت حمل بسیار بالایی برخوردار است. از جمله معایب آن این است که عملیات نگهداری (Maintenance) در آن باید به صورت دستی و یا به وسیله خود برنامه انجام شود. به همین دلیل اگر به دفعات بسیار، رکوردهای پایگا ه داده خود را به روزرسانی یا حذف می کنید، احتمالا گزینه مناسبی برای شما نخواهد بود.

***H2  : یک پایگاه داده رابطه ای دیگر که فقط در دنیای جاوا به شمار می آید و مانند SQLite از بخش عمده ای ا ز استاندارد SQL پشتیبانی می کند. این پایگاه داده به زبان جاوا نوشته شده است و هماهنگی به مراتب بیشتری در مقایسه با SQLite با اکوسیستم جاوا دارد. عملیات نگهداری در آن به صورت خودکار و بدون اطلاع کاربر انجام می شود. یکی از مزایای آن پشتیبانی از حالت In-Memory است که به شما اجازه می دهد اطلاعات خود را تنها در حافظه دستگاه نگهداری کنید. H2 یک وب سرور داخلی دارد که می توانید به وسیله مرورگر، محتوای داخلی پایگاه داده را مشاهده کنید. تمامی این امکانات در یک فایل jar  به حجم یک مگابایت در اختیار شماست.

*** Berkeley DB : از فضای رابطه ای که کمی فاصله بگیریم، این پایگاه داده که برای ذخیره داده های Key/Value  مورد استفاده قرار می گیرد به زبان C نوشته شده است و از اکثر زبان های برنامه نویسی مرسوم پشتیبانی می کند. همچنین یک نسخه    Native با امکانات بیشتر برای زبا نهای جاوا و ++ C دارد. سرعت و کارایی بسیار بالای آن باعث شده که بیشترین استفاده را در سیستم های بلادرنگ و با حجم بسیار بالا داشته باشد، همچنین از قابلیت فشرده سازی پایگاه داده نیز برخوردار است.

*** EJDB : اگر از عاشقان MongoDB هستید، این پایگاه داده برای شما ساخته شده است. به زبان C نوشته شده و از بیشتر زبا نها پشتیبانی می کند. در رده پایگاه داده های Document Store قرار می گیرد. زبان پرس وجوی آن بسیار  شبیه به زبان پرس وجویMongoDB  است. اگر در سمت سرور از Node JSاستفاده می کنید، حتی می توانید از آن به عنوان پایگاه داده اصلی برنامه خود بهره ببرید.

*** LevelDB : گوگل وارد می شود. این پایگاه داده از سوی گوگل توسعه داده شده و در مرورگر کروم از آن استفاده می شود. به زبان ++ C نوشته شده است و در رده پایگاه های داده Key/Value قرار می گیرد. متاسفانه پشتیبانی رسمی مناسبی از سایر زبان ها ندارد. در رده بندی کارایی، قابل مقایسه با Berkeley DB است که با اختلاف فاحش از بقیه پیش افتاده اند. از قابلیت فشرده سازی نیز برخوردار است.

*** UnQLite : از پایگاه های داده چندکاره است. در رده پایگاه های داده Key/Value و Document Store قرار دارد. از بیشتر زبانها پشتیبانی می کند. تنها مزیت آن نسبت به دیگر برنامه ها در چندکاره بودن آن است.

*** CodernityDB : یک ObjectDB فقط برای برنامه نویسان پایتون. در این پایگاه داده می توانید اشیا (Object) پایتون را بدون هیچ دردسر و واسطی ذخیره کنید و بر مبنای همه فیلدهای آن شی، از پایگاه داده خود Query بگیرید. از مزیت های دیگر آن پشتیبانی از رمزنگاری داده ها است.

*** MapDB : از پایگاه های داده Key/Value برای جاوا. به گونه ای آن را می توان یک موتور ذخیره سازی برایCollection  های جاوا دانست. قابلیت In-Memory دارد و از رمزنگاری و فشرده سازی پشتیبانی می کند، همچنین قابلیت Snapshot گرفتن از پایگاه داده همزمان با کار را نیز فراهم کرده است. قابلیت حذف رکوردهای قدیمی را در صورتی دارد که اندازه پایگاه داده بزرگ شود و در این حالت مشابه یک Cache عمل می کند.

منبع: ماهنامه نرم افزارهای آزاد

درباره م.رضائی

دیدگاهتان را ثبت کنید

آدرس ایمیل شما منتشر نخواهد شدعلامتدارها لازمند *

*

theme
رفتن به بالا

Warning: Parameter 1 to W3_Plugin_TotalCache::ob_callback() expected to be a reference, value given in /home3/afgsaane/public_html/wp-includes/functions.php on line 3510