فیدهای چند زنجیره ای برای ادغام پایگاه داده هوش داده پلاتوبلاک چین. جستجوی عمودی Ai.

فیدهای چند زنجیره ای برای یکپارچه سازی پایگاه داده

دریافت داده ها از زنجیره بلوکی و به دنیای گسترده تر

با اولین انتشار عمومی MultiChain، در سال 2015، ما شاهد علاقه به برنامه های بلاک چین از جهت شگفت انگیزی بودیم. در حالی که ما در ابتدا MultiChain را برای امکان صدور، انتقال و نگهداری دارایی های دیجیتال طراحی کرده بودیم، تعداد فزاینده ای از کاربران علاقه مند به استفاده از آن برای برنامه های کاربردی داده گرا بودند.

در این موارد استفاده، هدف بلاک چین امکان ذخیره سازی و بازیابی اطلاعات با هدف کلی است که نیازی به ماهیت مالی ندارند. انگیزه استفاده از بلاک چین به جای پایگاه داده معمولی، اجتناب از اتکا به یک واسطه قابل اعتماد برای میزبانی و نگهداری آن پایگاه داده است. به دلایل تجاری، نظارتی یا سیاسی، کاربران پایگاه داده می‌خواهند که این یک مسئولیت توزیع شده و نه متمرکز باشد.

تکامل جریان ها

در پاسخ به این بازخورد، در سال 2016 ما معرفی جریان‌های چند زنجیره‌ای، که یک انتزاع ساده برای ذخیره، نمایه‌سازی و بازیابی داده‌های کلی در یک بلاک چین ارائه می‌کنند. یک زنجیره می‌تواند حاوی هر تعداد جریان باشد، که هر کدام می‌توانند برای نوشتن توسط آدرس‌های خاصی محدود شوند. هر مورد جریان با آدرس ناشر خود و همچنین یک کلید اختیاری برای بازیابی در آینده برچسب گذاری می شود. هر گره می تواند به طور مستقل تصمیم بگیرد که آیا در هر جریانی مشترک شود یا خیر، و موارد آن را در زمان واقعی برای بازیابی سریع بر اساس کلید، ناشر، زمان، بلوک یا موقعیت فهرست بندی کند. استریم ها فوراً مورد توجه کاربران MultiChain قرار گرفت و آن را به شدت از دیگر پلتفرم های بلاک چین سازمانی متمایز کرد.

در سال 2017، استریم ها بودند تمدید شده برای پشتیبانی از متن JSON و Unicode بومی، کلیدهای متعدد در هر مورد و چندین مورد در هر تراکنش. این آخرین تغییر اجازه می دهد تا بیش از 10,000 مورد داده فردی در هر ثانیه بر روی سخت افزار پیشرفته منتشر شود. سپس در سال 2018، ما پشتیبانی یکپارچه را اضافه کردیم داده های خارج از زنجیره، که در آن فقط یک هش از برخی داده ها در زنجیره منتشر می شود و خود داده ها خارج از زنجیره به گره هایی که آن را می خواهند تحویل می دهد. و در اواخر همان سال ما MultiChain 2.0 Community را با آن منتشر کردیم فیلترهای هوشمند، به کد جاوا اسکریپت سفارشی اجازه می دهد تا اعتبار دلخواه موارد جریان را انجام دهد.

در طول سال 2019 تمرکز ما روی MultiChain 2.0 Enterprise بود، نسخه تجاری MultiChain برای مشتریان بزرگتر. اولین نسخه ی نمایشی سازمانی از داده‌های خارج از زنجیره در جریان‌ها استفاده می‌کند تا اجازه خواندن، تحویل داده‌های رمزگذاری‌شده، و بازیابی و پاک‌سازی انتخابی آیتم‌ها را بدهد. مانند همیشه، پیچیدگی اساسی در پشت مجموعه ساده ای از APIهای مربوط به مجوزها و موارد جریان پنهان است. با استریم ها، هدف ما به طور مداوم این بوده است که به توسعه دهندگان کمک کنیم روی داده های برنامه خود تمرکز کنند و نگران نباشند که بلاک چین در پشت صحنه اجرا می شود.

معضل پایگاه داده

همانطور که جریان های MultiChain به تکامل خود ادامه داده اند، ما با یک معضل دائمی روبرو بوده ایم. برای خواندن و تجزیه و تحلیل داده ها در یک جریان، آیا MultiChain باید مسیر تبدیل شدن به یک پایگاه داده تمام عیار را طی کند؟ آیا باید نمایه سازی فیلد JSON، پرس و جوی بهینه و گزارش گیری پیشرفته را ارائه دهد؟ اگر چنین است، از کدام پارادایم پایگاه داده باید استفاده کند - رابطه ای (مانند MySQL یا SQL Server)، NoSQL (MongoDB یا Cassandra)، جستجو (Elastic یا Solr)، سری زمانی (InfluxDB) یا درون حافظه (SAP HANA)؟ از این گذشته، موارد استفاده از بلاک چین برای هر یک از این رویکردها مناسب است.

یکی از گزینه‌هایی که در نظر گرفتیم، استفاده از یک پایگاه داده خارجی به‌عنوان ذخیره‌سازی اولیه داده MultiChain، به جای ترکیب فعلی LevelDB و فایل‌های باینری است. این استراتژی توسط هسته زنجیر (قطع شده) زنجیره پستی (هنوز عمومی نیست) و در دسترس است به عنوان یک گزینه در پارچه هایپرلجر. اما در نهایت به دلیل خطرات ناشی از وابستگی به یک فرآیند خارجی، با این رویکرد مخالفت کردیم. شما واقعاً نمی خواهید گره بلاک چین شما مسدود شود زیرا اتصال پایگاه داده خود را از دست داده است یا به این دلیل که شخصی در حال اجرای یک پرس و جو پیچیده در فروشگاه داده خود است.

یکی دیگر از عواملی که باید در نظر گرفت، ادم گرایی تکنولوژی و ادغام است. در یک شبکه بلاک چین که چندین سازمان را در بر می گیرد، هر شرکت کننده ترجیحات خود را در مورد فناوری پایگاه داده خواهد داشت. آن‌ها قبلاً برنامه‌ها، ابزارها و گردش‌های کاری را بر روی پلتفرم‌های متناسب با نیازهایشان خواهند داشت. بنابراین در انتخاب هر پایگاه داده خاص، یا حتی در ارائه چند گزینه، در نهایت برخی از کاربران را ناراضی خواهیم کرد. همانطور که هر شرکت کننده بلاک چین می تواند گره خود را بر روی طیف گسترده ای از طعم های لینوکس اجرا کند، باید بتواند با پایگاه داده انتخابی خود یکپارچه شود.

معرفی فیدهای چند زنجیره ای

امروز ما بسیار خوشحالیم که رویکرد خود را برای یکپارچه سازی پایگاه داده منتشر می کنیم - MultiChain Feeds. فید یک گزارش باینری روی دیسک در زمان واقعی از رویدادهای مربوط به یک یا چند جریان بلاک چین برای خواندن توسط فرآیندهای خارجی است. ما همچنین منبع باز را ارائه می دهیم آداپتور تغذیه چند زنجیره ای که می تواند یک فید را بخواند و به طور خودکار محتوای آن را در پایگاه داده Postgres، MySQL یا MongoDB (یا چندین مورد به طور همزمان) تکرار کند. آداپتور به زبان پایتون نوشته شده است و دارای مجوز لیبرال است، بنابراین می توان آن را به راحتی برای پشتیبانی از پایگاه های داده اضافی یا افزودن فیلتر و تبدیل داده ها تغییر داد. (ما همچنین مستندسازی کرده ایم فرمت فایل خوراک برای کسانی که می خواهند تجزیه کننده به زبان دیگری بنویسند.)

نمودار تغذیه چند زنجیره ای

یک گره نیازی به اشتراک در یک جریان ندارد تا رویدادهای خود را در یک فید تکرار کند. این اجازه می دهد تا نمایه سازی جریان داخلی MultiChain به طور کامل دور زده شود تا در زمان و فضای دیسک صرفه جویی شود. فیدها همچنین بازیابی و پاکسازی داده‌های خارج از زنجیره را منعکس می‌کنند و می‌توانند در مورد ورود بلوک‌های جدید به زنجیره گزارش دهند. به منظور صرفه جویی در فضای دیسک، می توانید دقیقاً کنترل کنید که کدام رویدادها در یک فید نوشته می شوند و کدام فیلدها برای هر یک از آن رویدادها ثبت می شوند. علاوه بر این، فایل‌های فید روزانه چرخانده می‌شوند و یک دستور پاکسازی ساده برای حذف فایل‌ها پس از پردازش وجود دارد.

چرا فیدهای MultiChain به جای پخش جریانی بین فرآیندها یا از طریق شبکه، روی دیسک نوشته می شوند؟ زیرا می‌خواهیم آنها به عنوان یک گزارش تکراری فوق‌العاده قابل اعتماد عمل کنند که در برابر خرابی پایگاه داده، خرابی سیستم، از دست دادن برق و موارد مشابه مقاوم باشد. با استفاده از فایل‌های دیسک، می‌توانیم دوام را تضمین کنیم و اجازه دهیم پایگاه داده هدف به‌صورت ناهمزمان به‌روزرسانی شود. اگر به دلایلی این پایگاه داده بیش از حد بارگیری یا قطع شود، MultiChain می‌تواند بدون وقفه به کار خود ادامه دهد و پس از بازگشت همه چیز به حالت عادی، پایگاه داده به کار خود ادامه خواهد داد.

شروع کار با فیدها

فیدها در آخرین نسخه آزمایشی/بتای MultiChain Enterprise یکپارچه شده‌اند برای دانلود در دسترس اکنون. با خواندن مستندات برای شروع شروع کنید آداپتور تغذیه چند زنجیره ای، یا بررسی API های مرتبط با خوراک. ما دوست داریم بازخورد خود را بشنوید در مورد این ویژگی و چگونگی گسترش آن در آینده.

با انتشار فیدها، نسخه 2.0 MultiChain Enterprise اکنون ویژگی کامل شده است - مشاهده کنید دانلود و نصب صفحه برای مقایسه کامل بین نسخه های Community و Enterprise. طی چند ماه آینده، آزمایش و بهینه‌سازی آن را تکمیل می‌کنیم و انتظار داریم تا پایان سه ماهه اول برای تولید آماده شود. در عین حال، برای کسب اطلاعات در مورد مجوز یا قیمت گذاری MultiChain Enterprise، لطفاً دریغ نکنید با ما در تماس باشید.

لطفا هر نظری را ارسال کنید در LinkedIn.

منبع: https://www.multichain.com/blog/2020/02/multichain-feeds-for-database-integration/

تمبر زمان:

بیشتر از چندتایی