حميد يوسف زاده
 yousefz@ccwmagazine.com

                                   پايگاه های داده در لينوكس

مطالب ديگری از اين نويسنده

 

 

 

در شماره گذشته به معرفی اجمالی برخی از پايگاه های داده سورس آزاد تحت لينوكس پرداختيم، اما اكثر قريب به اتفاق پايگاه های داده تجاری نيز تحت سيستم عامل لينوكس عرضه شده اند. به علت تعداد بسيار زياد آنها معرفی همه آنها در اين مقاله ممكن نيست و بنابراين تنها برخی از آنها را بررسی خواهيم كرد.

در هنگام انتخاب يك پايگاه داده برای يك هدف تجاري، لازم است دقت شود كه هميشه بهترين پايگاه داده لزوماً پايگاه داده با بيشترين و متنوع ترين قابليت ها يا با كمترين قيمت نيست. مثلاً برای يك كاربرد خاص كارايی بالای پايگاه داده در انجام پرس وجوهای كوچك يا راحتی مديريت پايگاه داده می تواند مهم باشد. بنابراين برای اين كاربرد، پايگاه داده ای بايد انتخاب شود كه اين نيازها را به بهترين صورت برآورده كند. در زير به بررسی برخی پايگاه های داده تجاری تحت لينوكس می پردازيم.

Cache

يك موتور داده چند بعدی (multi-dimensional data engine) است كه اساس آن را ANSI MUMPS (استاندارد برنامه نويسی در محيط های بيمارستاني) تشكيل می دهد. به همين دليل اين پايگاه داده در دنيای پزشكی كاربرد زيادی دارد. اين پايگاه داده شامل يك واسط SQL و درايورهای ODBC است.

 

DBMaker

يك پايگاه داده تجاری full-flesged است. نمونه ای از قابليت های آن عبارتند از:

- انجام تراكنش ها به صورت تصديق دو مرحله ای (2phase commit)

- پشتيبانی از triggerها، رويه های ذخيره شده (stored procedures) و توابع تعريف شده توسط كاربر.

- پشتيبانی از (Binary Large Objects (BLOB

- دارای موتور جست وجوی full-text

- پشتيبانی از كليد خارجی (foreign key)

- امكان تهيه نسخه پشتيبان به صورت Online و افزايشی (incremental)

- پشتيبانی از Journaling

- پشتيبانی از Online transaction processing) OLTP)

 

IBM DB2

اين پايگاه داده توسط IBM عرضه شده است و يك پايگاه داده flagship محسوب می شود. برخی قابليت های آماده عبارتند از:

- امكان download كردن نسخه بتای آن به صورت trial

- پشتيبانی كاربران از طريق يك news forum

- دارای يك مركز كنترل مبتنی بر وب كه يك ابزار گرافيكی برای مديريت اين پايگاه داده است

- شامل API برای دسترسی به چندين پايگاه داده و API برای برنامه نويسی وب

 

Informix

شركت Inforrmix در طول زمان ابزارهای مختلف خود را تحت لينوكس عرضه كرده است. از جمله پايگاه داده SE(Standard Engine) ، Connect, ESQL/C.

Inforrmix-SE يك پايگاه داده باكيفيت، قدرتمند و پرقابليت است كه برای كسانی كه به دنبال يك پايگاه داده خوب با مديريت آسان هستند، مناسب است.

 

Sybase

Sybase سيستم ASE خود را تحت لينوكس ارائه كرده است. اين شركت همچن كتابخانه های Open Client/C خود را به صورت آزاد عرضه كرده است. اين كتابخانه ها به كارفرماهای لينوكس امكان اتصال به كارگزارهای Sybase را می دهند. همچنين برخی ابزارهای سورس آزاد نيز برای Sybase وجود دارند. از جمله:

Sybperl ـ كه توسعه ای روی Open Client برای پشتيبانی زبان Perl است.

SQSH Shell ـ برای لينوكس كه يك واسط توانا برای پايگاه های داده Sybase ارائه می كند.

Web/Genera ـ كه يك واسط وب برای اتصال به Sybase است.

SOLID

كارگزار SOLID SQL توسط Solid Information Technology ارائه شده است. ويژگی های قابل توجه اين محصول اين است كه يك نسخه ارزيابی (evaluation) را به صورت مجانی ارائه می كند، Linux SMP را پشتيبانی می كند و كارفرماهايی را برای سيستم های غيرلينوكس ارائه می كند كه می توانند با كارگزارهای لينوكس تعامل كنند.

برخی ديگر از ويژگی های اين پايگاه داده عبارتند از:

- تهيه پشتيبان از پايگاه داده به صورت Online كه باعث می شود يك نسخه سازگار از پايگاه داده تهيه شود، بدون اين كه نياز به متوقف كردن كار آن باشد.

ـ امكان ترميم پايگاه داده به آخرين وضعيت سازگار در هنگام بروز خطا در سيستم

ـ بهينه سازی پرسوجوها با قابليت مشاهده آمارهای مربوط به بهينه سازی

ـ پشتيبانی از BLOB

- انواع كنترل همروندی شامل قفل گذاری مشترك و انحصاری و INTENT

EMPSQL

شركت Empress پايگاه داده EmpSQL و مجموعه ای از محصولات مرتبط با آن را تحت لينوكس عرضه كرده است كه از جمله می توان كارگزارهای مبتنی بر Motif را نام برد. برخی از قابليت های بارز اين پايگاه داده به شرح زير هستند.

- تصديق دومرحله ای

- پشتيبانی از BLOB

- پشتيبانی از كليد خارجی برای حفظ جامعيت ارجاعی (Referential Integrity)

Adabas D

اين محصول توسط Software AG ارائه شده است و توسط Caldera و SuSE نيز عرضه می شود.

پشتيبانی اين پايگاه داده را SuSE ارائه می كند. برخی قابليت های آن عبارتند از:

- پشتيبانی Disk Mirroring برای استحكام پايگاه داده در برابر خطاها

- امكان نگهداری داده ها در چند سايت به صورت هماهنگ و سازگار

- پشتيبانی BLOB

- قفل گذاری بهينه

- ارائة يك ابزار مديريت منويی

Volocis

اين محصول توسط شركت Raima عرضه شده است و يك پايگاه داده دارای معماری كارفرما/كارگزار محسوب می شود كه می تواند در بسياری از برنامه های كاربردی تجاری مورد استفاده قرار گيرد. اين سيستم چندين API شامل ANSI SQL CAPI، Low Level C-API، تعدادی كتابخانه ++ C و يك API سفارشی عرضه می كند. اين پايگاه داده مدل رابطه ای و مدل شبكه ای را پشتيبانی می كند. برای بالابردن انعطاف پذيری و كارايي،برنامه نويسان می توانند اين دو مدل را با هم تركيب و استفاده كنند. امكان قرار دادن برنامه ها در هر دو قسمت كاربر و كارگزار وجود دارد كه به اين ترتيب می توان ترافيك شبكه را تا حد قابل توجهی كاهش داد.

mSQL

MSQL يا miniSQL كه توسط شركت Hughes Technologies عرضه شده است، يك پايگاه داده ساده و سريع است كه زيرمجموعه ای از SQL را پشتيبانی می كند. اين سيستم محبوب، پركاربر و برای برنامه های كاربردی عادی بسيار مناسب است. همراه با اين پايگاه داده، مجموعه خوبی از ابزارهای مجاني، امكانات خاص برخی زبان های برنامه نويسی مانند جاوا، Perl و tcl/tk، واسطه ای وب و امكانات ODBC و JDBC را عرضه می كند. اما اصلی ترين اشكال اين پايگاه داده عدم پشتيبانی قابليت های مورد نياز كاربردهای تجاری نظير تراكنش ها و چندوظيفگی است.

Kubl

صفحه اينترنتی اين پايگاه داده، آن را يك سيستم دارای كارايی زياد، دارای كارگزار Replication همراه با API مربوط به كارفرمای ODBC و دارای پشتيبانی از رويه های ذخيره شده SQL معرفی می كند. اين پايگاه داده تحت NT و بسياری از سيستم های عامل مبتنی بر يونيكس اجرا می شود. قيمت اين پايگاه داده در مقايسه با بسياری از پايگاه های داده بسيار ارزان است. در ادامه، برخی از قابليت های اين پايگاه داده را مرور می كنيم:

- امكان تهيه پشتيبان از پايگاه داده به صورت Online

- ايجاد Checkpoint روی اطلاعات به صورت اتوماتيك و ترميم پايگاه داده به آخرين تراكنش تصديق شده قبل از بروز خطا

- پشتيبانی چند ريسمانی (multi-threading) كه از خاصيت SMP استفاده می كند.

- ارائه واسطه ای زبان SAG/CLI C برای يونيكس

- پشتيبانی از BLOB

- كنترل همروندی انحصاری و غيرانحصاری

- قابليت های شيءگرا نظير ارث برای جداول

- دارای زبان برنامه نويسی مخصوص (برای نوشتن رويه های ذخيره شده) به نامه Kubi /PL

- دارای گرداننده ODBC برای ويندوز NT

YARD/SQL

اين پايگاه داده دارای قابليت های بسياری است كه بارزترين آنها وجود يك واسط XII/Moti است. برخی ديگر از قابليت های اين پايگاه داده عبارتند از:

- پشتيبانی از ODBC

- پشتيبانی از زبان های ملی (NLS)

- بهينه سازی پرس وجوها

- پشتيبانی از رويه های ذخيره شده

JustLogic

يك پايگاه داده رابطه ای است كه توسط Just Logic Technologies عرضه شده است. ويژگی های بارز آن عبارتند از:

- پشتيبانی از تراكنش ها و تصديق دومرحله ای

- ترميم اتوماتيك بعد از بروز خطا در نرم افزار يا سخت افزار

DBIX

اين محصول توسط Halcycon Software ارائه شده است. اين شركت بيشتر به خاطر ابزارهای ارتباط ميان ويندوز و يونيكس كه عرضه كرده است، معروف است. برخی از قابليت های DBIX عبارتند از:

- امكان ترميم داده ها پس از بروز خطا

- امكان رويدادنگاری تراكنش ها

- واسطه ای ODBC

- امكان ارتباط با Visual Basic (توسط VBIX)

LNX-DBMS

متأسفانه سايت اين پايگاه داده به زبان آلمانی است و تنها چيزی كه می توان در مورد آن بيان كرد اين است كه اين محصول به صورت كارفرما/كارگزار عرضه می شود و دارای واسط ODBC است.

SQLFLex

شركت Info Flex اين سيستم را عرضه كرده است كه دارای قابليت های زير می باشد:

- پشتيبانی از ANSI SQL

- قفل گذاری Row Level

- سازگار با Informix-ESQL/C و Informix SEAPI

- پشتيبانی از تعداد كاربران نامحدود

- اجرا روی لينوكس و يونيكس و ويندوز NT

- سورس كد اين سيستم در ازای مبلغی حدود پانزده هزار دلار قابل تهيه است.

Texis

اين پايگاه داده توسط Thunderstone ارائه شده است و در زمينه پشتيبانی از متون زبان طبيعي، تصاوير، ويديو و صدا كار بيشتری صورت داده است. سايت اين پايگاه داده بسيار حرفه ای و دارای Demoهای جذاب و مناسب است.

اوراكل (Oracle)

ارائه اوراكل تحت لينوكس را می توان تحولی در زمينه پايگاه های داده و حتی در زمينه لينوكس دانست، مجموعه كاملی از قابليت های لازم برای يك پايگاه داده كه می تواند كاربردهای بسيار وسيعی را پاسخگو باشد. سايت اين پايگاه داده علاوه بر ارائه نسخه كامل آن برای download كردن، مستندات و راهنماهای بسياری را برای كاربران آن عرضه می كند. با توجه به تعدد قابليت های اين سيستم و شناخته شده بودن آن در كشورمان، بيان اين قابليت ها ضروری به نظر نمی رسد.

سخن آخر

در دو شماره اخير به بررسی اجمالی پايگاه های تحت لينوكس پرداختيم. در حال حاضر مبحث پايگاه های داده لينوكس، ديگر يك حيطه جديد كه ارائه يك محصول در آن باعث جهش در محبوبيت لينوكس شود، محسوب نمی شود و همانطور كه گفته شد اكثر پايگاه های داده، چه تجاری و چه غيرتجاري، تحت اين سيستم عامل نيز ارائه شده اند.

 

  

  
 م7