Se você já leu sobre como o rastreamento funciona com o ArcGIS Utility Network, provavelmente notou que muitas das capacidades exigem atributos de rede. Estes são os atributos usados para definir se um dispositivo está aberto/fechado, em serviço/aposentado ou qualquer outra característica de uma feição que precisa ser considerada quando o sistema está realizando sua análise. O objetivo deste artigo é discutir algumas das implementações técnicas dos atributos de rede para que você possa tomar decisões informadas sobre como configurar sua rede de utilidade.
O que é um atributo de rede?
Um atributo de rede é um atributo que foi configurado para uso em análise com uma utility network. Atributos de rede podem ser usados como barreiras de atravessabilidade, como barreiras de condição ou barreiras de filtro. Eles também podem ser usados para controlar a saída do rastreamento criando uma condição de saída ou para funções resumo. A única maneira de usar um atributo não pertencente à rede no rastreamento é usar o tipo de resultado da Feição para exportar os atributos associados a uma feição.
Configurar um atributo de rede é um processo em duas etapas. Primeiro, você deve definir um atributo de rede na utility network usando a ferramenta Adicionar Atributo de Rede. Isso não adicionará nenhum campo às suas classes de feição, apenas define um atributo que pode ser usado na análise.
Para preencher este atributo de rede, você deve mapear um campo de uma ou mais classes em sua utility network usando a ferramenta Definir Atributo de Rede. Os campos mapeados para o atributo de rede não precisam ter o mesmo nome, mas existem algumas restrições ao mapear campos para um atributo de rede. Se o campo que você deseja definir como atributo de rede não aparecer no menu suspenso, é porque o campo não tem o tipo de dado correto ou o campo é anulável, mas o atributo de rede não é anulável. Campos usados para atributos de rede que têm domínios atribuídos devem ter valores de domínio semelhantes para garantir o comportamento durante a análise.
Quando um campo é designado como atributo de rede, isso significa que a utility network armazenará uma cópia do valor dessa feição nas tabelas do sistema da rede para uso na análise toda vez que a feição for validada. Isso permite que a rede realize análises mais rapidamente, pois todas as informações necessárias para tomar decisões durante a análise estão disponíveis sem precisar consultar valores das feições individuais. Armazenar mais informações na rede para análise significa que mais dados precisarão ser lidos das feições quando forem validadas, mais informações devem ser persistidas nas tabelas do sistema e mais informações devem ser lidas das tabelas do sistema durante a análise.
Nem todo armazenamento é igual e na próxima seção discutiremos as diferentes opções para armazenar atributos de rede e como elas afetam o desempenho.
Desempenho
A decisão mais importante ao criar um atributo de rede é decidir se ele será armazenado in-line ou não. Atributos de rede armazenados in-line são guardados dentro da topologia da rede, junto com a conectividade, o que permite o acesso mais rápido possível durante o rastreamento, pois são carregados conforme a conectividade é carregada. Atributos de rede que não são armazenados in-line ainda são guardados em tabelas do sistema, mas ficam em armazenamento secundário dedicado aos atributos de rede.
A razão pela qual existem dois mecanismos diferentes para armazenamento dos atributos de rede é que há apenas uma pequena quantidade de espaço disponível para atributos in-line. O armazenamento in-line deve ser reservado para atributos necessários para a travessia da rede, como barreiras de atravessabilidade, e devem ser valores inteiros. Atributos usados para funções resumo ou condições de saída não se beneficiam tanto ao serem armazenados in-line.
Você também deve considerar com que frequência um atributo de rede é usado antes de designá-lo para armazenamento in-line. Atributos que fazem parte da sua definição da sub-rede ou são referenciados por configurações nomeadas frequentemente usadas são bons candidatos para armazenamento in-line. Atributos como configuração verão ou verão, usados apenas algumas vezes por mês, não são tão importantes para armazenar in-line.
Uma consideração importante ao identificar atributos de rede é lembrar que eles devem ser validados, escritos e lidos do banco de dados. Quanto mais atributos você tiver, mais tempo levará para habilitar/validar sua topologia da rede, rastrear sua utility network e atualizar sua sub-rede. O custo individual de cada atributo é relativamente pequeno, mas os custos podem aumentar rapidamente em redes com muitos atributos. É melhor começar com um número relativamente pequeno dos atributos necessários e adicionar outros conforme necessário ao longo do tempo.
Se você identificar um campo que deseja usar como atributo in-line, talvez queira fazer algumas alterações no campo para torná-lo mais adequado ao armazenamento in-line. Discutiremos algumas dessas considerações na próxima seção.
Armazenamento
Dado que há uma quantidade finita de armazenamento para atributos in-line, vale a pena discutir o que determina quanto espaço é alocado para um atributo in-line para que você possa projetar os campos que suportam seus atributos da melhor forma possível em termos de armazenamento e desempenho. O que segue é um resumo do tópico da Ajuda do ArcGIS sobre como calcular o tamanho em bits para atributos in-line.
A primeira limitação para armazenar um atributo in-line é o tipo de dado do atributo e seu campo. Embora a maioria dos tipos possa ser usada como atributos, apenas campos short integer ou long integer podem ser armazenados in-line. Isso ocorre porque a rede armazena uma representação binária dos valores do atributo.
A segunda limitação é que um atributo in-line deve ter um domínio associado a ele. Os valores nesse domínio determinam a quantidade de espaço alocada para o campo no índice da rede.
A quantidade de espaço alocada ao atributo corresponde ao armazenamento binário necessário para guardar o maior valor no domínio. Por isso, é melhor que o domínio seja o mais compacto possível, com o maior valor sendo o menor possível. Se o atributo e domínio forem projetados para comparações bitwise, cada valor no domínio representará uma potência de dois (1, 2, 4 etc.). O tamanho inicial do armazenamento é calculado usando o domínio especificado na ferramenta Criar Atributo da Rede, mas conforme o atributo for atribuído a diferentes classes pode expandir dependendo dos domínios atribuídos aos campos correspondentes.
Tamanho em Bits | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 66 | 20 |
|---|
Valor Máximo do Domínio | 1 | 3 | 7 | 15 | 31 | 63 | 127 | 255 | 66 | 1.048.575 |
Valor Máximo do Domínio (anulável) | 0 | 1 | 3 | 7 | 15 | 31 | 63 | 127 | | |
Conclusion
Now that you’ve read this article you should have a foundational understanding of how to create and use network attributes in a utility network. You should also be able to understand the benefits and limitations of storing a network attribute in-line and determine how beneficial it is to store a particular network attribute an in-line. With this information you should be able to confidently make changes to your own model, configuring network attributes to meet the needs of your model.
You can learn more about network attributes by reading the Network Attributes topic in ArcGIS Help.
If you have specific questions about how to solve different workflows, please visit us on the ArcGIS Utility Network channel on the Esri Community site. This is an active community with thousands of active members.