対象バージョン
本オプションが動作する対象バージョンはV8.0.11以降、V9.7.0以降です。
V8.0.10以下またはV9.6.2以下の場合はこちらを参照してください。
概要
YellowfinのExcelのエクスポート処理は対象のデータ保持、ExcelのBookの作成、編集を全てメモリ上で行います。これは処理速度を最優先としたロジックのためです。
対象データが多い場合や表の縦×横が大きい場合は多くのメモリを使用します。そのため、メモリの枯渇が原因でOut Of Memoryエラーの発生やCPUが高負荷になることにより、処理が中断や遅延することがありました。 Report Low Memory Exportオプションを設定することにより、ExcelのBookの作成、編集をメモリ上ではなくアプリケーションサーバーにテンポラリファイルを作成し、そのファイル上で処理を行うようになり、少ないメモリでExcelにエクスポートができるようになります。
「少ないメモリでエクスポート」オプションの表示
Report Low Memory Exportオプションを有効にするには、リポジトリデータベースに対してクエリーを直接実行する必要があります。
リポジトリデータベースに直接クエリーを実行することによってYellowfinの環境に影響を与え、回復できなくなる可能性があるため、データベース管理者と相談して、クエリーを実行する前にデータベースのバックアップを取得してください。
また、クエリーを実行する前に必ずYellowfinのインスタンスを停止してください。
下記のクエリーを実行することによりReport Low Memory Exportオプションを有効にします。
INSERT INTO Configuration(IpOrg, ConfigTypeCode, ConfigCode, ConfigData) values(1, 'SYSTEM', 'SHOWLOWMEMORYEXPORTOPTION' , 'true');
クエリーを実行後にYellowfinを起動するとシステム構成とレポートエクスポートのXLSXのメニューに「少ないメモリでエクスポート」が表示されます。
管理コンソール→システム構成→システム→XLSXエクスポートのデフォルト
レポートのXLSXエクスポート
システム構成の「少ないメモリでエクスポート」をONにすることによりレポートのXLSXエクスポートメニューの「少ないメモリでエクスポート」のデフォルトがONになります。ただし、レポートのエクスポートオプションは最後のエクスポート時のオプションを引き継ぎますので、ここでいうデフォルトとは初めてエクスポートするレポートのエクスポートオプションの状態を指します。
レポートのXLSXエクスポートメニューの「少ないメモリでエクスポート」をONにすることでメモリの消費を少なくXLSXをエクスポートできます。
制限及び注意
- レポートのグラフが表の上または左に配置されている場合、レポートのデータ量によってエクスポートが処理中にエラーが発生するケースがございます。
こちらはReport Low Memory Exportの処理の技術的な制限となります。
グラフの配置位置を右または下にすることでエラーが回避可能となりますので、エラーが発生するレポートに関しましてはグラフの配置位置を変更していただき運用回避をお願いします。
また、レポートのXLSXエクスポートメニューの「少ないメモリでエクスポート」をOFFにすることでも回避できますが、データ量が多い場合はメモリおよびCPUのリソースの多くを使用しますのでご注意ください。 - アプリケーションサーバーのディスクにテンポラリーファイルを作成します。
処理の途中でテンポラリーファイルのサイズがエクスポートファイルの10倍超になることがあります。
処理が終了すればテンポラリーファイルは削除されますが、同時に複数のExcelのエクスポート処理が実行された場合は処理の数だけテンポラリーファイルが作成されます。
アプリケーションサーバーのディスクの空き容量には余裕をもたせてください。 - 本オプションが有効な状態でExcelのエクスポートを行うと、セル幅及びセル高の調整を行いません。
必要に応じてエクスポート後のxlsxファイルをExcelで開き、セル幅及びセル高の調整を行ってください。
ご不明の点がございましたら、Yellowfinサポートサイトからお問い合わせください