O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

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 perfil Data Management gerencia todas as solicitações de características usando um modelo publicar-assinar. Essas solicitações são mensagens específicas do 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). Essa função é chamada de gerenciamento de características 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

As solicitações são um elemento-chave do gerenciamento de características em tempo real do WDM. As solicitações são solicitações padrão para a ação de uma característica, com uma resposta esperada. Eles são diferentes dos comandos de uma característica, pois não são e não podem ser definidos no esquema e não são específicos para nenhuma característica.

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

  • Notify Solicitação padrão que informa um assinante do estado de uma propriedade de característica ou de um evento específico relacionado a essa característica.
  • Atualizar a solicitação padrão para alterar o estado de uma propriedade de característica.
  • Ver Solicitação padrão para ver as propriedades de uma característica.

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

A função de editor WDM produz e fornece instâncias com versão de um ou mais esquemas para um ou mais assinantes e envia notificações sobre uma mudança no esquema para assinantes interessados. Essas notificações são as solicitações padrão de notificação .

Por exemplo, suponha que o Traço A seja publicado pelo Recurso 1 e inscrito pelo Recurso 2. Conforme mostrado na Figura 1 , se o Traço A mudar:

  1. O WDM envia um solicitação de notificação do Recurso 1 para todos os assinantes do Traço 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. O WDM envia um solicitação de notificação do Recurso 2 para todos os assinantes do Traço B, informando-os da mudança.
  2. Cada assinante atualiza sua instância do Traço B de acordo.

Assinante

A função de assinante WDM visualiza e consome instâncias com versão de um ou mais esquemas publicados externamente. Ele pode alterar a instância com 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 o Recurso 2 queira mudar o Traço A, que é publicado pelo Recurso 1. Conforme mostrado na Figura 2 , para mudar o Traço A:

  1. O WDM envia uma solicitação de atualização do Recurso 2 para o Recurso 1, para solicitar uma mudança no Traço A.
  2. O traço A no recurso 1 é alterado.
  3. O WDM envia um solicitação de notificação do Recurso 1 para todos os assinantes do Traço 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 uma solicitação de visualização para o de uma característica, para visualizar o das propriedades dessa característica e manter suas próprias instâncias das características em sincronia com o editor.

Tipos de assinatura

Existem dois tipos de assinaturas WDM. As assinaturas são estabelecidas com uma solicitação de assinatura . A Figura 3 ilustra o fluxo de mensagens básico para estabelecer uma assinatura unilateral.

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 ocorrem 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 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 duas características envolvidas neste exemplo, conforme 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 fazem parte da mesma tecido Weave.

Exemplo WDM
Figura 4 - exemplo WDM

Fluxo de atualização

Digamos que o usuário use seu aplicativo móvel para alterar a localidade do dispositivo de en_US para fr_FR , usando um aplicativo móvel conectado. Conforme mostrado na Figura 5 , o fluxo de atualização no 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 Active Locale do traço Locale Settings para fr_FR , um dos valores válidos da propriedade Available Locales do traço Locale Capabilities.
  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 um solicitação de notificação sobre a mudança para qualquer assinante do traço Configurações locais.
  4. Os recursos de dispositivo e aplicativo móvel (assinantes) recebem o solicitação de notificação do recurso de serviço e atualizam a propriedade Active Locale do traço Configurações de local 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. Porém, ao agrupar o esquema com versão, o padrão publicar-assinar e as solicitações no perfil WDM, o Weave garante a integridade dos dados em todos os recursos.

Ele também garante a 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 inscritas 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 reterá 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 saber sobre o estado de uma característica, mas pode querer enviar solicitações de atualização para alterar o estado dessa característica em resposta a um evento externo.

Recapitular

O que você aprendeu:

  • Weave Data Management (WDM) é o perfil Weave para gerenciamento de características em tempo real e garante vivacidade e integridade de dados em todos os recursos
  • As solicitações são solicitações padrão para a ação de uma característica, com uma resposta esperada
  • O WDM apresenta duas funções de protocolo:
    • Editor - a fonte da verdade para uma característica específica, envia um sinal de solicitações de notificação
    • Assinante - Observa o esquema publicado, envia view , atualiza ou command solicitações
  • O WDM apresenta dois modelos de assinatura:
    • Mão única - fluxo de solicitações do assinante para o editor
    • Mutual - os dispositivos se inscrevem
  • As assinaturas são estabelecidas por solicitações de assinatura
  • Os recursos podem enviar mensagens WDM para características, mesmo que não estejam inscritos nelas

Para obter informações mais detalhadas, consulte: