Сбор личных данных Hyperledger Fabric для распространения больших файлов - PullRequest
0 голосов
/ 12 апреля 2019

В настоящее время мы исследуем Hyperledger Fabric, и из документа мы знаем, что для некоторых подгрупп организаций может быть организован сбор личных данных.В каждой из этих организаций будет частная БД состояния (иначе БД стороны), и, насколько я понимаю, побочная БД похожа на базу данных нормального состояния, которая обычно принимает CouchDB.

Одним из наших основных требований являетсячто мы должны распространять файлы (например, PDF) среди некоторого подмножества пиров.Каждый файл должен распространяться и храниться на связанных узлах, поэтому централизованное хранилище, такое как AWS S3 или другое облачное хранилище / серверное хранилище, неприемлемо.Поскольку файл может быть большим, физические копии должны храниться и распространяться вне цепочки.Блок транзакции может хранить только хэш этих документов.

Моя идея заключается в том, что мы можем использовать сбор личных данных и стороннюю БД.Физические файлы могут храниться в боковой базе данных (может быть, в форме base64string?) И могут распространяться через протокол Gossip (протокол P2P), который является функцией в Hyperledger Fabric.Хеш документа вместе с другими деталями транзакции может храниться в блоке, как обычно.Поскольку все они являются собственными возможностями Hyperledger Fabric, я ожидаю, что передача файлов по протоколу Gossip и создание соответствующего блока будут синхронизированы.

Мой вопрос:

  1. Реально ли это для выполнения требования?(Распределение файлов по разным пирам при создании нового блока) Я чувствую, что это хак.
  2. Это хороший способ / практика для достижения того, чего мы хотим?Я проводил исследования, но не могу найти какую-либо реализацию, похожую на эту.

В большинстве учебных пособий, которые я обнаружил в Интернете, предполагается, что файлы могут храниться в одном централизованном хранилище, например в облаке, или на каком-либо сервере, в то время как наше требование также требует распределения файлов.Является ли моя идея, описанная выше, приемлемой и осуществимой?Мы очень плохо знакомы с Blockchain, и любые советы приветствуются!

Ответы [ 2 ]

1 голос
/ 12 апреля 2019

Возможен ли этот способ для достижения требования? (Распределение файлов по разным пирам при создании нового блока) Я чувствую, что он взломан.

Таким образом, рабочий процесс распространения личных данных заключается в том, что заказчик связывает транзакцию личных данных, содержащую только хеш, для проверки данных в новом блоке. Таким образом, вам не нужно делать обходной путь для этого, так как частные данные предоставляют это по умолчанию. Сами данные распределяются между авторизованными партнерами по протоколу распространения данных о сплетнях.

Это хороший способ / практика для достижения того, что мы хотим? Я проводил исследования, но не могу найти какую-либо реализацию, похожую на эту.

Да и нет. Жаль так говорить. Но это зависит от ваших размеров и количества файлов. Ткань способна обеспечить высокую пропускную способность. Я бы проверил вещи и посмотрел, соответствует ли это моим требованиям.

Другой подход заключается в обходе и использовании IPFS (файловая система p2p). Вы можете прочитать больше об этом подходе здесь здесь

И здесь - статья, в которой обсуждается хранение «больших файлов» в цепочке. Может быть, это дает некоторое конструктивное понимание. Но имейте в виду, что это старая статья.

0 голосов
/ 13 апреля 2019

Извлечение IBM Blockchain Document Store , это реализация хранения любого документа (в формате PDF или иным образом) как в цепочке, так и вне ее.Это было сделано.

И хотя реализация не является общедоступной, существует обширная документация по ее использованию, возможно, можно распространять некоторую информацию из нее

...