- スキャンクライアント、検証クライアント、Processing Station を追加する
- Application、Processing、Licensing、Database の各サーバーと FileStorage をホストするマシンの性能を高める
- これらのサーバーの役割を複数のマシンに分散する
システム監視とボトルネック検出 では、現在のハードウェアが目標とするパフォーマンスを満たしているかどうか、およびスケールアップすべきタイミングを確認できます。
デモ
デモは、デモやパイロットプロジェクト向けの一般的な構成であり、本番規模のプロジェクトには推奨されません。システムのすべてのコンポーネントは、仮想マシンにインストールするか、PC にデプロイします。
データベースサーバーとして MS SQL Express を使用し、FlexiCapture サーバーと同じマシンにインストールできます。専用の FileStorage を使用しない場合は、ファイルをデータベースに直接保存することもできます。オペレーターと Processing Stations も同じマシンを共有できます。
Medium
Medium は商用プロジェクトで一般的に採用される構成です。各サーバーコンポーネントを専用マシンにインストールするため、それぞれを個別にスケーリングできます。デプロイのガイドライン
Application Server を分離する
Application Server は専用のコンピューターにインストールしてください。Database、Processing Server、Licensing Server とはスケーリングの特性が異なります。Application Server、Processing Server、Licensing Server は 1 台のコンピューターにインストールできます。これによりサーバーの冗長化は実現できますが、Application Server のスケーラビリティは確保できません。
クラスタリング テクノロジの選択
Application Server と Processing Server および Licensing Server では、異なるクラスタリング テクノロジを使用します。- Application Server は IIS 上で動作する Web サービスです。そのスケーリングと信頼性は、Microsoft Network Load Balancing テクノロジを使用したクラスタリングによって実現されます。クラスタ内のすべてのノードは、active-active モードで動作する対等なノードであり、いつでも停止できます。
- Processing Server と Licensing Server は Windows サービスです。これらの信頼性は、Microsoft Failover Cluster テクノロジに基づく active-passive クラスタを構成することで実現されます。
Database サーバーの配置
Database サーバーはホストのリソースを大幅に消費するため、専用マシンにインストールしてください。他の FlexiCapture サーバーと併用する場合は、CPU と RAM の使用量を制限してください。また、同一ホスト上の他のサーバーのパフォーマンスに影響しないよう、データベースファイルも物理的に別の HDD に配置してください。FileStorage ハードウェアを選択する
負荷が小さい場合は、Application Server マシン上の高速 HDD を FileStorage として使用できます。15,000 RPM 以上の SATA2 ディスクを使用し、冗長化のために少なくとも RAID1 を、より高いパフォーマンスのために RAID10 を構成してください。 ローカル HDD は、ページ数が増えるにつれて、特にグレースケール画像やカラー画像ではボトルネックになります。また、ディスクを追加するにはシステムを停止する必要があるため、必要に応じて拡張することもできません。 より大規模な用途では、NAS や SAN などの外部ストレージを使用してください。Application Server には、LAN、SCSI、Fibre Channel、または同様のインターフェイス経由で、1 Gb/s の読み書きアクセスが必要です。外部ストレージは容易に拡張できます。ネットワーク レイアウト
次の図は、エンタープライズ環境における一般的な FlexiCapture ネットワーク構成を示しています。
Application Server
- CPU: 物理コア 8 個、2.4 GHz 以上
- RAM: 16 GB
- HDD: 100 GB
- 1 Gb/s の NIC 2 基:LAN 接続用と Database Server 接続用に各 1 基
- FileStorage: SAN を使用する場合は、SCSI、Fibre Channel、または InfiniBand で接続
- OS: Windows 2012 以降
- 大容量のバイナリデータ転送
- 高速なレスポンスを必要とする小規模な SOAP/JSON サービスリクエスト
- クライアントへの接続用の高速なネットワークインターフェイス
- FileStorage および Database Server への高速で安定した接続
- 高速なマルチコア CPU:
- 速度が高いほど、各リクエストの処理が速くなります
- 物理コア数が多いほど、同時に処理できるリクエスト数が増えます
- 十分な RAM (物理コアごとに少なくとも 2 GB)
- Application Server の役割を持つ複数のコンピューターをクラスター化する Microsoft Network Load Balancing を使用します。詳細については、フェールオーバー構成を参照してください。
- ハードウェアレベルでは、異なるクライアント範囲を、Application Server の役割を持つ異なるマシンに接続します。たとえば、1 台のマシンですべての自動処理を実行し、別のマシンを外部クライアント向けのウェブサービスとして公開できます。
Processing Server と Licensing Server
- 4 コア CPU、2.4 GHz 以上
- 8 GB RAM
- HDD: 100 GB
- LAN 接続用 1 Gb/s NIC
- OS: Windows 2012 以降
Database サーバー
サポートされるバージョン:- MS SQL Server 2014 以降、Standard Edition または Enterprise Edition
- Oracle 12c Enterprise Edition
Database サーバーのハードウェア
MS SQL Server の場合:- CPU: 物理 8 コア、3.4 GHz 以上
- RAM: 16 GB 以上
- HDD: 400 GB
- OS: Windows 2012 以降
MS SQL Server の設定
- ほとんどのデータベース ファイルが RAM 上に保持され、高速に読み取れるよう、Database サーバー マシンには可能な限り多くの RAM を搭載します
- ディスク上に残るデータベース部分には、できれば SSD などの高速な HDD を使用します
- ミラーリングなど、トランザクション遅延が発生するデータベース モードは避けます
- データベースの復旧モデルを Simple に設定します
- データベースとそのログは別々のディスクに格納します
- 頻繁に変更されるテーブル (Document、Page、Batch、Task、EventLog) のインデックスを定期的に更新します。更新しない場合、インデックスがテーブル内のデータより大きくなる可能性があります
FileStorage
- LAN、SCSI、Fibre Channel、または InfiniBand 経由で接続された NAS または SAN
- 読み書き速度: ワークロードに応じて 100 MB/s 以上
- 容量: ワークロードに応じて 5 TB 以上
FileStorage のサイジング
読み書き速度と必要な容量は、主に次の 2 つの要因に大きく左右されます。両方を考慮してサイジングしてください。ページスループットとカラーモード
読み書きの速度は、1 時間および 24 時間あたりの平均・ピーク処理ページ数と、それらのカラーモードに応じて異なります。カラー、グレースケール、白黒でスキャンしたページの一般的なファイルサイズに基づいて、入力フローを毎秒のバイト数で見積もります。詳細については、パフォーマンスメトリクスを参照してください。 画像は、システム内で転送されるデータの大部分を占めます。処理ワークフローを分析し、次の 2 つの値を定義します。- R: ページ画像を Application Server からダウンロードするステージの数
- W: ページ画像を Application Server にアップロードするステージの数
A4グレースケールファイルの平均サイズが3 MBの場合:
- 入力フロー = グレースケールページ画像10,000枚/時 = グレースケール画像2.8枚/秒 = 8.4 MB/秒
- 必要な書き込み速度 = 1 × 8.4 MB/秒 = 8.4 MB/秒
- 必要な読み取り速度 = 3 × 8.4 MB/秒 = 25.2 MB/秒
ドキュメントがシステムに保存される期間
容量は、画像が削除されるまでシステムに保存される期間によって決まります。 たとえば、ある顧客は 24 時間で 100,000 枚のグレースケール画像を処理します。Service-Level Agreement に基づき、1 ドキュメントあたりの処理時間は 2 日です。その後、顧客の ERP システムで追加チェックが行われるため、処理済みドキュメントは 2 週間保存されます。不一致が見つかった場合は、ドキュメントを FlexiCapture で編集し、再度 ERP システムにアップロードします。 したがって、画像は 2 + 14 = 16 日間保存されます。A4 グレースケール画像の平均ファイルサイズを 3 MB とすると、システムには 16 × 100,000 × 3 MB = 4.8 TB のデータが蓄積されます。Large
24時間あたり30万ページを超えるカラーページを処理するには、Large 構成を使用します。24時間あたり、白黒ページで最大300万ページ、カラーページで最大100万ページを処理できます。 Medium のすべての推奨事項が Large にも適用されますが、この規模ではそのすべてに従う必要があります。システムの各部分の負荷を見積もり、過剰なコストをかけずに処理できる十分な性能のハードウェアを選定してください。インターネット接続とバックエンド コネクタをテストし、目標とする性能を維持できることを確認してください。 当初から、10 Gb/s ネットワークと高スループットの FileStorage を計画してください。 以下のダイアグラムは、Large 構成で想定されるネットワーク アーキテクチャの例を示しています。
