最近Yellowfinの動作が遅く感じられるようになったため、以下のサポート記事を参考にしてリポジトリのクリーンナップをしようとしています。
https://support.yellowfin.co.jp/hc/ja/articles/115006038007
まず、以下のSQLでリポジトリのテーブルごとのサイズを調べました。
SELECT
relname as table_name,
(select count(column_name) from information_schema.columns c where c.table_name = pg.relname and c.table_schema = 'public') as column_count,
reltuples as rows,
pg_size_pretty(relpages::bigint * 8 * 1024) as size,
pg_size_pretty(cast(case reltuples when 0 then 0 else relpages::bigint * 8192 / reltuples end as bigint)) as average_row_size
FROM pg_class pg,
pg_namespace pgn
WHERE pg.relnamespace = pgn.oid
AND pgn.nspname = 'public'
AND relkind = 'r'
ORDER BY relpages DESC;
結果は以下のようにDocumentDataテーブルのサイズが最も大きいことがわかりました。

次に、以下のSQLを実行して、キャッシュされているレポートの数を調べました。
SELECT a.CategoryCode,a.SubCategoryCode, COUNT (distinct a.reportid) FROM reportheader a, reportinstance b, DocumentItem c WHERE a.reportid=b.reportid and a.reportid=c.subjectid group by a.CategoryCode,a.SubCategoryCode
結果は以下の1件だけでした。

そこで、以下のSQLを実行して、「KPI2」に紐づく情報を調べました。
SELECT * from ContentManagement WHERE ContentCode = 'KPI2'
結果は以下のように返ってきました。

そして、以下のSQLを実行して、ContentManagementId=12307102 のレコードを変更しました。
UPDATE ContentManagement SET VersionHistoryRequiredFlag = false WHERE ContentManagementId = 12307102
最後に、以下のSQLを実行して、タスクスケジュールを更新しました。
UPDATE TaskSchedule SET LastRunDate = null, LastRunGMTDateTime = null, LastRunTime = null, LastRunStatus = null WHERE ScheduleUnitCode='DocumentCleanupTask'
しかし、その後Yellowfinを起動しても、DocumentDataテーブルのサイズに変化はないように見受けられます。
上記手順に何かミスがあるか、それとも私が何か思い違いをしているのでしょうか?
-
ツナマヨさん、こんにちは。
結果は以下の1件だけでした。
レポートが1つしかなかったということですので、そもそもキャッシュの量?サイズ?が少なかった、という可能性はないでしょうか?
サポート記事によると、DocumentDataテーブルには下記のようなデータが保存されているようですね。
DocumentDataテーブル
このテーブルには、多くのレポートと関連するデータが保存されています。
メタデータではなく、実際のデータです。
例えば:
- キャッシュされたレポート結果セット(キャッシュされたレポートやレポートレベルで作成されたスナップショットなど)
- フリーハンドSQL(仮想テーブル、カスタムクエリーフィルター、フリーハンドSQLレポートなど)
- 古いバージョンでキャッシュされたフィルターの結果(最新バージョンのYellowfinはキャッシュしたフィルター結果を別のテーブルに保存します。)
- CSVレポート
ツナマヨさんの試された結果からすると、キャッシュ以外のデータが容量食ってる可能性がありそうですよね。
フリーハンドSQLやCSVレポートがたくさんあるとか、ツマナヨさんのところの環境が古いバージョンから使っていらっしゃるのであれば、フィルターのキャッシュが残ってるとか・・・?
0
コメントするためには サインインしてください
コメント
1件のコメント