O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Weave Data Management

Agora que você entende os principais componentes do Weave, vamos dar uma olhada em como algumas de suas funcionalidades são tratadas em alto nível.

Quase todas as funcionalidades do ecossistema Nest para operação cotidiana são mapeadas em recursos e características como parte do esquema Weave. O Gerenciamento de Dados perfil gerencia todos os pedidos de traços usando um modelo publicação-assinatura. Estes pedidos são mensagens específicas para o perfil de gerenciamento de dados.

Nesse tipo de modelo, um editor anuncia características (dados a serem observados) e um assinante reage às mudanças nessas características publicadas (dados sendo observados). Esta função é chamada de gestão de traço em tempo real.

O perfil de gerenciamento de dados é o carro-chefe do Weave e é geralmente conhecido como Weave Data Management (WDM).

solicitações de

Os pedidos são um elemento-chave da gestão característica em tempo real do WDM. Os pedidos são pedidos padrão para a ação de uma característica, com uma resposta esperada. Estes são diferentes do que um traço comandos em que eles não são e não podem ser definidas no esquema e não são específicos para qualquer característica.

Existem três tipos de solicitações padrão:

  • Notificar consulta Standard que informa um assinante do estado de uma propriedade característica, ou de um evento específico relacionado com essa característica.
  • Atualização consulta Standard para alterar o estado de uma propriedade característica.
  • Ver consulta Standard para exibir as propriedades de um traço.

Funções de protocolo

Existem dois tipos de funções de protocolo WDM: editor e assinante. Essas funções são atribuídas no nível do traço.

Editor

O papel WDM editora produz e serve versionadas instâncias de um ou mais esquemas para um ou mais assinantes, e envia notificações sobre uma alteração no esquema para assinantes interessados. Essas notificações são a notificar solicitações padrão.

Por exemplo, suponha traço A é publicada por recurso 1 e subscrito por Resource 2. Como mostrado na Figura 1, se o traço A altera:

  1. WDM envia um pedido notificar da Resource 1 a todos os assinantes de Trait A, informando-os da mudança.
  2. Cada assinante atualiza sua instância do Traço A de acordo.
Solicitação de notificação do editor WDM
Figura 1 - Solicitações do editor WDM

O mesmo acontece com outras características do esquema. Por exemplo, se o Recurso 2 publica o Traço B, o Recurso 1 se inscreve no Traço B e as mudanças no Traço B:

  1. WDM envia um pedido notificar de Recurso 2 para todos os assinantes de Trait B, informando-os da mudança.
  2. Cada assinante atualiza sua instância do Traço B de acordo.

Assinante

Os pontos de vista e consome papel WDM assinantes versionadas instâncias de um ou esquemas mais externamente publicados. Ele pode mudar a instância de versão de um esquema publicado com uma solicitação de atualização, ou emitir um comando específico do aplicativo.

Por exemplo, suponha que dois dos Recursos quer mudar Trait A, que é uma publicação de recursos 1. Como mostrado na Figura 2, para alterar Trait A:

  1. WDM envia uma solicitação de atualização de Recursos 2 a Resource 1, para solicitar uma alteração para Trait A.
  2. O traço A no recurso 1 é alterado.
  3. WDM envia um pedido notificar da Resource 1 a todos os assinantes de Trait A, informando-os da mudança.
  4. Cada assinante atualiza sua instância do Traço A de acordo.
Visualização e atualização do assinante WDM
Figura 2 - Solicitações de assinantes WDM

Os assinantes também podem enviar um pedido de vista a editora de uma característica, para visualizar as propriedades desse traço e manter suas próprias instâncias dos traços em sincronia com o editor.

Tipos de assinatura

Existem dois tipos de assinaturas WDM. Assinaturas são estabelecidos com uma subscrição pedido. A Figura 3 ilustra o fluxo de mensagens de base para estabelecer uma assinatura de um caminho.

Assinatura WDM unilateral
Figura 3 - Assinatura WDM unilateral

Mão única

As assinaturas unilaterais envolvem uma solicitação de um assinante a um editor para uma ou mais instâncias de característica. Por exemplo, um dispositivo móvel recuperando o estado da casa (estrutura) de um serviço.

Mútuo

As assinaturas mútuas são quando os recursos assinam uns aos outros e cada um age como editor e assinante. Um exemplo disso é o Nest Guard e o Nest Detect, que fazem parte do sistema Nest Secure. Uma assinatura mútua permite que ambos os recursos gerenciem o esquema publicado e mantenham a integridade e a atividade de sua assinatura de uma maneira mais eficiente do que duas assinaturas unilaterais.

Exemplo

Vejamos um exemplo simples de como o WDM lida com uma mudança na localidade de um dispositivo usando um aplicativo móvel.

Existem três recursos e dois traços envolvidas neste exemplo, como mostrado na Figura 4:

  • Dispositivo (assinante)
  • Serviço (editor)
  • Mobile App (assinante)
  • Capacidades de localidade característica propriedade localidades disponíveis
  • Configurações Locais característica propriedade Locale Ativo

Ambas as características são publicadas pelo recurso de serviço e assinadas pelos recursos de dispositivo e aplicativo móvel. Cada assinante funciona como uma assinatura unilateral para os editores de características no recurso Serviço.

Todos os recursos neste exemplo são parte do mesmo tecido tecer .

Exemplo WDM
Figura 4 - exemplo WDM

Fluxo de atualização

Digamos que o usuário usa o seu Mobile App para alterar a localidade para o dispositivo a partir en_US para fr_FR , usando um conectado Mobile App. Como mostrado na Figura 5, o fluxo de actualização dentro WDM é:

  1. O recurso Mobile App (assinante) envia uma solicitação de atualização para o recurso de serviço (editor) para alterar a propriedade Locale ativo de configurações de localidade do traço para fr_FR , um dos valores válidos das localidades propriedade disponível do Locale Capacidades característica.
  2. O recurso de serviço altera a propriedade Active Locale da característica Locale Settings em sua cópia do esquema.
  3. O recurso de serviço envia uma solicitação notificar sobre a mudança para quaisquer assinantes de configurações de localidade do traço.
  4. O dispositivo e os recursos Mobile App (assinantes) ambos recebem os recursos do Serviço notificar pedido e atualizar a propriedade Locale ativo da característica Locale Configurações em suas cópias do esquema.
Sequência de fluxo de atualização WDM
Figura 5 - Fluxo de atualização WDM

Os benefícios do WDM

Isso pode parecer muito complicado quando tudo o que você deseja fazer é alterar a localidade em seu dispositivo a partir de um aplicativo móvel. Mas ao agrupar o esquema com versão, o padrão de publicação-assinatura e as solicitações no perfil WDM, o Weave garante a integridade dos dados em todos os recursos.

Ele também garante vitalidade, portanto, quando um dispositivo é reiniciado, ele notifica imediatamente todos os assinantes sobre o estado de suas características publicadas, observa o estado das características assinadas e reflete todos esses estados em sua cópia do esquema sem perda de funcionalidade.

Além das assinaturas

Se um recurso cancelar a assinatura de uma característica, ele manterá uma cópia da última versão conhecida da característica. Já não recebe notificar solicitações de a partir do editor para essa característica, mas ainda pode enviar pedidos de actualização a esse editor.

Mesmo os recursos que nunca foram assinados por um editor de características podem enviar solicitações a eles. Por exemplo, um recurso pode não precisar de saber sobre o estado de um traço, mas pode querer enviar solicitações de atualização para alterar o estado desse traço em resposta a um evento externo.

Recapitular

O que você aprendeu:

  • Data Management Weave (WDM) é o perfil Weave para a gestão e garante traço em tempo real vivacidade e integridade de dados entre todos os recursos
  • Os pedidos são pedidos padrão para a ação de uma característica, com uma resposta esperada
  • O WDM apresenta duas funções de protocolo:
    • Publisher - A fonte da verdade para uma característica particular, envia notificar solicitações de
    • Assinante - Observa o esquema publicado, envia vista , atualização , ou comando pedidos
  • O WDM apresenta dois modelos de assinatura:
    • Mão única - fluxo de solicitações do assinante para o editor
    • Mutual - os dispositivos se inscrevem
  • Assinaturas são estabelecidos por subscrever pedidos
  • Os recursos podem enviar mensagens WDM para características, mesmo que não estejam inscritos nelas

Para obter informações mais detalhadas, consulte: