[ロケータ アップロード] コマンド ライン ユーティリティ
はじめに
Locate Search Service (LSS) 検索サービスでは、特定または類似の住所が検索できます。LSS は、管理コンソールによって最初にアップロードされた住所データを使用します。このリリースではこの処理をさらに拡張し、コマンド ライン/コンソール ユーティリティによるアップロードができるようにしました。このユーティリティは LSS と直接通信し、データベースまたは CSV ファイルから読み込むことによって住所データをアップロードします。
このツールは JAR ファイルで、住所情報 (住所、X、Y) のコマンド ラインからのアップロードを可能にします。例えば、Windows スケジューラを使用してスケジュールされたジョブを作成し、LSS に住所を自動的にアップロードすることができます。
このツールは、以下のデータベースに対してテスト済みです。
- Oracle
- MySQL
- Microsoft SQL Server
注: このツールの JDBC ドライバは、同梱されています。
前提条件
このユーティリティを呼び出すシステムにおいて、次の条件を満たす必要があります。
- JRE 1.7 がインストールされていること。
- 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>