MultiChain Feeds لتكامل قاعدة البيانات PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

يغذي مولتيتشين لتكامل قاعدة البيانات

الحصول على البيانات من blockchain والعالم الأوسع

مع أول إصدار عام من MultiChain ، في عام 2015 ، رأينا اهتمامًا بتطبيقات blockchain من اتجاه مدهش. في حين قمنا بتصميم MultiChain في الأصل لتمكين إصدار الأصول الرقمية ونقلها وحفظها ، كان عدد متزايد من المستخدمين مهتمين باستخدامها للتطبيقات الموجهة للبيانات.

في حالات الاستخدام هذه ، فإن الغرض من blockchain هو تمكين تخزين واسترجاع معلومات الأغراض العامة ، والتي لا تحتاج إلى أن تكون مالية بطبيعتها. الدافع لاستخدام blockchain بدلاً من قاعدة البيانات العادية هو تجنب الاعتماد على وسيط موثوق به لاستضافة قاعدة البيانات هذه والحفاظ عليها. لأسباب تجارية أو تنظيمية أو سياسية ، يريد مستخدمو قاعدة البيانات أن تكون هذه مسؤولية موزعة وليست مسؤولية مركزية.

تطور الجداول

ردًا على هذه التعليقات ، في عام 2016 نحن أدخلت تيارات MultiChain ، والتي توفر تجريدًا بسيطًا لتخزين وفهرسة واسترجاع البيانات العامة على blockchain. يمكن أن تحتوي السلسلة على أي عدد من التدفقات ، يمكن تقييد كل منها للكتابة بعناوين معينة. يتم وضع علامة على كل عنصر من عناصر البث بعنوان ناشره بالإضافة إلى مفتاح اختياري لاسترجاعه في المستقبل. يمكن لكل عقدة أن تقرر بشكل مستقل ما إذا كان يجب الاشتراك في كل دفق ، وفهرسة عناصره في الوقت الفعلي لاسترجاعه السريع حسب المفتاح أو الناشر أو الوقت أو الكتلة أو الموضع. حققت التدفقات نجاحًا فوريًا مع مستخدمي MultiChain وميزتها بشدة عن منصات blockchain الأخرى للمؤسسات.

في عام 2017 ، كانت الجداول مدد لدعم نص JSON و Unicode الأصلي ، مفاتيح متعددة لكل عنصر وعناصر متعددة لكل معاملة. يسمح هذا التغيير الأخير بنشر أكثر من 10,000 عنصر بيانات فردي في الثانية على الأجهزة المتطورة. ثم في عام 2018 ، أضفنا دعمًا سلسًا لـ بيانات خارج السلسلة، حيث يتم نشر تجزئة بعض البيانات فقط على السلسلة ، ويتم تسليم البيانات نفسها خارج السلسلة للعقد التي تريدها. وفي وقت لاحق من ذلك العام أصدرنا MultiChain 2.0 Community الفلاتر الذكية، مما يسمح لشفرة جافا سكريبت المخصصة بإجراء التحقق التعسفي من عناصر الدفق.

خلال عام 2019 ، تحول تركيزنا إلى MultiChain 2.0 Enterprise ، الإصدار التجاري من MultiChain للعملاء الأكبر حجمًا. الأول تجريبي للمؤسسات استفادت من البيانات خارج السلسلة في التدفقات للسماح بإذن القراءة وتسليم البيانات المشفرة والاسترجاع الانتقائي والتطهير للعناصر الفردية. كما هو الحال دائمًا ، يتم إخفاء التعقيد الأساسي وراء مجموعة بسيطة من واجهات برمجة التطبيقات المتعلقة بالأذونات وعناصر التدفق. مع التدفقات ، كان هدفنا باستمرار مساعدة المطورين على التركيز على بيانات تطبيقهم ، ولا تقلق بشأن تشغيل blockchain خلف الكواليس.

معضلة قاعدة البيانات

مع استمرار تطور تيارات MultiChain ، واجهنا معضلة مستمرة. لقراءة البيانات وتحليلها في دفق ، هل يجب أن تسير MultiChain في طريقها لتصبح قاعدة بيانات كاملة؟ هل يجب أن تقدم فهرسة حقل JSON والاستعلام الأمثل والتقارير المتقدمة؟ إذا كان الأمر كذلك ، ما هو نموذج قاعدة البيانات الذي يجب أن يستخدمه - علاقي (مثل MySQL أو SQL Server) أو NoSQL (MongoDB أو Cassandra) أو البحث (مطاط أو Solr) أو سلسلة زمنية (InfluxDB) أو في الذاكرة (SAP HANA)؟ بعد كل شيء ، هناك حالات استخدام blockchain مناسبة لكل من هذه الأساليب.

أحد الخيارات التي نظرنا فيها هو استخدام قاعدة بيانات خارجية كمخزن بيانات MultiChain الأساسي ، بدلاً من المجموعة الحالية من LevelDB المضمنة والملفات الثنائية. تم اعتماد هذه الاستراتيجية من قبل سلسلة النواة (توقف) ، سلسلة بريدية (ليس بعد عام) ومتاح كخيار في نسيج Hyperledger. لكننا قررنا في نهاية المطاف ضد هذا النهج ، بسبب مخاطر الاعتماد على عملية خارجية. لا تريد حقًا أن تتجمد عقدة blockchain لأنها فقدت اتصال قاعدة البيانات الخاصة بها ، أو لأن أحد الأشخاص يقوم بتشغيل استعلام معقد في مخزن البيانات الخاص به.

عامل آخر يجب أخذه بعين الاعتبار هو اللاأدرية التكنولوجية والاندماجية. في شبكة blockchain التي تغطي عدة مؤسسات ، سيكون لكل مشارك تفضيلاته الخاصة فيما يتعلق بتقنية قاعدة البيانات. سيكون لديهم بالفعل تطبيقات وأدوات ومهام سير عمل مبنية على المنصات التي تناسب احتياجاتهم. لذلك عند اختيار أي قاعدة بيانات معينة ، أو حتى في تقديم بعض الخيارات ، فقد ينتهي بنا الأمر إلى جعل بعض المستخدمين غير سعداء. تمامًا كما يمكن لكل مشارك blockchain تشغيل العقدة الخاصة به على مجموعة متنوعة من نكهات Linux ، يجب أن يكونوا قادرين على التكامل مع قاعدة بياناتهم المفضلة.

إدخال خلاصات MultiChain

يسعدنا اليوم إطلاق نهجنا لتكامل قاعدة البيانات - خلاصات MultiChain. الخلاصة هي سجل ثنائي مباشر على القرص للأحداث المتعلقة بواحد أو أكثر من تدفقات blockchain ، للقراءة من خلال العمليات الخارجية. نحن نقدم أيضا المصدر المفتوح محول تغذية MultiChain الذي يمكنه قراءة موجز ويب ونسخ محتواه تلقائيًا إلى قاعدة بيانات Postgres أو MySQL أو MongoDB (أو عدة قواعد في آن واحد). المحول مكتوب بلغة Python ولديه ترخيص ليبرالي ، لذلك يمكن تعديله بسهولة لدعم قواعد بيانات إضافية أو لإضافة تصفية البيانات وتحويلها. (لقد وثقنا أيضًا تنسيق ملف الخلاصة بالنسبة لأولئك الذين يرغبون في كتابة محلل بلغة أخرى.)

مخطط MultiChain يغذي

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

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

بدء استخدام الخلاصات

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

مع إصدار الخلاصات ، اكتملت الآن ميزة الإصدار 2.0 من MultiChain Enterprise - راجع صفحة للمقارنة الكاملة بين إصداري المجتمع و Enterprise. على مدار الشهرين المقبلين ، سنكمل اختبارها وتحسينها ، ونتوقع أن تكون جاهزة للإنتاج في نهاية الربع الأول. في هذه الأثناء ، للحصول على معلومات حول ترخيص MultiChain Enterprise أو تسعيرها ، يُرجى عدم التردد في ذلك قم بالتواصل.

يرجى نشر أي تعليقات على LinkedIn.

المصدر: https://www.multichain.com/blog/2020/02/multichain-feeds-for-database- Integration/

الطابع الزمني:

اكثر من متعدد السلاسل