Xataのロゴ

サーバーレスPostgres PostgreSQLについて話す

接続する ザタ Excel、Google Sheets、AI、RESTへ

Xata Postgresは、ネットワークプロトコルを介してデータベースとブランチを指定して動作します。Xataコンソールから文字列を貼り付けると、入力したブランチが取得されるブランチになります。

一つの接続、あらゆる表面

Xataデータの保存先

Query Streams は、1 つの読み取り専用接続を介して、Microsoft Excel、Google Sheets、Power BI、MCP 経由の AI アシスタント、および REST エンドポイントから Xata を読み取ります。Xata は Postgres ワイヤ プロトコルを使用するため、エージェントは他の Postgres と同様に Npgsql を使用して接続します。ただし、1 つの点が本当に異なります。Database フィールドは、プレーンな名前ではなく database:branch ルートであり、Xata は、データベース名が大文字小文字を区別せずに渡されるプラットフォーム上の唯一のコネクタです。チェックボックスの設定に関係なく、すべての .sql.xata.sh ホストに対して TLS が強制されます。

Xataはネットワーク上のPostgreSQLです — 標準ドライバーなので、以下のガイドはすべて変更なく適用されます。Xata固有の部分は接続文字列のみで、以下で説明します。 接続の詳細.

  1. チーム、ベンダー、パートナーの皆様へ
  2. XataからExcelへ Microsoft Excel · Excelアドイン

    Xataのリアルタイム結果をワークシートに直接取り込み、必要に応じて更新できます。対応プラットフォームは、デスクトップ版Excel、Excel Online、Microsoft 365です。

    PostgreSQLガイド
  3. XataからGoogleスプレッドシートへの変換 Sheetsアドオン

    サイドバーから保存済みのXataクエリを実行し、結果をシートにドラッグ&ドロップします。共有されている共同作業者は、各自でシートを更新できます。

    PostgreSQLガイド
  4. NovaにXataについて聞いてみて Nova AI · テキストからSQLへ

    平易な英語で質問してください。Novaは既にXataテーブルを認識しており、SQL文を作成して実行し、回答を説明してグラフ化します。クエリを作成する必要も、認証情報を提供する必要もありません。

    Novaの仕組み
  5. Xataからデータビューアへ 結果共有 · チーム、ベンダー、パートナー · 電話、タブレット、デスクトップ

    Xataのリアルタイム結果を、同僚、ベンダー、パートナーなど、誰とでも共有できます。共有されたグリッドはブックマーク可能で、スマートフォン、タブレット、デスクトップなど、どのデバイスで開いても常に最新の状態に戻ります。相手には結果のみが表示され、SQLや認証情報は一切表示されません。

    データビューアの仕組み
  6. アプリとシステム向け
  7. Xata REST API HTTPエンドポイント

    Xataクエリを認証済みのJSONエンドポイントとして公開し、OpenAPI 3.1仕様に準拠させ、Postman、Insomnia、Hoppscotch用の既製コレクションを用意することで、あらゆるアプリケーションから呼び出し可能にします。データベースポートは開放されません。

    PostgreSQLガイド
  8. XataからPower BIへ Power Query M

    生成された Power Query M を Power BI アドバンスト エディターに貼り付けると、レポートは HTTPS 経由で Xata のリアルタイムの結果を読み取ります。ODBC ドライバーもデータベース ポートも必要ありません。

    Power BI の仕組み
  9. XataからAirtableへ 自動化プラットフォーム

    Xataの行をスケジュールに基づいてAirtableベースに同期したり、Airtableの自動化スクリプト内で取得したりできます。

    PostgreSQLガイド
  10. ザタからベースロウへ 自動化プラットフォーム

    RESTエンドポイント経由でXataからBaserowテーブルにデータを供給します(セルフホスト環境またはBaserowクラウド環境)。

    PostgreSQLガイド
  11. XataからSeaTableへ 自動化プラットフォーム

    ファイルをエクスポートしたりデータベースを公開したりすることなく、SeaTableのベースをXataデータで常に最新の状態に保つ。

    PostgreSQLガイド
  12. XataからSmartsheetへ 自動化プラットフォーム

    Xataの結果をSmartsheetのグリッドにプッシュすることで、計画やレポートが先週のエクスポートデータではなく、ソースシステムから読み込まれるようになります。

    PostgreSQLガイド
  13. Xata to Anvil Anvil Works · アプリプラットフォーム

    Anvil PythonアプリをXataでバックアップするには、アプリ内にデータベース認証情報を埋め込むのではなく、RESTエンドポイントを介してバックアップします。

    PostgreSQLガイド
  14. AIツール向け
  15. Xata MCPサーバー Claude、Cursor、およびMCPクライアント

    AIアシスタントに、正しいSQLを作成するために必要なスキーマを含むXataへの読み取り専用アクセス権を付与します。チャットに認証情報は含めないでください。

    PostgreSQLガイド
  16. 人々に届けられる
  17. Xataのアラートとレポート Slack · Discord · メール · Webhook

    Xataクエリをスケジュール設定して、結果をSlack、Discord、メール、または署名付きWebhookに送信するか、行数、しきい値、またはパーセンテージの変化が設定した値を超えるまでメッセージを保留することができます。

    アラートとレポートの仕組み

仕組み

5つのステップ、受信ファイアウォールの変更は不要

01

ネットワークエージェントは、ご都合の良い場所にインストールしてください。送信接続を1つだけ開き、受信接続をリッスンすることはありません。そのため、受信ルールは存在せず、データベースに関する情報も一切公開されません。

02

Xataコンソールから接続文字列を貼り付けてください。ホスト、ポート、ワークスペースID、APIキー、およびデータベース:ブランチのルートがすべて読み込まれています。

03

データベースフィールドが「database:branch」の形式になっているか確認してください。例えば、「mydb:main」のように表示されます。コロンなしの単純な名前でも受け付けられますが、その場合はデフォルトのブランチとして扱われます。

04

どの認証情報がどれに対応しているかを覚えておいてください。ユーザー名はワークスペースIDであり、パスワードはAPIキーであって、アカウントのパスワードではありません。

05

保存します。Microsoft Excel、Google Sheets、Power BI、MCP、REST はすべて、その単一の接続を介してブランチを読み取るか、単一の読み取り専用ステートメントで他のソースに結合します。

機能の詳細解説

Xataがあなたに与えるもの

データベースフィールドは名前ではなくルートです

他のすべてのPostgresコネクタでは、データベースフィールドに識別子が格納され、クエリストリームはPostgresが引用符なしの名前に対して行う処理に従って、それを小文字に変換します。Xataではこれは明らかに誤りであるため、このルールが無効になっている唯一の場所です。

  • 値はデータベース:ブランチのペアです — mydb:main — これは Xata によってルートとして解決されます。これは Postgres の識別子ではなく、識別子の折りたたみ規則に従いません。
  • Feature-X というブランチは、F と X の両方を大文字のまま保持します。feature-x と小文字にすると解決できなくなるため、Xata は正規化の対象外となる唯一のコネクタです。
  • コロンを省略しても接続は機能します — デフォルトブランチに着地します。このカードは、何もせずに見過ごすのではなく、この点を指摘します。なぜなら、フィーチャーブランチを指定しようとしたのにメインブランチに着地してしまうと、間違ったデータから正しいように見える数値が生成されてしまうからです。
  • 名前に関するその他の情報はチェックされません。クエリ ストリームは入力されたとおりにルートを渡し、解決するかどうかは Xata に判断させます。

エージェントがXataホストに対して行うこと

2つの動作は.sql.xata.shという拡張子に関連付けられており、どちらもユーザーが設定できるものではありません。

  • TLSは必須であり、要求されるものではありません。.sql.xata.shホストは、[SSLを使用する]チェックボックスに関係なく暗号化された状態で接続されるため、クリップボードでsslmodeが失われた文字列も暗号化された状態で送信されます。
  • 接続は暗号化されていますが、証明書チェーンは検証されていません。これが現状の正確な説明であり、Query Streamsが認識するすべてのホスティングプロバイダーで同じです。
  • パス上にプーラーは存在しません。一部のサーバーレスPostgresサービスでは、トランザクションモードのプーラーを前面に配置し、それに対応するためにプリペアドステートメントを固定する必要がありますが、Xataではそうではないため、エージェントは直接接続し、それらの処理をすべてスキップします。
  • 接続はPostgreSQLとして保存され、バッジとしてXataが保持されます。Xataという名前の接続タイプは存在しません。 つまり、以前に同じホストに対して行った通常のPostgres接続でも、Xataのブランドがすぐに認識されるということです。

再入力するのではなく、貼り付けてください。

認証情報は4つあり、そのうち2つは混同しやすく、1つは入力ミスしやすいほど長い。このカードは、文字列を貼り付けて残りの部分を処理する仕組みになっている。

  • コンソールからの `postgresql://` URI は想定される形式です。`libpq host=` キーワード形式も解析されます。
  • PostgreSQLの接続文字列でないものはすべて拒否され、正しい接続文字列がどこにあるかを示すメッセージが表示されます。間違ったフィールドに中途半端に解析されることはありません。
  • 先頭または末尾に空白文字が含まれるAPIキーはフラグが立てられます。これはクリップボードの痕跡であり、通常の認証エラーとして処理されるため、誤った問題を探すことにつながります。
  • ワークスペースIDはユーザー名欄に、APIキーはパスワード欄に入力します。カードには「ユーザー名」と「パスワード」と表示されて推測を強いられるのではなく、このようにラベル付けされています。
-- 通常の Postgres、読み取り専用、指定したブランチに対して SELECT c.name, COUNT(o.id) AS orders, SUM(o.amount) AS revenue FROM public.customers AS c JOIN public.orders AS o ON o.customer_id = c.id WHERE o.placed_at >= now() - interval '30 days' GROUP BY c.name ORDER BY revenue DESC;

すべてのデータベースコネクタで共有されます

すべてのデータベースコネクタに当てはまる

  • 発信専用 エージェントは、クエリ ストリームへの暗号化された接続を 1 つだけ開きます。受信ポートの転送も、VPN も、IP 許可リストも不要で、データベースに関する情報がインターネットに公開されることは一切ありません。
  • 認証情報はそのまま保持されます データベースのユーザー名とパスワードは、エージェントをインストールしたマシン上に存在します。Query Streamsはこれらを受け取ることはなく、単独ではデータベースにアクセスできません。
  • 読み取り専用、強制 一度に1つのステートメントのみ、SELECT文とその関連文のみ。書き込みは、誰かが設定した権限に頼るのではなく、サーバーに送信される前に自分のマシン上で拒否されます。
  • エージェントは好きなだけデプロイできます サイト、リージョン、クラウドごとに1つずつ。ユーザーが確認できるすべてのデータソースは単一のドロップダウンリストに表示されるため、どのエージェントがどのデータをホストしているかを誰も知る必要はありません。

クエリが保存されると、次のようになります。

  • SQLではなく、機能を共有する。 同僚や外部パートナーが、クエリの背後にあるステートメントを見ることなく、クエリを実行してフィルターを変更できてしまう。
  • どちらの方向からでもフィルターをかける それらを@変数として自分で宣言するか、コネクタにWHERE句に既に存在するリテラル値を検出させて、ドロップダウンとして提供させます。
  • どこからでも読める Microsoft Excel、Google Sheets、Power BI、REST API、MCP上のAIアシスタント、クエリビルダー、Novaはすべて、同じ保存済みクエリを読み取ります。
  • 複数同時に実行 — 5つの保存済みクエリを5つのワークシートタブに表示し、結果の規模に関わらず同時にストリーミングします。
  • すでに接続済みの他のものにも接続してください — 別のデータベース、ビジネスAPI、またはファイルフォルダを、1つの読み取り専用ステートメントで取得します。

クロスソースSQL

Xataを他のデータと連携させる

1つのステートメントで、Xataと他の接続を同時に処理できます。各ソースは実行可能な部分のみを実行し、結果をストリームで返送します。結合は中央で行われるため、ソース同士が直接通信したり、データがどこかにコピーされたりすることはありません。

接続数3件・エージェント数3名

ザタ サーバーレスPostgres
マイクロソフトSQLサーバー 関係エンジン
ストライプ 支払いと請求

一つの声明

-- コピーなし、マージなし、スケジュールなし
セレクト   c.region、COUNT(*) AS orders、SUM(i.amount_due) AS invoiced
フロム     xata_app公共命令1  f
ジョイン     erp_sql.dbo.顧客2   c ON c.id = f.customer_id
ジョイン     請求する.stripe.invoices3 i ON i.customer = c.stripe_id
GROUP BY c.領域
ORDER BY 請求書記載のDESC;

接続、スキーマ、テーブルの3つの部分から構成され、接続名はユーザーが自由に設定できます。これは例示用の列であり、テーブルはユーザー自身が設定します。読み取り専用はすべての要素に適用され、SELECT、WITH、EXPLAINのみが使用可能で、1つのクエリで1つのソースが渡せるデータ量には上限があります。 フェデレーションクエリの仕組み

接続の詳細

Xataが必要とするもの

ホスト
<region>.sql.xata.sh
ポート
5432
ドライバ
エージェントによって提供されるNpgsql - Xata側でインストールする必要はありません
データベース
mydb:main のようなデータベース:ブランチ ルート。大文字小文字をそのまま保持して渡されます。これは、そのようなことが当てはまる唯一のコネクタです。
ユーザー名
アカウント名ではなく、ワークスペースIDです。
パスワード
APIキー(アカウントのパスワードではありません)
TLS
必須であり、すべての .sql.xata.sh ホストに対してエージェントによって強制されます。暗号化されていますが、証明書チェーンは検証されません。
プーリング
なし — Xataはプールされたエンドポイントを必要としないため、エージェントは直接接続します
保存先
PostgreSQLでは、Xataはバッジとして保持されているが、Xataという名前の接続タイプは存在しない。
デフォルトスキーマ
連邦参照が持つパブリックなもの

大文字小文字のルールこそが、このカードが存在する理由であり、通常のPostgreSQLカードを参照するように指示する理由ではありません。クエリストリームは、Postgresデータベース名を途中で小文字に変換しますが、これは他の場所では正しい動作です。引用符のない識別子はPostgresで小文字に変換されるため、入力された内容をそのまま保持すると混乱を招くだけです。XataのDatabaseフィールドは、そもそも識別子ではありません。これは、データベースとブランチをコロンで結合したルートであり、Xataはブランチ部分を文字通りに読み取ります。これを折りたたむと、Feature-Xという名前のブランチはfeature-xとなり、解決されなくなります。そのため、Xataはこのルールの適用除外となり、プラットフォーム上で適用除外となる唯一のコネクタです。

例外によって防止される障害は厄介なものです。なぜなら、それは障害のように見えないからです。ブランチルーティングが間違っていても、通常はエラーは発生せず、何らかの場所にたどり着きます。間違ったブランチに対してクエリを実行しても行が返され、それらはデータのように見えますが、結果からは先月のスキーマではなく今週のスキーマを読み込んでいるとは分かりません。コロンのないデータベース名がフラグ付けされるのも同じ理由です。それは機能し、暗黙のうちにデフォルトブランチを意味し、フィーチャーブランチを意図していたのに「main」と書かれたスプレッドシートはエラーメッセージよりも厄介です。

クロスソースクエリの場合、Xata は通常の Postgres と同じです。xata_app という接続は xata_app.public.orders と記述され、CSV ファイルのフォルダ、オンプレミスの記録システム、または請求 API に、コピーやスケジュール処理なしで、読み取り専用のステートメント 1 つで結合します。接続で選択したブランチが、結合で読み取られるブランチになります。

ベンダー資料: xata.io

よくある質問

Xataに関する質問

どのツールがクエリ ストリームを介して Xata データを読み取ることができますか?

Excel、Google Sheets、MCP、REST API、Airtable、Baserow、SeaTable、Smartsheet、Anvil、Power BI、スケジュールされたアラートやレポートなど、すべてを1つの接続で利用できます。データベースに一度接続すれば、すべてのインターフェースが同じ読み取り専用接続を読み取ることができます。ツールごとの設定やデータの複製は一切不要です。

Xataデータベースへのファイアウォールポートを開放する必要がありますか?

いいえ。Query Streams Network Agentはネットワーク内で動作し、暗号化された単一の送信接続を開きます。受信トラフィックを監視するものはなく、VPNも不要で、データベースは既存のファイアウォールルールを維持します。

クエリ ストリームは Xata のデータを変更できますか?

いいえ。エージェントは実行時に読み取り専用を強制します。つまり、一度に1つのステートメント(SELECT文など)のみを実行します。認証情報はエージェント上に保持され、クエリ ストリームに送信されることはありません。

Query StreamsがXataに接続するために必要なものは何ですか?

到達可能なホスト、ロール、およびそのパスワード - エージェントがドライバを運ぶため、データベースには何もインストールされません。 ホスト: <region>.sql.xata.sh。 ポート: 5432。 ドライバ: Npgsql、エージェントによって運ばれます - Xata 側には何もインストールする必要はありません。 データベース: mydb:main のような database:branch ルート。大文字小文字をそのままにして渡されます - これが成り立つ唯一のコネクタです。

同じクエリ内でXataを別のデータベースに結合することはできますか?

はい、それはフェデレーションクエリです。1つのステートメントで、Xataと他の接続を同時に参照でき、connection.schema.table の形式で記述されます。各ソースは実行可能な部分のみを実行し、結果をストリームで返します。結合は中央で行われるため、ソース同士が接続されることはなく、何もコピーまたはスケジュールされません。読み取り専用はすべての部分(SELECT、WITH、EXPLAINのみ)に適用され、1つのソースが単一のクエリで渡せるデータ量には上限があります。フェデレーションクエリはプラン機能であり、フェデレーションクエリのページには現在のソースとサイズの制限が表示されます。

Xataへの接続はPostgreSQLへの接続と異なりますか?

接続文字列のみが必要です。XataはPostgreSQLワイヤプロトコルを使用するため、フィルタ、スケジュール設定、共有、ExcelおよびGoogle Sheetsアドオン、MCPサーバーはすべて同じように動作します。Xataカードには、プロバイダが想定するホスト、ポート、SSL設定があらかじめ入力されています。

XataからExcelへの変換ガイドはありますか?

はい、これはPostgreSQLのガイドであり、記載されているとおりXataにも適用できます。XataはPostgreSQLのワイヤプロトコルを使用するため、XataからExcel、XataからGoogleスプレッドシート、その他のすべての宛先への接続手順は同じです。Xata固有の部分は接続文字列のみですが、Xataカードが自動的に入力してくれます。

Xataを仕事が行われる場所に置く

エージェントをインストールし、データベースを指定して、保存先を選択してください。

読み取り専用 発信専用 認証情報はエージェントに保持されます