1. صفحه اصلی
  2. مقالات ارز دیجیتال
  3. بلاکچین
  4. شاردینگ چیست؟

شاردینگ چیست؟

شاردینگ چیست؟
لوگو علیرضا محرابی
شاردینگ چیست؟
بلاکچین

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

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

عملکرد مقیاس پذیری در بلاکچین چگونه است؟

مقیاس پذیری در شاردینگ

نبود مقیاس پذیری، مشکل اصلی بلاکچین برای جذب فرصت های بیشتر است. بنابراین اضافه کردن رایانه های بیشتر، موجب افزایش کارایی بلاکچین ها نشده و تنها باعث افزایش امنیت شبکه می شود. 

بیت کوین و اتریوم از جمله شبکه هایی هستند که امنیت آنها با Proof-of-Work تامین می شود. در حال حاضر صدها کامپیوتر و ماشین آلات تخصصی وجود دارند که برای پردازش معاملات از آنها استفاده می شود. اما از آنجایی که بیت کوین و اتریوم، جزو سیستم های امن و غیر متمرکز هستند، به همین خاطر بلافاصله قابل مقیاس پذیری نیستند.

در این راستا برای بهبود مقیاس پذیری این شبکه ها، روش های زیادی وجود دارد. 

به عنوان مثال می توان برای افزایش بهبود مقیاس پذیری شبکه های بیت کوین، اندازه بلاک ها را افزایش داد تا از این طریق معاملات بیشتری در هر بلاک انجام شود. 

اما سیستم شبکه هایی از جمله لایتینگ، از کانال های پرداخت غیرزنجیره ای استفاده می کند. 

شاردینگ یکی از راهکارهایی است که برای پروژه های مختلف بلاکچین از جمله اتریوم، مورد استفاده قرار می گیرد.

نحوه کار با شاردینگ به چه صورت است؟

برای اینکه با مفهوم کار با شاردینگ در حوزه بلاکچین آشنا شوید، با مثال بلاکچین اتریوم آغاز می کنیم.

در حال حاضر بلاکچین اتریوم از هزاران یارانه یا همان نودها ساخته شده است که در حال حاضر تعداد آن 8622 یارانه است. که هر یک از این نودها، مقدار مشخصی توان هش را به شبکه ارائه می دهد.

توان هش این امکان را به فرد می دهد تا عملکرد ماشین مجازی اتریوم در قراردادهای هوشمند و برنامه های غیر متمرکز را فراهم کند.

عملکرد اتریوم در حال حاضر به صورت اجرای متوالی بوده و در این عملکرد هر یک از نودها، باید توانایی محاسبه تمامی عملیات را داشته باشند و همچنین تمامی تراکنش را پردازش کنند. 

بنابراین ممکن است که عملکرد اتریوم برای تایید هر یک از تراکنش ها، زمان بر باشد. در حال حاضر اتریوم در حدود 10 تراکنش در ثانیه را پردازش می کند. اگر بخواهیم این رقم را در ویزاکارت مقایسه کنیم. این رقم در ویزا کارت به صورت میانگین 24000 هزار تراکنش در ثانیه است. 

پس همانطور که قبلا توضیح دادیم اضافه کردن یارانه ها به شبکه به معنای بهبود عملکرد نیست، زیرا که دفتر کل بر روی تمام یارانه ها نگهداری شده و درنتیجه زنجیره طولانی تری ایجاد می شود. 

شاردینگ با انتقال مدل اجرایی خطی به مدل اجرایی موازی باعث افزایش سرعت عملکرد پردازش تراکنش ها می شود. 

در این حالت است که بلاکچین به شاردهای مجزایی تقسیم می شود. بنابراین نودها به جای حفظ تمام دفتر کل، قسمتی از دفتر کل را اجرا کرده که برای پردازش و تایید تراکنش های آن بخش اختصاص یافته اند.

شاردینگ چه مشکلی را در بلاکچین حل می کند؟

کاربرد شاردینگ در بلاکچین

شاردینگ یک راه حل موثر برای از بین بردن مشکل مقیاس پذیری بلاکچین است. هر چقدر کاربران شبکه بلاکچین بیشتر باشد، تعداد تراکنش هایی که برای انجام معاملات بلاکچین انجام می شود، بیشتر می شود.

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

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

معایب استفاده از شاردینگ چیست؟

در حال حاضر مشکل اصلی مربوط به شاردینگ، مساله ارتباط و امنیت است.

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

شاردینگ با تقسیم بلاکچین به چندین بخش باعث کاهش امنیت شبکه بلاکچین می شود. کاهش امنیت شبکه بلاکچین، موجب افزایش نگرانی های کاربران بلاکچین خواهد شد. چرا که با کاهش توان هش مورد نیاز برای کنترل هر بخش، در اختیار قرار گرفتن هر شارد توسط هکرها افزایش می یابد.

 به این روند در اختیار قرار گرفتن هر شارد توسط هکرها، حمله یک درصد می گویند. 

با هک شدن هر یک از بخش های هکرها، تراکنش های نامعتبر در شبکه اصلی ثبت می شود که در این حالت ممکن است اطلاعات آن بخش از بلاکچین، به صورت همیشگی نامعتبر شده و اطلاعات این بخش به صورت همیشه از بین برود. 

اتریوم برای حل مشکل امنیت شاردینگ، نمونه گیری تصادفی را پیشنهاد می کند. در نمونه گیری تصادفی، ثبت کنندگان شارد برای بخش های مختلف و تایید اعتبار بلاک به صورت تصادفی انتخاب می شود.

مزایای استفاده از شاردینگ چیست؟

مزایای استفاده از شاردینگ

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

این روزها مقیاس پذیری یکی از بزرگترین مشکلات بلاکچین ها محسوب می شود. هر چقدر کاربران یک شبکه بلاکچین افزایش یابد، تعداد تراکنش ها و برنامه های غیرمتمرکز و دیگر عملیات در شبکه بلاکچین افزایش می یابد. 

افزایش تراکنش ها منجر به افزایش سطح تقاضای نودها برای تایید تراکنش است. با افزایش سطح تقاضای تراکنش ها، تایید تراکنش ها به کندی انجام می شود و در این حالت بلاکچین با مشکل روبرو می شود. 

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

روش های جایگزین شاردینگ چیست؟

در حال حاضر برای افزایش عملکرد سرعت تراکنش های بلاکچین از دو روش دیگر نیز می توان استفاده کرد.

روش اول، افزایش حجم بلاک هاست. با افزایش حجم بلاک ها می توان تراکنش های بیشتری در بلاک انجام داد و در این حالت است که تعداد تراکنش های بیشتری در ثانیه به دست خواهد آمد. هر چند این روش ممکن است درست به نظر بیاید، اما با افزایش حجم بلاک ها، باید توان محاسباتی بیشتری برای تایید بلاک ها استفاده شود. 

بنابراین برای افزایش توان محاسباتی باید تجهیزات بیشتری افزوده شود که در این صورت هزینه های اجرایی آن نیز افزایش خواهد یافت. البته این نکته را باید مدنظر قرار داد که افزایش هزینه تجهیزات به معنای کوچک تر و متمرکز تر شدن استخرهای نودها می باشد که احتمال حمله 51 درصدی در بلاکچین افزایش می یابد. 

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

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

کدام یک از بلاکچین ها از شاردینگ استفاده می کنند؟

بلاک چین های کاربردی در شاردینگ

در حال حاضر بسیاری از بلاکچین ها از مکانیزم شاردینگ برای افزایش کارایی خود استفاده می کنند، در صورتی که در سایر بلاکچین ها، شاردینگ همچنان در حال توسعه است. 

در ادامه به معرفی برخی از بلاکچین هایی که از شاردینگ استفاده می کنند، می پردازیم.

1.زیلیکا اولین پلتفرم بلاکچین عمومی است که از شاردینگ برای افزایش کارایی خود استفاده کرده است. در حال حاضر زیلیکا توانسته است به 2828 تراکنش در ثانیه برسد. 

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

3.اتریوم نیز برای پیاده سازی برنامه های غیر متمرکز خود از برنامه شاردینگ استفاده می کند. اتریوم در تلاش است که از شاردینگ به عنوان بخشی از به روز رسانی اتریوم 2.0 در ژانویه 2020 معرفی نماید.

4.از دیگر پلتفرم های بلاکچینی که از شاردینگ استفاده می کند، می توان به کاردانو، کوارک چین اشاره کرد.

نتیجه گیری:

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

در این باره بیشتر بخوانید

1 نفر این مطلب برایشان مفید بوده است.
0 نفر این مطلب برایشان مفید نبوده است.
×
پشتیبانی فروش (خانم حسنی)
موبایل 09104737258
واتساپ شروع گفتگو
تلگرام @Armteam_admin_1
داخلی 101
سبد گردانی (آقای کمالی)
موبایل 09933656387
واتساپ شروع گفتگو
تلگرام @Armteam_admin_11
داخلی 206
پشتیبانی فروش (خانم علیپور)
موبایل 09192353887
واتساپ شروع گفتگو
تلگرام @Armteam_admin_27
داخلی 105
پشتیبانی فروش (آقای فرشاد)
موبایل 09026762179
واتساپ شروع گفتگو
تلگرام @Armteam_admin_18
داخلی 107
پشتیبانی فروش (خانم طاهر)
موبایل 09304891297
واتساپ شروع گفتگو
تلگرام @Armteam_admin_8
داخلی 103
پشتیبانی فروش (آقای میرانی)
موبایل 09034561556
واتساپ شروع گفتگو
تلگرام @Armteam_admin_21
داخلی 116
پشتیبانی فروش (خانم فرامرزی)
موبایل 09101364784
واتساپ شروع گفتگو
تلگرام @Armteam_admin_1
داخلی 102
سبد گردانی (آقای اشتری)
موبایل 09304891628
واتساپ شروع گفتگو
تلگرام @Armteam_admin_7
داخلی 201
پشتیبانی فروش (خانم جعفری)
موبایل 09104738165
واتساپ شروع گفتگو
تلگرام @Armteam_admin_16
داخلی 109
پشتیبانی فروش (خانم منصوری)
موبایل 09304891085
واتساپ شروع گفتگو
تلگرام @Armteam_admin_9
داخلی 104
شماره تماس دفتر
شماره تماس دفتر