Eventhouse を始める

完了

Eventhouse を作成すると、既定の KQL データベースが同じ名前で自動的に作成されます。 Eventhouse には、テーブル、ストアド プロシージャ、具体化されたビュー、関数、データ ストリーム、およびデータを管理するためのショートカットを作成できる 1 つ以上の KQL データベースが含まれています。 既定の KQL データベースを使用することも、必要に応じて他の KQL データベースを作成することもできます。

Microsoft Fabric の Eventhouse のスクリーンショット。

Eventhouse でデータを操作する

Eventhouse 内の KQL データベース内のデータにアクセスして操作するには、いくつかの方法があります。

データ インジェスト

さまざまなソースから KQL データベースにデータを直接取り込むことができます。

  • ローカル ファイル、Azure Storage、Amazon S3
  • Azure Event Hubs、Fabric Eventstream、Real-Time ハブ
  • OneLake、Data Factory のコピー、データフロー
  • Apache Kafka、Confluent Cloud Kafka、Apache Flink、MQTT (メッセージ キュー テレメトリ トランスポート)、Amazon Kinesis、Google Cloud Pub/Sub などのソースへのコネクタ

Microsoft Fabric のイベントハウスの [データの取得] メニューのスクリーンショット。

データベース ショートカット

他のイベントハウスまたは Azure Data Explorer データベース内の既存の KQL データベースへのデータベース ショートカット を作成できます。 これらのショートカットを使用すると、データを実際にコピーすることなく、イベントハウスにローカルに格納されているかのように外部 KQL データベースのデータにクエリを実行できます。

OneLake の可用性

個々の KQL データベースまたはテーブルに対して OneLake 可用性 を有効にして、Power BI、Warehouse、Lakehouse、およびその他の Fabric サービスとのワークロード間の統合のために、Fabric エコシステム全体でデータにアクセスできるようにします。

KQL データベース内のデータのクエリを実行する

KQL データベース内のデータに対してクエリを実行するには、KQL クエリセットKQL または T-SQL を使用できます。 KQL データベースを作成すると、クエリを実行して保存するために、アタッチされた KQL クエリセットが自動的に作成されます。

基本的な KQL 構文

KQL では、パイプ (|) 文字を使用して、ある操作から次の操作にデータが流れるパイプライン アプローチを使用します。 ファネルと考えてください。データ テーブル全体から始めて、各演算子はデータをフィルター処理、再配置、または集計してから、次の手順に進みます。 各ステップが前の手順の結果に対して機能するため、演算子の順序が重要です。

Important

KQL では、テーブル名、列名、関数名、演算子、キーワード、文字列値など、すべての要素で大文字と小文字が区別されます。 すべての識別子は完全に一致する必要があります。 たとえば、 TaxiTripstaxitripsTAXITRIPSとは異なります。

じょうごの概念を示す例を次に示します。

TaxiTrips
| where fare_amount > 20
| project trip_id, pickup_datetime, fare_amount
| take 10

このクエリは、 TaxiTrips テーブル内のすべてのデータから始まり、フィルター処理して 20 ドルを超える料金の乗車のみを表示し、 プロジェクト 演算子を使用して特定の列を選択し、 take 演算子を使用して where 句の条件に一致する最初の 10 行を返します。

最も単純な KQL クエリは、テーブル名で構成されます。

TaxiTrips

これにより、 TaxiTrips テーブルのすべての列が返されますが、表示される行の数はクエリ ツールの既定の設定によって制限されます。

大きい可能性があるテーブルからデータのサンプルを取得するには、 take 演算子を使用します。

TaxiTrips
| take 100

これにより、 TaxiTrips テーブルから最初の 100 行が返されます。これは、テーブル全体を処理せずにデータ構造を探索する場合に便利です。

データを集計することもできます。

TaxiTrips
| summarize trip_count = count() by taxi_id

これにより、各一意のtrip_countの乗車の合計数 (taxi_id) を示す概要テーブルが返され、各タクシーが行った乗車数が効果的にカウントされます。

KQL クエリセットを使用してデータを分析する

KQL クエリセットは、KQL データベースに対するクエリを実行および管理するためのワークスペースを提供します。 KQL クエリセットを使用すると、将来使用するためにクエリを保存したり、複数のクエリ タブを整理したり、コラボレーションのために他のユーザーとクエリを共有したりできます。 KQL クエリセットでは T-SQL クエリもサポートされているため、データ分析に T-SQL 構文と共に KQL を使用できます。

また、データの探索中にデータの視覚化を作成したり、クエリ結果をグラフ、テーブル、その他のビジュアル形式としてレンダリングしたりすることもできます。

クエリセット内の視覚化のスクリーンショット。

Copilot を使用してクエリを支援する

KQL クエリに関する AI ベースの支援のために、Real-Time インテリジェンスに Copilot を使用できます

管理者が Copilot を有効にすると、クエリセットのメニュー バーにオプションが表示されます。 Copilot は、メイン クエリ インターフェイスの横にペインとして開きます。 データに関する質問をすると、質問に答えるための KQL コードが Copilot によって生成されます。

Real-Time インテリジェンスの Copilot のスクリーンショット。