注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

Slack [Beta]

Slack コネクタはベータ版の状態であり、ユーザーの Foundry エンロールメントで利用できない場合があります。Data Connection の新しいソースページで Slack が見つからない場合は、アクセスを有効にするために Palantir サポートに連絡してください。

Foundry を Slack に接続し、CData JDBC ドライバーを使用して Foundry データセットにデータをインポートします。

サポートされている機能

機能ステータス
バルクインポート🟡 ベータ
探索🟡 ベータ
インクリメンタル🟡 ベータ

データモデル

CData ドライバーは、Slack データをリレーショナルデータベースのテーブルのリストとしてモデル化し、標準 SQL ステートメントを使用してクエリを実行できます。利用可能なテーブルとその内容についての情報は、CData ドキュメントの Slack テーブル ↗ を参照してください。

セットアップ

  1. Data Connection アプリケーションを開き、画面右上の + New Source を選択します。
  2. 利用可能なコネクタタイプから Slack を選択します。
  3. インターネット経由で 直接接続 するか、仲介エージェント経由で接続 するかを選択します。
  4. 以下のセクションの情報を使用して、コネクタのセットアップを続行するための追加設定プロンプトに従います。

コネクタの設定についてさらに詳しく学びましょう。

認証

Slack への認証はベアラートークンを使用して行います。これは、ユーザーの Slack ワークスペースにインストールされた Slack アプリに関連付けられたボットユーザートークンを使用して提供できます。

ボットトークンの使用により、個々のユーザーに直接リンクしない、永続的かつ耐久性のあるソースの作成が可能になります。Slack アプリを作成し、そのボットトークンを取得するには、Slack ドキュメントの手順に従ってください:

権限

データテーブルをインジェストするには、source configuration資格情報 設定で構成されたベアラートークンの Slack アプリに特定の Slack 権限スコープが付与されている必要があります。

すべての CData ドライバ機能をサポートするために必要な権限スコープの完全なリストについては、CData ドキュメント ↗ を参照してください。データインジェスト機能のみを使用する場合、Slack コネクタを使用する場合には書き込み権限スコープは必要ありません。権限スコープの詳細については、Slack ドキュメント ↗ を参照してください。

データインジェストに使用する Slack アプリケーションの権限スコープの要件は、これらのテーブル内の特定のデータテーブルまたは Slack チャンネルデータの種類のみが必要な場合に削減できます。

: Slack メッセージおよびチャンネルタイプに関連するデータテーブルをインジェストするための権限スコープの要件には次のものが含まれます:

テーブル名スコープ常に必要か?説明
Usersusers:readはいユーザーをロードする。
Channelschannels:read, groups:read, im:read, mpim:readいいえ公開、非公開、im(ダイレクトメッセージ)、または mpim(グループダイレクトメッセージ)チャンネルをロードする場合にのみ必要です。すべてのチャンネルタイプをロードする場合(チャンネルフィルターが指定されていない場合のデフォルト)にはすべてが必要です。
Messages または MessageReplieschannels:history, groups:history, im:history, mpim:history + Channels の要件いいえ公開、非公開、im または mpim チャンネルからメッセージ/返信をロードする場合にのみ必要です。すべてのチャンネルタイプからロードする場合(チャンネルフィルターが指定されていない場合のデフォルト)にはすべてが必要です。チャンネルメンバーシップ要件については以下の追加注記も参照してください。

Slack コネクタを使用して Slack アプリケーションのボットトークンを使用して特定の Slack チャンネルからメッセージとメッセージ返信をインジェストするには、最初に Slack アプリケーションが Slack チャンネルに 追加される 必要があります。また、上記のようにチャンネルタイプの読み取り権限スコープが必要です。 Slack アプリケーションはユーザーが手動でチャンネルに追加するか、Slack Web API ↗ を使用してアプリケーションのボットユーザートークンを使用してプログラムで公開チャンネルに参加することができます。

ネットワーキング

Slack コネクタは、ポート 443slack.com へのネットワークアクセスを必要とします。インターネット経由で直接接続を使用している場合は、エグレスポリシー が存在することを確認してください。 エージェントランタイムの場合、エージェントを実行しているサーバーはこのドメインへのネットワークアクセスが必要です。

設定オプション

Slack コネクタで利用できる設定オプションは次のとおりです:

オプション必須か?説明
資格情報設定はい上記の 認証 ガイドラインを使用して設定します。
プロキシ設定いいえプロキシ接続を Slack に許可するためにユーザー名とパスワードを入力します。
ログいいえコネクタが情報をログに記録する方法を制御するために有効にします。詳細については ログ設定 セクションを参照してください。

Slack からデータを同期する

Slack の同期を設定するには、ソース 概要 画面の右上にある Explore and create syncs を選択します。次に、Foundry に同期したいテーブルを選択します。同期の準備ができたら、Create sync for x datasets を選択します。

Foundry でのソース探索についてさらに詳しく学びましょう。

Slack 同期を設定する

Slack コネクタは、どのデータをどれだけ Foundry に取り込むかを決定するための高度な同期設定を提供します。

利用可能な同期を探索してコネクタに追加した後、Edit syncs に移動します。左側の Syncs パネルから設定したい同期を見つけて、右側の > を選択します。

オプション必須か?説明
テーブルはいSlack から Foundry にコピーするテーブルを選択します。サポートされているテーブルについては データモデル を参照してください。
列選択いいえFoundry に同期する列のサブセットを選択します。詳細については 列選択 セクションを参照してください。
行フィルターいいえ列の値に基づいて条件に合わない行を除外するためのフィルターを有効にして追加します。詳細については 行フィルター セクションを参照してください。
制限いいえ基礎となるクエリに SQL の limit 句を追加します。この設定を使用して、1 回の実行で Foundry に同期する行数を制限できます。
インクリメンタルいいえデータを小さなバッチで Foundry に同期するために有効にします。詳細については インクリメンタル セクションを参照してください。

インクリメンタル

通常、同期はターゲットテーブルから一致するすべての行をインポートし、同期間でデータが変更されたかどうかに関係なく行います。対照的にインクリメンタル同期は、最新の同期に関する状態を維持し、ターゲットから新しい一致する行のみをインジェストします。

インクリメンタル同期は、Slack から大きなテーブルをインジェストする際に使用できます。インクリメンタル同期を使用するには、テーブルに厳密に単調増加する列が含まれている必要があります。さらに、読み取るテーブルには次のデータタイプの列が含まれている必要があります:

  • DATE
  • TIMESTAMP

数値型の列タイプ:

  • int
  • TINYINT
  • SMALLINT
  • INTEGER
  • long
  • BIGINT
  • NUMERIC
  • NUMBER
  • DECIMAL
  • DEC

文字列型の列タイプ:

  • string
  • VARCHAR
  • CHAR
  • NVARCHAR
  • NCHAR
  • LONGNVARCHAR
  • LONGVARCHAR

インクリメンタル同期には次の設定が必要です:

オプション必須か?説明
はいインクリメンタルインジェストに使用する列を選択します。ドロップダウンメニューが空の場合、テーブルにサポートされている列タイプが含まれていません。
初期値はいデータの同期を開始する値。

同期設定の例:

  • Messages テーブルには、構成されたベアラートークンがアクセスできるすべてのチャンネルの非スレッド返信メッセージが含まれています。
  • テーブルにはメッセージ作成のタイムスタンプである CreatedTime タイムスタンプ列があります。
  • APPEND トランザクション同期の インクリメンタル列 として CreatedTime 列を使用し、メッセージを読み取る開始タイムスタンプ値を設定して、新しいメッセージのみをインジェストするように同期を設定できます。
  • 初回の同期が実行されると、開始タイムスタンプ以降に作成されたすべてのメッセージがインジェストされます。
  • 次の同期では、前回の同期の最も最近の CreatedTime タイムスタンプ以降に作成されたメッセージのみがインジェストされます。
  • 同様のインクリメンタル同期設定を使用して、MessageReplies テーブルのスレッドメッセージ返信をその CreatedTime タイムスタンプ列を使用して同期することができます。

列選択

Foundry に同期する列を選択します。列が選択されていない場合は、すべての列が Foundry に同期されます。

すべての列名はアンダースコアまたは英字から始める必要があります。名前にはアンダースコア、英字、または数字のみを含めることができます。

次の例は有効な列名です:

  • _colum_name
  • a_column_name_123

次の例は無効な列名です:

  • 1ColumnName; 数字で始まります。
  • a-column-name*; ハイフンとアスタリスクが含まれています。
  • å-column-name; 英字以外の文字が含まれています。

行フィルター

フィルターを追加して同期する行の数を減らしたり、Foundry に同期する行を個別に選択したりできます。行フィルターを設定するには、テーブルのプレビューが成功する必要があります。行フィルターを設定する前に、インターフェースの一番下にある Preview of inbound data セクションを使用してプレビューを更新することをお勧めします。プレビューを更新して、追加したフィルターの動作を確認できます。

フィルター設定は、行が Foundry に同期されるために通過しなければならない条件のセットで構成されます。それぞれの条件セットは、すべて の条件が一致する場合、または 少なくとも 1 つ の条件が一致する場合に一致するように評価できます。条件セットはネストして、インポートする内容をより細かく制御し、高い柔軟性を提供します。これらは標準 SQL の AND および OR ステートメントに相当します。

条件自体は、Slack のテーブルの列の値とインターフェースに入力できる値の単純な比較です。たとえば、条件 CreatedAt12/04/2021 に等しい場合、CreatedAt 列の値が 12/04/2021 である行のみがインポートされます。列のデータタイプはサポートされる比較操作を決定します。

比較操作

フィルターでサポートされる操作は次のとおりです:

  • EQUAL TO
  • GREATER THAN
  • LESS THAN
  • GREATER THAN OR EQUAL TO
  • LESS THAN OR EQUAL TO
  • NOT EQUAL TO
  • IS NULL
  • IS NOT NULL

これらの比較操作は、標準 SQL でこれらの操作がどのように動作するかと同様に動作します。

文字列型の列は、標準 SQL-92 構文を使用する Like および Not like 演算子もサポートしています。