ในช่วงสองปีที่ผ่านมา ความคลั่งไคล้ NFT ได้แพร่กระจายไปทั่วโลก การสร้าง NFT บนบล็อกเชนต่างๆ กลายเป็นเรื่องธรรมดาไปแล้ว อย่างไรก็ตาม การจัดเก็บสินทรัพย์ NFT เหล่านี้มักถูกมองข้าม IPFS หรือที่เรียกว่า Interplanetary File System ได้กลายเป็นมาตรฐานทั่วไปสำหรับการจัดเก็บทรัพย์สิน NFT
รายละเอียดที่มักถูกมองข้ามคือ IPFS เองไม่ใช่เครือข่ายการจัดเก็บข้อมูล เป็นโปรโตคอลการกำหนดเส้นทางข้อมูลและการขนส่งมากกว่า เครือข่าย IPFS คือชุดของโหนดที่แลกเปลี่ยนข้อมูล รายการไฟล์สามารถ "ปักหมุด" ไว้ที่ IPFS DHT สาธารณะ (ตารางแฮชแบบกระจาย) ทำให้โหนดอื่นๆ บนเครือข่ายทราบว่าโฮสต์ใดจัดเก็บไฟล์ใด
ในระบบนิเวศ IPFS มีเกตเวย์สาธารณะมากมาย เกตเวย์เหล่านี้บางส่วนอนุญาตให้คุณอัปโหลดไฟล์ได้ แต่โดยปกติแล้วจะไม่มีการรับประกันว่าไฟล์ของคุณจะยังคงออนไลน์อยู่ เว้นแต่ไฟล์จะถูกตรึงโดยโหนด IPFS อย่างชัดเจน ไฟล์จะถูกลบในครั้งต่อไปที่กระบวนการรวบรวมขยะทำงาน สิ่งนี้ทำให้เกิดปัญหาบางอย่างกับที่เก็บข้อมูล NFT
เพื่อช่วยในเรื่องนี้ ผู้ให้บริการปักหมุดที่แตกต่างกันสองสามรายได้ถือกำเนิดขึ้น ผู้ให้บริการเหล่านี้อนุญาตให้คุณอัปโหลดไฟล์ได้โดยมีค่าใช้จ่าย และพวกเขาเสนอให้ปักหมุดให้คุณ
อย่างไรก็ตาม สิ่งนี้ทำให้เกิดคำถามใหม่ว่าจริง ๆ แล้วไฟล์เหล่านี้ถูกเก็บไว้ที่ไหน? นักพัฒนาใช้เวลามากในการค้นคว้าปัญหานี้ และจากการวิเคราะห์ไฟล์เกือบ 1 พันล้านไฟล์ พวกเขาพบปัญหาต่อไปนี้:
1. ผู้ให้บริการการปักหมุด IPFS ส่วนใหญ่ใช้ Amazon S3 และบริการพื้นที่จัดเก็บวัตถุแบบรวมศูนย์อื่นๆ ในเบื้องหลัง "ที่เก็บข้อมูล" ของเซิร์ฟเวอร์ IPFS สามารถชี้ไปที่ S3 ได้โดยใช้ปลั๊กอินอย่างง่าย
2. เนื่องจากฉันใช้ AWS S3 ผู้ให้บริการจึงเรียกเก็บเงินสูงกว่า $150 ต่อ TB!
3. หาก AWS S3 ล้มเหลว เซิร์ฟเวอร์ IPFS ของคุณจะล้มเหลวด้วย ลิงก์ IPFS CID ของคุณจะไม่สามารถเข้าถึงได้อีกต่อไป เว้นแต่ข้อมูลจะถูกแคชไว้ที่ใดที่หนึ่ง สิ่งนี้สามารถนำไปสู่ปัญหาเช่น "พรมดึง" กับ NFT
4. ระบบที่มีการกำหนดค่านี้ยังแนะนำวิธีพิเศษในการเข้าถึง AWS S3 หากเราพึ่งพา AWS มากขนาดนี้ ทำไมไม่ใช้ HTTP URL ธรรมดาๆ ล่ะ
นักพัฒนาได้คิดวิธีแก้ปัญหาตามรายการด้านบน และจะเป็นประโยชน์ต่อระบบนิเวศของการเข้ารหัสลับทั้งหมด พูดง่ายๆ ก็คือ สร้าง Web3 ด้วย Web3
ไฟล์ทั้งหมดที่ปักหมุดไว้กับ IPFS โดยใช้ Filebase จะถูกจัดเก็บไว้ใน Sia ซึ่งเป็นหนึ่งในเครือข่ายการจัดเก็บข้อมูลแบบกระจายศูนย์ชั้นนำ สิ่งนี้สร้างสภาพแวดล้อมที่เลเยอร์การจัดเก็บข้อมูลของโหนด IPFS มีความพร้อมใช้งานสูง และที่สำคัญที่สุดคือมีความซ้ำซ้อนทางภูมิศาสตร์ เมื่อใช้เครือข่ายแบบกระจายศูนย์สำหรับการจัดเก็บ เราจะไม่พึ่งพาผู้ให้บริการระบบคลาวด์สำหรับปริมาณพื้นที่จัดเก็บแบบบล็อก (AWS EBS) หรือถังเก็บข้อมูลแบบรวมศูนย์ (AWS S3) อีกต่อไป
จะปักหมุดข้อมูลบน IPFS ได้อย่างไร? ง่าย ๆ คุณมีสองทางเลือก:
1. ใช้อินเทอร์เฟซแบบลากและวางอย่างง่ายในแดชบอร์ด Filebase
2. ใช้ API ที่เข้ากันได้กับ S3 อย่างง่าย
เมื่อคุณอัปโหลดไฟล์ IPFS CID (ตัวระบุเนื้อหา) จะถูกส่งกลับ จากนั้นคุณสามารถใช้ CID นี้เพื่อเข้าถึงข้อมูลของคุณจากโหนด IPFS ของคุณเองหรือเกตเวย์ IPFS อื่นๆ บนอินเทอร์เน็ตสาธารณะ CID จะแสดงอย่างชัดเจนในแดชบอร์ด และยังสามารถเรียกค้นข้อมูลโดยทางโปรแกรมได้อีกด้วย
หลังจากเปิดบัคเก็ต IPFS จากแดชบอร์ดแล้ว จะมีคอลัมน์ CID คุณสามารถคลิกที่ CID ใดก็ได้ และ CID นั้นจะถูกคัดลอกไปยังคลิปบอร์ดโดยอัตโนมัติ
หน้าภาพรวมของวัตถุจะแสดง CID พร้อมกับรายละเอียดอื่นๆ ให้คุณด้วย:
หากคุณใช้ API ที่เข้ากันได้กับ S3 CID จะถูกส่งกลับในการตอบกลับการเรียก PutObject ตัวอย่างเช่น ถ้าเราเรียกใช้คำสั่ง AWS CLI ต่อไปนี้:
คำตอบแสดงอยู่ด้านล่าง เพื่อความสะดวก ส่วนหัวของการตอบสนองที่สอดคล้องกันจะถูกเน้น
เรายังสามารถเรียก HeadObject API ได้ตลอดเวลาเพื่อรับ CID:
เมื่อฟังก์ชัน IPFS พร้อมใช้งานแล้ว นักพัฒนาวางแผนที่จะสร้างการผสานรวมนี้ต่อไป!
