[ロケータ アップロード] コマンド ライン ユーティリティ

はじめに

Locate Search Service (LSS) 検索サービスでは、特定または類似の住所が検索できます。LSS は、管理コンソールによって最初にアップロードされた住所データを使用します。このリリースではこの処理をさらに拡張し、コマンド ライン/コンソール ユーティリティによるアップロードができるようにしました。このユーティリティは LSS と直接通信し、データベースまたは CSV ファイルから読み込むことによって住所データをアップロードします。

このツールは JAR ファイルで、住所情報 (住所、X、Y) のコマンド ラインからのアップロードを可能にします。例えば、Windows スケジューラを使用してスケジュールされたジョブを作成し、LSS に住所を自動的にアップロードすることができます。

このツールは、以下のデータベースに対してテスト済みです。
  • Oracle
  • MySQL
  • Microsoft SQL Server
注: このツールの JDBC ドライバは、同梱されています。

前提条件

このユーティリティを呼び出すシステムにおいて、次の条件を満たす必要があります。
  1. JRE 1.7 がインストールされていること。
  2. JAVA_HOME が設定されていること。
サービスを呼び出すための基本構文は、以下のコマンド ラインのとおりです。
java -Dconfiguration.folder=<FOLDER LOCATION OF THE CONFIG> -jar <JAR-FILE>

引数 configuration.folder は、システムを設定するために必要な要素を定義する configuration.properties ファイルを指定するため、このユーティリティの呼び出しに必須です。引数情報は必ず、対象フォルダへの絶対パスで指定します。例えば、ファイルが D:\\Analyst\\configuration.properties に存在する場合、引数は -Dconfiguration.folder=D:\\Analyst である必要があります。

configuration.properties のサンプルは、commandline-uploader.zip ファイルの中にあります。ツールが実行されると、すべてのアクティビティ ログ (IndexUtility.log) がユーザのホーム ディレクトリに作成されます。
indexsearch.singleLineSearch.url=http://<MACHINE>:<PORT>/index-search/SingleLineAddressService
indexsearch.singleLineSearch.wsdl=http://<MACHINE>:<PORT>/index-search/SingleLineAddressService?wsdl 

Gazetteer パラメータ

以下のパラメータは、LSS の住所情報を設定するために使用されます。
populate.tenant.name=analyst
populate.gazetteer.name=<GAZETTEER NAME e.g. Address1> 
populate.projection=<PROJECTION e.g. EPSG:27700>
populate.column.address=0
populate.column.x=1 
populate.column.y=2
populate.delimiter=, 

データベース プロパティ

以下のデータベース プロパティが有効である必要があります。
database.admin.user=<VALID USER NAME e.g. root>
database.admin.password=<VALID PASSWORD e.g. root>
database.driver.class.name=<VALID CLASS e.g. oracle.jdbc.driver.OracleDriver>
database.driver=<VALID JDBC URL e.g. jdbc:oracle:thin:@noioraent2k3-64:1521:Analyst> 
sql.complete.select.statement=<VALID SQL STATEMENT e.g. select address, x, y from camden>

最大許容値

skip.bad.record.limit=<MAX TOLERANCE e.g. 400, should be >= 1>

データがフェッチされる一時的な場所へのパス

temp.file=<FILENAME WITH VALID PATH e.g. d://temp//abc.csv>

1 度に処理されるレコード数

minimum.commit.records=<RECORDS LIMIT e.g. 10> 

フェッチされたテーブル内の列の位置

1 から始まるため、select 文に ADDRESS、X、Y しかない場合は、1、2、3 を指定できます。

address.column.location=<LOCATION OF ADDRESS e.g. 1>
x.column.location=<LOCATION OF X>
y.column.location=<LOCATION OF Y>