オープンデータのレポート機能の更新

シラサギ v1.8.0 から、オープンデータにデータセットのダウンロード数に関するレポート機能が搭載されました。 しかし、このレポート機能には以下のような問題点があることが分かりました。

シラサギ v1.13.0 ではこれらの問題を修正しましたが、データの修正が必要です。 本ページではデータの修正方法を解説します。

なお、オープンデータを利用されていない場合、本ページで解説する手順の実行は不要です。 また、シラサギ v1.8.0 よりも前のバージョンを利用している場合も、本ページで解説する手順の実行は不要です。

v1.13.0 での改善について

ダウンロード数の集計に関しては、動的に集計するのではなく、夜間の定期実行(具体的には ss:daily)で、ダウンロード数を集計し、レポートを作成し、シラサギの管理画面上には作成済みのレポートを表示することで、データベースの負荷軽減や、履歴レコード件数が多くてもタイムアウトしないように改善しました。

履歴については、夜間の定期実行(具体的には ss:every_monday)で、2 週間よりも前の履歴を ZIP ファイルへとアーカイブし、データベースからは削除するするようにしました。 アーカイブした結果は、シラサギの管理画面からダウンロードすることができます。

シラサギ v1.13.0 では上記のように改善したので、以下のタスクを実行する必要があります。

  1. 古い履歴レコードの更新
  2. 全履歴レコードからレポートの作成
  3. 古い履歴レコードのアーカイブ化

これらの処理は、履歴のレコード件数に比例して処理時間がかかり、場合によっては 1 日以上の時間がかかる可能性もあるので、計画的に実行してください。

DB の差分更新

本ページで解説するタスクを実行する前に、SHIRASAGI の更新のDBの差分更新を参照し、データベースのデータを修正してください。

古い履歴レコードの更新

次の 2 つの Rake タスクを実行します。

bundle exec rake opendata:history:update_all_download
bundle exec rake opendata:history:update_all_preview

全履歴レコードからレポートの作成

次の 3 つの Rake タスクを実行します。

bundle exec rake opendata:report:generate_all_download site=www
bundle exec rake opendata:report:generate_all_access site=www
bundle exec rake opendata:report:generate_all_preview site=www

www の箇所は、運用しているオープンデータサイトのホスト名に応じて適時変更してください。

古い履歴レコードのアーカイブ化

次の 2 つの Rake タスクを実行します。

bundle exec rake opendata:history:archive_all_download site=www
bundle exec rake opendata:history:archive_all_preview site=www

www の箇所は、運用しているオープンデータサイトのホスト名に応じて適時変更してください。