> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# ノード概要

> YiDAに標準搭載のデータ準備機能は、ノーコードETLとして、SQL不要で関連・結合・集計・クレンジングなどのデータ処理を実現。BI非専門ユーザーでも扱えるETL基盤の各ノード仕様と利用制限を解説します。

YiDAに標準搭載されているデータ準備機能は、ノーコードETLツールとして機能します。SQLを一切記述することなく、BIの専門家でないユーザーでも、任意のYiDAデータセットに対して関連、結合、集計、クレンジングを行い、処理後のデータを標準的なYiDAデータセットとして出力できます。これにより、ローコード開発でデータの価値を最大限に引き出せるようになります。

各ノードには専用の設定パネルとデータプレビューボードが用意されています。各データ準備キャンバスは最大2つの出力ノードをサポートし、各出力ノードは対応するデータセットを自動的に生成します。

## 利用制限

**1ノードあたりのデータ量は200万件が上限です。** この上限を超えるとETLのデータ処理が失敗します。

## 入力ノード

入力ノードは既存のYiDAデータセットまたはデータソースから作成でき、フォーム、クロスアプリフォーム、MySQL、SQL Server、Oracle、Excelファイルなどの既存データセットに対応します。また、データベースデータソース内のテーブルをもとに、入力データを素早く作成することもできます。

左側のノードパネルから**入力**ノードを中央のキャンバスにドラッグします。データ入力ソースを選択して、データフローの構築を開始します。

YiDAはエンタープライズ向けのローコードアプリ開発プラットフォームです。YiDAアプリ、外部エンタープライズデータベース、外部エンタープライズファイル、[DingTalk公式データ](/ja/yida/app-admin/rgtg45e6z9vwlgso)（社員名簿、OA、スマートHR、勤怠など）からのデータをサポートしています。

## 出力ノード

出力ノードは、既存のターゲットデータベーステーブルへのデータ書き込み（書き込みのたびにテーブル内の元データを削除して新しいデータを挿入）、または新規作成したデータベーステーブルへの書き込みに対応しています。

## 関連ノード

YiDAのマルチテーブル関連機能と同様に、このノードは指定した条件に基づいて2つ以上のデータセットを横方向に結合します。SQLのJoin操作に相当し、左外部結合（left join）、内部結合（inner join）、右外部結合（right join）をサポートします。

<Note>
  Joinは、指定した条件に基づいて2つ以上のテーブルのデータを結合する、一般的なデータベースクエリ操作です。

  主な結合タイプは4つあります：内部結合（inner join）、左外部結合（left join）、右外部結合（right join）、完全外部結合（outer join）。以下、それぞれのタイプについて使用例とともに説明します。

  #### 内部結合（Inner join）

  * 定義：内部結合は、両方のテーブルで結合条件に一致するレコードのみを返します。
  * 使用例：両方のテーブルに存在するレコードだけが必要な場合に、内部結合を使用します。たとえば、顧客テーブルと注文テーブルがある場合に、両方に存在するレコードのみを取得したいときに使います。

  #### 左外部結合（Left join）

  * 定義：左外部結合は、左側テーブルのすべてのレコードと、右側テーブルの一致するレコードを返します。右側テーブルに一致するものがない場合、結果セットの対応する列はnullになります。
  * 使用例：右側テーブルに一致するものがなくても、左側テーブルのすべてのレコードを含めたい場合に左外部結合を使用します。たとえば、注文をしていない顧客も含めて、すべての顧客とその注文を一覧表示したいときに使います。

  #### 右外部結合（Right join）

  * 定義：右外部結合は、右側テーブルのすべてのレコードと、左側テーブルの一致するレコードを返します。左側テーブルに一致するものがない場合、結果セットの対応する列はnullになります。
  * 使用例：左外部結合と似ていますが、方向が逆になります。たとえば、顧客情報が欠落している注文も含めて、すべての注文と対応する顧客情報を一覧表示したいときに使います。

  #### 完全外部結合（Full outer join）

  * 定義：完全外部結合は、左右両方のテーブルから結合条件を満たすすべてのレコードを返します。いずれかのテーブルに一致するものがない場合、結果セットの対応する列はnullになります。
  * 使用例：他方のテーブルに一致するものがあるかどうかに関わらず、両方のテーブルのすべてのレコードが必要な場合に、完全外部結合を使用します。たとえば、注文のない顧客や顧客情報のない注文も含めて、すべての顧客とすべての注文を一覧表示したいときに使います。
</Note>

## 結合ノード

同じ型のフィールドデータを縦方向に追加してマージします。このノードは複数データセット間の行レベルの追加をサポートします。YiDAの新しいデータスタッキング機能として、SQLのUnion操作に相当し、縦方向の行レベルのデータ連結を実現します。

## 集計ノード

指定したタイプでデータをグループ分けし、各グループの値を計算します。計算方法にはカウント、合計、最大値、最小値、その他の集計操作があります。集計ノードを他のノードと組み合わせることで、統計指標フィールドを構築でき、下流の処理でフィールドやデータを生成しやすくなります。

**データ集計**は、分散した複数のソースからのデータを統合し、定義したルールに従って結合・計算することで、より意味のある情報を生み出します。たとえば、毎日の売上金額を含む売上記録テーブルから、集計によって月別または年別の売上合計を算出できます。

## クレンジングノード

上流のノードから受け取ったデータに対して、より細かな編集を実行します。ユーティリティ処理ノードとして、フィールドの名前変更、フィールド型の変更、数式（Fx）を用いた動的な新規フィールドの作成、データのフィルター検索条件の設定などが行えます。

**以下は、データクレンジングを素早く理解するための基礎知識です。**
