فناوری بلاک چین که در سال ۲۰۰۸ همزمان با ظهور بیت کوین به جمع فناوریهای پرسرعت دیجیتالی پیوست، خیلی زود بهعنوان ابزاری برای ذخیره و مدیریت داده، جای خود را در فضای اینترنت و ارتباطات باز کرد. اما ذخیره دادهها در شبکه بلاک چین چه تفاوتی با ذخیره دادهها روی پایگاه داده سنتی دارد؟ شان رِی (Shaan Ray)، مشاور و متخصص در زمینه بلاک چین، طی مقالهای که در وبسایت مدیوم منتشر کرده است، تفاوتهای بنیادین بلاک چین و پایگاه داده سنتی را بررسی کرده و نحوه طراحی و عملکرد هرکدام از این پایگاههای داده را توضیح میدهد.
پایگاه داده سنتی
پایگاههای داده سنتی از معماری شبکه کلاینت-سِرور (Client-server) استفاده میکنند. در این معماری، کاربر (که تحت عنوان کلاینت یا همان مشتری شناخته میشود) در صورت کسب مجوز میتواند دادههایی را که در یک سرور (کامپیوتر) متمرکز ذخیره شدهاند تغییر داده و اصلاح کند. در این بین، کنترل پایگاه داده در دست مرجعی تعیینشده باقی میماند که هویت و اعتبار مشتری را نیز پیش از دسترسی به پایگاه داده راستیآزمایی میکند. این مرجعِ تعیینشده، وظیفه مدیریت پایگاه داده را بر عهده دارد. بنابراین، درصورتیکه امنیت مرجع به خطر بیفتد، احتمال تغییر یا حتی حذف دادهها وجود خواهد داشت.

برای درک بهتر این مفهوم میتوان وبسایت ویکیپدیا را مثال زد. در ویکیپدیا که یک دانشنامه جامع است، هر فرد با داشتن حساب کاربری میتواند مقالات جدید اضافه کند یا مقالهای را برای بهبود ویرایش کند. با این حال، کنترل نهایی دادههای ویکیپدیا در دست یک نهاد متمرکز است.
پایگاههای داده بلاک چینی
پایگاههای داده بلاک چینی از چندین نود (node) یا کامپیوتر تشکیل شدهاند. نودهای شبکه کامپیوترهایی هستند که در مدیریت پایگاه داده بلاک چین مشارکت میکنند: تمام نودها، دادههای جدید را بررسی کرده و میتوانند این دادهها را وارد پایگاه داده مبتنی بر بلاک چین کنند. برای اینکه داده جدیدی به بلاک چین اضافه شود، اکثریت نودها باید به اتفاقنظر برسند. این سازوکار اجماع، تضمینکننده امنیت شبکه است و دستکاری دادهها را دشوار میکند.
در بلاک چین بیت کوین، اجماع و توافق آرا با استفاده از روش اثبات کار (Proof of Work) یا همان استخراج به دست میآید. این روش شامل حلکردن معماهای پیچیده هشینگ (hashing) میشود که در ضمن این فرایند، دادهها بهصورت رمزنگاریشده به یکدیگر متصل شده و تغییر یا حذف آنها عملاً غیرممکن میشود. همچنین برخی دیگر از بلاک چینها، همچون اتریوم از روش اثبات سهام (Proof of stake) بهعنوان مکانیسم اجماع خود استفاده میکنند.
بیشتر بخوانید: تفاوت بیت کوین و بلاک چین چیست؟

یکپارچگی و شفافیت
اصلیترین چیزی که فناوری بلاک چین را از فناوری پایگاه داده سنتی متمایز میکند، قابلیت اعتبارسنجی عمومی دادهها است که از طریق یکپارچگی و شفافیت شبکه امکانپذیر شده است.
یکپارچگی به این معناست که هر کاربر میتواند مطمئن باشد دادههایی که بازیابی میکند، از زمان ثبت تاکنون، دستنخورده و بدون تغییر باقی ماندهاند. شفافیت بلاک چین نیز باعث میشود تمام کاربران بتوانند بر نحوه پیوستن بلاکها به بلاک چین در طول زمان نظارت داشته باشند.
کراد در مقابل خواندن و نوشتن
در یک پایگاه داده سنتی، کلاینت میتواند چهار عملکرد مختلف را روی دادهها اجرا کند: ایجاد، خواندن، بهروزرسانی و حذف. این چهار عملکرد اساسی کراد (CRUD) نامیده میشوند؛ واژهای که از حروف ابتدایی چهار واژه انگلیسی ایجاد (Create)، خواندن (Read)، بهروزرسانی (Update) و حذف (Delete) تشکیل شده است.
با این حال، ساختار بلاک چین بهگونهای طراحی شده است که فقط قابلیت اضافهکردن داده را به کاربر میدهد. درواقع، کاربر بلاک چین فقط میتواند دادههای بیشتری را در قالب بلاکها به بلاک چین اضافه کند. تمام دادههای قبلی بهطور دائمی ذخیره شدهاند و قابلتغییر نیستند. بنابراین، تنها عملیات قابلاجرا در مورد دادههای بلاک چین، «خواندن» و «نوشتن» است. عملیات خواندن بهمعنی درخواست و بازیابی دادهها از بلاک چین و عملیات نوشتن بهمعنی اضافهکردن دادههای بیشتر به بلاک چین است.
اعتبارسنجی و نوشتن
بلاک چین امکان انجام دو عملیات اساسی را در ارتباط با تراکنشها فراهم میکند: اعتبارسنجی یک تراکنش و نوشتن یک تراکنش جدید. تراکنش، عملیاتی است که وضعیت دادههای موجود در بلاک چین را به وضعیتی جدید تغییر میدهد. بهبیان دیگر تراکنشها موجب حذف یا تغییر دادههای قبلی نمیشوند؛ بلکه وضعیت آنها را تغییر میدهند. مثلاً یک تراکنش جدید میتواند وضعیت یک تراکنش ورودی در گذشته را از وضعیت «خرجنشده» به «خرجشده» تغییر دهد.
برای درک بهتر این موضوع، یک تراکنش عملی را تصور کنید. بهعنوان مثال اگر در بلاک چین ثبت شده باشد که کیف پول بیت کوین علی حاوی ۱ میلیون بیت کوین است، این رقم برای همیشه در بلاک چین ذخیره میشود. وقتی علی ۲۰۰,۰۰۰ بیت کوین خرج کند، این تراکنش روی بلاک چین ثبت شده و موجودی او را به ۸۰۰,۰۰۰ بیت کوین میرساند. با این حال، از آنجا که دادهها فقط به بلاک چین اضافه میشوند و تغییری در دادههای قدیمی ایجاد نمیشود، رقم موجودی علی که پیش از این تراکنش ۱ میلیون بیت کوین بود، بهصورت دائمی در بلاک چین باقی میماند و هر فردی که بخواهد بر دادههای قدیمی نظارت داشته باشد، به این سوابق دسترسی خواهد داشت. به همین دلیل، بلاک چین یک دفترکل تغییرناپذیر و توزیعشده است.

کنترل غیرمتمرکز، اصلیترین تفاوت بلاک چین و پایگاه داده سنتی
کنترل غیرمتمرکز، خطرها و آسیبهای مربوط به کنترل متمرکز را برطرف میکند. هر فردی که به یک پایگاه داده متمرکز دسترسی کافی داشته باشد، میتواند دادههای موجود در آن را خدشهدار کند یا بهطور کامل آنها را از بین ببرد. بنابراین، کاربران پایگاه داده متمرکز باید به زیرساختهای امنیتی مدیریت و حاکمیت پایگاه داده کاملاً اعتماد داشته باشند.
فناوری بلاک چین بهمنظور رفع این مشکل، با استفاده از ذخیرهسازی غیرمتمرکز داده، امنیت را در ساختار خود نهادینه کرده است.
با این همه، فناوری بلاک چین برای ثبت انواع خاصی از داده و پایگاه داده سنتی برای انواع دیگری از دادهها مناسب هستند. هر سازمانی، پیش از انتخاب پایگاه داده موردنظر خود، باید کاملاً از نیازها و انتظارات خود آگاه باشد و هدف مطلوب خود را با توجه به نقاط ضعف و قوت هر کدام از انواع پایگاه داده ارزیابی کند.
برای بیتکوین کور باید ۲۵۰ گیگ داده دانلود کنیم
313 گیک تا امروز
فرقشون با تورنت چیه؟
سلام .یعنی بلاکچین هیچ حجمی از کامپیوتر مارو اشغال نیمکنه.اگر اینطور هست پست اطلاعات که خوب حجم دارن،از چه فضایی استفاده میکنن.لطفا جواب بدین خیلی وقته ذهنمو مشغول کرده
به نظر بنده اطلاعات در پایگاه های شبکه کنونی که هست ذخیره میشه و در کلاینت ها الگویی از کلید ها جهت بررسی صحت و درستی اطلاعات که دستکاری نشده باشند ذخیره میشود . از طریق این کلیدها میتوان درستی اطلاعات را متوجه شد .
سلام
قبلا توی دیتابیسهای مبتنی بر سرور مرکزی یه حجم مشخصی وجو داشت و میتونستیم مقدار مشخصی از فایلها رو روی اون ذخیره کنیم
حالا سوال من اینجاست که توی پایگاههای داده بلاک چین روی هر کامپیوتر عضو شبکه چه مقدار از اطلاعات ذخیره میشه و اگر اون کامپیوتر حذف بشه یا آفلاین باشه این اطلاعات چطور قابل دسترسی؟
البته نمیدونم سوالم درست مطرح شد یا نه ولی اگه توضیح بفرمایید ممنون میشم؟
به نظر من بی نهایت !!
چون اطلاعات در شبکه ذخیره میشه و نه در کامپیوتر
از آنجایی که هر نود تو شبکه بلاکچین باید همه اطلاعات رو داشته باشه بنابراین پیاده سازی بلاکچین در دیتاهای حجم بالا ممکن نیست فعلا
مثلا همین خبر تلگرام تحت بلاکچین، که شایعه ای بیش نیست در وب فارسی
چون امکان نداره پتابایتها دیتای تلگرام رو نودها یکجا داشته باشند
مگر اینکه در آینده الگوریتمهای ذخیره سازی بلاکچین پیشرفت داشته باشند و نیاز به ذخیره همه دیتا واسه نودها یا همون گره ها نباشه