System Activity リードレプリカ データベースの作成

エリート システム アクティビティ機能は、Looker がホストするインスタンスでのみ使用できます。セルフホスト型インスタンスの場合は、Looker バックエンド データベースのリードレプリカを作成することで、エリート システム アクティビティのメリットを活用できます。

このオプションを使用するには、MySQL バックエンド データベースを使用するようにインスタンスを構成する必要があります。

このオプションは、セルフホスト型インスタンスでのみ使用できます。Looker でホストされるインスタンスの場合は、Google Cloud セールス スペシャリストにお問い合わせください。

MySQL バックエンド データベースのリードレプリカを設定し、システム アクティビティ クエリでリードレプリカを使用するように Looker を構成するには:

  1. MySQL バックエンド データベースのリードレプリカを作成します。たとえば、AWS で MySQL リードレプリカを作成するには、Amazon のリードレプリカの操作ドキュメントの手順に従います。DB インスタンス ID とポート番号を保存します。これは、次のステップで Looker を構成する際に必要になります。

  2. Looker インスタンスで sa-db という名前の yaml ファイルを作成し、次の内容を含めます。

    dialect: mysql
    host: <DB instance identifier>
    username: root
    password: <password>
    database: looker
    port: <DB instance port>
    
  3. Looker を停止する。

  4. 起動オプション --internal-analytics-connection-file sa-db.yml を使用して Looker を起動します。これにより、システム アクティビティ クエリに sa-db.yml で構成されたリードレプリカ データベースを使用するように Looker が構成されます。

  5. 必要に応じて、次の起動オプションを使用してエリート システム アクティビティの構成を変更することもできます。

    • --internal-analytics-retention-days=<number>: デフォルトでは、システム アクティビティは 90 日分の履歴データを保存します。この起動オプションを使用して、システム アクティビティを格納する日数を指定します。データの保持を 90 日を超えて延長することはおすすめしませんが、データ保持期間を短くするとパフォーマンスを改善できます。デフォルトの 90 日を超えて履歴保持を増やしたい場合は、エリート システム アクティビティ オプションを使用した Looker のホスティングについてアカウント責任者に質問してください。

    デフォルトを超える日数が必要な場合は、アカウント責任者にエリート システム アクティビティ オプション --internal-analytics-connection-pool-size=<number> を使用した Looker のホスティングについてお問い合わせください。デフォルトでは、システム アクティビティ クエリは 1 つのデータベース接続プールサイズに制限されます。つまり、複数のシステム分析クエリはキューに格納され、バックエンド データベースで順次実行されることになります。これにより、内部データベースがシステム分析クエリで過負荷にならないようにしています。この起動オプションを使用して、同時に実行できる同時実行システム分析クエリの数を指定できます。例、8

システム アクティビティ クエリでリードレプリカ データベースを使用するように構成した後、Looker は引き続き内部 MySQL データベースを内部アプリケーション データベースとして使用します。システム アクティビティ ダッシュボードと Explore では、リードレプリカ データベースを使用します。

Looker が、システム アクティビティ クエリにリードレプリカ データベースを使用していることを確認するには:

  • sa-db.yml ファイルのパスワードを変更すると、システム アクティビティ クエリからエラーが返されます。
  • MySQL データベースで、show processlist; を実行すると、現在実行中のプロセスを確認できます。メインの Looker データベースではスリープ状態の多くのオープン接続が表示される一方、looker__internal__analytics データベースでは分析クエリが表示されます。

システム アクティビティ ダッシュボードと Explore ではリードレプリカ データベースが使用されますが、従来の i__looker Explore では、引き続きプライマリ バックエンド データベースにクエリが送信されます。i__looker をクエリする保存済みの Look またはダッシュボードを更新し、システム アクティビティをクエリするようにします。上記のメソッドを使用して、保存された Look とダッシュボードが、リードレプリカ データベースへの正しい接続を照会していることを確認します。