التثبيت تحتاج إلى تثبيت PostgreSQL قبل البدء باستخدامه، ومن الممكن أن يكون مُثبّتًا بالفعل على موقعك، إما لأنه مُضمّن في نظام التشغيل أو لأن مدير النظام قد ثبته مسبقًا، وفي هذه الحالة عليك الحصول على معلومات حول كيفية الوصول إليه إما من توثيق نظام التشغيل أو من مدير النظام. يمكنك تثبيت Pos…
قواعد بيانات PostgreSQL هي عبارة عن نظام لإدارة قواعد البيانات العلائقية الغرضية اعتمادًا على مشروع بيركلي بوستغرس (POSTGRES)، الإصدار 4.2، الذي طُوِّر في قسم علوم الحاسوب في جامعة كاليفورنيا في مدينة بيركلي، حيث ابتكر بوستغرس (POSTGRES) العديد من المفاهيم المستخدَمة فقط في بعض أنظمة قواعد البيانا…
الشبكات اللاسلكية (Wireless Networks) تختلف التقنيات اللاسلكية عن الروابط السلكية في بعض النواحي المهمة، بينما تشتركان في نفس الوقت في العديد من الخصائص المشتركة، حيث تَعدّ التقنياتُ اللاسلكية مشكلاتِ أخطاء البت مصدرَ قلقٍ كبير مثل الروابط السلكية (wired links)، بل أكثر من ذلك بسبب بيئة التشوي…
طوّر باحثون في مركز أبحاث (Xerox Palo Alto Research Center أو اختصارًا PARC) شبكة الإيثرنت (Ethernet) في منتصف السبعينات، ثم أصبحت في النهاية تقنية الشبكات المحلية المهيمنة، التي انبثقت عن مجموعة من التقنيات المنافسة، وتتنافس اليوم بصورةٍ أساسية مع الشبكات اللاسلكية 802.11، ولكنها لا تزال تحظى بشع…
تكون الإطارات تالفةً أحيانًا أثناء النقل كما ذُكر سابقًا، لذلك تُستخدَم شيفرة خطأ كشيفرة CRC لاكتشاف هذه الأخطاء. على الرغم من أنّ بعض شيفرات الأخطاء قويّة بما يكفي لتصحيح الأخطاء، إلا أنّ عدد البتات الإضافية عمليّا يكون أكبر من أن يعالِج نطاقَ أخطاء البتات وأخطاء الرشقات (burst) التي يمكن إدخالها…
تُدخَل أحيانًا أخطاء البت في الإطارات، ويحدث هذا على سبيل المثال بسبب التداخل الكهربائي (electrical interference) أو التّشويش الحراري (thermal noise)، وعلى الرّغم من ندرة الأخطاء خاصًّة على الروابط الضوئيّة، إلا أنّ هناك حاجة إلى بعض الآليات لاكتشاف هذه الأخطاء، وذلك من أجل اتخاذ الإجراءات الصحيحة…
التشفير (Encoding) تتمثّل الخطوة الأولى في تحويل العُقد (nodes) والرّوابط (links) إلى لبنات أساسيّة قابلة للاستخدام من خلال فهم كيفيّة توصيلها بطريقة يمكن بها نقل البتّات من عقدة إلى أخرى، حيث تنتشر الإشارات عبر الرّوابط الفيزيائية، وتُشفَّر البيانات الثنائية التي تريد العقدة المصدر إرسالها إل…
المشكلة: الاتصال بشبكة (Connecting to a Network) تتكوّن الشبّكات الحاسوبيةّ من عُقدٍ (nodes) متّصلة عن طريق روابط (links) كما لاحظتَ في المقال الأوّل من هذه السلسلة، أساسيات الشبكات، فمن بين المشاكل الأساسيةّ التي يمكن مواجهتها هي كيفية توصيل عقدتين مع بعضهما، ولاحظت أيضًا تقديم تجريد السّحابة…
لقد ركزنا في المقام الأول حتى هذه اللحظة على الجوانب الوظيفية للشبكات. ومع ذلك، من المتوقع أيضًا أن تعمل شبكات الحواسيب، مثل أي نظام حاسوبي، بصورة جيّدة. وذلك لأن فعالية الحوسبة الموزعة عبر الشبكة غالبًا ما تعتمد بصفة مباشرة على الكفاءة التي توفر الشبكة بها البياناتِ الحوسبية. ورغم أنّ العبارة الم…
تُعدّ معماريات الشبكة وتوصيفات البروتوكول من الأمور الأساسية، لكن المخطط الجيد ليس كافيًا لتفسير النجاح الهائل للإنترنت: لقد زاد عدد أجهزة الحاسوب المتصلة بالإنترنت بصورة هائلة على مدار أكثر من ثلاثة عقود (رغم صعوبة الحصول على أرقام دقيقة). إذ قُدِّر عدد مستخدمي الإنترنت بحوالي 4.5 مليار بنهاية عا…
وضعَ القسم السابق -المتطلبات اللازمة لبناء شبكة حاسوبية- مجموعةً كبيرة جدًا من المتطلبات لتصميم الشبكة، إذ يجب أن توفّر الشبكة الحاسوبية اتصالًا عامًا وذا تكلفة فعّالة وعادلًا وقويًا بين عدد كبير من أجهزة الحاسوب. ولكن، لا تظلّ الشبكاتُ ثابتةً في أي وقتٍ من الأوقات، بل يجب أن تتطور لتتوافق مع التغ…
لقد وضعنا لأنفسنا هدفًا طموحًا يتجلّى في فهم كيفية بناء شبكة حاسوبية من الألف إلى الياء. سيكون نهجُنا لتحقيق هذا الهدف هو الانطلاق من المبادئ الأولى ثم طرح أنواع الأسئلة التي نطرحها بصورةٍ طبيعية إذا كان الأمر يتعلّق ببناء شبكة بالمعنى الحرفي. سوف نستخدم في كلّ خطوة بروتوكولات اليوم لتوضيح خيارات …
المشكلة: بناء شبكة (Building a Network) لنفترض أنك ترغب في بناء شبكة حاسوبية يكون لديها القدرة على النموّ إلى أبعاد عالمية، وعلى دعم تطبيقات متنوعة مثل المؤتمرات عن بعد، والفيديو حسب الطلب، والتجارة الإلكترونية، والحوسبة الموزعة، والمكتبات الرقمية. فما هي التقنيات المتاحة التي ستكون بمثابة الل…
PostgreSQL – تُعرَف أيضا بـ Postgres – هي نظام مفتوح المصدر لإدارة قواعد البيانات. تُستخدم لتخزين البيانات مهما كان حجمها، وتتميز بكفائتها وأدائها العالي وغناها بالميزات والوظائف. تُعد PostgreSQL أفضل أنظمة قواعد البيانات مفتوحة المصدر وأكثرها شعبية على مستوى العالم. هل تريد أن تتعلم PostgreSQ…
تعرفنا في بداية هذا الدليل إلى بعض أوامر صدفة psql الأساسية، ولكننا يجب أن نتعرف إلى بقية هذه الأوامر، والتي يوجد العديد منها لمساعدتنا في أمور قد تبدو صعبة التنفيذ بطرق أخرى. نذكر في هذا الفصل أوامر للاتصال بقاعدة بيانات، استعراض الفهارس، تنسيق المخرجات، كيفية استخدام الأوامر الشرطية وكيفية ت…
سنتعرف في هذا الفصل إلى طريقة تتبع أداء الاستعلامات في Postgres، وذلك لمعرفة الزمن المتوقع والحقيقي للاستعلام، كما يذكر كيفية عمل قيود على استخدام الفهارس، ثم سنتطرق لفهم ذاكرة التخزين المؤقتة Cache في Postgres. خطة التنفيذ (Execution plan) لدى Postgres قدرة كبيرة على إظهار كيفية تنفيذ الا…
سنتعرف في هذا الفصل على الملفات التي تُخزّن فيها قواعد البيانات في Postgres، وكيف نستعرض المساحات التخزينية التي تحجزها الجداول والفهارس. مسارات تخزين البيانات لعله من البديهي أنه لا بد من وجود مكان لتخزين البيانات لأي قواعد بيانات، وهذا المكان هو ملفات موجودة في مكان ما من الخادوم الذي يش…
نتعرف في هذا الفصل إلى كيفية أخذ نسخة احتياطية عن قاعدة البيانات الخاصة بنا، ثم نقوم باستعادتها، كما نتعرف إلى الأمر ‎\copy‎ وكيف نستخدمه لتحديد نمط البيانات في النسخة الاحتياطية. النسخ الاحتياطي والاستعادة النسخ الاحتياطي هو أخذ نسخة كاملة عن مخططات الجداول وبيانات قاعدة البيانات، أما الا…
تتميز Postgres بإضافة عدة أنواع بيانات مميزة، نتحدث عنها في هذا الفصل، وهي المصفوفات Arrays والنوع Hstore والنوع JSONB وهي تساهم بشكل أساسي بالسماح بتخزين هيكل بيانات أكبر من مجرد قيمة واحدة في العمود في الجدول، كما سنستخدم الأنواع التعدادية ENUM لتحديد قيم مخصصة في أعمدة جداولنا. المصفوفات (A…
نتعرف في هذا الفصل إلى العرض View وتعابير الجداول الشائعة CTE التي تساهم في تحسين طريقة كتابة الاستعلامات، وذلك يجعلها أقصر وأسهل قراءةً، وسنتعلم استخدام دوال النوافذ Window Functions التي تسمح بإجراء عمليات تجميعية على مجموعة جزئية من الأسطر، كما سنتعرف على الفهارس وأهميتها في تسريع البحث ضمن الب…