فوائد استخدام قواعد بيانات SQL و NoSQL في Instagram

نشرت: 2022-11-21

Instagram هي خدمة لمشاركة الصور والتواصل الاجتماعي تمكن مستخدميها من التقاط الصور وتطبيق المرشحات ومشاركتها على منصات التواصل الاجتماعي المختلفة ، مثل Facebook و Twitter و Tumblr. من أجل تخزين وإدارة كمية كبيرة من البيانات التي يولدها مستخدموها ، يستخدم Instagram كلاً من قواعد بيانات SQL و NoSQL. SQL (لغة الاستعلام الهيكلية) هي لغة استعلام قاعدة بيانات قياسية تُستخدم لمعالجة البيانات واستردادها من قواعد البيانات العلائقية. من ناحية أخرى ، NoSQL (ليس فقط SQL) هي قاعدة بيانات غير علائقية لا تتبع المخطط التقليدي القائم على الجدول لقاعدة البيانات العلائقية. يستخدم Instagram قواعد بيانات SQL لتخزين المعلومات مثل حسابات المستخدمين والصور والتعليقات. ثم يتم استرداد هذه المعلومات وعرضها على المستخدمين بتنسيق منظم. ومع ذلك ، نظرًا للكمية الكبيرة من البيانات التي يولدها المستخدمون ، يستخدم Instagram أيضًا قواعد بيانات NoSQL لتخزين هذه البيانات. قواعد بيانات NoSQL أكثر مرونة وقابلية للتوسع من قواعد بيانات SQL ، وهي مناسبة بشكل أفضل للتعامل مع كميات كبيرة من البيانات. يستخدم Instagram كلاً من قواعد بيانات SQL و NoSQL لتخزين وإدارة كمية كبيرة من البيانات التي يولدها مستخدموها. تُستخدم قواعد بيانات SQL لتخزين البيانات المنظمة ، مثل حسابات المستخدمين والتعليقات ، بينما تُستخدم قواعد بيانات NoSQL لتخزين البيانات غير المنظمة ، مثل الصور ومقاطع الفيديو. باستخدام كلا النوعين من قواعد البيانات ، يكون Instagram قادرًا على تزويد مستخدميه بتجربة غنية وجذابة.

PostgreSQL هي قاعدة البيانات التي يتم فيها تخزين بيانات Instagram. حصلت مؤخرًا على وسام كبير عندما احتلت المرتبة الأولى في العالم من حيث التكنولوجيا. يستخدم Instagram ، مثل معظم منصات الوسائط الاجتماعية ، متجرًا ذا قيمة رئيسية موزعًا يسمى Cassandra. في هذا الفيديو ، سنتعرف على كيفية استخدام Instagram لـ Cassandra في الإنتاج. قواعد بيانات NoSQL المستندة إلى المستندات متاحة مجانًا ، مع إمكانية توزيعها و RESTful. إذا كان لديك فشل ، فيمكن استعادته في غضون 40 ثانية ، بينما يمكن أن يستغرق MongoDB ما يصل إلى 40 دقيقة. باستخدام Redis ، فإن حل مشكلة تحديد هوية المؤلف في Instagram هو امتلاك ذاكرة ثابتة. نتيجة لذلك ، لن تحتاج إلى التسخين المسبق بعد إعادة تشغيل الخادم.

PostgreSQL و Cassandra هما قاعدتا البيانات الأساسيتان اللتان يستخدمهما Instagram. يستخدم كل من PostgreSQL و Cassandra أطر عمل نسخ ناضجة يمكن استخدامها عالميًا لتخزين البيانات. يتم رسم البيانات من جميع أنحاء العالم بدقة إلى البيانات المخزنة في هذه الخوادم.

تم تأسيس Twitter مع MySQL كمخزن بيانات أساسي ، ونمت طبقة الثبات إلى عدد كبير من المجموعات في جميع أنحاء الموقع. كان نشر Twitter الأولي لـ MySQL أحد أكثر النشرات شمولاً. يحتوي على آلاف العقد التي تتعامل مع ملايين الاستعلامات في الثانية ، ويحتوي على مجموعات MySQL.

عندما تم إطلاق Facebook لأول مرة ، تم إنشاء هذا الرسم البياني الاجتماعي في البداية كتطبيق PHP يقوم بتشغيل MySQL كقاعدة بيانات ثابتة و memcache باعتباره ذاكرة التخزين المؤقت "lookaside" ؛ مكّنت قدرات نمذجة البيانات في SQL و MySQL من بناء هذا الرسم البياني الاجتماعي باستخدام SQL و MySQL.

ما هي بنية البيانات التي يستخدمها Instagram؟

مصدر الصورة: medium.com

يستخدم Instagram بنية بيانات تستند إلى رسم بياني لا دوري موجه. تسمح بنية البيانات هذه بطريقة فعالة لتخزين البيانات واستردادها.

على الرغم من ذلك ، لم تكن الخوارزمية دقيقة للغاية وكثيراً ما كانت تعرض منشورات من حسابات لديها متابعون أكثر من أولئك الذين لديهم عدد أقل من المتابعين. نفذ Instagram خوارزمية جديدة في أغسطس 2016 لتحسين تجربته باستخدام مقاييس التفاعل مثل الإعجابات والتعليقات والمشاركات لتحديد الترتيب الذي تظهر به المنشورات.
خوارزمية العلاقة هي معادلة للعلاقات.
بناءً على معرفتهم بحسابات معينة ، من المرجح أن يتفاعل المستخدمون مع المحتوى من تلك الحسابات في خوارزمية العلاقة. نتيجة لذلك ، ستظهر المنشورات من الحسابات التي تفاعلت معها بشكل متكرر أولاً ، متبوعة بالمنشورات من الحسابات التي لم تتفاعل معها.
خوارزمية الفائدة هي آلية لتحديد الفائدة.
نتيجة لخوارزمية الاهتمامات ، من المرجح أن يشارك المستخدمون في محتوى ذي صلة بهم. نتيجة لذلك ، ستظهر المنشورات من الحسابات التي شهدت أكبر قدر من المشاركة بشكل متكرر.
فيما يلي شرح موجز لخوارزمية الجداول الزمنية.
من المرجح أن يتفاعل المستخدمون مع المحتوى الشائع حاليًا ، وفقًا لخوارزمية Timeliness. نتيجة لذلك ، من المرجح أن تظهر المنشورات من الحسابات الحديثة.


هل يجب علي استخدام SQL أو Nosql لوسائل التواصل الاجتماعي؟

من المنطقي تمامًا استخدام NoSQL عند تطوير تطبيقات الشبكات الاجتماعية. إذا كنت تستخدم MySQL لبناء شبكتك الاجتماعية في البداية ، فقد يكون الأمر أسهل في البداية ، ولكن عندما ينمو التطبيق ويصبح المستخدمون أكثر انتظامًا ، فسيتعين عليك التفكير في كيفية إدارة مجموعة MySQL ، وتكوين العبيد الرئيسيين ، وما إلى ذلك. على.

يحتدم الجدل حول NoSQL مقابل SQL. تاريخيا سيطرت قواعد بيانات SQL على السوق. من المستحيل اختيار أفضل قاعدة بيانات NoSQL دون مناقشة حولها. ستحل الحوسبة السحابية محل 100٪ من جميع قواعد البيانات خلال السنوات الأربع القادمة. المبادئ الأساسية لـ NoSQL هي المرونة وقابلية التوسع. نظرًا لسرعتها وتخزينها ، توفر NoSQL قاعدة بيانات تشبه نظام المستندات. في عام 2020 ، ستكون MongoDB قاعدة بيانات NoSQL الأكثر شيوعًا.

Redis هو ثاني أكثر منصة شعبية من حيث التنزيلات. يتمتع هذا الكمبيوتر بسرعة عالية جدًا نظرًا لقدراته في الذاكرة والذاكرة المخزنة. تتغير قاعدة بيانات NoSQL باستمرار ، ويجب تخزين البيانات بطريقة غير علائقية. سيأتي وقت لا تكون فيه تكامل البيانات دقيقة بنسبة 100٪ ، لكنها ستكون كذلك. يمكنك إنشاء نموذج أولي لتطبيقك بسرعة لتزويد عملائك بما يعمل بشكل أفضل في وقت محدد. يجب عليك زيادة مخطط قاعدة البيانات أثناء مواكبة بنى NoSQL الديناميكية ، وفقًا للبنية. يشير مصطلح "قابلية التوسع" إلى حقيقة أن بياناتك لا تتراكم مثل ناطحة سحاب ، ولكنها تنتشر عبر جوانب الخادم.

في هذه الحالة ، تمتلك قواعد بيانات NoSQL فائزًا واضحًا لصالحها على قواعد البيانات العلائقية. كيف يبدو الدعم والمساعدة؟ خادم SQL هو جهاز كمبيوتر واحد به العديد من قواعد البيانات. يجب أن تكون سلامة البيانات متسقة دائمًا ، كما يتضح من مبدأ ACID ، عندما يصل جميع المستخدمين إلى نفس الكمبيوتر. يمكن أن تظهر البيانات الموجودة في قاعدة بيانات NoSQL مرة أخرى بمرور الوقت ؛ قد يستغرق الأمر بضع ثوانٍ ، لكنه سيفعل ذلك في النهاية. NoSQL هو المفتاح لجعل التطبيقات تبدو جيدة في العصر الحديث. باستخدامه ، يمكنك استخدامه كخدمة قائمة على السحابة وتوسيع نطاقها وفقًا لمتطلباتك. لتكوين الواجهة الخلفية لتطبيقك ، قسّمه إلى نوعين: بيانات معاملات عالية ، والتي يجب تخزينها في قواعد بيانات SQL لضمان تكامل البيانات ، والبيانات غير المنظمة ، والتي يجب تخزينها في قاعدة بيانات NoSQL.

استخدمت أفضل قواعد بيانات SNS كلاً من قواعد البيانات العلائقية و NoSQL لتلبية الاحتياجات المحددة لكل مستخدم ، وفقًا لتحليل أفضل قواعد بيانات SNS. استخدمت SNS ، في بعض الحالات ، قواعد البيانات العلائقية لتخزين بيانات المستخدم ، بينما تُستخدم قواعد بيانات NoSQL لتخزين ملفات السجل. يوضح هذا أنه يمكن استخدام كل من NoSQL وقواعد البيانات العلائقية لحل المشكلات المعقدة.

تعد قواعد بيانات Nosql خيارًا قابلاً للتطبيق لمنصات التواصل الاجتماعي

علاوة على ذلك ، تم إنشاء قواعد بيانات NoSQL للكتابة مرة واحدة ، وقراءة العديد من الفلسفة ، مما يقلل من كمية البيانات التي يجب تكرارها من أجل القياس. هذا مفيد بشكل خاص لمنصات الوسائط الاجتماعية لأن عددًا كبيرًا من التحديثات والمشاركات يمكن أن يؤدي إلى الكثير من تكرار البيانات.
تم اختيار PostgreSQL في النهاية كقاعدة بيانات خلفية لـ Instagram نظرًا لقابلية التوسع والأداء. من ناحية أخرى ، لا تزال قواعد بيانات NoSQL مثل MongoDB خيارات قابلة للتطبيق لمنصات الوسائط الاجتماعية لأنها توفر أفضل منصة لتخزين كميات كبيرة من البيانات.

ما نوع قاعدة البيانات التي يستخدمها Instagram

مصدر الصورة: medium.com

يستخدم Instagram قاعدة بيانات علائقية لتخزين وإدارة جميع البيانات لمستخدميه ومحتوياته. هذا النوع من قواعد البيانات فعال للغاية في تنظيم البيانات والوصول إليها ، مما يجعلها مثالية لمنصة وسائط اجتماعية مثل Instagram التي تعتمد بشكل كبير على المحتوى الذي ينشئه المستخدم.

يستخدم Instagram MongoDB كقاعدة بيانات NoSQL نظرًا لقابلية التوسع وسهولة الاستخدام والقدرة على التعامل مع كميات كبيرة من البيانات. MongoDB هي قاعدة بيانات NoSQL موجهة للمستندات. تعد منصة MongoDB خيارًا ممتازًا لـ Instagram لأن النظام الأساسي موجود في مركز بيانات Facebook. حقيقة أن MongoDB أقل تكلفة من قواعد بيانات NoSQL الأخرى هي ميزة أخرى.

نعم ، يستخدم Instagram كاساندرا

ما هي كاساندرا وكيف تعمل؟
يستخدم Instagram Cassandra ، كما هو معتاد. نمت وسائل التواصل الاجتماعي باستخدام قاعدة بيانات تأسست في عام 2010 وتوسعت لتشمل مركز بيانات ثانٍ كجزء من استراتيجية نموها.

نوسكل تكنولوجيز

تعد تقنيات NoSQL سلالة جديدة من أنظمة إدارة قواعد البيانات المصممة لتوفير أداء عالٍ وإمكانية التوسع والمرونة. غالبًا ما تُستخدم أنظمة NoSQL بدلاً من قواعد البيانات العلائقية التقليدية لأنها يمكن أن توفر أداءً أفضل وقابلية التوسع للتطبيقات التي تحتاج إلى التعامل مع كميات كبيرة من البيانات. غالبًا ما تكون قواعد بيانات NoSQL أكثر مرونة من قواعد البيانات العلائقية ، مما يجعلها خيارًا جيدًا للتطبيقات التي تحتاج إلى تخزين البيانات بتنسيقات غير مناسبة تمامًا للبنية الجدولية لقاعدة البيانات العلائقية.

هندسة Instagram

تم تصميم بنية Instagram للتوسع أفقيًا والتعامل مع مستويات عالية من حركة المرور. يعتمد على بنية الخدمات المصغرة ويستخدم عددًا من التقنيات المختلفة ، بما في ذلك Python و Django و Cassandra و PostgreSQL.

الحسابات الثمانية التي نوصي بها هي كما يلي: قد لا تكون مرتبة ، لكنها كذلك. تحتفل علامة التجزئة #shesthearchitect بإسهامات المرأة في مجال الهندسة المعمارية. ينتقل خط ماريو رومانو للجدران متعددة الأبعاد بالطباعة ثلاثية الأبعاد إلى مستوى جديد تمامًا. كريستين ويليامسون عالمة ومهندسة تتغذى على إثارة علوم البناء والتشييد. ما هو حساب إنستغرام المعماري المفضل لديك؟ ما رأيك في عرضنا الجديد؟

كيفية الحصول على المزيد من المتابعين كمهندس معماري على Instagram

لدى Instagram أكثر من 1.38 مليار مستخدم حول العالم. ما يقرب من 90٪ من المستخدمين يتابعون شركة واحدة على الأقل ، وربع المستخدمين لا يقل عمرهم عن 25 عامًا. ستكون هذه فرصة رائعة للمهندسين المعماريين ومصممي الديكور الداخلي.
يمكن أن يساعد الهاشتاج في كسب المتابعين وزيادة عدد الأشخاص الذين يرون أعمال المهندس المعماري. #art، # interior design، # architecture، #buildings، #design، #architecture Photography، #interiors، # archi-lovers، # Construction، # archi-
نظرًا لأن كود الواجهة الخلفية مكتوب بلغة Django Python ، فإن جميع خوادم الويب والخوادم غير المتزامنة تعمل في بيئة موزعة. من السهل أيضًا توسيع نطاقه أو خفضه بناءً على الطلب.
يمكن للمستخدمين الوصول إلى المحتوى المخصص على الواجهة الخلفية باستخدام تقنيات مثل Cassandra و PostgreSQL و Memcache و Redis. نتيجة لذلك ، يمكن تصميم الهيكل لتلبية احتياجات Instagram بالمعنى الدقيق للكلمة.
يتطلب إنشاء بنية موجهة للنمو على Instagram إضافة علامات تصنيف ذات صلة بالإضافة إلى ضمان تقديم محتوى عالي الجودة للمستخدمين.