Первый предварительный релиз MultiChain 2.0

Исходный узел: 1740447

Вывод MultiChain потоков на совершенно новый уровень

Сегодня мы рады поделиться первым предварительным выпуском MultiChain 2.0, который реализует одну основную часть Дорожная карта MultiChain 2.0 опубликовано в начале этого года - более богатая модель данных для потоков.

Потоки оказались популярной функцией в MultiChain, обеспечивая естественную абстракцию для хранения и извлечения данных общего назначения в блокчейне. Цепочка MultiChain может содержать любое количество именованных потоков, каждый из которых может иметь индивидуальные права на запись или быть открытыми для записи всеми. В MultiChain 1.0 каждый элемент потока имеет одного или нескольких издателей (которые его подписывают), необязательный ключ для эффективного извлечения, полезную нагрузку двоичных данных размером до 64 МБ и метку времени, полученную из блока, в который он встроен.

В этом предварительном выпуске MultiChain 2.0 под номером alpha 1 функциональность потоков выводится на совершенно новый уровень:

  • Элементы JSON, В качестве необязательной альтернативы необработанным двоичным данным элементы потока теперь могут содержать любую структуру JSON, которая хранится в цепочке блоков в эффективном УБЖСОН Формат сериализации. Поскольку MultiChain API уже использует JSON повсеместно, эти структуры JSON можно читать и записывать естественным и очевидным способом.
  • Текстовые элементы, Элементы потока могут также содержать текст Unicode, эффективно сохраненный в блокчейне в кодировке UTF-8. Текстовые элементы также могут быть прочитаны и записаны непосредственно через MultiChain API.
  • Несколько ключей, Каждый элемент потока теперь может иметь несколько ключей вместо одного. Это позволяет гораздо более гибкие схемы для маркировки, индексации и поиска.
  • Несколько позиций за транзакцию, Несколько элементов теперь могут быть записаны в один поток за одну атомарную транзакцию. Это позволяет нескольким элементам потока: (a) естественным образом группироваться под одним идентификатором транзакции, (b) занимать меньше места в блокчейне и (c) требовать меньше проверок подписи.
  • JSON слияние, Появились новые API для объединения элементов в потоке с определенным ключом или издателем. Первый тип предлагаемой сводки - это объединение всех объектов JSON в этих элементах. Результатом слияния является новый объект, содержащий все ключи JSON от отдельных объектов, где значение, соответствующее каждому ключу JSON, берется из последнего элемента, в котором этот ключ появляется. Слияние может быть настроено различными способами, например, для контроля рекурсивного слияния подобъектов и включения нулевых значений.

Цель слияния JSON состоит в том, чтобы позволить потоку служить в качестве гибкой базы данных для приложений, построенных на MultiChain, причем ключ потока или издатель (в зависимости от ситуации) выступают в качестве «первичного ключа» для каждой записи базы данных. Преимущество по сравнению с обычной базой данных состоит в том, что поток содержит полностью подписанную и помеченную временем историю того, как каждая запись изменялась с течением времени, а блокчейн неизменно защищает эту историю благодаря многопартийному консенсусу.

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

Помимо потоковых элементов, MultiChain 2.0 alpha 1 также поддерживает JSON и текст в необработанных метаданных транзакций в качестве альтернативы необработанным двоичным данным, поддерживаемым в MultiChain 1.0.

Наконец, этот выпуск позволяет настраиваемым полям выпущенных активов и созданных потоков содержать любой объект JSON вместо текстовых пар ключ / значение, предлагаемых в MultiChain 1.0. Для прямой совместимости MultiChain 1.0.2 включает в себя возможность чтения (но не записи) этих более богатых активов и потоковых настраиваемых полей.

Чтобы опробовать эти новые функции, посетите Предварительные выпуски MultiChain 2.0 страница и загрузка альфа 1. На странице также представлена ​​подробная документация о новых API и доступных параметрах.

Мы бы с удовольствием услышать ваш отзыв на этой новой функциональности. И, конечно же, мы уже усердно работаем над следующим основным набором улучшений для MultiChain 2.0, выпуск которого запланирован на начало следующего года.

Пожалуйста, оставьте любые комментарии на LinkedIn.

Отметка времени:

Больше от многоцепочечного