شاردینگ در بلاک چین (Sharding) چیست و چگونه کار میکند؟
اگر به حوزه کریپتو و مخصوصاً اتریوم علاقهمند باشید احتمال دارد که با واژه شاردینگ (Sharding) برخورد کردهاید؛ اما شاردینگ چیست چه رسالتی دارد؟
اتریوم برای اینکه بتواند جایگزینهای قوی برای برنامههای موجود ارائه دهد، باید بتواند حجم عظیمی از دادهها را ذخیره کند. برای برنامههای سنتی، سرویسهایی مانند خدمات وب آمازون (AWS) پتابایت داده از هزاران برنامه را ذخیره میکنند. بااینحال، در حال حاضر، اتریوم از توانایی ذخیره دادهها بهاندازه یک وبسرویس متمرکز مانند AWS فاصله زیادی دارد که با شاردینگ میخواهد این نقایص را برطرف کند. در این مطلب از صرافکس میخواهیم در رابطه با Sharding و ویژگیهای آن به بحث بپردازیم.
شاردینگ چیست؟
شاردینگ (Sharding) شامل کار روی قسمتهایی از پایگاه داده است که برای یک کامپیوتر غیرقابلپردازش و کنترل خواهد بود و بهتر است این کار توسط شبکهای از کامپیوترها انجام شود. بهصورت کلی میتوان تعاریف متعددی را برای اینکه Sharding چیست ارائه کرد از جمله موارد زیر:
- Sharding در واقع بسیار شبیه به پارتیشنبندی است، با این تفاوت که در سیستمهایی استفاده میشود که دادهها یک مکان مرکزی ندارند، بلکه بسته به پیچیدگی آن میتوانند در بسیاری از ماشینها پخش شوند.
- کلمه «Shard» در این رابطه به معنای تقسیم تفسیر میشود. در بلاک چین، شاردینگ به فرآیند تقسیم شبکه به بلاکچینهای کوچکتر اشاره دارد. گرههای درون هر بلاک چین مجزا یکسان هستند و ازاینرو، به روشی مشابه عمل میکنند.
- در ترکیب با سایر تکنیکها مانند هرس کردن، Sharding منجر به مدیریت تراکنشهای بیشتر در بلاک چین با سرعتهای بالاتر و درعینحال کاهش نیازهای ذخیرهسازی میشود.
- همچنین این امکان را برای گرهها فراهم میکند که فقط تراکنشهایی را که مربوط به حوزه موردعلاقهشان است پردازش کنند. این امر امنیت را تا حد زیادی افزایش میدهد و از بارگذاری بیشازحد هر گره با اطلاعاتی که به آن بیربط است جلوگیری میکند. شاردینگ یکی از روشهای ممکن برای فعال کردن اتریوم برای ذخیره دادههای بیشتر است.
ویژگی های Sharding
بهطور خلاصه، زمانی که بلاکچینها ظرفیت خود را تمام میکنند، میتوانند «شاردینگ» را اجرا کنند. اساساً این روشی است که در آن گرهها (کامپیوترها) بار استخراج و تأیید تراکنشها را در میان خردهها یا زیرمجموعهها، به اشتراک میگذارند تا سیستم از فعالیت بیشتر با تقاضای کمتر در هر گره پشتیبانی کند. این امر اجازه میدهد تا تراکنشها سریعتر تأیید شوند و در نتیجه تأخیر ناخواسته را کاهش میدهد.
شاردینگ اجازه خواهد داد تا بلاک چین به گروههای کوچکتر تقسیم شود که هر گروه با هدف خاصی مرتبط است. هر بلاک چین میتواند خرده یا زیرمجموعه مخصوص به خود را داشته باشد که میتواند در چندین گره نیز تکرار شود که با این کار حفظ تمرکززدایی با افزایش تعداد تراکنشها آسانتر و ارزانتر است.
همچنین با Sharding حفظ ثبات دادهها در سراسر سیستم آسانتر میشود، با گروهبندی تراکنشها در زنجیرههای جداگانه، احتمال تداخل یک زنجیره با زنجیره دیگر به حداقل میرسد. نتیجه این است که هیچ امکانی برای ریسک سیستمیک در ارتباط با مسئولیتپذیری معاملات وجود نخواهد داشت.
شاردینگ چگونه کار میکند؟
برای توضیح نحوه کار شاردینگ، اجازه دهید از بلاک چین اتریوم بهعنوانمثال استفاده کنیم. بلاک چین اتریوم از هزاران کامپیوتر، به نام گرهها، در حال حاضر 8622 عدد، طبق گفته ethernodes.org تشکیلشده است که هرکدام مقدار مشخصی از قدرت هش را به شبکه بلاک چین میدهند. این قدرت هش است که به ماشین مجازی اتریوم (EVM) اجازه میدهد تا کار کند، یعنی قراردادهای هوشمند را اجرا کند و برنامههای غیرمتمرکز (DApps) را اجرا کند.
در حال حاضر، اتریوم بر اساس اجرای متوالی کار میکند که در آن هر یک از این گرهها باید تکتک عملیات را محاسبه کرده و تکتک تراکنشها را پردازش کنند؛ بنابراین، یک تراکنش که از طریق این فرآیند تأیید میگذرد، میتواند مدت زیادی طول بکشد. در حال حاضر، اتریوم در حدود 10 تراکنش در ثانیه (TPS) قرار دارد. افزودن کامپیوترها به شبکه لزوماً کارایی را بهبود نمیبخشد، زیرا کل دفتر کل روی هر کامپیوتر نگهداری میشود و زنجیره تأیید طولانیتر میشود.
با شاردینگ، ایده این است که از یک مدل اجرای خطی که در آن هر گره باید هر عملیات را محاسبه کند، به یک مدل اجرای موازی که در آن گرهها برای پردازش محاسبات خاص اختصاص داده میشوند، حرکت کنیم. این امکان پردازش تراکنشهای چندگانه و موازی را بهطور همزمان فراهم میکند. بلاک چین به خردههای جداگانه (زیر دامنهها) تقسیم میشود. گرهها فقط باید بخشی از دفتر کل را اجرا کنند که به آنها اختصاص دادهشده است تا بتوانند فرآیندها را اجرا کنند و تراکنشها را تأیید کنند، بهجای اینکه کل دفتر کل را همیشه حفظ کنند.
برای مشاهده نمودار، قیمت و خرید اتریوم از صرافی ارز دیجیتال صرافکس کلیک کنید.
داده های اتریوم در کجا ذخیره میشود؟
در بکاند و پشت پرده، اتریوم از یک شبکه جهانی از گرهها تشکیلشده است که توسط کاربران و شرکتهای اتریوم اداره میشود. هر گره کل تاریخچه اتریوم را ذخیره میکند. این بدان معناست که تمام دادهها را ذخیره خواهد کرد. اینکه چه شخصی در چه تاریخی تراکنش را ارسال کرده و چه مقدار پول ارسال کرده است و همچنین قراردادهای هوشمند، کد نوشتهشده برای مدیریت آن وجوه با قوانین خاص هستند و مجموعه دادههای اتریوم را تشکیل میدهند.
همانطور که تصور میشود، اینها دادههای زیادی هستند؛ اما چرا چندین گره باید کل این تاریخچه با این حجم بزرگ را ذخیره کنند؟ این همان چیزی است که اتریوم را غیرمتمرکز میکند و میتواند برنامههایی را با آم ایجاد کرد که هیچکس نمیتواند آنها را حذف کند و این طبق گفتهای است که وبسایت اصلی اتریوم آن را بیان میکند.
بهعنوانمثال، اگر تنها تعداد کمی از افراد قادر به اجرای این گرهها به دلیل بزرگ بودن آنها باشند، آنگاه کنترل شبکه برای افراد یا گروهها آسانتر است. اگر یک کاربر با هدف بد بتواند بهاندازه کافی بر گرهها فرمان دهد، میتواند تاریخ اتریوم را بازنویسی کند. از نظر تئوری، این میتواند به فرد قدرت دهد تا به هزینه سایر کاربران اتریوم پول بیشتری به خود بدهد.
به همین دلیل است که هرچه اجرای این گرهها آسانتر باشد، احتمال وقوع آن سناریو کمتر میشود زیرا کنترل در دست کاربران بیشتری است. بهنوبه خود، این احتمال را بیشتر میکند که اتر (هر ارز دیجیتال) بتواند به وعدههای خود عمل کند. مشکل این است که این گرهها معمولاً به فضای ذخیرهسازی سنگین نیاز دارند و برای اجرا و نگهداری پیچیده هستند.
مطالب مرتبط: بهترین نرم افزارهای ماینینگ اتریوم
دلایل نیاز به شاردینگ چیست؟
Sharding میتواند اجرای گرههای کامل را آسانتر کند. بر اساس آمار رسمی سایت اتریوم، گرههای کامل اتریوم در حال حاضر حداقل پنج ترابایت فضا را اشغال میکنند که تقریباً 10 برابر فضایی است که یک کامپیوتر معمولی میتواند در خود جای دهد و گرهها با گذشت زمان و پیوستن کاربران بیشتری به پلتفرم، بزرگتر و سختتر میشوند.
Sharding یک تکنیک رایج در علوم کامپیوتر برای مقیاس بندی برنامهها است تا بتوانند دادههای بیشتری را پشتیبانی کنند. اگر شاردینگ را بتوان بهدرستی در اتریوم پیادهسازی کرد که هنوز هم اگر بزرگی است، هر کاربر میتواند تنها بخشی از تاریخچه تغییرات در پایگاه داده را ذخیره کند، برخلاف اصول کلی که بلاک چین با آن کار میکند.
چه زمانی شاردینگ در اتریوم فعال میشود؟
شاردینگ از زمان ظهور اتریوم در سال 2013 یک ایده بوده است اما هنوز مشخص نیست که آیا کار میکند و چه زمانی به اتریوم اضافه خواهد شد. شاردینگ بخشی برنامهریزیشده از اتریوم 2.0 است، مجموعهای از ارتقاء به بلاک چین اتریوم که بهطور رسمی از اول دسامبر 2020 شروع به کار کرد. به دلیل خطرات و پیچیدگی احتمالی، Sharding بهاحتمالزیاد در مراحل بعدی ارتقاء گنجانده میشود. سایت رسمی اتریوم انتظار دارد شاردینگ در سال 2023 عرضه شود.
سخن پایانی
در پاسخی کوتاه به سؤال اینکه شاردینگ چیست میتوان گفت که Sharding یک روش پیشنهادی برای تقسیم زیرساختهای اتریوم به قطعات کوچکتر باهدف مقیاسپذیری پلتفرم است تا بتواند کاربران بیشتری را نسبت به وضعیت فعلی پشتیبانی کند. اتریوم دومین بلاک چین بزرگ بهحساب میآید و برای تسهیل ساخت برنامههای غیرمتمرکز طراحیشده است که به کاربران کنترل بیشتری بر امور مالی و دادههای آنلاین خود، در کنار سایر مزایای پیشبینیشده، میدهد. ایده این پلتفرم این است که کاربردهای غیرمتمرکز را گسترش دهد و جایگزینی برای برنامههایی مانند Robinhood یا Twitter ارائه کند که دارای یک نقطه کنترل متمرکز هستند؛ بنابراین اتریوم بهعنوان یک «کامپیوتر جهانی» عمل میکند که برای همه باز است و نمیتوان آن را خاموش کرد.
در این مطلب آموزشی ما در رابطه با Sharding و نحوه کار آن مطالبی را ارائه دادیم که بیشتر کلیات این موضوع را شامل میشود و برای عمیق شدن در بحث شاردینگ نیاز به مطالعه بیشتر و گستردهتر است.
اگر قصد سرمایهگذاری امن و خرید ارز دیجیتال دارید میتوانید از خدمات سایت صرافکس استفاده کنید.
سؤالات متداول
منظور از شاردینگ در اتریوم چیست؟
شاردینگ فرآیند تقسیم افقی یک پایگاه داده برای پخش بار بوده و مفهومی رایج در علوم کامپیوتر است.
هدف از شاردینگ چیست؟
شاردینگ روشی برای توزیع یک مجموعه داده منفرد در چندین پایگاه داده است که سپس میتواند در چندین ماشین ذخیره شود. این اجازه میدهد تا مجموعه دادههای بزرگتر به قطعات کوچکتر تقسیم شوند و در گرههای داده متعدد ذخیره شده و ظرفیت کل ذخیرهسازی سیستم افزایش یابد.