Melhores práticas para escolher um ID da Série Temporal
Nota
O serviço Time Series Insights será desativado em 7 de julho de 2024. Considere migrar os ambientes existentes para soluções alternativas o mais rápido possível. Para obter mais informações sobre a substituição e migração, visite nossa documentação.
Este artigo resume a importância da ID da Série Temporal para o seu ambiente do Azure Time Series Insights Gen2 e as práticas recomendadas para escolher uma.
Escolher um ID de Série de Tempo
Selecionar um ID de série temporal apropriado é fundamental. Escolher um ID de Série Temporal é como escolher uma chave de partição para um banco de dados. É necessário quando você cria um ambiente do Azure Time Series Insights Gen2.
Assista ao tutorial de provisionamento de ambiente para obter uma explicação detalhada da ID da série temporal. Você visualizará dois exemplos diferentes de carga útil de telemetria JSON e a seleção correta de ID de série temporal para cada um.
Importante
Os IDs de séries temporais são:
- Uma propriedade string que diferencia maiúsculas de minúsculas: letras e caixas de caracteres são usadas em pesquisas, comparações, atualizações e ao particionar.
- Uma propriedade imutável : uma vez criada, não pode ser alterada.
Gorjeta
Se a origem do seu evento for um hub IoT, seu ID de Série Temporal provavelmente será iothub-connection-device-id. Se você planeja usar modelos de dispositivo IoT Plug and Play ou está usando-os sem componentes, inclua dt-subject como parte da chave composta, caso precise dela no futuro.
As principais práticas recomendadas a seguir incluem:
- Escolha uma chave de partição com muitos valores distintos (por exemplo, centenas ou milhares). Em muitos casos, isso pode ser o ID do dispositivo, o ID do sensor ou o ID da tag no JSON.
- O ID da Série Temporal deve ser exclusivo no nível do nó folha do seu Modelo de Série Temporal.
- O limite de caracteres para a cadeia de caracteres do nome da propriedade do ID da Série Temporal é 128. Para o valor da propriedade da ID da Série Temporal, o limite de caracteres é 1.024.
- Se um valor de propriedade exclusivo para a ID da Série Temporal estiver faltando, ele será tratado como um valor nulo e seguirá a mesma regra da restrição de exclusividade.
- Se o ID da série temporal estiver aninhado em um objeto JSON complexo, siga as regras de nivelamento de entrada ao fornecer o nome da propriedade. Confira o exemplo B.
- Você também pode selecionar até três propriedades principais como seu ID de Série Temporal. A sua combinação será uma chave composta que representa o ID da Série Temporal.
Nota
Suas três propriedades principais devem ser strings. Você teria que consultar essa chave composta em vez de uma propriedade de cada vez.
Selecione mais de uma propriedade de chave
Os cenários a seguir descrevem a seleção de mais de uma propriedade de chave como sua ID de Série Temporal.
Exemplo 1: ID de série temporal com uma chave exclusiva
- Você tem frotas legadas de ativos. Cada um tem uma chave única.
- Uma frota é identificada exclusivamente pelo deviceId da propriedade. Para outra frota, a propriedade exclusiva é objectId. Nenhuma das frotas contém a propriedade única da outra frota. Neste exemplo, você selecionaria duas chaves, deviceId e objectId, como chaves exclusivas.
- Aceitamos valores nulos, e a falta da presença de uma propriedade no evento payload conta como um valor nulo. Essa também é a maneira apropriada de lidar com o envio de dados para duas fontes de eventos em que os dados em cada fonte de evento têm uma ID de série temporal exclusiva.
Exemplo 2: ID de série temporal com uma chave composta
- Você precisa que várias propriedades sejam exclusivas dentro da mesma frota de ativos.
- Você é um fabricante de edifícios inteligentes e implanta sensores em todos os cômodos. Em cada sala, você normalmente tem os mesmos valores para sensorId. Exemplos são sensor1, sensor2 e sensor3.
- Seu prédio tem números de andares e quartos sobrepostos em todos os locais na propriedade flrRm. Esses números têm valores como 1a, 2b e 3a.
- Você tem uma propriedade, localização, que contém valores como Redmond, Barcelona e Tóquio. Para criar exclusividade, designe as três propriedades a seguir como suas chaves de ID de série temporal: sensorId, flrRm e location.
Exemplo de evento bruto:
{
"sensorId": "sensor1",
"flrRm": "1a",
"location": "Redmond",
"temperature": 78
}
No portal do Azure, você pode inserir a chave composta da seguinte maneira:
Nota
No portal do Azure, não insira nomes de propriedades separados por vírgulas em uma texbox, caso contrário, ele será tratado como um único nome de propriedade que contém vírgulas. Insira o nome de cada propriedade em sua própria texbox.