NeoFS – децентралізована система зберігання даних в блокчейн Neo

NeoFS – децентралізована система зберігання даних в блокчейн Neo

5

NeoFS, розроблене NeoSPCC, представляє собою значний прорив у сфері децентралізованих рішень для зберігання даних. Як неот`ємна частина екосистеми блокчейн Neo, NeoFS пропонує розподілений та децентралізований систему зберігання об`єктів, створену для задоволення зростаючого попиту на масштабоване і безпечне зберігання даних в галузі блокчейну.

Ця стаття надає всеосяжне оновлення стану NeoFS, аналізує його архітектуру, інтеграцію з розумними контрактами, роботу вузлів та наявні ресурси для розробників. Читачі можуть переходити до наступних розділів нижче: Архітектура; Інтеграція з розумними контрактами; Зберігання об`єктів; Ресурси для розробників; Живі додатки.

Архітектура NeoFS

В основі архітектури NeoFS знаходиться мережева карта, яку підтримують внутрішні вузли Inner Ring, які є валідаторами в бічному ланцюжку NeoFS. Ці вузли постійно моніторять стан зберігання NeoFS та оновлюють мережеву карту відповідно. Мережева карта є багатовимірним графом, де вузли категоризовано за атрибутами та значеннями. Ця організація є важливою для виконання конкретної функції розташування даних, яка використовується для визначення найбільш підходящих вузлів для зберігання або отримання даних залежно від потреб користувачів NeoFS.

Однією з помітних переваг цього процесу є відсутність потреби в централізованому зберіганні метаданих, яке часто використовується для відстеження об`єктів в інших розподілених системах. Це також зменшує потребу у балансуванні даних при приєднанні нових вузлів та виході їх з мережі, що часто зустрічається в системах на основі розподіленої хеш-таблиці (DHT). Контейнери та установки зберігання.

У NeoFS об`єктні дані організовані у контейнери, як аналогія до каталогів у файловій системі. Контейнери обслуговуються підмножиною вузлів зберігання, відповідно до вимог, визначених в супровідних політиках зберігання. Немає жорсткого обмеження на розмір об`єкта, оскільки великі об`єкти розбиваються на більші частини, які зв`язані і можуть бути повторно складені, коли потрібний початковий об`єкт.

Зберігання вузлів спільно гарантує дотримання політики зберігання та збереження даних від пошкоджень. Валідність перевіряється за допомогою двохетапної ігри аудитування, яка може довести з високою впевненістю, що вузол дійсно зберігає очікувані об`єкти. Бічний ланцюжок NeoFS.

Всі внутрішні операції для NeoFS, такі як банкінг та результати аудиту, реєструються на спеціальному бічному ланцюжку для зменшення навантаження на Neo N3 MainNet. Цей бічний ланцюжок керується внутрішніми вузлами Inner Ring за допомогою набору специфічних для бічного ланцюжка розумних контрактів.

Також на Neo N3 MainNet розгортається розумний контракт NeoFS entrypoint, який надає міст для пересування між гаманцям GAS між MainNet і обліковими записами бічного ланцюжка NeoFS. Ця упорядкованість також забезпечує анонімність внутрішніх вузлів та запобігає розкриттю інформації іншим мережевим вузлам. Протокольні шлюзи

Ще одна визначна особливість архітектури NeoFS - це використання протокольних шлюзів. Протокольні шлюзи HTTP та S3 дозволяють існуючим додаткам легко інтегруватися з даними, збереженими в NeoFS. Недавно NeoSPCC додав REST-шлюз з метою спростити процес включення веб-розробників.

Створення REST-шлюзу було полегшено завдяки підтримці WalletConnect у API, покращенням, що пропонує практичне рішення для підписування додаткових програм для розробників. Передбачається, що REST-шлюз замінить HTTP-шлюз як основний вибір для тих, хто будує додатки на основі NeoFS.

До цього часу команда вже надала два приклади додатків, які використовують протокольні шлюзи. Send.NeoFS використовує HTTP-шлюз для надання сервісу завантаження об`єктів, а Panel.NeoFS надає сервіс управління обліковим записом та створення контейнерів за допомогою REST-шлюзу. Інтеграція з розумними контрактами

Хоча NeoFS і є потужним самостійним інструментом, одним з найважливіших елементів NeoFS є його тісна інтеграція з мережею блокчейн Neo N3. Розумні контракти Neo можуть безпосередньо запитувати дані NeoFS, використовуючи вбудовану службу оракулів. Для автора контракту запит є таким же простим, як будь-який інший запит оракулу до зовнішнього веб-сайту. Це може стати шляхом до повністю децентралізованих додатків, або дозволити розробникам знизити витрати на операційну діяльність та забезпечити перевірку даних бізнесу.

У рамках хакатону Neo APAC команда Neo SPCC провела живий семінар, в якому показала, як додатки можуть інтегруватися з NeoFS по-різному. Стрічка в прямому ефірі починається з основних понять, включаючи створення контейнерів, перевірку балансу NeoFS GAS та завантаження об`єктів. Далі йде приклад розумного контракту Go, який використовує службу оракулів для запиту об`єкта, завантаженого раніше до NeoFS, та його переміщення до сховища контракту.

Варто зауважити, що вбудований оракул наразі може використовуватися лише для отримання даних з NeoFS, а не для їх завантаження до мережі. Це обмеження залишається відкритим для обговорення, підтримка PUT або POST має потенціал з`явитися в майбутньому, що може пропонувати розробникам більшу гнучкість.

Хоча демонстрація була спрямована на розробників Go, які будують контракти за допомогою компілятора NeoGo, основні принципи, продемонстровані в семінарі, можуть бути відтворені за допомогою будь-якої підтримуваної мови програмування.

Сховища даних

Дані, збережені в NeoFS, розміщуються в сховищах. Відповідний набір вузлів використовується для зберігання даних для певного контейнера, і це обчислюється детерміновано. Це досягається за допомогою фільтрації мережевої мапи за правилом розташування даних, яке надається користувачем під час створення контейнера. Наприклад, користувач може вказати бажане географічне розташування, тип зберігання або вимоги щодо місткості. Для рівноцінних вузлів, які відповідають умовам, правило розташування за замовчуванням встановлюється на більш низьке значення вартості.

Вузли зберігання також відповідають за контроль доступу до певного шматка даних. Користувачі можуть використовувати основний або розширений список контролю доступу, щоб визначити права на читання та запис за необхідності.

Вартість зберігання даних в NeoFS складається з двох частин. Є стандартний базовий дохід для всієї мережі, де вузли отримують винагороду за доступні об`єкти згідно з комітетом, який контролює базову ставку доходу. Крім того, вузол може встановити власну плату за аудит даних. Ці платежі сплачуються при створенні користувачем об`єкта сховища в контейнері, який обслуговується вузлом.

На момент публікації базова ставка доходу встановлена на рівні 0.0000001 GAS за ГБ за епоху. Одна епоха в даний час складає 240 блоків, або приблизно 3600 секунд.

Щоб надати користувачам підказки щодо розгортання вузла зберігання, Neo SPCC надала посібник із налаштування на основі Docker. Також стали доступні Ansible-ролі для різних типів вузлів NeoFS. Ansible - це інструмент автоматизації, який дозволяє легко розгортати та налаштовувати програмне забезпечення. Запропоновані плейбуки можна використовувати для роботи з протокольними шлюзами, Inner Ring та вузлами зберігання.

Команда досліджує додаткові спрощення, що мають на меті зробити роботу з вузлами зберігання більш доступною в майбутньому.

Ресурси для розробників

Сторінка GitHub Neo SPCC містить README, який слугує початковою сторінкою, вводить основні пропозиції команди та ресурси для розробників.

Там можна знайти посилання на технічну специфікацію NeoFS, в якій описано ключові концепції, а також на інструменти для розробників, такі як Go SDK, NeoFS API, всі-в-одному рішення для приватної мережі та NeoFS Gateways. Також доступне середовище розробки NeoFS, хоча воно призначене для команди розробки NeoFS, інтегратори NeoFS зазвичай краще використовують AIO-рішення.

Сторінку стану NeoFS підтримує команда, вона надає корисну інформацію для як MainNet, так і TestNet. Розробники знайдуть перевірку стану мережі з лічильниками епохи та контейнерів, ідентифікатори розумних контрактів NeoFS та кілька загальнодоступних шлюзів для тестування. На сторінці перераховані загальнодоступні вузли, включаючи вузли зберігання та вузли RPC як для мережі Neo, так і для бічного ланцюжка NeoFS. Розташування вузлів зберігання також наводяться на світовій карті.

Для отримання допомоги в один-на-один режимі різні члени команди Neo SPCC часто відвідують офіційний канал Neo Discord. Члени з роллю Builder (канал #builder) можуть звернутися для отримання підтримки в окремому каналі NeoFS.

Живі додатки

Декілька практичних додатків вже почали використовувати переваги NeoFS. Серед них є власні пропозиції від команди розробки та інтеграторів сторонніх розробників.

Хоча додатки Send та Panel демонструють корисність NeoFS звичайним користувачам, Neo SPCC підтримує різні інтеграції, зосереджуючись на розробниках.

Надані версії популярних інструментів для хмарних резервних копій та копіювання файлів, таких як restic і rclone, мають підтримку NeoFS, а команда також розміщує свій офіційний веб-сайт і піддомен neo.org NeoFS на NeoFS. Весь вміст веб-сайту зберігається в контейнері NeoFS, який надається через HTTP-шлюз.

Команда також використовує NeoFS для зберігання звітів Continuous Integration (CI), які автоматично завантажуються за допомогою дій GitHub та використовуються для подальшого тестування інфраструктури. Щоб допомогти іншим командам використовувати NeoFS для схожих цілей, було створено репозиторій, який надає приклад дії GitHub для передачі даних в NeoFS.

Продукційні додатки

Декілька перших користувачів почали використовувати NeoFS в реальному світі. Більшість з цих інтеграцій стосуються здатності зберігання даних. Ігри, такі як World of Elements та Pixudi, почали використовувати NeoFS для розміщення та розподілу активів гри, а різні колекції NFT вирішили зберігати дані зображень в NeoFS, що було сприяно старанням майданчиків, таких як SkyHut та MegaOasis, в полегшенні розгортання.

Найважливішою інтеграцією NeoFS є Greenfinch, яка надає удобний інтерфейс у стилі Dropbox для платформи. Інструмент навчає користувачів процесу завантаження балансу NeoFS, створення контейнерів, завантаження об`єктів та спілкування широкодоступними посиланнями через HTTP-шлюз.

Через ці додатки Neo SPCC не тільки перевіряє практичне використання NeoFS, але й демонструє широкий спектр можливостей, які він пропонує для різних галузей, від хостингу вмісту до громадянського забезпечення, гри та цифрового мистецтва. Ці живі додатки слугують як реальні приклади того, як децентралізоване зберігання NeoFS може бути ефективно використане в різних галузях діяльності, сприяючи більш широкому прийняттю та інноваційним сценаріям в майбутньому.

Прибыльный маневр крипто-кита: 8 миллионов долларов на токене WIF
Прибыльный маневр крипто-кита: 8 миллионов долларов на токене WIF
Крипто-кит заработал $8 млн на токене $WIF, купив 9.8M за $15.05M и продав за $23.06M. Недавно он withdrew 6.9M $WIF с Binance, оставив рынок в ожидании следующих действий. 🚀💰📈🔍
Просмотреть
Litecoin Core v0.21.4: Обновления безопасности и ожидания ETF на LTC
Litecoin Core v0.21.4: Обновления безопасности и ожидания ETF на LTC
Litecoin Core v0.21.4 выпущен с критическими обновлениями безопасности. Это улучшает стабильность сети на фоне заявки на ETF от Canary Capital, открывающей двери для институциональных инвесторов. 🚀🔒💼
Просмотреть
Криптовалютные киты влияют на цену $TRB после внесения $12 миллионов на OKX
Криптовалютные киты влияют на цену $TRB после внесения $12 миллионов на OKX
Крупные держатели переместили $12 млн в $TRB на OKX, что вызывает колебания цены и неопределенность на рынке. Трейдеры ожидают, как это повлияет на дальнейшие движения. 🚀💰📉
Просмотреть
Dogecoin (DOGE) вырос на 30% за неделю: причины и влияние событий на рынке мем-криптовалют
Dogecoin (DOGE) вырос на 30% за неделю: причины и влияние событий на рынке мем-криптовалют
Dogecoin (DOGE) вырос на 30% за неделю, достигнув цены $0,21605. Причиной роста стало приобретение Dogecoin Holdings. Мем-криптовалюты TON также показывают высокие результаты. 🚀💰🐶
Просмотреть