30日間の無料評価版をお試しいただけます。


Yellowfinは、特定のニーズやプロジェクトのユーザー数に基づき、異なる構成でインストールすることができます。以下に、使用される可能性の高い3つの構成を紹介します。


    • 単一サーバへのインストール
    • アプリケーションサーバとデータベースサーバの分離
    • 複数サーバでのクラスタ構成



単一サーバへのインストール

これは、Yellowfinのアプリケーションサーバとリポジトリデータベースを、同一サーバ上に配置するレイアウトです。リポジトリとして、レポート作成に使用するソースが、同一DBMSに存在する場合もあります。



これは、スモールスタートに最適な構成であり、ハードウェア費用とインストールにかかる労力を最小化することで、迅速にYellowfinを実装します。この構成は、Yellowfinのアプリケーションサーバとデータベースサーバ間のネットワークレイテンシーを排除しますが、両システムはシステムリソースを共有します。



アプリケーションサーバとデータベースサーバを個別にインストール

Yellowfinのリポジトリデータベースとアプリケーションサーバを個別にインストールすることで、大規模ユーザーもサポートできるスケーラビリティを提供します。これはまた、レポートサーバとデータベースの管理を個別に調整する機能を強化します。これは、単一ノードのYellowfin構成に推奨されるレイアウトです。



この構成は、Yellowfinのアプリケーションサーバとリポジトリデータベース間にネットワークレイテンシーを生み出しますが、各コンポーネントでシステム全体を占有することができます。この構成からのクラスタリングもまたシンプルです。キャパシティを拡張するために、追加のアプリケーションサーバノードをリポジトリに接続することができます。



クラスタのインストール

大規模同時接続ユーザーと高可用性のために、Yellowfinをクラスタ構成で構築できます。



クラスタに追加された各アプリケーションサーバノードは、追加ユーザーをサポートするための容量を増やします。処理にかかる負荷は、利用可能なノード全体に分散されます。


Yellowfin ノードへの多重リクエストを分散するために、ロードバランサーが必要です。これはハードウェア機器でも、(HAProxy、Apache Webserver、IISなどの)ソフトウェアアプリケーションでも構いません。


Yellowfin ノードは「Cluster Aware」となり、アプリケーション間の同期を図るために、お互いに通信をします。この機能を有効にしなくてはいけません。Yellowfinのクラスタ構成について、より詳細な情報は、Yellowfinクラスタリングガイドを参照してください。


Yellowfin ノードは単一のリポジトリデータベースを共有するため、クラスタの負荷をサポートするためにスケール可能でなくてはいけません。クラスタ化されたデータベースシステムを使用して、Yellowfinのリポジトリとレポートデータソースの両方に追加の容量を提供することを推奨します。



サーバの配置に関する考慮事項

ユーザーの地理的な分散と、最適なパフォーマンスを得るための様々なYellowfin サーバの配置は、導入時に特に重要な観点です。こちらの項目では、Yellowfin コンポーネントの様々な配置と、エンドユーザークライアントとのインタラクションに関する重要な考慮事項について紹介します。


アプリケーションとYellowfinデータベース

アプリケーションサーバとデータベースサーバ(メタデータリポジトリ)は、頻繁に通信をするため、互いに近接している必要があります。専用の高速、広帯域ネットワークは、ネットワークレイテンシーの減少により、大幅にパフォーマンスを向上させます。


データベースサーバの機能に応じて、複数の地域にまたがる分散リポジトリデータベースを実行することは可能ですが、このデータベースはトランザクションの整合性を保つことが重要です。



アプリケーションサーバとデータベース

アプリケーションサーバと、データベースサーバが相対的に配置されている理由は、組織のデータソース(トランザクションデータベース、またはデータウェアハウス)の配置にも当てはまります。アプリケーションサーバとデータソースは、地理的な分散が可能ですが、専用の高速、広帯域ネットワークは、大幅にパフォーマンスを向上させます。


一般的に、Yellowfinのデータソースは読み取り専用であり、読み取り専用レプリカ上でクエリーを実行することが可能です。Yellowfinには、複数のデータソースノードに渡りレポートクエリーを分散するビルトイン機能はありませんが、多くのJDBCドライバーには、ビルトインのクラスタリング機能があります。



アプリケーションサーバとWeb サーバ

アプリケーションサーバは、多くの導入事例において、Webサーバの役割を担います。Webサーバは、静的コンテンツを配信するソフトウェアのコンポーネントです。Webサーバは、Yellowfinから静的コンテンツを配信するように構成することが可能で、これはアプリケーションサーバ上のリソースを解放します。


Webサーバを使用する場合、通常は静的コンテンツを配信するよう構成され、動的コンテンツへのリクエストは、アプリケーションサーバに渡されます。そのため、Webサーバとアプリケーションサーバは、同一の高速ネットワーク上に配置することを推奨します。


Web ユーザーに関連するWeb サーバ

一般的に、WebサーバとWebブラウザ間のネットワーク帯域は、最も安定せず、制御が困難です。そのため、ユーザーが広範囲に分散し、広帯域ネットワークが存在しない場合は、リモートユーザーにより近いところにWebサーバを配置するのが一般的です。しかし、静的コンテンツがユーザーのブラウザにキャッシュされると、ユーザーからのリクエストの大部分は、アプリケーションサーバへの動的リクエストになります。






  • No labels