Primeira versão de pré-visualização do MultiChain 2.0

Nó Fonte: 1740447

Levando as transmissões MultiChain a um nível totalmente novo

Hoje temos o prazer de compartilhar a primeira versão de visualização do MultiChain 2.0, que implementa uma parte importante do Roteiro do MultiChain 2.0 publicado no início deste ano - um modelo de dados mais rico para fluxos.

Streams provou ser um recurso popular no MultiChain, fornecendo uma abstração natural para armazenamento e recuperação de dados de propósito geral em um blockchain. Uma cadeia MultiChain pode conter qualquer número de fluxos nomeados, cada um dos quais pode ter permissões de gravação individuais ou ser aberto para gravação por todos. No MultiChain 1.0, cada item de fluxo tem um ou mais editores (que o assinam), uma chave opcional para recuperação eficiente, uma carga útil de dados binários de até 64 MB de tamanho e um carimbo de data / hora derivado do bloco no qual está embutido.

Esta versão prévia do MultiChain 2.0, numerada alfa 1, leva a funcionalidade de streams a um nível totalmente novo:

  • Itens JSON. Como uma alternativa opcional aos dados binários brutos, os itens de fluxo agora podem conter qualquer estrutura JSON, que é armazenada no blockchain no eficiente UBJSON formato de serialização. Como a API MultiChain já usa JSON, essas estruturas JSON podem ser lidas e escritas de maneira natural e óbvia.
  • Itens de texto. Os itens de fluxo também podem conter texto Unicode, armazenado de forma eficiente no blockchain na codificação UTF-8. Os itens de texto também podem ser lidos e escritos diretamente por meio da API MultiChain.
  • Chaves múltiplas. Cada item de fluxo agora pode ter várias chaves em vez de apenas uma. Isso permite esquemas muito mais flexíveis de marcação, indexação e recuperação.
  • Vários itens por transação. Vários itens agora podem ser gravados no mesmo fluxo em uma única transação atômica. Isso permite que vários itens de fluxo: (a) sejam naturalmente agrupados em um único ID de transação, (b) ocupem menos espaço no blockchain e (c) exijam menos verificações de assinatura.
  • Mesclagem JSON. Existem novas APIs para resumir os itens em um fluxo com uma chave ou editor específico. O primeiro tipo de resumo oferecido é uma fusão de todos os objetos JSON nesses itens. O resultado da mesclagem é um novo objeto contendo todas as chaves JSON dos objetos individuais, onde o valor correspondente a cada chave JSON é obtido do último item em que essa chave aparece. A mesclagem pode ser personalizada de várias maneiras, por exemplo, para controlar se os sub-objetos são mesclados recursivamente e se valores nulos devem ser incluídos.

O objetivo da fusão JSON é permitir que um fluxo sirva como um banco de dados flexível para aplicativos construídos no MultiChain, com a chave de fluxo ou editor (conforme apropriado) atuando como uma “chave primária” para cada entrada do banco de dados. A vantagem sobre um banco de dados regular é que o fluxo contém um histórico totalmente assinado e com carimbo de data / hora de como cada entrada foi alterada ao longo do tempo, com o blockchain protegendo esse histórico imutavelmente por meio de consenso multipartidário.

Como nas versões anteriores, cada nó pode decidir livremente em quais fluxos se inscrever, ou pode se inscrever em todos os fluxos automaticamente. Se um nó for inscrito em um fluxo, ele indexa o conteúdo desse fluxo em tempo real, permitindo a recuperação eficiente por editor, chave, bloco, carimbo de data / hora ou posição - e agora o resumo por chave ou editor.

Além de itens de fluxo, MultiChain 2.0 alpha 1 também suporta JSON e texto em metadados de transação brutos, como alternativas para os dados binários brutos suportados no MultiChain 1.0.

Finalmente, esta versão permite que os campos personalizados de ativos emitidos e fluxos criados contenham qualquer objeto JSON, em vez dos pares chave / valor somente texto oferecidos no MultiChain 1.0. Para compatibilidade com versões futuras, o MultiChain 1.0.2 inclui a capacidade de ler (mas não gravar) esses ativos mais ricos e campos personalizados de fluxo.

Para experimentar esses novos recursos, visite o Versões de pré-visualização do MultiChain 2.0 página e download alpha 1. A página também fornece documentação detalhada sobre as novas APIs e parâmetros disponíveis.

Nós adoraríamos ouça seu feedback nesta nova funcionalidade. E é claro que já estamos trabalhando arduamente no próximo grande conjunto de melhorias para o MultiChain 2.0, com lançamento programado para o início do próximo ano.

Por favor, poste comentários no LinkedIn.

Carimbo de hora:

Mais de Multichain