YugabyteDB هي قاعدة بيانات SQL موزعة ومتوافقة مع PostgreSQL وعالية الأداء ومعتمدة على السحابة. فهو يجمع بين فوائد قواعد البيانات العلائقية التقليدية وقابلية التوسع في أنظمة NoSQL، مما يجعله مناسبًا للتطبيقات التي تتطلب اتساق المعاملات والقدرة على التعامل مع كميات كبيرة من البيانات. وهو مناسب بشكل أفضل لتطبيقات OLTP السحابية الأصلية (أي في الوقت الفعلي والمهمة للأعمال) التي تحتاج إلى صحة مطلقة للبيانات وتتطلب واحدًا على الأقل مما يلي: قابلية التوسع، أو التسامح العالي مع حالات الفشل، أو عمليات النشر الموزعة عالميًا.
الميزات الأساسية
ابدأ
بناء التطبيقات
خارطة الطريق الحالية
الميزات الحديثة
بنيان
هل تحتاج إلى مساعدة؟
يساهم
رخصة
اقرأ المزيد
قدرات RDBMS القوية تعيد Yugabyte SQL ( YSQL للاختصار) استخدام طبقة استعلام PostgreSQL (على غرار Amazon Aurora PostgreSQL)، وبالتالي تدعم معظم ميزاتها (أنواع البيانات، والاستعلامات، والتعبيرات، والمشغلين والوظائف، والإجراءات المخزنة، والمشغلات، والامتدادات، وما إلى ذلك ).
المعاملات الموزعة يعتمد تصميم المعاملات على بنية Google Spanner. يتم تحقيق الاتساق القوي للكتابة باستخدام إجماع Raft للنسخ المتماثل ومعاملات ACID الموزعة على مستوى المجموعة باستخدام الساعات المنطقية المختلطة . يتم دعم مستويات العزل الملتزمة باللقطة والقابلة للتسلسل والقراءة. تتمتع القراءات (الاستعلامات) بتناسق قوي بشكل افتراضي، ولكن يمكن ضبطها ديناميكيًا للقراءة من المتابعين وقراءة النسخ المتماثلة.
التوفر المستمر يتميز YugabyteDB بالمرونة الشديدة في مواجهة حالات انقطاع الخدمة الشائعة من خلال تجاوز الفشل والإصلاح. يمكن تكوين YugabyteDB لتحمل فشل القرص والحامل والعقدة والمنطقة والمنطقة والسحابة تلقائيًا. بالنسبة للنشر النموذجي حيث يتم نشر مجموعة YugabyteDB في منطقة واحدة عبر مناطق متعددة على سحابة عامة، يكون RPO هو 0 (يعني عدم فقدان أي بيانات عند الفشل) ويكون RTO 3 ثوانٍ (يعني البيانات التي يتم تقديمها بواسطة العقدة الفاشلة متاح في 3 ثوان).
قابلية التوسع الأفقي يعد توسيع نطاق مجموعة YugabyteDB لتحقيق المزيد من عمليات IOPS أو تخزين البيانات أمرًا بسيطًا مثل إضافة العقد إلى المجموعة.
يمكن نشر YugabyteDB متعدد السحابة الموزعة جغرافيًا في السحابات العامة ومحليًا داخل Kubernetes. وهو يدعم عمليات النشر التي تمتد إلى ثلاثة مجالات خطأ أو أكثر، مثل عمليات النشر متعددة المناطق، والمتعددة الأرفف، والمتعددة المناطق، والسحابة المتعددة. كما أنه يدعم النسخ المتماثل غير المتزامن xCluster مع التكوينات الرئيسية والتابعة أحادية الاتجاه والتكوينات متعددة الرئيسية ثنائية الاتجاه في عمليات النشر في منطقتين. تعد النسخ المتماثلة المقروءة أيضًا مدعومة لخدمة البيانات (القديمة) ذات زمن الوصول المنخفض.
تصميم متعدد لواجهة برمجة التطبيقات (API) تم تصميم طبقة استعلام YugabyteDB لتكون قابلة للتوسعة. حاليًا، تدعم YugabyteDB اثنين من واجهات برمجة تطبيقات SQL الموزعة: Yugabyte SQL (YSQL)، وهي واجهة برمجة تطبيقات علائقية بالكامل تعيد استخدام طبقة استعلام PostgreSQL، وYugabyte Cloud QL (YCQL)، وهي واجهة برمجة تطبيقات شبه علائقية تشبه SQL مع دعم المستندات/الفهرسة مع جذور أباتشي كاساندرا QL.
YugabyteDB مفتوح المصدر بنسبة 100%، وهو مفتوح المصدر بالكامل بموجب ترخيص Apache 2.0. يحتوي الإصدار مفتوح المصدر على ميزات مؤسسية قوية مثل النسخ الاحتياطية الموزعة، وتشفير البيانات أثناء الراحة، وتشفير TLS على متن الطائرة، وتغيير التقاط البيانات، وقراءة النسخ المتماثلة، والمزيد.
تم إنشاء YugabyteDB مع وضع العديد من أهداف التصميم الرئيسية في الاعتبار، بهدف مواجهة التحديات التي تواجهها التطبيقات السحابية الحديثة مع الحفاظ على معرفة وقوة قواعد البيانات العلائقية التقليدية. اقرأ المزيد عن هذه الأهداف في أهداف التصميم لدينا.
بداية سريعة
حاول تشغيل تطبيق تجريبي في العالم الحقيقي:
تطبيق التجارة الإلكترونية الموجه نحو الخدمات الصغيرة
تطبيق دفق إنترنت الأشياء مع Kafka وSpark Streaming
لا يمكنك العثور على ما تبحث عنه؟ هل لديك سؤال؟ انشر أسئلتك أو تعليقاتك على مجتمعنا أو منتدى Slack.
يدعم YugabyteDB العديد من اللغات وبرامج تشغيل العملاء، بما في ذلك Java وGo وNodeJS وPython والمزيد. للحصول على قائمة كاملة، بما في ذلك الأمثلة، راجع برامج التشغيل وORMs.
فيما يلي قائمة ببعض الميزات الرئيسية التي يجري العمل عليها للإصدارات القادمة.
ميزة | تفاصيل |
---|---|
التوافق مع PostgreSQL 15 | للحصول على أحدث الميزات وملحقات PostgreSQL الجديدة والأداء وإصلاحات المجتمع. |
واجهة برمجة تطبيقات فتحة النشر/النسخ المتماثل لـ PostgreSQL في مراكز السيطرة على الأمراض (CDC). | لدى PostgreSQL مجتمع ضخم يحتاج إلى واجهة برمجة تطبيقات متوافقة مع PG لإعداد تغييرات قاعدة البيانات واستهلاكها. |
مسح الصورة النقطية | دعم المسح النقطي لاستخدام عمليات فحص الفهرس والتصفية عن بعد ونموذج التكلفة المحسن. |
المُحسِّن على أساس التكلفة (CBO) | خطط استعلام فعالة تعتمد على الإحصائيات (مثل حجم الجدول وعدد الصفوف) وتوزيع البيانات. |
تنفيذ الاستعلام الموازي | أداء استعلام أعلى عن طريق تقسيم استعلام واحد للتنفيذ عبر مراكز مختلفة لوحدة المعالجة المركزية. |
ملحق pgvector | دعم أنواع بيانات المتجهات، مما يتيح تخزينًا فعالاً والاستعلام عن المتجهات عالية الأبعاد. |
إدارة الاتصال | تتيح إدارة الاتصال من جانب الخادم ما يصل إلى 30 ألف اتصال لكل عقدة |
ارجع إلى متتبع خريطة الطريق للحصول على قائمة بجميع العناصر الموجودة في خريطة الطريق الحالية.
v2.23 هو إصدار المعاينة الحالي. يتضمن ذلك ميزات قيد التطوير النشط ويوصى بها للتطوير والاختبار فقط. للحصول على القائمة الكاملة للميزات والتحسينات في هذا الإصدار، راجع ملاحظات الإصدار - الإصدار 2.23. فيما يلي بعض الميزات البارزة.
قم بإنشاء نسخ مستقلة من قاعدة البيانات الخاصة بك بسرعة لاستعادة البيانات وتطويرها واختبارها.
استخدم pg_cron لجدولة أوامر YSQL باستخدام بناء جملة cron المألوف، بما في ذلك المهام على فترات زمنية تصل إلى ثوانٍ.
إدارة مبسطة للنسخ المتماثل xCluster لمعاملات YSQL من خلال التشغيل على مستوى قاعدة البيانات بدلاً من مستوى الجدول.
تتيح التحسينات التي تم إدخالها على أداء الفحص العكسي الآن أن تكون مثل هذه الاستعلامات أسرع 10 مرات بمجرد إخراجها من الصندوق!
v2024.1 هو الإصدار المستقر الحالي. تخضع الإصدارات المستقرة لاختبارات صارمة لفترة أطول من الوقت وتكون جاهزة للاستخدام في الإنتاج. للحصول على القائمة الكاملة للميزات والتحسينات في هذا الإصدار، راجع ملاحظات الإصدار - v2024.1. فيما يلي بعض الميزات البارزة.
يمكّنك من الاستفادة من العديد من التحسينات الجديدة في كل من توافق PostgreSQL وتكافؤ الأداء، مما يجعل من الأسهل رفع تطبيقاتك وتحويلها من PostgreSQL إلى YugabyteDB. عند تشغيل هذا الوضع، يستخدم YugabyteDB وضع العزل الملتزم بالقراءة، ووضع التزامن انتظر عند الصراع لأزمنة استجابة P99 يمكن التنبؤ بها، والمُحسِّن الجديد القائم على التكلفة.
ارجع بسهولة إلى إصدار ما قبل الترقية إذا لم تكن راضيًا عن الإصدار الذي تمت ترقيته.
تعمل إستراتيجية تنفيذ الانضمام على تحسين عمليات الانضمام المتداخلة عن طريق إرسال طلب واحد إلى الجدول الداخلي لكل مجموعة من مجموعات الجدول الخارجي بدلاً من مرة واحدة لكل مجموعة جدول خارجي فردية.
شرح التحليل، عند استخدامه مع خيار DIST، سيُظهر أيضًا الصفوف المقروءة من طبقة التخزين، والتي يمكن أن تساعد في تشخيص أداء الاستعلام.
قم بمراجعة البنية التفصيلية في مستنداتنا.
يمكنك طرح الأسئلة والعثور على الإجابات ومساعدة الآخرين على مجتمعنا Slack، والمنتدى، وStack Overflow، بالإضافة إلى Twitter @Yugabyte.
استخدم مشكلات GitHub للإبلاغ عن المشكلات أو طلب ميزات جديدة.
لاستكشاف مشكلات YugabyteDB والمشكلات على مستوى المجموعة/العقدة وإصلاحها، راجع وثائق استكشاف الأخطاء وإصلاحها.
باعتبارنا مشروعًا مفتوح المصدر مع تركيز قوي على مجتمع المستخدمين، فإننا نرحب بالمساهمات كطلبات سحب من GitHub. راجع أدلة المساهمين للبدء. تتم المناقشات وطلبات التعليقات (RFCs) الخاصة بالميزات في قسم مناقشات التصميم في المنتدى الخاص بنا.
تم ترخيص كود المصدر الموجود في هذا المستودع بشكل مختلف بموجب ترخيص Apache 2.0 وترخيص Polyform التجريبي المجاني 1.0.0. يمكن العثور على نسخة من كل ترخيص في دليل التراخيص.
ينتج البناء مجموعتين من الثنائيات:
قاعدة البيانات بأكملها بكل ميزاتها (بما في ذلك الميزات المؤسسية) مرخصة بموجب ترخيص Apache 2.0
الثنائيات التي تحتوي على -managed
في المنتج وتساعد في تشغيل خدمة مُدارة مرخصة بموجب ترخيص Polyform Free Trial License 1.0.0.
افتراضيًا، تقوم خيارات البناء بإنشاء ثنائيات Apache License 2.0 فقط.
لرؤية تحديثاتنا، انتقل إلى مدونة SQL الموزعة.
للحصول على تفاصيل متعمقة في التصميم والهندسة المعمارية، راجع مواصفات التصميم لدينا.
محادثات التكنولوجيا ومقاطع الفيديو.
انظر كيف يقارن YugabyteDB مع قواعد البيانات الأخرى.