
Sharding هو تقنية توسعة للبلوكشين تقسم معالجة المعاملات إلى عدة "مسارات متوازية" ضمن السلسلة نفسها، حيث يتولى كل مسار معالجة مجموعة فرعية من المعاملات بشكل مستقل، ثم تُجمع النتائج في سجل موحد. الهدف هو رفع القدرة الاستيعابية دون المساس بالأمان أو الاتساق العام.
يمكن تشبيه البلوكشين بطريق سريع بمسار واحد، حيث تنتظر كل سيارة (معاملة) في الطابور. يقوم Sharding بتوسيع الطريق إلى عدة مسارات، بحيث يتولى كل مسار تدفق حركة المرور الخاصة به. في هذا التشبيه، تمثل "السيارات" المعاملات، والمسارات هي الشظايا (Shards). عند تشغيل عدة شظايا في آن واحد، تزداد قدرة الشبكة على معالجة المعاملات بشكل كبير، أي عدد المعاملات المنفذة خلال وحدة زمنية واحدة.
Sharding يعزز الأداء عبر تمكين العُقد المختلفة من معالجة المعاملات في شظايا منفصلة بشكل متزامن، بدلاً من تمرير كل النشاط عبر خط معالجة واحد.
عندما يتم التحقق من جميع المعاملات بشكل تسلسلي من قبل نفس مجموعة العُقد، تصبح الشبكة مزدحمة في أوقات الذروة، مما يؤدي إلى تقلبات ملحوظة في رسوم الغاز. يوزع Sharding المعاملات على مجموعات متعددة، ما يتيح التحقق والتجميع في وقت واحد ويقلل من نقاط الاختناق الفردية. بالنسبة للمستخدمين، يؤدي ذلك إلى أوقات تأكيد أكثر استقراراً ورسوم أكثر قابلية للتوقع.
من المهم إدراك أن مكاسب الأداء ليست مطلقة— فهي تعتمد على عبء التواصل بين الشظايا، وعدد العُقد المشاركة في كل شظية، واعتبارات الأمان.
يتضمن Sharding عدة مراحل: تخصيص الشظايا، الإجماع داخل الشظية، التواصل بين الشظايا، والتجميع النهائي.
الخطوة 1: تخصيص الشظايا. تقوم الشبكة بتقسيم الحالة العالمية أو البيانات إلى عدة شظايا، بحيث تحتفظ كل واحدة بصف انتظار معاملات وحالة فرعية خاصة بها. يتم تعيين "العُقد"—أي الحواسيب التي تشغل برنامج البلوكشين—إلى شظايا مختلفة للمشاركة في المعالجة.
الخطوة 2: المعالجة داخل الشظية. تتوصل العُقد داخل كل شظية إلى إجماع حول المعاملات ضمن شظيتها (أي أن معظم العُقد تتفق على نفس النتيجة)، وتنتج كتل أو سجلات الشظية.
الخطوة 3: التواصل بين الشظايا. عندما تتضمن معاملة شظيتين (مثل حساب في الشظية A وعقد في الشظية B)، ينقل النظام النتائج بين الشظايا باستخدام رسائل أو إثباتات. النشاط بين الشظايا يضيف تأخيراً ويتطلب بروتوكولات أو طوابير خاصة للحفاظ على النظام والأمان.
الخطوة 4: التجميع النهائي على الشبكة. تُجمع مخرجات جميع الشظايا إلى السلسلة الرئيسية أو طبقة التنسيق، لتكوين سجل موحد. تشير "النهائية" إلى مدى التأكد من أن النتائج لن يتم عكسها— وغالباً ما يتطلب ذلك جولات إضافية أو وقتاً إضافياً.
Sharding وRollups متكاملان: Rollups تنقل العمليات الحسابية الكبيرة خارج السلسلة أو إلى حلول الطبقة الثانية، ثم ترسل البيانات المضغوطة والإثباتات إلى السلسلة الرئيسية؛ بينما يزيد Sharding (خصوصاً Sharding البيانات وDanksharding المستقبلي) من عرض النطاق الترددي المتاح للبيانات أمام Rollups.
تخيل Rollups كأنها "مشاركة السيارات": يتم تجميع الركاب خارج الطريق قبل دخولهم معاً إلى الطريق السريع. يقوم Sharding بتوسيع مسارات الطريق، ما يتيح لمجموعات السيارات الدخول بسهولة دون ازدحام. معا، يتيحان توسعة التنفيذ والبيانات.
اعتباراً من 2025، قدمت EIP-4844 الخاصة بـ Ethereum (Proto-Danksharding، أُطلقت في 2024) مساحة بيانات Blob، موفرة قناة نشر بيانات أرخص لـRollups وممهّدة الطريق لـDanksharding الكامل (المصدر: تحديثات عامة من مطوري Ethereum الأساسيين).
Ethereum اتبعت نهج "أولوية عرض النطاق الترددي للبيانات، التنفيذ لاحقاً". وسّعت EIP-4844 (2024) طبقة البيانات؛ والخطوات التالية تهدف إلى Danksharding لدعم أفضل لـRollups (وفقاً لنقاشات خارطة الطريق العامة للعامين 2024–2025).
تستخدم NEAR بنية Nightshade، حيث تطبق Sharding لتوزيع الحالة والتنفيذ عبر خيوط متوازية منذ إطلاق الشبكة الرئيسية في 2020. أما Zilliqa فقد نفذت Sharding على مستوى الشبكة لزيادة القدرة الاستيعابية المتوازية منذ إطلاق شبكتها الرئيسية في 2019. وتتميز MultiversX (سابقاً Elrond) بـAdaptive State Sharding على الشبكة الرئيسية لمعالجة الأحمال المتغيرة.
تختلف منهجية كل شبكة وتفاصيلها التقنية، لكن الاتجاه المشترك هو اعتبار المعالجة المتوازية والتواصل بين الشظايا عناصر تصميم أساسية مع الحفاظ على الأمان من خلال التعيين العشوائي وآليات الإثبات.
بالنسبة للمستخدم النهائي، يعد Sharding تقنية "تعمل في الخلفية". تستمر في استخدام المحافظ والتطبيقات اللامركزية كالمعتاد؛ إذ تقوم الشبكة تلقائياً بتخصيص معاملاتك للشظية المناسبة وتتعامل مع تأكيدات الشظايا في الخلفية.
الخطوة 1: اختر شبكة تدعم Sharding ومحفظة متوافقة. تأكد من أن محفظتك تدعم تنسيقات العناوين وإجراءات المعاملات الخاصة بالشبكة.
الخطوة 2: بادر بتنفيذ معاملة أو التفاعل مع عقد ذكي. إذا تم نشر تطبيق على شظية معينة، تقوم محفظتك أو تطبيقك بتوجيه الطلبات تلقائياً إلى تلك الشظية.
الخطوة 3: انتظر تأكيد الشظايا المتعددة. قد يتم تأكيد المعاملات التي تمتد عبر عدة شظايا على مراحل؛ غالباً ما تعرض واجهات المستخدم حالة التقدم أو الاكتمال. بالنسبة للمبالغ الكبيرة، يُنصح بالانتظار حتى بلوغ عتبة تأكيد أعلى.
أما بالنسبة للمطورين، فإن نشر العقود وتصميم البنية يتطلب مراعاة الشظية التي تحتفظ بالبيانات/الحالة، وكيفية إجراء استدعاءات بين الشظايا، وكيفية إدارة النهائية ومنطق إعادة المحاولة. الممارسة الشائعة هي إبقاء التفاعلات المتكررة والمحلية ضمن شظية واحدة، وعدم إجراء العمليات بين الشظايا إلا عند الضرورة.
Sharding يضيف تعقيداً. يمكن أن يؤدي التواصل بين الشظايا إلى زيادة التأخير ونقاط فشل إضافية—ويجب على المطورين التعامل مع ترتيب الرسائل وإعادة المحاولة. قد يواجه المستخدمون انزلاقاً أو حالة من عدم اليقين خلال فترات التقلب الشديد بسبب تأخر تأكيد الشظايا.
من ناحية الأمان، إذا كانت الشظية تضم عدداً قليلاً من المشاركين أو أصبحت مركزية، فهي معرضة لهجمات مستهدفة. غالباً ما تتصدى الشبكات لهذا الأمر بالتعيين العشوائي وإعادة التوزيع الدوري.
هناك أيضاً مسألة توفر البيانات: يجب أن يكون جميع المشاركين في الشبكة قادرين على الوصول إلى بيانات الشظايا للتحقق المستقل. نقص توفر البيانات يضعف الأمان، لذا يُستخدم التحقق العيني وآليات الالتزام بالبيانات بشكل شائع.
نصيحة أمان للأموال: عند تنفيذ عمليات بين الشظايا أو عبر الشبكات، تأكد دائماً من نهائية المعاملة قبل تنفيذ العمليات ذات القيمة العالية.
يقوم Sharding بتقسيم المعالجة ضمن السلسلة الرئيسية الواحدة؛ وتظل الأمان وسلامة السجل النهائي تحت سيطرة الشبكة الأساسية. أما Sidechains فهي سلاسل بلوكشين مستقلة لها آليات أمان وإجماع خاصة بها وتتفاعل مع السلسلة الرئيسية عبر جسور—وتختلف حدود الأمان الخاصة بها.
أما "Partitioning" في قواعد البيانات فهو أقرب لإدارة هندسية—توزيع البيانات عبر الحواسيب دون القلق بشأن الإجماع أو النهائية على السلسلة. يجب أن يضمن Sharding في البلوكشين الثقة اللامركزية ونتائج موحدة بين الشظايا، مما يجعله أكثر تعقيداً من التقسيم التقليدي.
الاتجاه نحو "التوازي المعياري". تعمل السلسلة الرئيسية كطبقة بيانات وتسوية؛ توسع Rollups القدرة التنفيذية؛ وتوفر الشظايا—خاصة تلك التي تركز على Sharding البيانات وDanksharding—قنوات ذات عرض نطاق ترددي عالٍ لنشر البيانات.
بحلول 2025، تواصل شبكات البلوكشين الكبرى الاستثمار في تحسين توفر البيانات وهندسة التواصل بين الشظايا. يحافظ Ethereum على نهجه "المحوري حول Rollups" مع دعم Sharding لتوسعة البيانات؛ وتستكشف سلاسل أخرى Sharding للحالة وجدولة أكثر مرونة لتحقيق التوازن بين الأداء وتجربة المطور والأمان.
في جوهره، يقوم Sharding بتقسيم معالجة البلوكشين إلى مجموعات متوازية متعددة مع الحفاظ على اتساق السجل عبر التواصل بين الشظايا والتجميع الموحد. وهو يكمل Rollups: حيث توسع Rollups التنفيذ، ويوسع Sharding قدرة البيانات والتوازي. يتفاعل المستخدمون بشكل طبيعي بينما تتولى الشبكات توجيه المعاملات بين الشظايا في الخلفية؛ ويركز المطورون على الاستدعاءات بين الشظايا، النهائية، وتوفر البيانات. تشمل المخاطر الرئيسية التعقيد وحدود الأمان—وتشمل استراتيجيات التخفيف التعيين العشوائي، التحقق العيني للبيانات، وتوضيح إجراءات التأكيد للمستخدم.
يقوم Sharding بتقسيم شبكة البلوكشين إلى شظايا يتم معالجتها بشكل مستقل، بحيث تتولى كل شظية معالجة معاملات مختلفة بالتوازي—مما يزيد القدرة الاستيعابية بشكل كبير. بدلاً من قيام كل عقدة بالتحقق من جميع المعاملات، تتحقق كل عقدة فقط من جزء من البيانات—مما يخفف العبء ويسرّع المعالجة. تخيل الأمر كأنك تقسم صندوق دفع واحد إلى عدة صناديق: يمكن للعملاء الدفع في نفس الوقت بدلاً من الانتظار في الطابور.
لا—لن يتغير عنوان محفظتك بسبب Sharding. فهو تحسين تقني في البلوكشين لا يؤثر على عناوين المحافظ أو الأصول أو تجربة التحويل الخاصة بك. يظل عنوانك صالحاً؛ وتبقى عمليات الإيداع والسحب والتداول على Gate دون تغيير. بالنسبة للمستخدمين العاديين، تظل ترقيات Sharding غير مرئية—ستلاحظ فقط معاملات أسرع ورسوم أقل محتملة.
نعم—يقلل Sharding بشكل كبير من متطلبات تشغيل العُقد. سابقاً، كان على العُقد الكاملة تخزين والتحقق من جميع بيانات المعاملات—مما يتطلب موارد كبيرة من الأجهزة. مع Sharding، تحتاج العُقد العادية فقط للتحقق من شظية واحدة أو عدة شظايا؛ مما يقلل بشكل حاد من احتياجات التخزين والعبء الحسابي. وهذا يتيح لعدد أكبر من الأشخاص تشغيل العُقد بسهولة—مما يعزز اللامركزية الحقيقية للشبكة.
لا يوجد تأثير كبير—فالشظايا مستقلة نسبياً. إذا فشلت شظية واحدة، غالباً ما تتأثر فقط المعاملات ضمن تلك الشظية؛ وتستمر الشظايا الأخرى في العمل بشكل طبيعي. تتضمن الأنظمة الشذرية المصممة جيداً بروتوكولات تواصل قوية بين الشظايا وآليات استرداد للحفاظ على أمان الشبكة واستقرارها. لهذا السبب تخضع تقنية Sharding لاختبارات مكثفة قبل الإطلاق العام.
وضعت Beacon Chain في Ethereum 2.0 الأساس للهيكلية الشذرية مع بدء Danksharding. كما قامت Zilliqa وHarmony بنشر Sharding على شبكاتها الرئيسية. يدعم Gate التداول على هذه الشبكات الشذرية الرائدة—يمكنك تجربة سرعات المعاملات الأسرع ورسومها المنخفضة مباشرة.


