Tableau Catalog の有効化
Tableau Catalog(新しいウィンドウでリンクが開く) は、ワークブック、データ ソース、シート、フローなど、Tableau Cloud サイトや Tableau Server のすべてのコンテンツを検出してインデックス化します。(従来のメトリクス機能は、2024 年 2 月の Tableau Cloud、Tableau Server バージョン 2024.2 で廃止されました。詳細については、「メトリクスの作成とトラブルシューティング (廃止)」を参照してください。) コンテンツ (またはメタデータ)、およびコンテンツのスキーマと系列についての情報を収集するために、インデックス作成が使用されます。その後メタデータより、Catalog は Tableau Cloud サイトまたは Tableau Server 上のコンテンツが使用するすべてのデータベース、ファイル、表を特定します。
Catalog は データ管理 ライセンスで入手可能です。詳細については、データ管理 についてを参照してください。
Catalog に加え、メタデータ メソッド(新しいウィンドウでリンクが開く)を使用して Tableau メタデータ API(新しいウィンドウでリンクが開く) や Tableau REST API からコンテンツについてのメタデータにアクセスすることもできます。
Catalog を有効にする前
Tableau Server 管理者は、Tableau Server 環境で Catalog の最適なパフォーマンスを確保するために、Catalog を有効にする前および有効化の実行中に考慮する必要がある事項がいくつかあります。
必要なバージョン
Catalog を有効にする前に、次のいずれかのバージョンの Tableau Server を実行していることを確認します。
- 少なくとも Tableau Server 2019.3.4 以降
- 少なくとも Tableau Server 2019.4.2 以降
- 少なくとも Tableau Server 2020.1.0 以降
- 少なくとも Tableau Server 2020.2.15 以降
- Tableau Server 2020.3 以降
上記バージョンが必要な理由の詳細については、「Tableau ナレッジ ベース」を参照してください。
Catalog を有効にする場合の期待値
Catalog を有効にすると、Tableau Server に既に存在するコンテンツが直ちにインデックス化されます。
初期取り込み
インデックス作成プロセスは、2 つの主要コンポーネントで構成され、そのうちの 1 つは初期取り込みと呼ばれます。初期取り込みは、次の 2 つの追加コンポーネントに分割できます。
- コンテンツのバックフィル
- 系列のバックフィル
コンテンツのバックフィルのステータスと系列のバックフィルのステータスは、今後進行状況を監視し、Tableau Server 環境で Catalog が正常に有効になっていて実行されていることを検証する際に注意すべき重要な項目です。
初期取り込み速度
最初に Catalog でコンテンツのインデックス作成にかかる時間は、次の 2 つの要素によって異なります。
Tableau Server 上のコンテンツの量: コンテンツの量は、ワークブック、メトリクス、パブリッシュされたデータ ソース、および Tableau Server にパブリッシュされたフローの合計数によって測定されます。詳細については、メタデータを格納するためのディスク領域を参照してください。
非インタラクティブなマイクロサービス コンテナーの数: Catalog は、非インタラクティブなマイクロサービス コンテナーを使用して、Tableau Server 上のすべてのコンテンツのインデックスを作成します。詳細については、「非インタラクティブなマイクロサービス コンテナーのメモリ」を参照してください。
初期取り込みに影響を与える要因を理解することは、環境で Catalog を有効にして実行するのにかかる時間を測定するのに役立ちます。
メタデータを格納するためのディスク領域
初期取り込み中にメタデータが生成され、Tableau Server リポジトリ (「関係」PostgreSQL データベース) に格納されます。メタデータを格納するために必要となるディスク領域の量は、リポジトリ (「ワークグループ」PostgreSQL データベース) で現在使用されているディスク領域の約半分です。
たとえば、Catalog を有効にする前にリポジトリで 50 GB のディスク領域を使用すると、Catalog の有効後は最大 75 GB のディスク領域を使用できます。
非インタラクティブなマイクロサービス コンテナーのメモリ
初期取り込みは、非インタラクティブなマイクロサービス コンテナー内で実行されます。非インタラクティブなマイクロサービス コンテナーは、2 つの Tableau Server マイクロサービス コンテナー(新しいウィンドウでリンクが開く) プロセスのうちのいずれかです。既定では、非インタラクティブなマイクロサービス コンテナーの 1 つのインスタンスが、バックグラウンダー プロセスがインストールされているすべてのノードに追加されます。
既定では、非インタラクティブなマイクロサービス コンテナーの単一インスタンスで行われる初期取り込み時に、バックグラウンダー ノードで最大 4 GB のメモリを使用できます。Tableau Server 上のコンテンツの量が 10,000 を超える場合、非インタラクティブなマイクロサービス コンテナーでは、バックグラウンダー ノードで最大 16 GB のメモリが必要になる場合があります。したがって、Catalog を有効にする場合は、初期取り込みプロセス中に、すべてのバックグラウンダー ノードに、非インタラクティブなマイクロサービス コンテナーをサポートするための使用可能な容量があることを確認します。容量を増やす必要がある場合は、非インタラクティブなコンテナーに対して JVM ヒープ サイズを更新し、バックグラウンダー ノードで最大 16 GB のメモリを割り当てる必要があります。詳細については、「noninteractive.vmopts」を参照してください。
非インタラクティブなマイクロサービス コンテナーを追加して初期取り込み時間を短縮する場合は、まず必要なコンテナー数の合計を決定し (以下の「ステップ 2: 初期取り込みにかかる時間を見積もる」を使用)、Tableau Server 環境がすべての非インタラクティブなマイクロサービス コンテナーに対応するのに十分な容量で構成されているかどうかを確認します。Tableau Server 環境の構成方法によっては、初期取り込み時間を短縮するのに必要となる非インタラクティブなマイクロサービス コンテナーをすべて追加することができない場合があります。
Catalog を有効にするためのベストプラクティス
初期取り込みの速度と要件は各 Tableau Server 環境に固有であるため、Catalog を有効にする場合は、次の 1 つまたは複数を実行することをお勧めします。
Tableau Server リポジトリに、初期取り込みによって生成されたり格納されたりする追加のメタデータに対応するために使用できる十分なディスク容量があることを確認します。一般的に、リポジトリには現在リポジトリが使用しているディスク領域からさらに 50% 追加で必要になります。Tableau Server のディスク容量に関する詳細については、サーバーのディスク容量を参照してください。
Tableau Server のコンテンツ量に応じて、初期取り込み中に、各バックグラウンダー ノードに非インタラクティブなマイクロサービス コンテナーの各インスタンスに対して、4 ~ 16 GB 以上の使用可能なメモリがあることを確認します。
週末にプロセスを実行して、ユーザーが Catalog 機能を使用する前に最初の取り込みが完了できるようにします。
最初に本番コンテンツを使用してテスト環境でプロセスを実行します。これは、取り込む必要のあるコンテンツの種類が摂取速度に重要な役割を果たす可能性があるためです。
Catalog を有効にする手順の概要
次のステップは、Tableau Server で Catalog を有効にして実行するプロセスをまとめたものです。ステップは順番に実行する必要があります。
- Tableau Server 上のコンテンツ量を決定する
- 最初の取り込み時間を見積もる
- 最初の取り込み時間を短縮する
- データ管理 ライセンスの認証
- Catalog 機能をオフにする
- tsm maintenance metadata-services コマンドを実行する
- 初期取り込みの進行状況を監視し、そのステータスを検証する
- SMTP の構成
- Catalog 機能をオンにする
注: Tableau Sever 上の Tableau コンテンツに関するメタデータのインデックス化はメタデータ API によって処理されるため、Catalog を実行および使用するには、メタデータ API を有効にする必要があります。
Catalog の有効化
ステップ 1: Tableau Server 上のコンテンツ量を決定する
Tableau Server 上のコンテンツ量を決定するには、次の手順を実行します。
管理者の認証資格情報を使用して Tableau Server にサインインします。
[探索] ページに移動します。
[最上位のプロジェクト] ドロップダウン メニューをクリックし、[すべてのワークブック]、[すべてのメトリクス]、[すべてのデータ ソース]、および [すべてのフロー] の横にまとめて数値を追加します。これが、Tableau Server 上にあるコンテンツの合計量となります。
ステップ 2: 初期取り込みにかかる時間を見積もる
Catalog が Tableau Server で初めてコンテンツを取り込むのにかかる時間を見積もるには、お使いの Tableau Server の設定をベースラインの Tableau Server 設定と比較します。
次の設定が含まれる Tableau Server では、最初の取り込みが完了するまでに約 6 時間かかる場合があります。
コンポーネント | ベースライン値 |
---|---|
コンテンツ | 17,000 個のワークブック、メトリクス、パブリッシュされたデータ ソース、およびフロー |
非インタラクティブなマイクロサービス コンテナー | 10 |
取り込み | 最大 6 時間 |
お使いの Tableau Server 環境に含まれているコンテンツがだいたい半量程度の場合は、最初の取り込みが完了するまでにかかる時間も半分程度となる見込みです。
たとえば、8,500 (ワークブック、メトリクス、パブリッシュされたデータ ソース、およびフロー) + 10 非インタラクティブなマイクロサービス コンテナー = 最大 3 時間 (初期取り込み)
お使いの Tableau Server 環境に含まれているコンテンツがだいたい 2 倍程度の場合は、最初の取り込みが完了するまでにかかる時間も 2 倍程度となる見込みです。
たとえば、34,000 (ワークブック、パブリッシュされたデータ ソース、およびフロー) + 10 非インタラクティブなマイクロサービス コンテナー = 最大 12 時間 (初期取り込み)
ステップ 3: 初期取り込みの時間を短縮する
一般に、Catalog での初期取り込みにかかる時間は、非インタラクティブなマイクロサービス コンテナーの数に相関します。初期取り込み時間を短縮するために、非インタラクティブなマイクロサービス コンテナーの数を増やすことができます。
非インタラクティブなマイクロサービス コンテナーの数を増やす
既定では、バックグラウンダーを持つすべてのノードに、非インタラクティブなマイクロサービス コンテナーが 1 つ追加されています。Tableau では、初期取り込み時間を短縮するために、tsm topology set-process
コマンドを使用して、非インタラクティブなマイクロサービス コンテナーの数を増やすことをお勧めします。
クラスタの最初のノード (TSM がインストールされているノード) で管理者としてコマンド プロンプトを開きます。
tsm topology set-process --count <process_count> --node <node_ID> --process <process_name>
コマンドを実行します。たとえば、第一ノードの非インタラクティブなマイクロサービス コンテナーの数を 4 つに増やすには、次のコマンドを実行します。
tsm topology set-process --count 4 –-node node1 --process noninteractive
コマンドとそのグローバル オプションの実行の詳細については、 tsm トポロジーを参照してください。
重要: 非インタラクティブなマイクロサービス コンテナーの数を増やす前に、次の点を確認してください。
非インタラクティブなマイクロサービス コンテナーを増やす理由は、非インタラクティブなマイクロサービス コンテナーの合計数を増やすためであって、ノードごとの非インタラクティブなマイクロサービス コンテナーの合計数を増やすためではありません。たとえば、4 つのノードがある場合に、非インタラクティブなコンテナーの数を 8 に増やすとします。
--count
tsm コマンドで使用する値は 2 です。非インタラクティブなマイクロサービス コンテナーを追加するごとに、ノードで 4GB の追加メモリが使用され、Tableau Server リポジトリ (PostreSQL データベース) に負荷がかかるようになります。
非インタラクティブなマイクロサービス コンテナーを一度に 2 つずつ段階的に増やしながら、Tableau Server の環境を注意深く監視して、Tableau Server リポジトリ (PostgreSQL データベース) の CPU 使用率に関する問題を回避することをくお勧めします。
非インタラクティブなマイクロサービスを多く追加しすぎると、PostgreSQL データベースの CPU 使用率が急増してフェールオーバーする可能性があることに注意してください。監視する必要がある現象には、vizportal ログの SQLException エラーなどがあります。詳細については、「リポジトリ フェールオーバー」(新しいウィンドウでリンクが開く)トピックを参照してください。
ステップ 4: データ管理 ライセンスを認証する
(データ管理 が必要です)
まだ完了していない場合は、 データ管理 をアクティブ化できます。詳細については、データ管理 のライセンスを参照してください。
ステップ 5 (オプション): 各サイトの Catalog の機能をオフにする
(データ管理 が必要です)
データ管理 のアクティブ化の一部として、Catalog の機能は既定で有効になっています。インデックス作成プロセスと完了までにかかる推定時間のため、Catalog 機能を一時的にオフにして、Catalog 機能が完全な状態で提供でき、正確な結果が得られるようになるまで Tableau Server ユーザーがこれらの機能にアクセスできないようにすることを検討してもよいでしょう。
管理者の認証資格情報を使用して Tableau Server にサインインします。
左側のナビゲーション ペインで、[設定] をクリックします。
[全般] タブで、[Tableau Catalog] の下にある [Tableau Catalog をオンにする] チェック ボックスをオフにします。
Tableau Server の各サイトで、ステップ 2 ~ 3 を繰り返します。
ステップ6:tsm maintenance metadata-services コマンドを実行する
tsm maintenance metadata-services
コマンドを実行して、Tableau メタデータ API を有効にします。コマンドの実行は、初期取り込みを開始します。Tableau Server が データ管理 でライセンスされている場合、このコマンドを実行すると Catalog 機能もオンになります (以前にオフにされていない場合)。
クラスタの最初のノード (TSM がインストールされているノード) で管理者としてコマンド プロンプトを開きます。
tsm maintenance metadata-services enable
コマンドを実行します。tsm コマンドの実行の詳細については、「tsm maintenance」(新しいウィンドウでリンクが開く)を参照してください。
注: このコマンドを実行するときは、次の点に留意してください。
このコマンドは、Tableau Server で使用されているいくつかのサービスが停止してから起動します。これによって推奨事項などの一部の機能を一時的に使用できなくなります。
この時点で、メタデータの新しいインデックスが作成されます。このコマンドをそれ以降の時間で実行すると、以前のインデックスが作成され、置き換えられます。
ステップ 7: 初期取り込みの進行状況を監視し、その状態を検証する
上記の tsm コマンドを実行すると、初期取り込みプロセスが開始されます。初期取り込みプロセスが円滑に進むよう、バックフィル API を使用してプロセスの進行状況を監視することができます。詳細については、初期取り込みステータスの取得を参照してください。
ステップ 8: SMTP セットアップを構成する
Tableau Server でまだ設定していない場合は、SMTP セットアップを構成してください。SMTP は、データの変更に関する連絡が必要な所有者へのメール送信をサポートしています。SMTP の構成の詳細については、「SMTP セットアップの構成」(新しいウィンドウでリンクが開く)を参照してください。
ステップ 9 (オプション): 各サイトの Catalog 機能をオンにする
(データ管理 が必要です)
上記のいずれかの手順で Catalog を有効にする前に Catalog 機能をオフにした場合は、Catalog をオンにして、ユーザーがその機能にアクセスできるようにする必要があります。
管理者の認証資格情報を使用して Tableau Server にサインインします。
左側のナビゲーション ペインで、[設定] をクリックします。
[Tableau Catalog] の [全般] タブで [Tableau Catalog をオンにする] チェック ボックスを選択します。
Tableau Server の各サイトで、ステップ 2 ~ 3 を繰り返します。
Catalog のトラブルシューティング
Catalog の使用時に、ユーザーは次のいずれかの問題に直面する可能性があります。
「Timeout limit and node limit exceeded (タイムアウト制限およびノード制限を超過しました)」メッセージ
大量の結果を返す必要がある Catalog のタスクが
タイムアウト制限
Catalog 内のタスクがタイムアウト制限に達すると、管理者およびユーザーに次のメッセージが表示されます。
「Showing partial results, Request time limit exceeded.Try again later. (結果の一部を表示しています。要求時間の制限を超過しました。後でもう一度やり直してください。)」または TIME_LIMIT_EXCEEDED
この問題を解決するには、Tableau Server 管理者として、
tsm configuration set –k metadata.query.limits.time
コマンドを使用してタイムアウト制限を増やすことができます。詳細については、「tsm configuration」(新しいウィンドウでリンクが開く)トピックおよび「tsm configuration set のオプション」(新しいウィンドウでリンクが開く)トピックを参照してください。重要: タイムアウト制限を増やすと、さらに多くの CPU をより長く使用できるため、Tableau Server 上の他のプロセスのパフォーマンスに影響を与える可能性があります。
ノード制限
Catalog 内のタスクがノード制限に達すると、管理者およびユーザーに次のメッセージが表示されます。
NODE_LIMIT_EXCEEDED
この問題を解決するには、Tableau Server 管理者として、
tsm configuration set –k metadata.query.limits.count
コマンドを使用してノード制限を増やすことができます。詳細については、「tsm configuration」(新しいウィンドウでリンクが開く)トピックおよび「tsm configuration set のオプション」(新しいウィンドウでリンクが開く)トピックを参照してください。重要: タイムアウト制限を増やすと、システムのメモリに影響を与える可能性があります。
コンテンツが見つからない
最初の取り込みの後に、Catalog でコンテンツが欠落していると思われる場合は、イベント API を使用してトラブルシューティングを行うことができます。イベント処理では、最初に取り込みした後に Tableau Server でコンテンツのインデックスを作成します。詳細については、イベント ステータスの取得を参照してください。
埋め込まれた外部アセットとそのダウンストリーム のTableau コンテンツ間の接続が削除されると、その接続は、毎日 22:00:00 UTC (協定世界時) に実行されるバックグラウンダー プロセスによって自動的に削除されるまで、Catalog (または Tableau メタデータ API) に残ります。たとえば、最初に埋め込みテキスト ファイル A でパブリッシュされたワークブックが、埋め込みテキスト ファイル B で再びパブリッシュされた場合、ファイル A は、バックグラウンダー プロセスでそれを削除できるようになるまで、外部アセットとして表示 (またはクエリを実行可能) のままになります。
これらのタイプの外部アセットを削除したくない場合、またはこのプロセス専用にしたくないシステム リソースを使用していると思われる場合は、このバックグラウンダー プロセスの実行を無効にすることができます。または、削除される外部埋め込みアセットの数を調整することもできます。詳細については、features.DeleteOrphanedEmbeddedDatabaseAsset および databaseservice.max_database_deletes_per_runを参照してください。
このプロセスは次のいずれかの方法で監視できます。
抽出以外のバックグラウンド タスク管理ビューで正規化ロジックによってタスクのタイプを変更した後、ワンタイム ジョブにフィルターを設定すると、既存のデータベース / テーブル アセットがもう一度正規化されます。
「孤立した埋め込みデータベースの削除の完了」または Tableau Server ログ ファイルの database_service_canonicalization_change イベントを参照してください。
初期取り込み後のパフォーマンス
特定のコンテンツが頻繁に更新される (頻度の高いスケジュール、コマンド ライン、API リクエストなどを介して) 一部の Tableau Server 環境では、インデックス作成プロセスが飽和状態になる可能性があります。このような場合、サーバー管理者は、Catalog のパフォーマンスを適切に維持するためにイベント スロットルを有効にすることを検討する場合があります。詳細については、metadata.ingestor.pipeline.throttleEventsEnableを参照してください。
注: イベント スロットルが有効になっていると、ユーザーは、Catalog でのコンテンツ変更に意図的な遅延が発生することに気付くことがあります。
メモリ不足エラー
場合によっては、複雑なコンテンツを取り込む際に問題が生じて、Tableau Server でメモリ不足エラーが発生することがあります。Tableau Server のメモリ不足エラーの原因がコンテンツの取り込みであると思われる場合、問題を解決するには、Tableau サポートに連絡して metadata.ingestor.blocklistが取り込まれないようにします。
Catalog の無効化
カタログを無効にするには、2つの方法があります。
各サイトの Catalog 機能をオフにする
(データ管理 が必要です)
Catalog 機能はいつでもオフにできます。Catalog がオフになっている場合、 Catalog の機能にアクセスすることができません。この機能には、データ品質に関する警告の追加や、データベースやテーブルのアセットに対するパーミッションの明示的な管理などが含まれます。ただし、Catalog はパブリッシュ済みコンテンツのインデックス化を継続し、メタデータには Tableau メタデータ API から、また Tableau REST API のメタデータ メソッドからアクセスすることができます。
- 管理者の認証資格情報を使用して Tableau Server にサインインします。
- 左側のナビゲーション ペインで、[設定] をクリックします。
- [全般] タブで、[Tableau Catalog] の下にある [Tableau Catalog をオンにする] チェック ボックスをオフにします。
メタデータのインデックス作成を停止する
Tableau Server でパブリッシュ済みコンテンツのインデックス化を中止するには、Tableau メタデータ API を無効にします。メタデータ API を無効にするには、tsm maintenance metadata-services disable
コマンドを実行します。詳細については、「tsm maintenance」(新しいウィンドウでリンクが開く)を参照してください。