
سلام عليكم .... وحشتوني
عنوان البلوج غريب شوية و مشابه لاسم نسخة لينكس الصغيرة
Damn Small Linux
أو أغنية أفريل لافين
The Best Damn Thing!
بس هو بيتكلم عن حاجات صغيرة شوية و خفيفة
انها قواعد البيانات الصغيرة
Embedded Databases
تعالوا نلق نظرة على قواعد البيانات العادية او المسماه بالـ
database Engines
غالبا تتكون من سيرفر او خادم قواعد البيانات
db server
اللي شغلته انه يتعامل مع البينات من حيث 4 المهام الرئيسية ، و التي هي :
تخليق ، قراءة ( او استرجاع) ، تعديل و حذف
CRUD : Create, Read (select statement), Update, & Delete
السيرفر ده ممكن يكون على جهازك الشخصي او المحمول أو سيرفر كبير لشركة ... الخ
ملحوظة : السيرفر او الخادم هنا معناه برنامج - سوفتوير - بيخدم على البيانات مش معناه جهاز كمبيوتر
و تاني جزء من قاعدة البيانات العادية هي العميل
db client
و اللي هو واجهة التعامل بين المستخدم و بين الخادم او السيرفر
يعني الواجهة اللي بيكتب عليها المستخدم أوامره و بيرسل بيها البيانات للسيرفر عشان السيرفر يتعامل معاها بالعمليات السابق ذكرها
ممكن العميل ده يكون على نفس الجهاز اللي فيه السيرفر أو ممكن يكون على جهاز تاني بعيد عنه و يتصل بيه
طبعا لغة التعامل بين العميل والسيرفر هي لغة الاس كيو ال
SQL = Structured Query Language
الحوار ده كويس لغاية دلوقتي .... طيب فين المشكلة؟؟؟؟
أحيانا احنا محتاجين نخزن بيانات حجمها صغير و محدودة على جهاز المستخدم العادي ، على سبيل المثال و ليس الحصر
برنامج مشغل وسائط أو ميديا بلاير
Media Player
عاوز يرص أسامي الأغاني في قائمة أغاني أو ما يسمى بلاي ليست
playlist
برنامج مفكرة شخصية بيحفظ بيانات و ارفام تليفونات و عناوين بريد الكتورني و ما الى ذلك
أو برنامج من الذين سبق ذكرهم موجود على جهاز تلبفون محمول
ينفع يعني ننزل داتا بيس سيرفر على جهاز الراجل عشان نحفظ كام أغنية و كام رقم تليفون؟ !!! و طبعا الحفظ في الملفات العادية أو ملفات الاكس ام ال ليه مشاكله و خطورته
Plain text Files or XML Files
طيب ، و افرض الراجل شغال على تليفون محمول ، نعمل ايه ف الحالة دي؟؟؟؟
الحل يكمن في عمل قاعدة بيانات صغيرة و متضمنة داخل البرنامج أو داخل الجهاز عشان تحقظ البيانات الصغنونة دي في جهازه الشخصي أو المحمول
طيب و كل ماييجي واحد يعمل برنامج جديد هايكتب قاعدة البيانات بتاعته ؟؟؟؟
من هنا جاءت الحاجة لقواعد البيانات الصغنونة و المتضمنة ، - معلش مش لاقي ترجمة لكلمة امبدد غير دي
embedded
النوع ده من قواعد البيانات صغير جدا في الحجم - يعني حوالي 100 الى 8 ميجا بايت
لكن انت بتستخدمه زي مابتستخدم قاعدة البيانات العادية - مع بعض القيود طبعا - ، يعني انت بتتعامل مع قاعدة البيانات الصغنونة دي من خلال لغة الاس كيو ال العادية
SQL = Structured Query Language
يعني مبرمج البرامج الصغيرة دي ماعليه إلا انه يتصل بقاعدة البيانات الصغنونة دي و يكلمها بواسطة لغة الاس كيو ال ولا وجع دماغ
هاكم بعض الأمثلة لقواعد البيانات الصغنونة دي
نمرة واحد : سيكويل لايت SQLite
الأشهر و الأكثر استخداما في العالم ، هي عبارة عن مكتبة جاهزة
Library
مكتوبة بلغة السيو المبرمج يربط برنامجه بيها و يستخدمها ، يعني بكدة تكون أصبحت جزءا من البرنامج ، مش برنامج منفصل متصل بالبرنامج الأصلي
قاعدة البيانات الفعلية
physical database
هي عبارة عن ملف عادي منظم بطريقة تخليه يحفظ البيانات
Plain Text File
طبعا في بعض العيوب و القيود فيها زي مثلا
مافيهاش دعم المفتاح الخارجي
Foreign Key
و كمان فيه مشكلة في تبادل البيانات مع قواعد البيانات الأخرى - يعني هو بيستخدم طريقة معينة لمعرفة نوع البيانات
dataTypes
مختلفة عن غيره - لأنه بيكتب في ملف ، يعني كل البيانات هاتتخزن على شكل نصوص - و بكدة البيانات اللي فيه يصعب نقلها لقاعدة بيانات من نوع تاني
بس تعالوا نشوف السيكول لايت ده مستخد م في ايه
اولا : هو جزء من متصفح الويب الشهير العظيم ابن الحلال ابن الناس الطيبين الموزيلا فايرفوكس يعني كدة موجود 125 مليون نسخة من السيكويل لايت على أجهزة 125 مليون شخص ثانيا :جزء من نظام تشغيل الماك او اس اكس Mac OSX يعني كدة أهو معانا 20 مليون واحد كمان ثالثا : 300مليون نفر نزلوا برنامج سكايب الشهير ، و البرنامج ده بيستخدم صاحبنا السكويل لايت رابعا : أجهزة المحمول المصنوعة من شركات عالمية : أريكسون ، سامسونج ، سيمنس ، سوني اريكسون ، و باناسونيك ... ألا وهو نظام تشغيل السيمبيان Symbian OS
يعتمد على السيكويل لايت
القائمة أيضا تضم شركات عملاقة زي : جوووجل و مكافي ، و ميكروسوفت !!!!!!!!! و و صن و جنرال الكتريك و توشيبا
بقي أن نقول أن السيكويل لايت العظيم مفتوح المصدر و مجاني تماما
نمرة اتنين : الهايبر سونيك
HSQLDB
قاعدة بيانات صغيرة مكتوبة 100% بلغة الجافا البرمجية ، و هي أيضا مفتوجة المصدر
فيها خاصية جميلة ، ألا و هي انها ممكن تكون متضمنة في البرنامج أو تكون زي أي قاعدة بينات عادية - يعني سيرفر مود
Server Mode
أشهر من استخدمها : قاعدة بيانات أوبن أوفيس بيس
OpenOffice.org Base
المناظرة للأكسس - قاعدة بيانات ميكروسوفت أوفيس
Microsoft Office Access
كمان هي جزء من الهايبرنيت
Hibernate
اللي علرفه مستخدمي الحافا
و كمان الانستال شيلد
Install Shield
المستخدم في تثبيت البرامج
program setup
طبعا قاعدة البيانات دي مقتوحة المصدر هيا كمان
نمرة تلاتة: ماي سيكويل امبدد
MySQL Embedded
غير مجانية و غير مفتوحة المصدر - مع العلم ان قاعدة بيانات مايسيكويل العادية مجانية مع بعض القاعقيود ، تحتاج مابين 2 ميجا الى 8 ميجا من المساحة
غاليا - حسب فهني - هي أيضا مكتبة برمجية ممكن نستخدمها في البرامج
من مستخدميها : موتورولا و اتش بي و سيمانتك و أدوب و سيسكو و سوزوكي
هي موجهة غالبا للشركات مصنعة العتاد - الهاردوير او المسماه بال او امي ام
Original Equipment Manufacturers
يعني المبرمجين الغلابة بلاش يدوروا عليها
نمرة أربعة : ميكروسوفت سيكويل سيرفر كومباكت اديشن Microsoft SQL Server 2005 Compact Edidtion
نسخة مضغوطة من قاعدة البيانات الشهيرة السيكويل سيرفر ، و طبعا تجارية غير مفتوحة المصدر و لكن تحميلها مجاني
ممكن تشتغل على الأجهزة الشخصية و كمان الأجهزة المحمولة اللي بتشتغل على نظام تشغيل وندوز موبايل
Windows Mobile
هي أيضا عبارة عن مكتبة برمجية وتأخذ أقل من 2 ميجا بايت مساحة
DLL Library
طبعا انتو عرفتو ليه انا حطيت علامات تعجب كتير لما قلت ان ميكروسوفت بتستخدم السيكويل لايت رغم ان عندها ده ، بس ماعلينا
نمرة خمسة : سايبيس سيكويل اني وير Sybase SQL AnyWhere
من انتاج شركة سايبيس العريقة ، قاعدة بيانات ممكن تستخدم متضمنة داخل البرنامج أو كسيرفر بحد ذاته - زي الهايبرسونيك - ، كمان ملفات قاعدة البيانات - الملفات اللي فيها البيانات - مش مربوطة بمنصة واحدة
Platform Independant
يعني انت ممكن تنقل البيانات مابين أجهزة بأنظمة تشغيل مختلفة من غير أي مشكلة
يوجد حوالي 10 مليون نسخة مثبتة منها
أرجو اني أكون وفقت في عرض الموضوع و اتمنى أسمع تعليقاتكم سلبا أو إيجابا
و السلام ختام
Labels: DB, tech