RION-- شكل البيانات بسرعة، والتعاقد، المشترك

النص الكامل 5703 الكلمات، وعندما يكون التعلم مدى المتوقع 17 دقيقة

المصدر: Pexels

كائن الإنترنت الأصلي الترقيم (RION) هو تنسيق البيانات بسرعة، والتعاقد، المشترك. هل يمكن أن يكون التفكير: "تنسيق البيانات الأخرى." وCSV، XML، JSON، YAML، ProtoBuf، MessagePack، CBOR، والأمازون ION، ApacheAvro أو ASN.1 أي مختلفة؟ ساوضح لاحقا في هذه المقالة، ولكن أولا بعض المعلومات الأساسية يجب RION ل.

لتبادل البيانات بكفاءة والبيانات المخزنة في تنسيق البيانات

RION التي وضعتها Nanosai، Nanosai هو توزيع الأبحاث النظام وتطويره شركة "المعايير المفتوحة" - الوسائل، الذي يرحب الجميع. تصميم RION أصلا لتبادل البيانات بكفاءة. الآن، ومع ذلك، مع بعض الحالات توسعت، فإنه يشمل زيادة كفاءة تخزين البيانات المهيكلة.

وأعتقد أن هذه الحالات استخدام اثنين ترتبط ارتباطا وثيقا، لذلك هذا التوسع المنطقي. والفرق الرئيسي هو أن المعلومات المرسلة عبر الشبكات عادة ما يكون لها حجم ثابت (على الأقل الإرسال واحد)، وحجم الملف قد تنمو مع مرور الوقت.

في الواقع، ونحن نستخدم RION شكل تسجيل كمحرك تخزين دفق البيانات بروتوكول الشبكة والرسالة المرمزة. ولذلك، تبادل نحن البيانات RION واختبارات الضغط لتخزين البيانات.

تنسيق البيانات المشتركة

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

بوضوح، لا شكل بيانات واحدة مثالية لجميع أنواع البيانات. قد يكون من الأنسب لمجال معين، مثل الفيديو المشفرة والصوت وغيرها من وثائق تنسيق قوية، MP3، MP4، الخ، أو شكل PDF. لاستيعاب هذه الحالة، تم تصميم RION لتكون قادرة على إدخال البيانات الثنائية وهياكل البيانات الأخرى (على سبيل المثال، الفوقية).

تصميم يسمح أيضا RION كافية من قبل أن تمتد المدمج في أنواع البيانات المخصصة نوع البيانات.

المصدر: Pexels

هيكل البيانات المعتمدة

لRION حقا تنوعا، يجب أن يكون RION قادرة على التعبير عن مجموعة واسعة من هياكل البيانات. حاليا، يمكن التعبير عن RION:

البيانات الثنائية

اكتب حقل البيانات (منطقية، صحيح، تطفو، النص، التاريخ والوقت)

حقل واحد

مجال تدفق غير محدود

الميدان (مجموعة) عمود يحدها

بيانات النموذج (مثل ملف CSV يحتوي على اسم عمود واحد فقط)

وتعيين كائنات (مفاتيح - أزواج قيمة)

كائنات FIG (كائنات ذات أجسام المتداخلة)

هياكل البيانات هذه يمكن أن تكون مجتمعة لخلق هياكل أكثر تقدما. على سبيل المثال، الجدول في الجدول يمكن أن يكون متداخلة أو متداخلة الرسم البياني الكائن في الجدول، قد يكون الجدول الجدول.

نوع الحقل

وتشمل البيانات المشفرة RION واحد أو أكثر من حقول RION. كل حقل يحتوي على نوع. حاليا، نوع RION على الحقول التالية:

بايت

منطقية

صحيح موجب

صحيح سلبي

تعويم (32 أو 64)

UTF-8

UTF-8 القصير

UTC

(المرجع)

مجموعة (*)

طاولة

كائنات

رباط

مفاتيح قصيرة

انتشار

وبعد ذلك، وصفا مفصلا لهذه الأنواع من المجالات.

الحقل بايت البيانات الثنائية "غير منظم". على سبيل المثال، إذا جزءا لا يتجزأ من الصوت أو الفيديو ملف (أو أي نوع آخر من الملفات أو البيانات الثنائية) في RION، فإنه يمكن أن تكون جزءا لا يتجزأ الحقل بايت. وهذا يسمح كفاءة نقل البيانات الثنائية.

ويمكن التعبير عن قيمة حقل منطقية كما صحيحة أو خاطئة.

إيجابي والأعداد الصحيحة السالبة هو عدد صحيح والسلبية الإيجابية على الأعداد الصحيحة. N هو عدد صحيح المشفرة يحتوي بايت صالحة فقط. وهكذا، فإن عدد صحيح موجب عدد 127 حقل يحتوي على 2 بايت المتاحة، ممثلة 1024 بايت يمكن أن يكون 3. من ناحية أخرى، سلبية أكثر تحديا.

على سبيل المثال، هناك حاجة سلبية 32 بت عدد صحيح 4 بايت، لأن كل بايت صالحة. من أجل تشفير بكفاءة أكبر عدد سلبية، قمنا بإنشاء عدد صحيح سالب الذي يحتوي على قيمة مطلقة (إيجابية) - حقل عدد صحيح سلبي ناقص 1. هذا يسمح باستخدام نفس كفاءة التصنيع "بايت فعال" ترميز عدد صحيح موجب.

قد يكون نقطة عائمة 32 بت أو 64 بت عدد الفاصلة العائمة.

يتم تخزين UTF-8 أو UTF-8 للبيانات النصية القصيرة في UTF-8 الشكل. UTF-8 قصير باستخدام أقل من 1 بايت UTF-8 ترميز النص ليست أكثر من 15 بايت من النص. في البيانات التي تحتوي على العديد من حقول النص، حفظ كل حقل بايت مجتمعة يمكن أن تكون كبيرة جدا.

ويستند بالتوقيت العالمي في الوقت UTC وتنسيق تخزين البيانات. تبادلها عبر تاريخ الشبكة - المعلومات في الوقت هي حالات الاستخدام الروتيني، لذلك نحن نعتقد أن RION أيضا أن تدعم هذا. لتجنب اضطرابات المنطقة الزمنية، قررنا أن "القوة" مع وقت UTC لتمثيل حقول التاريخ والوقت.

حتى الآن، وحقل مرجع لا تزال في المرحلة النظرية. الغرض منه هو لتمثيل البيانات عن سابق الحقل RION RION "إشارة الى الوراء". ويمكن استخدام هذه الدورة لتمثيل يمكن تجنبها في مجموعة النتائج أو الخدمات استجابة استعلام RDBMS الصغيرة مثل المعلومات تكرار زائدة الرسم البياني الكائن. قد نضيف حقول إضافية لتمثيل مستقبل نسخ من البيانات لزوم لها (مثل مجال النسخ المتماثل).

المجال مجموعة للإشارة إلى مجموعة من RION الميدان (القائمة). وهكذا، يمكن للمجموعة تحتوي المتداخلة RION RION مجالات أخرى فيها. ميدان مجموعة لذلك هو المجال المعقد. يرجى ملاحظة أن مجموعة يمكن أن تكون ممثلة على النحو عمود واحد من الجدول، وذلك في الممارسة يمكننا حذف الحقول مجموعة، ولم يتبق سوى الجداول والحقول المستخدمة لمجموعة من جداول البيانات.

تستخدم المجال لتمثيل جدول البيانات لديها الأعمدة والصفوف، مثل ملفات CSV أو نتائج الاستعلام SQL إلى قاعدة البيانات ذات الصلة. لتشفير بكفاءة جدول بيانات الجدول يحتوي فقط على اسم العمود (حقل المفتاح) صف واحد، وجاء اسم العمود قيمة العمود التوالي. هذا هو مماثل لملف CSV، الصف الأول هو رأس العمود، والصف اللاحق هو قيمة العمود لكل صف. قد يمثل جدول واحد صفيف، يمكن حذف مجموعة من الحقول كما ذكر سابقا. قد يحتوي الجدول غيرها من المجالات RION تتداخل فيها. وهكذا، مع الجداول المتداخلة يمكن استخدامها لأكثر كفاءة جدول يبين هيكل شجرة.

حقل كائن للإشارة إلى كائن أو مفتاح الخرائط (القاموس). عادة، والمفتاح لتكون مشفرة كحقل رئيسي، تليها غيرها من المجالات، ولكن إذا رغبت في ذلك، قد تحتفظ مفتاح (أو القيم - بمعنى أنه إذا كنت تستخدم الحالات). مجالات أخرى يمكن أن تتداخل في كائنات RION (بما في ذلك مجموعة أو حقل جدول) لتمثيل الكائن في حاجة إلى FIG. حتى الآن، إلا أن نعرب عن الرسم البياني الكائن احلقي، ولكن إذا بمجرد الانتهاء حقول إشارة موحدة، لكنها تمثل أيضا الرسم البياني الكائن دوري.

تمديد نوع الحقل يراد منها أن تكون قادرة على تحديد نوع الحقل الخاصة بهم، وذلك بالإضافة إلى جوهر نوع الحقل RION، ويمكن أيضا أن تكون جزءا لا يتجزأ من أنواع البيانات الأخرى.

الاكتناز

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

سرعة

المصدر: Pexels

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

RION باستخدام ثنائي مدمج مشفرة القراءة وسرعة الكتابة أعلى من XML، JSON، YAML، MessagePack، CBOR الأمازون ومثل ION ترميز النص.

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

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

ثنائي تلوينها

من أجل تحقيق درجة عالية من الاكتناز والسرعة، RION باستخدام ترميز ثنائي. مقارنة ترميز النص، يمكن تشفير ثنائي تحقيق الأرقام والتواريخ والبيانات الثنائية رمز أكثر إحكاما.

ترميز ثنائي اعتراض المشترك هو أنه، في تطوير واختبار ورصد وغيرها من العمليات، فإنه من الصعب قراءتها. لحل هذه المشكلة، ونحن ندرس RION ترميز النص (وتسمى حاليا TION)، ويمكن أن يكون أي RION TION تحويل والعودة إلى تحقيق بسهولة قراءة وتحريرها في محرر النص. ومن المتوقع أن يتم الانتهاء منه في نقطة زمنية معينة في عام 2020 TION يست مستعدة بعد بشكل كامل، ولكن. حققنا أيضا "عشري شكل التدوين" من المحول الى RION، بحيث يمكن أن تحقق قيمة بايت الأصلية في محرر النص.

ويرد وصف الذات

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

حتى إذا كان تنسيق البيانات التي تصف ذاتيا، لكنه لا يزال من المنطقي أن تجمع بين الهندسة المعمارية. XML + مخطط XML والهندسة المعمارية JSON + التبختر / الرمل هو الحال. العمارة نظرا المجال للسماح لقيمة الحقل من المتوقع أن توفر قيود إضافية. العمارة RION الحالي لا توجد آلية، ولكن هو قيد النظر.

عن أهداف التصميم

لجعل هذه المادة قصيرة قدر الإمكان، وحذف بعض الأهداف "أقل أهمية" تصميم RION، النسخة الكاملة ويمكن الاطلاع هنا.

RION مقابل تنسيقات البيانات الأخرى

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

أولا، RION تقارن شكل ثنائي البيانات وCSV، XML، JSON وYAML مختلفة. وسائل RION الثنائية التي هو أكثر إحكاما من هذه الأشكال والقراءة والكتابة بشكل أسرع. في المتوسط، JSON الاكتناز RION من 10 إلى 33، وإذا كانت بيانات النموذج الذي قد يكون الفرق أكثر من 50. تحويل هذا الاختلاف الاكتناز أيضا مماثل الفرق سرعة القراءة / الكتابة.

تنسيق البيانات النص هو في الواقع أسهل في القراءة وتحريرها في محرر النص، ولكن نحن عازمون على أساس التمثيل النص RION (TION) لحل هذه المشكلة، وجعل RION TION قادرة على تحويل بعضها البعض. وينبغي أن يكون هذا الشخص قادرا على الحد من الرؤية / القضايا للتحرير.

RION في الملف مستوى الجذر يحتوي على عدد وافر من المجالات، والتي سيتم فصلها عن XML RION، والمنطقة JSON، العلبة الأخير تحتوي فقط على عنصر واحد في مستوى الجذر من الملف. وهذا يجعل من السهل على بنية بيانات تيار RION، مثل ملفات السجل وملف بيانات إضافية بشكل مستمر.

RION مماثلة MessagePack، ION CBOR والترميز ثنائي اصفا النفس الأمازون. ومع ذلك، RION في بعضها خفي وهامة مع هذه الأماكن الثلاثة المختلفة. أولا، في تنسيق البيانات، يمكن تحديد فقط RION مشفرة بكفاءة بيانات النموذج. بعد ذلك، عندما هياكل البيانات المعقدة مثل الكائن تصفح FIG، RION أسهل أي متصفح في شكل ثنائي. ثالثا، دورة RION هي على وشك أن تكون قادرة على تمثيل الرسم البياني الكائن، وMessagePack، CBOR أو الأمازون ION حاليا لا تستطيع أن تفعل ذلك.

وبالإضافة إلى ذلك، بيانات الجدول بالإضافة إلى RION أفضل في هذه المرحلة أكثر خارج البارزين، وMessagePack، CBOR وION الأمازون هو إلى حد كبير في كل من سرعة القراءة والكتابة والاكتناز.

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

لمحة أكثر تفصيلا، انظر "صفحة المقارنة"، سيتم تحديث من وقت لآخر. حيث بعض من تنسيقات البيانات المفقودة، بما في ذلك أمازون ION، YAML، XML، وسوف تضاف في النهاية على.

من حيث الأداء، والقياسات يمكن أن تتطابق مع العرض RION MessagePack CBOR والسرعة، فضلا عن ProtoBuf سرعة النهج. ولكن كل هذه المعايير تعتمد على التسلسل واجتثاث التسلسل من الكائنات. إذا كان الاستخدام المباشر لشكل RION ثنائي، و / أو تحليل سوى جزء منه يمكن أن يحسن كثيرا من سرعة. لدينا مرجعية بت القديمة، وبالتالي يجب أن يكون إعادة بنائه في أقرب وقت ممكن. انقر على الرابط لرؤية القياسي الحالي:

ملخص ومزيد من التفاصيل

المصدر: Pexels

باختصار، نحن نعتقد RION جميع جوانب تنسيق البيانات هي واحدة من أفضل. وهو يوفر بسرعة وكفاءة ثنائي الترميز، مرونة وتنوعا مجموعة من نوع الحقل، القراءة والكتابة (للسرعة)، أو التسلسل وإلغاء التسلسل كائن مباشرة في شكل ثنائي. أما من حيث السرعة، يمكن أن تتطابق مع تنسيقات البيانات الأكثر شعبية، حتى يمكن تجاوزها شكل جداول البيانات، أو قراءة RION مباشرة في شكل ثنائي.

نحن (Nanosai) أمضى الكثير من الوقت في تحليل RION ومقارنة مع تنسيقات البيانات الأخرى، ولكننا نعتقد أن القانون الحالي يوفر أساسا جيدا للتوسع. لا تزال هناك بعض الأماكن تحتاج إلى معالجة (مثل المرجعية)، ولكن في عام 2020 نتوقع يمكن حل معظم المشاكل. عندما يصبح RION أكثر اكتمالا، ونحن سوف تغرد مرة أخرى.

ونحن حاليا تستخدم كرسالة RION بروتوكول شبكة ترميز IAP، وIAP هو بديل HTTP للكفاءة ومرونة طبقة التطبيقات من شبكة الاتصالات. IAP لا يزال قيد الدراسة، ولكن تم تعريف المؤسسة بشكل واضح.

استخدام RION كتنسيق تسجيل ما زلنا تعمل في تيار جافا - بيانات ادراجها تدفق المحرك. تعمل تدفق مثل حفنة من "كافكا الخفيفة". في حين لا يزال في مرحلة المفهوم، ولكننا نتوقع أن تكون قادرة على تحسينه على مدار العام 2020.

عملية تيار باستخدام RION، فمن الممكن الحصول على معالجة تسجيل جيد الإنتاجية السرعة. الآن، يمكنك وضع على جهاز الكمبيوتر المحمول المطور مضغوط إلى 195،000 السجلات في الثانية (رقم قياسي صغير). ونأمل أن نرى أعدادا أكبر في مستوى مركز البيانات من الأجهزة. وعلى المدى الطويل، ونحن نسعى للوصول إلى المليار السجلات في الثانية الواحدة، وهو ما يمكن ملاحظته في التحديات 1BRS.

في الوقت الحاضر، يتم تطبيق دينا RION مفتوحة المصدر أدوات في جاوة، مرة واحدة واستقرت بها، ونحن نخطط لتوسيع إلى لغات أخرى. أولا وقبل كل قد يكون أداء اللغة، مثل C #، C / C ++، ثم بيثون، لأنه يستخدم على نطاق واسع للبيانات العلمية. ولكن يبقى أن قررت.

حتى إذا كنت تبحث عن بسرعة، والتعاقد، وتنوعا جميع جوانب نماذج البيانات، ما إذا كنت تستخدم كافكا، بولسار، Hazelcast وغيرها من الخدمات الصغيرة عالية الأداء، والبيانات العلمية أو بنية الحدث يحركها، وهناك حاجة إلى RION نظرة.

لمزيد من المعلومات حول RION

كائن الإنترنت الأصلي الترقيم (RION) هذه تنسيق البيانات هو عنوان العمل الحالي. بدأنا مع أفضل اسم هو ION، ولكن بعد عام واحد، الذي صدر الأمازون منتج يسمى تنسيق البيانات ION استخدامها داخليا، ولذا فإننا إعادة تسمية RION. يمكن إعادة تسمية المستقبل مرة أخرى، ولكن في الوقت الراهن، تنسيق البيانات نفسها مستقرة جدا.

المصدر: Pexels

إذا كنت مهتما في مزيد من المعلومات حول RION، تحقق من RION البرنامج التعليمي.

وضعنا أيضا أداة مفتوحة المصدر يسمى "العمليات ريون للجافا" حزمة، لاستخدامها RION في جاوة. اضغط على الرابط أدناه لعرض.

https://github.com/nanosai/rion-ops-java

انتباه رسالة الابهام

معا نحن نشارك في التعلم وتطوير AI الجاف

مثل طبع، يرجى ترك رسالة وراء الكواليس، والامتثال للمعايير طبع

7 أوامر الطرفية التي تسمح لك الضحك واحدة

دخول صناعة هندسة البرمجيات، وارتكب أكبر خطأ هو سهلة، ويمكنك اطلاق النار عليه؟

مساعدة الاتصال البلاد شيئا الشريان الأورطي سلس! تشينغ لان التوسع عالية السرعة ليه البناء الكبير

هو مثل هذا! وافقت محكمة يهاى من قبل المحكمة بعد التغيير التصميم المعماري أعلن

عندما قام تنشيط الريف شو روشان الربيع، نابضة بالحياة، مفعم بالأمل

الربيع دارين | وزهرة زيت الكانولا فتاة التقى في الربيع

هذه الرسالة الأزهار قليلاً ، الزهور هنا في روشان تتفتح لك ، يرجى أخذها إلى المنزل

"الدولية 3 دقائق" هذا الاغتيال صدمت العالم بالضيق الشرق الأوسط

ورحب رئيس وزراء لاوس ثونجلون الشركات الصينية في التنمية الصناعية لاوس

الألم! شاندونغ وهوبى ممرضة المساعدات تشانغ بهدوء بعيدا، ويجري قادرة على مساعدة غير زوج الظهير

I عزل تلك الليلة في المستشفى: امرأة غريبة على الحائط، والسجلات الطبية، والبكاء في يهتف اليأس بعضها البعض

"نقص الأصول" لتأتي؟ لي كا شينج ليسدد كرة ابنه مرة أخرى اكتساح أسهم البضائع والإضرابات العودة