Trabalhando com IDs de objetos - AWS IoT SiteWise

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Trabalhando com IDs de objetos

AWS IoT SiteWise define vários tipos de objetos persistentes, como ativos, modelos de ativos, propriedades e hierarquias. Todos esses objetos têm identificadores exclusivos que você pode usar para recuperá-los, atualizá-los e excluí-los.

AWS IoT SiteWise tem opções diferentes para os clientes criarem identidades. AWS IoT SiteWise gera um para você por padrão no momento da criação do objeto. Os usuários também podem fornecer seus próprios IDs para seus objetos.

Trabalhando com UUIDs de objetos

Cada objeto persistente AWS IoT SiteWise tem um UUID para identificá-lo. Por exemplo, modelos de ativos têm uma ID de modelo de ativo, ativos têm uma ID de ativo e assim por diante. Essa ID é atribuída no momento em que você cria o objeto e permanece inalterada durante a vida útil do objeto.

Quando você cria um novo objeto, AWS IoT SiteWise gera um ID exclusivo para você por padrão. Você também pode fornecer seu próprio ID no momento da criação no formato UUID.

nota

Os UUIDs devem ser globalmente exclusivos na AWS região em que foram criados e para o mesmo tipo de objeto. Quando AWS IoT SiteWise gera automaticamente um ID para você, ele é sempre exclusivo. Se você escolher seu próprio documento de identidade, verifique se ele é exclusivo.

Por exemplo, se você criar um novo modelo de ativo chamando CreateAssetModel, poderá fornecer seu próprio UUID no assetModelId campo opcional da solicitação.

Por outro lado, se você omitir assetModelId da solicitação, AWS IoT SiteWise gera um UUID para o novo modelo de ativo.

Usando IDs externos

Para definir seu próprio ID em algum formato diferente do UUID, você pode atribuir um ID externo. Por exemplo, você pode fazer isso se reutilizar um ID que está usando em um sistema que não está AWS, ou para ser mais legível por humanos. Os IDs externos têm um formato mais flexível. Você pode usá-los para referenciar seus objetos em operações de AWS IoT SiteWise API em que, de outra forma, usaria o UUID.

Assim como os UUIDs, cada ID externa deve ser exclusiva dentro de seu contexto. Por exemplo, você não pode ter dois modelos de ativos com a mesma ID externa. Além disso, como os UUIDs, um objeto só pode ter um ID externo em sua vida útil, que não pode mudar.

Diferenças entre IDs externos e UUIDs

Os IDs externos diferem dos UUIDs das seguintes maneiras:

  • Cada objeto tem um UUID, mas os IDs externos são opcionais.

  • AWS IoT SiteWise nunca gera IDs externos. Você mesmo os fornece.

  • Se o objeto ainda não tiver uma, você poderá atribuir uma ID externa a qualquer momento.

Formato de IDs externos

Uma ID externa válida tem as seguintes propriedades:

  • Tem entre 2 e 128 caracteres.

  • O primeiro e o último caracteres devem ser alfanuméricos (A-Z, a-z, 0-9).

  • Caracteres diferentes do primeiro e do último devem ser alfanuméricos, ou então um dos seguintes: _-.:

Por exemplo, uma ID externa deve estar em conformidade com a seguinte expressão regular:

[a-zA-Z0-9][a-zA-Z0-9_\-.:]*[a-zA-Z0-9]+

Referenciando objetos com IDs externos

Em muitos lugares em que você pode referenciar um objeto usando seu UUID, você pode usar seu ID externo em vez disso, se ele tiver um. Para fazer isso, anexe o ID externo à string. externalId:

Por exemplo, suponha que você tenha um modelo de ativo cujo UUID (ID do modelo de ativo) sejaa1b2c3d4-5678-90ab-cdef-11111EXAMPLE, que também tenha o ID externo. myExternalId Ligue para a DescribeAssetModel para obter detalhes sobre isso. Você pode usar qualquer um dos seguintes como o valor deassetModelId:

  • Com o ID do modelo de ativo (UUID) em si: a1b2c3d4-5678-90ab-cdef-11111EXAMPLE

  • Com o ID externo: externalId:myExternalId

aws iotsitewise describe-asset-model --asset-model-id a1b2c3d4-5678-90ab-cdef-11111EXAMPLE aws iotsitewise describe-asset-model --asset-model-id externalId:myExternalId
nota

O externalId: prefixo não é, por si só, parte do ID externo. Você só precisa fornecer o prefixo ao fornecer um ID externo a uma operação de API que aceite UUIDs ou IDs externos. Por exemplo, forneça o prefixo ao consultar ou atualizar um objeto existente.

Ao definir uma ID externa para um objeto, como ao criar um modelo de ativo, não inclua o prefixo.

Você pode usar IDs externos no lugar dos UUIDs dessa forma para muitas operações de API em AWS IoT SiteWise, mas não em todas. Por exemplo, o GetAssetPropertyValue, deve usar UUIDs; ele não suporta o uso de ID externo.

Para determinar se uma operação de API específica é compatível com esse uso, consulte a Referência da API.