دنیای ارزهای دیجیتال روزبهروز در حال گسترش است و تعداد کاربرانی که به این شبکه میپیوندند به طور لحظهای افزایش مییابد. آنچه در این میان سبب نگرانی افراد فعال در این حوزه شده است، مشکلات مربوط به مقیاسپذیری در بلاکچینها است. این مشکلات باعث شده است که توسعهدهندگان این حوزه بهدنبال راهکارهایی برای حل آن باشند. لایتنینگ و شاردینگ دو مکانیزم مؤثر در حل مشکل مقیاسپذیری رمزارزها محسوب میشوند و تاکنون نقش قابلتوجهی در بهبود شبکههای بلاکچین داشتهاند. در حال حاضر شاردینگ را میتوان بهعنوان یکی از روشهای بهبود مقیاسپذیری دانست که رمزارزهایی مثل اتریوم در فکر استفاده از آن هستند. ما در این مطلب قصد داریم ضمن پاسخ به این سوال که شاردینگ چیست؟ به اهمیت و تأثیر آن در شبکه بلاکچین ارزهای دیجیتال نیز بپردازیم.
چالش سهگانه مقیاسپذیری چیست؟
بهترین روش برای پاسخ به سوال شاردینگ چیست؟ شناخت سهگانه مقیاسپذیری است. این مثلث دارای سه ضلع امنیت، مقیاسپذیری و غیرمتمرکز ماندن است و نیاز اصلی هر شبکه بلاکچین محسوب میشود. درواقع هر شبکه بلاکچین دوست دارد هر سه مورد بیان شده را به صورت همزمان داشته باشد. اما معمولا برای داشتن همزمان آن با مشکلات و چالشهایی روبهرو میشود.
- مقیاسپذیری: مقیاسپذیری را میتوان بهعنوان اصلیترین نیاز هر شبکه بلاکچین معرفی کرد که امروزه به یکی از دغدغههای اصلی شبکه بلاکچین تبدیل شده است. براساس ویژگی مقیاسپذیری، شبکه میتواند تعداد تراکنشهای بیشتری را مدیریت کند. در نتیجه سرعت انجام تراکنشها در شبکه افزایش خواهد یافت.
- امنیت: طبق این ویژگی، شبکه در مقابل تهدیدهای امنیتی و اقدامات خرابکارانه مقاوم است. درواقع شبکه میتواند در مقابل هر چیزی که امنیت را به چالش میکشد مقاومت نماید.
- غیرمتمرکز بودن: براساس این قابلیت، شبکه میتواند بدون نیاز به نهادی متمرکز و یا گروهی متمرکز از افراد به کار خود ادامه دهد.
حال با توجه به نیاز شبکههای بلاکچین به این سه رکن، برای برقراری آنها چه کاری باید انجام داد؟ شاردینگ فرآیندی است که هر سه ویژگی نامبرده شده را تأمین میکند. حال که راهحل مناسبی برای رفع این چالشها پیدا کردیم لازم است بدانیم شاردینگ چیست؟
حتما بخوانید: نقش پلاسما در اتریوم چیست؟
شاردینگ چیست؟
شاردینگ چیست؟ کلمه Shard به معنی بخش کوچکی از یک مجموعه بزرگ است و Sharding به تقسیم کردن یک مجموعه بزرگ به بخشهای کوچکتر اشاره دارد. این شیوه با هدف بهبود عملکرد مراکز ذخیره دادهها بهوسیله تقسیمبندی دیتابیس انجام میشود و به آن پارتیشنبندی افقی میگویند.
درواقع شاردینگ نوعی تقسیمبندی پایگاه داده است که با هدف مدیریت بهتر شبکههای دیتابیس بزرگ استفاده میشود. به عبارتی دیگر در فرآیند شاردینگ، یک پایگاه داده بزرگ برای تبدیل به اجزای کوچکتر شکسته میشود و بهبود عملکرد شبکه را بهدنبال دارد.
برخلاف تصور عدهای از کاربران ارزهای دیجیتال، شاردینگ مفهوم جدیدی نیست؛ استفاده از این فرایند از اواخر دهه ۹۰ میلادی با هدف مدیریت پایگاه دادههای متمرکز رایج بوده است. با این حال فراگیری این اصطلاح زمانی بیشتر شد که توسعهدهندگان یکی از بازیها به نام اولتیما آنلاین تصمیم گرفتند که جهت مدیریت ترافیک ورودی، بازیکنان را در سرورهای مختلف پخش کنند.

عملکرد شاردینگ به چه صورت است؟
برای اطلاع از عملکرد شاردینگ در شبکه لازم است به مثال زیر توجه کنید. همانطور که میدانید بلاکچین اتریوم از تعداد زیادی کامپیوتر، تحت عنوان نودها تشکیل شده است. هر یک از این نودها مقدار مشخصی قدرت هش در اختیار شبکه قرار میدهند؛ اینگونه اتریوم میتواند وظایف خود مانند اجرای قراردادهای هوشمند را به درستی انجام دهد.
عملکرد اتریوم به صورت خطی یا ترتیبی است؛ براساس آن هر نود باید تمامی تراکنشها و عملیات را پردازش نماید. به همین دلیل انجام این تراکنشها به زمان زیادی نیاز دارد. جالب است بدانید که در حال حاضر اتریوم قادر به انجام ۱۰ تراکنش در هر ثانیه است؛ در حالیکه سیستمهای پرداخت ویزا این قابلیت را دارند که ۲۴۰۰۰ تراکنش در ثانیه را پردازش کنند.
حال باید پرسید که در چنین شرایطی نقش شاردینگ چیست؟ شاردینگ مدل خطی را که در آن هر نود وظیفه پردازش تمامی فعالیتها را دارد به مدل موازی که در آن هر نود مسئول پردازش تعداد مشخصی از تراکنشهاست، تغییر میدهد.
براساس مدل موازی، تراکنشها بهطور موازی و در خطوط چندگانه پردازش میشوند. بهطور کلی یک بلاکچین به شاردهای مختلف تقسیم میشود و نودها برای تأیید تراکنشها باید قسمتی از دفترکل که به آنها اختصاص داده شده است را اجرا کنند. براساس فرآیند شاردینگ، دیگر نیازی به نگهداری و بهروزرسانی تمامی تراکنشها نیست.
شاردینگ چه مشکلی را حل میکند؟
در حال حاضر مقیاسپذیری یکی از بزرگترین معضلات شبکه بلاکچین محسوب میشود؛ بنابراین امروزه استفاده از راهکارهایی برای حل این مسئله به چالشی بزرگ تبدیل شده است. در میان راهکارهای ارائه شده، شاردینگ را میتوان بهعنوان یکی از اصلیترین راهکارهای مؤثر در مشکل مقیاسپذیری شبکه بلاکچین معرفی کرد.
محبوبیت ارزهای دیجیتال سبب گرایش تعداد زیادی کاربر به این شبکه شده است؛ به طوری که این تعداد روزبهروز در حال افزایش است. بدون شک افزایش کاربران، افزایش تراکنشها را بهدنبال خواهد داشت و ازدحام و شلوغی شبکه بلاکچین، مشکل مقیاسپذیری را بزرگتر میکند. طبق مکانیزم شاردینگ، شبکه بلاکچین به اجزای کوچکتری تقسیم میشود که در آن هر گروه از نودها مسئول تأیید بخش خاصی از تراکنشها خواهند بود. تأیید این تراکنشها براساس مدل موازی انجام میشود و نتیجه آن افزایش سرعت شبکه خواهد بود. درواقع شاردینگ شبکههای بلاکچین را در بلندمدت پایدارتر و بادوام میکند.

معایب شاردینگ چیست؟
برقراری ارتباط و حفظ امنیت شبکه را میتوان بهعنوان اصلیترین چالشهای پیش روی فرایند شاردینگ دانست. تقسیمبندی بلاکچین به اجزای کوچکتر باعث میشود که هر شارد بهعنوان یک بلاکچین مجزا عمل کند. در چنین شرایطی لازم است سازوکارهایی جهت برقراری ارتباط میان شاردینگ و کاربران پیادهسازی کرد تا برنامههای یک زیردامنه بتوانند با برنامههای زیردامنه دیگر ارتباط برقرار کنند. این مسئله سبب شده تا لایه دیگری به مجموعه وظایف توسعهدهندگان اضافه شود و ذهن آنها را درگیر کند.
امنیت از دیگر عوامل مهم در یک بلاکچین تفکیک شده محسوب میشود؛ چرا که امکان دسترسی هکرها و مهاجمان به یک شارد به دلیل کاهش قدرت هش آن راحتتر است.
چنین حملاتی در شاردها با عنوان حمله یک درصد یا کنترل بر شارد واحد شناخته میشود. اگر یک شارد هک شود، مهاجم امکان ثبت تراکنشهای نامعتبر در شبکه را دارد؛ یا اینکه میتواند قسمتی از بخش هک شده را بیاعتبار و یا آن بخش را برای همیشه پاک کند.
راهکار جایگزین برای شاردینگ چیست؟
توسعهدهندگان شبکه بلاکچین، دو طرح بهبود اضافی برای افزایش سرعت تراکنشها پیشنهاد دادهاند. پیشنهاد اول، افزایش سایز بلاکها است. در این روش تصور بر این است که هرچه سایز بلاکها بیشتر باشد، تراکنشهای بیشتری در آن جای میگیرد؛ بنابراین تعداد تراکنشها در ثانیه نیز افزایش مییابد. اگرچه این طرح عملی است اما باید توجه داشت که با بزرگتر شدن بلاکها، به قدرت محاسباتی بیشتری برای تأیید آنها نیاز است.
در صورت افزایش نامحدود سایز بلاکها باید از تجهیزات تخصصی برای پردازش استفاده کرد. این تجهیزات بسیار هزینهبر بوده و احتمال بروز خطر ۵۱ درصد را افزایش میدهد. همچنین برای افزایش سایز بلاکها باید از هاردفورک استفاده کرد که خطر جدا شدن جامعه از یکدیگر را بهدنبال دارد؛ چرا که اگر همه افراد بهروزرسانی به بلاکچین جدید را انجام ندهند، دو زنجیره جدا با کوینهای مجزا بهوجود خواهد آمد. به همین دلیل افزایش سایز بلاک ها یک راهکار موقتی است و نمیتوان آن را بهعنوان بهبوددهنده عملکرد شبکه بلاکچین بهکارگرفت.
دومین پیشنهاد، استفاده از آلت کوینها جهت کاربردهای مختلف است. این اتفاق باعث بهبود عملکرد شبکه میشود؛ چرا که عملیات مربوط به پردازش تنها بر عهده یک بلاکچین نیست. این روش از امنیت خوبی برخوردار است؛ زیرا قدرت هش میان بلاکچین های مختلف پخش میشود. البته در این روش امکان هک کردن شبکه نسبت به روش قبلی بیشتر است. با این حال این راهکار را نیز نمیتوان اصولی و دائمی تصور کرد.

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