شاردینگ (Sharding) چیست و چگونه به مقیاسپذیری کمک میکند؟
شاردینگ چیست و چه کاربردی در بازار ارز دیجیتال و شبکههای بلاکچین دارد؟ فناوری تقسیمبندی پایگاه داده به قسمتهای کوچکتر که قبلا در دنیای دیجیتال و فضای ذخیرهسازی دادهها به نوع دیگری استفاده شده، این بار در شبکه بلاکچین و برای ارتقاء کیفیت عملکرد آن در مقیاس پذیری مورد استفاده قرار گرفته است. برای تمام کسانی که در بازار ارز دیجیتال به دنبال یک سرمایهگذاری مطمئن و آگاهانه هستند، دانستن اینکه شاردینگ چیست و چه کاربردی دارد، یکی از مهمترین اطلاعات لازم است. این مهم حتی میتواند در نهایت شما را به ارزهای دیجیتالی برای سرمایهگذاری و هولد برساند که تفاوت مهمی را در این بازار رقم میزنند.
نکات کلیدی مقاله:
- شاردینگ (Sharding) یک تکنیک پارتیشنبندی پایگاه داده است که توسط شبکههای بلاکچین برای ارتقاء توان محاسباتی مورد استفاده قرار گرفته است.
- شاردینگ راهحلی برای ارتقاء مقیاس پذیر بودن شبکههای بلاکچین است.
- افزایش تعداد کاربران و تراکنشها باعث کندتر شدن شبکههای بلاکچین میشود، فناوریهایی مانند شاردینگ (Sharding) میتواند راهحل خوبی برای این مشکل باشد.
- در تکنیک شاردینگ (Sharding) هر پارتیشن میتواند به صورت جداگانه مورد استفاده قرار گیرد.
- نگرانیهایی از بابت امنیت هر یک از پارتیشنها در فناوری شاردینگ (Sharding) وجود دارد که از جمله اصلیترین محدودیتهای این فناوری محسوب میشود.
شاردینگ (Sharding) چیست؟
در اولین قدم باید بدانید که شاردینگ چیست و سپس به کاربردها و مزیتهای آن برای شبکههای بلاکچین بپردازیم. به زبان خیلی ساده شاردینگ (Sharding) فناوری است که به شبکه بلاکچین اجازه میدهد تا خود را به چند شبکه بلاکچین کوچکتر تقسیم کند. با این تقسیمبندی امکان مدیریت هرچه بهتری برای بلاکچین فراهم آمده و هر یک از بخشها میتوانند وظیفه مربوط به خود را در بهترین عملکرد انجام دهند. این مهم باعث میشود تا عملا بخشی از بلاکچین برای تایید و ذخیره تراکنشها استفاده شده و راندمان بهتری را برای آن از نظر مقیاسپذیری شاهد باشیم.
در یک شبکه بلاکچین تمام تراکنشها ذخیره میشود. هر گره یا نود (NODE) یک نسخه کامل از بلاکچین را ذخیره داشته و با اضافه شدن هر تراکنش، بار وارد شده به گرهها نیز افزایش پیدا مینماید. با افزایش بیش از حد تراکنشها و سنگینتر شدن شبکه، عملا راندمان آن کاهش پیدا خواهد کرد و مقیاسپذیری کمتری را برای آن شاهد خواهیم بود. برای رفع این چالش، از فناوریهای مختلفی استفاده میشود که یکی از آنها نیز شاردینگ (Sharding) است.
با استفاده از این فناوری دیگر نیاز نیست که تمام نودها تمام بلاکچین را ذخیره داشته باشند و هر نود بخشی از دادهها را ذخیره خواهد داشت. این مهم باعث کم شدن بار محاسباتی و عملیاتی روی شبکه شده و در نهایت مقیاسپذیری بالاتری را در پی خواهد داشت. همچنین امکان انجام چند تراکنش به صورت همزمان نیز برای شبکه ایجاد خواهد شد.
شاردینگ چگونه کار میکند؟
در بند قبلی به زبان ساده تشریح کردیم که شاردینگ چیست و چه کاربردی دارد، اما درک مفهوم شاردینگ خیلی هم ساده نیست و باید درباره این فناوری کمی تخصصیتر صحبت کنیم. هر چند با استفاده از این فناوری قرار است شبکه بلاکچین به بخشهای مختلفی تقسیم شود، اما از طرف دیگر برای حفظ امنیت شبکه نیاز است تا تمام اجزا با یکدیگر ارتباط داشته و زنجیره کاملی را تشکیل دهند. همین موضوع چالشهای استفاده از شاردینگ را افزایش میدهد.
برای این منظور شاردینگ (Sharding) در دو لایه و در دو سطح مختلف بر روی بلاکچین پیادهسازی میشود. لایه اول همان پارتیشنهای کوچک هستند که میتوانند به صورت کاملا مستقل عمل کرده و حتی تایید تراکنشها را نیز بدون نیاز به ارتباط با سایر بخشها به عهده بگیرند. ورود یک تراکنش به لایه دوم که به لایه هماهنگی (coordination layer) معروف است، زمانی رخ خواهد داد که تراکنش مورد نظر در لایه اول تایید شده باشد. در این لایه اعتبار بلوک مور نظر مورد بررسی و تایید قرار میگیرد. در صورتی که بلوک مورد تایید قرار گرفت، به زنجیره بلاکچین اضافه شده و در غیر این صورت رد خواهد شد. این مهم ترفند فناوری شاردینگ برای ارتباط و هماهنگی میان پارتیشنهای مختلف بلاکچین است.
شاردینگ در ارز دیجیتال
ارزهای دیجیتال برای اولین بار در سال 2009 و با رونمایی از بیت کوین وارد بازار جهانی شدند، اما شاردینگ سابقه به مراتب طولانیتری از آنها دارد. اولین بار در دهه 90 میلادی از این مفهوم برای مدیریت پایگاههای داده متمرکز برای ارائه راندمان بالاتر استفاده شد. این فناوری با توجه به قابلیتهایی که برای ارتقاء سطح عملکرد بلاکچین دارد، وارد دنیای ارزهای دیجیتال شده و در حال حاضر شبکههای بلاکچین مختلفی از آن در حال استفاده هستند.
دقت داشته شاید که فناوری شاردینگ در ارزهای دیجیتال را نباید با پارتیشنبندیهای معمول یکی بدانید. در پارتیشنبندیهای معمول فضای ذخیرهسازی معمولا از قسمتبندی عمودی (Vertical Partitioning) استفاده میشود. در این شرایط اطلاعات هر کاربر فقط در یک پارتیشن ذخیره شده و عملا دیگر شاهد تمرکززدایی در آن نخواهیم بود، در حالی که در شاردینگ در ارزهای دیجیتال شاهد استفاده از تقسیمبندی افقی (Horizontal Partitioning) هستیم. اما تقسیمبندی افقی در شاردینگ چیست و چه شرایطی برای آن ایجاد میکند؟
در تقسیمبندی افقی اطلاعات مربوط به هر تراکنش محدود به یک پارتیشن نشده و در پارتیشنهای مختلف به صورت همزمان ذخیره میشود. این مهم باعث میشود تا در عین بالا رفتن عملکرد شبکه در مقیاسپذیری و سرعت تایید تراکنشها، همچنان شاهد مدیریت آن به صورت غیرمتمرکز هم باشیم.
مزیتهای شاردینگ در بلاکچین
اما مزیتهای شاردینگ چیست و چه انتظاری از این فناوری باید داشته باشیم؟ مسلما استفاده از فناوریهای مدرن در شبکههای بلاکچین باید برای رسیدن به کاربردهای خاصی باشد و بلاکچینهای مانند نییر (Near) از شاردینگ (Sharding) برای رسیدن به کاربردهایی استفاده مینمایند که در نهایت کیفیت آنها را ارتقاء بخشد. به صورت کلی میتوانیم کاربردها و مزیتهای متنوعی را برای این فناوری معرفی کنیم، اما مهمترین بخش از مزیتهای آن به دو موضوع افزایش توان عملیاتی یا مقیاسپذیری و افزایش سرعت تایید تراکنشها برمیگردد.
افزایش مقیاسپذیری
در قدم اول باید به افزایش مقیاسپذیری بلاکچین با شاردینگ (Sharding) اشاره کنیم. در شرایطی که زنجیره به پارتیشنهای خرد تقسیم شده و هر یک به صورت مستقل در حال تایید تراکنشها هستند، عملا توان عملیاتی شبکه افزایش یافته و امکان بررسی تعداد تراکنشهای بیشتری در واحد زمان وجود خواهد داشت. تعداد تراکنشهای پردازش شده در حال حاضر برای ویزا کارت به عنوان یک روش پرداختی مبتنی بر وب، حدود ۱۰۰۰ تا ۴۰۰۰ تراکنش در هر ثانیه است، در حالی که این مقدار برای شبکه اتریوم 15 تا 30 تراکنش در هر ثانیه بوده و این مهم نشان از این دارد که شبکههای بلاکچین هنوز فاصله زیادی برای رسیدن به ایدهآلترین شرایط در مقیاسپذیری دارند و شاردینگ (Sharding) میتواند راهحل عالی برای این منظور باشد.
افزایش سرعت تایید تراکنشها
در کنار بالا رفتن مقیاسپذیری و پردازش تراکنشها، به تبع سرعت تایید آنها نیز افزایش پیدا خواهد کرد. این مزیت به این دلیل است که عملا تمام گرهها تمام بخشهای بلاکچین را دریافت نکرده و مجبور به ذخیره دادههای خیلی زیادی نیستند. اعتبارسنجها در این شرایط با سرعت بیشتری تراکنشها را تایید خواهند کرد.
معایب شاردینگ
اما معایب شاردینگ چیست و در پس مزیتهایی که در بالا به آنها اشاره کردیم، پارتیشنبندی چه معایبی را برای شبکههای بلاکچین ایجاد خواهد کرد؟ در نگاه اول به این فناوری، شاید با خود تصور کنید که نمیتوان هیچ عیبی را برای آن تشریح کرد، اما واقعیت درباره آن چیز دیگری است و میتوانیم ایرادات مختلفی را نیز برای آن تعریف کنیم. مهمترین معایب این فناوری را نیز در ادامه به آن اشاره خواهیم کرد.
خطر بزرگ متمرکزسازی
همان طور که میدانید یکی از اصلیترین دلایل وجود امنیت بالا در شبکههای بلاکچین، غیرمتمرکز بودن آنهاست که عملا باعث میشود تا هکرها نتوانند تغییری در دادههای شبکه ایجاد نمایند. یکی از بزرگترین خطرات پیش روی بلاکچین امکان حمله 51 درصدی است که در طی آن ممکن است یک هکر 51 درصد از نودهای شبکه را در اختیار گرفته و عملا توانایی جعل در دادهها را داشته باشد. بهترین راهکار جلوگیری از این چالش، وجود تعداد نودهای فعال بسیار زیاد در شبکه است.
همانطور که در بالا تشریح کردیم که شاردینگ چیست و چه تغییری در بلاکچین ایجاد مینماید، درک این ایراد آن نیز به تعریف خود این فناوری برمیگردد. عملا با استفاده از این فناوری پارتیشنهای مختلف شبکه دارای نودهای کمتری خواهند شد و این مهم از میزان غیرمتمرکز بودن شبکه میکاهد. اتفاقی که میتواند خطر نفوذ هکرها و حملات 51 درصدی را فزایش دهد. البته برای یک شبکه که به اندازه کافی شلوغ بوده و تعداد گرههای قابل توجهی برای هر پارتیشن داشته باشد، این چالش چندان بزرگ نخواهد بود.
ناهماهنگی دادهها
با پیادهسازی فناوری شاردینگ (Sharding) عملا هر یک از پارتیشنهای شبکه به صورت کاملا مستقل عمل مینمایند. این مهم باعث میشود تا عملا امکان ذخیرهسازی دادهها به صورت ناهماهنگ و متفاوت در هر یک از آنها وجود داشته باشد. در تراکنشهای مالی چنین امری حتی میتواند باعث از بین رفتن دارایی کاربران نیز شود. همچنین ایجاد هماهنگی میان لایه هماهنگی و لایه اول نیز چالشهای خاص خود را خواهد داشت.
دیپ شاردینگ (Deep Sharding) چیست؟
اصطلاح دیگری که ممکن است درباره شاردینگ به چشم شما خورده باشد، دیپ شاردینگ (Deep Sharding) است. دیپ شاردینگ به پدیده شاردهای تودرتو گفته میشود. در این حالت برای هر شارد ایجاد شده، دوباره از شاردینگ جدید استفاده شده و عملا هر پارتیشن اصلی خود به پارتیشنهای کوچکتر تقسیم میشود که باعث عمیقتر شدن پارتیشنها خواهد شد.
در این حالت که البته تنها در صورت نیاز باید سراغ آن رفت، مقیاسپذیری به مراتب بیشتری را نیز برای شبکه ایجاد خواهد کرد و شاهد افزایش مزیتهای شاردینگ (Sharding) برای شبکه بلاکچین مورد نظر نیز خواهیم بود.
تفاوت شاردینگ با راهحل لایه ۲
یکی از بهترین روشهای بالا بردن دقت مقیاسپذیری و افزایش سرعت تایید تراکنشها در شبکه بلاکچین استفاده از راه حل لایه دوم است. در حال حاضر شبکههای قدرتمندی مانند اپتیمیزم (Optimism) به عنوان راهحل لایه ۲ برای بهبود عملکرد بلاکچین اتریوم فعالیت دارند. حتی شبکه پالیگان (Polygon) نیز برای کارکرد مشابهی ایجاد شده است. راهحل لایه ۲ و شاردینگ به دنبال رسیدن به نتیجه یکسانی هستند، اما نوع عملکرد آنها تفاوتهایی با هم دارد.
در راهحل لایه ۲ عملا برخی از تراکنشهای شبکه اصلی از آن خارج شده و در یک شبکه موازی و جداگانه مورد ارزیابی قرار میگیرند. سپس دوباره تراکنشهای تایید شده به شبکه اصلی برمیگردند. این مهم باعث میشود تا عملا شبکه اصلی نیاز به ارزیابی تمام تراکنشها نداشته باشد. در حالی که در شاردینگ (Sharding) خبری از خارج شدن تراکنشها از شبکه اصلی نخواهد بود. ایدههای مبنی بر استفاده همزمان از شاردینگ و راهحل لایه ۲ نیز در ذهن برخی از تیمهای توسعه ارز دیجیتال وجود دارد.
پیشنهاد مطالعه: بهترین ارزهای لایه دوم اتریوم
ارزهای دیجیتال با فناوری شاردینگ
نوبت به معرفی ارزهای دیجیتالی میرسد که از فناوری شاردینگ در بلاکچین خود بهره میبرند. البته که این فناوری در سالهای آینده حتی میتواند با ارتقاء بیشتری هم روبرو شده و شاهد استفاده از نسخههای بهروز شده آن در بلاکچین باشیم، اما همین حالا نیز بسیاری از بلاکچینهای تعریف شده در بازار کریپتوکارنسی در حال استفاده از مزیتهای آن هستند. مهمترین آنها را در ادامه با هم مرور میکنیم.
- زیلیکا (Ziliqa): اولین بلاکچینی که از فناوری شاردینگ (Sharding) استفاده کرد، زیلیکا بود. قابلیتی که باعث شد تا این شبکه به رکورد ۲۴۰۰ تراکنش در هر ثانیه برسد. بلاکچین زیلیکا دائما با افزایش تعداد نودها با تعداد شاردهای بیشتری هم همراه میشود.
- نییر (Near): بلاکچین نییر هم در جمع بلاکچینهای شامل شاردینگ است. این بلاکچین که از الگوریتم اثبات استیک (Proof of Stake) در شبکه خود استفاده مینماید، با استفاده از شاردینگ کیفیت عملکرد به مراتب بهتری را ایجاد کرده است.
شاردینگ اتریوم
اتریوم به عنوان دومین ارز دیجیتال برتر دنیا بعد از بیت کوین، در حال حاضر پرکاربردترین شبکه بلاکچین را دارا است. ویتالیک بوترین (Vitalik Buterin) هر ساله به روزرسانیهای جدیدی را برای شبکه بلاکچین در نظر گرفته و اضافه شدن فناوری شاردینگ به آن میتواند جذابیتهای بلاکچین اتریوم را در پروژه اتریوم ۲ به مراتب بالاتر ببرد. شاردینگ اتریوم عملا حتی میتواند شرایط پیادهسازی بلاکچین سنگین اتریوم را روی موبایل و لپ تاپ معمولی نیز فراهم آورد.
در حال حاضر با وجود استفاده از پروژههای راهحل لایه دوم متعدد بر روی بلاکچین اتریوم، هنوز هم چالشهای مقیاسپذیری آن برطرف نشده است و شاردینگ اتریوم میتواند سرعت و توان عملیاتی آن را به میزان قابل توجهی افزایش داده و شرایط به مراتب بهتری را برای آن فراهم آورد.
جمعبندی
در انتهای این مقاله هستیم و حالا به خوبی میدانید که شاردینگ چیست و چه قابلیتی را به بلاکچین اضافه میکند. شناخت این دست از فناوریها برای کاربران بازار ارز دیجیتال از این جهت اهمیت دارد که بتوانند دیدگاه حرفهایتری روی ارزهای دیجیتال موجود در بازار داشته و در نهایت انتخاب بهتری برای سرمایهگذاری بلندمدتتر داشته باشند. شاردینگ تنها یکی از اصطلاحات مهم بازار کریپتوکارنسی بود که در این مقاله در بیتشال به بررسی کامل آن پرداختیم. در انتها همچنین از شما همراهان دعوت میکنیم که اگر دیدگاهی نسبت به این فناوری دارید، حتما آن را با ما در میان بگذارید. بیصبرانه منتظر شنیدن چالشهای ذهنی و نظرات شما درباره جذابیتهای فناوری شاردینگ در ارز دیجیتال هستیم.
سوالات متداول
1- شاردینگ چیست؟
فناوری شاردینگ امکان تقسیم شبکه بلاکچین را به پارتیشنهای کوچکتر فراهم میآورد.
2- کاربردهای شاردینگ چیست؟
افزایش توان عملیاتی و مقیاسپذیری و همچنین سرعت تایید تراکنشها در شبکه بلاکچین.
3- آیا شاردینگ ایمن است؟
ایمن بودن یا نبودن شاردینگ به شرایط بلاکچین بستگی دارد. در صورتی که تعداد نودهای قابل توجهی در بلاکچین فعال باشند، شاردینگ نیز ایمن خواهد بود.