Opttech Sort for Windows(日本語版) について

データベース 分析、再構築用の超高速汎用ソート/マージライブラリー。

Opttech Sort for Windowsは、データベースファイルから抽出した様々な形式のデータをソート(並べ換え)、マージ(併合)、条件による抽出、集計などを行うテキストファイルの扱いに慣れたプロフェッショナルに最適のツールです。コマンドラインおよび Windows ベースのスタンドアローンでの使用はもちろんのこと、Visual Basic、C++、Delphi など各種高級言語からのサブルーチンとして使用することも可能です。

パフォーマンス

  • ソートとデータの入出力に非常に効率的なアルゴリズムを利用しているため、データ処理が非常に高速です。ベンチマークを参照してください。
  • ダイナミックなメモリ割り当てを行いますので、利用可能なメモリ容量に関わらず効率的な処理を可能にします。他のアプリケーション動作に影響を与えないよう、ワークエリアのメモリ割り当てを小さくすることも可能です。
  • ソートのワークエリアには空きメモリをフルに利用しますが、メインメモリが不足した場合にはディスク上のワークファイルを自動的に使用します。ワークファイルはドライブ指定ができますから、フレクシブルな対応が可能です。ワークファイルはソート終了時に自動的に消去されます。

入力/出力

  • 同時に扱える入力ファイル数にソフト的な制限はありません。ソート可能なファイルサイズ、レコード長、レコード数などは空きディスク容量などハードウェア的要因にのみ影響されます。
  • 入力ファイルはネットワークシステム上で使用できるよう「共有」モードで開くことができます。
  • Opttech Sortは次のファイルタイプをサポートします。
    • 固定長テキストファイル
    • 可変長テキストファイル
    • ランダムファイル(完全な固定長)
    • デリミットファイル(カンマ区切りなど)
    • Micro Focus COBOL可変長順編成ファイル
    • dBASEⅢおよびⅣ形式データベースファイル
    • ユーザ定義ファイル(レコードおよびファイル終端文字を指定可能)
  • キーが同値のレコードの順序は入力ファイルの並び順が維持されます。
  • ソートされたデータを元の入力ファイルに直接上書きすることができます。
  • 出力レコード件数はスクリーン上で表示されるか、あるいはプログラムに返されます。

ソート/マージ

  • ソート/マージ・コントロールの指定は、キーボード入力するか、単純な形式で保存したパラメータファイルを使用することができます。
  • 最大で100までのソート/マージ・コントロールフィールドを指定することができます。コントロールフィールドは、フィールドの開始ポジションと長さ、あるいは相対的なフィールド番号で指定します。各コントロールフィールドごとに異なるデータタイプを指定でき、それぞれに昇順あるいは降順を指定することができます。
  • オプションにより、ファイルの先頭のヘッダレコードを処理の対象から除外することが可能です。
  • 以下のデータタイプをサポートします
    • キャラクタ(ASCII・EBCDIC)
    • バイナリ/整数(符号付き・無し)
    • IEEE形式浮動小数(4バイト/8バイト)
    • アスキー形式数値 ・ ゾーン形式数値(符号付き・無し)
    • パック形式数値(符号付き・無し)
    • IPアドレス
    • オルタネート・コレーティング・シーケンス(ユーザ定義ソート順)

レコードセレクト

  • 特定の条件で、出力の対象となるレコードをセレクトすることができます。また、条件に合致するものをセレクトすることも、合致しないものをセレクトするこも可能です。
  • レコードセレクトの条件は最大100フィールドまで指定できます。演算子としては、「等しい」、「より大きい」、「含む」などや「AND(論理積)」、「OR(論理和)」による各条件式の結合をサポートします。また、どんなレベルの条件でもネストさせることができます。
  • レコード全体あるいは特定のフィールド比較に重複フィールドのレコード処理が可能です。重複レコードを1レコードのみセレクトすることや、重複して存在するレコードのみをセレクトできます。
  • 処理を開始するレコード番号を開始することや、処理するレコード数を指定することができます。

再フォーマット/集計機能

  • 出力ファイルに書き込むレコードの構造を変えることができます。入力ファイルに存在するフィールドに加え、定数フィールド(16進でのバイナリ出力も可能)、レコード番号、レコード長、CR/LFなどを加えることが可能です。

数値フィールドでは、特定のフィールドが一致(重複)するレコードをグループ化して、その合計値を出力することできます。

スタンドアローンでの利用

  • Opttech Sortには、Windowsユーザインタフェースとコマンドラインインタフェースの2種類のスタンドアローンプログラムが用意されており、お使いになる方の好みにより使い分けることができます。
  • Windowsユーザインタフェースプログラムでは、入力ファイルや出力ファイルの選択をダイアログでブラウズして行えます。指定したコントロールパラメータなどはファイルに保存することができ、自動的な処理開始も選択できます。
  • コマンドラインプログラムは、DOSコマンドプロンプトでの操作に慣れた方向けに設計されています。すべてのパラメータがコマンドラインから引き渡せるため、バッチファイルなどへの組込も容易です。

サブルーチンでの利用

  • サブルーチンソートには、ファイルから入力しファイルに出力する「ファイルソート」と、メモリ上ですべての処理を行う「レコードソート」の2種類が用意されています。
  • 処理レコード件数とエラーコードが返されますので、プログラムでそれに応じた対応処理が可能です。
  • Opttech Sort for Windows は、標準で以下の言語からサブルーチンとして使用することができます。
    • C#, VB.NET (.NET Framework対応)
    • Microsoft Visual Basic
    • Microsoft Visual C++
    • Embarcadero Delphi
    • Micro Focus COBOL
    • 富士通 COBOL 85/97
    • 富士通 F-BASIC
    • WinBatch
    • 記以外でも、DLL 呼び出しが可能な言語であれば、原則としてどのような言語でもサブルーチンとしての利用が可能です。