Esta seção descreve o processo de geocodificação e explica como executar um geocoder no modo batch a partir do Centro de Controle.
Conforme observado anteriormente, o DB2 Spatial Extender utiliza uma função, chamada geocoder, para executar duas atividades: conversão de dados de endereço em dados espaciais e colocação desses dados espaciais em colunas da tabela. Esta seção distingue as diferenças básicas entre os geocoders e suas fontes. Ela também descreve os dois modos nos quais um geocoder pode operar e introduz fatores a considerar quando você planeja usar um geocoder.
Com o Spatial Extender, você pode:
O geocoder padrão geocodifica endereços nos Estados Unidos e pode convertê-los em dados ST_Point. Se você precisa armazenar dados de outros tipos de dados espaciais, você pode se conectar a um geocoder para gerar tais dados. Se você precisa de dados espaciais que representam locais fora dos Estados Unidos, ou locais que não possuam endereços -- por exemplo, área de cultivo que variam por conteúdo de solo -- você pode se conectar a um geocoder para encontrar o que precisa.
Antes que um geocoder plug-in possa ser usado, ele deve ser registrado. Usuários e fornecedores podem registrá-lo com o procedimento armazenado db2gse.gse_register_gc. Ele não pode ser registrado a partir do Centro de Controle. Para obter mais informações sobre db2gse.gse_register_gc, consulte db2gse.gse_register_gc. Para obter informações gerais sobre o uso dos procedimentos armazenados Spatial Extender, consulte Procedimentos armazenados.
Um geocoder opera em dois modos:
A geocodificação incremental é referenciada também como geocodificação automática.
Ao planejar o uso de um geocoder, você deve considerar os seguintes fatores:
Você determina qual precisão deve ser. Esteja ciente de que talvez necessite ajustá-lo. Por exemplo, supõem-se que a precisão seja 100. Se muitos registros fonte contêm endereços que são mais recentes do que os dados de referência, a coincidência de 100 por cento entre estes registros e os dados de referência será impossível.Como resultado, o geocoder rejeitará estes registros. No total, se um geocoder produz dados espaciais que parecem insuficientes ou largamente imprecisos, você pode estar apto a resolver este problema alterando a precisão e executando o geocoder novamente.
Há diversas maneiras de controlar o número ou a série de registros que um geocoder processa antes de uma consolidação ser emitida:
Método 1
Um geocoder pode geocodificar dados de endereço em um número específico de registros antes de cada consolidação. Esse método permite gerenciar, de forma precisa, o tamanho de unidades de trabalho. Entretanto, este método consome consideravelmente mais sobrecarga que outros métodos abordados aqui.
Para iniciar o Método 1, especifique o número de registros a serem processados antes de cada consolidação. Se estiver utilizando o Centro de Controle, defina esse número com o botão de rotação Consolidar escopo na janela Executar Geocoder. Se estiver gravando um programa aplicativo, atribua esse número ao parâmetro commitScope do procedimento armazenado db2gse.gse_run_gc.
Método 2
Um geocoder pode geocodificar dados de endereço em todos os registros de uma tabela antes que uma consolidação seja emitida. Com esse método, o geocoder processa os registros de maneira semelhante à operação em batch, consumindo muito menos sobrecarga por registro que o Método 1. Entretanto, você tem um controle menor sobre o tamanho da unidade de trabalho que no Método 1. Conseqüentemente, não é possível controlar quantos bloqueios serão recebidos ou quantas entradas de registros serão feitas conforme o geocoder opera. Além disso, se o geocoder encontrar um erro que precise de uma reversão, será necessário definir o geocoder para que execute todos os registros novamente. O custo resultante com recursos pode ser caro se a tabela for extremamente grande e o erro e a reversão ocorrerem após a maioria dos registros ter sido processada.
Para iniciar o Método 2 do Centro de Controle, defina o botão de rotação Consolidar escopo na janela Executar Geocoder para zero. Se estiver gravando um programa aplicativo, defina o parâmetro commitScope do procedimento armazenado db2gse.gse_run_gc para zero.
Método 3
Um geocoder pode geocodificar dados de endereço em um subconjunto de registros de uma tabela antes de cada consolidação. Ele pode, então, geocodificar dados de endereço em um segundo subconjunto e, se for necessário, um terceiro, um quarto e assim por diante. O geocoder processa cada subconjunto de maneira semelhante à operação em batch, consumindo menos sobrecarga por registro que no Método 1. Porém, como no Método 2, o Método 3 não permite o controle direto sobre o tamanho da unidade de trabalho. Além disso, ele requer a sobrecarga de definição e execução do geocoder várias vezes para cada subconjunto de registros.
Para definir um subconjunto de registros a partir do Centro de Controle:
Para definir um subconjunto de registros em um programa aplicativo, codifique o procedimento armazenado db2gse.gse_run_gc da seguinte forma: