---
title: "Join機能を使用すると、あらゆる形式のデータを統合できます"
date: "2017-04-18"
categories: 
  - "data-integration"
  - "tools"
tags: 
  - "data-integration"
  - "join-data"
  - "mapforce"
  - "mapforce-server"
description: Altova MapForceの「Join」機能の使い方を学び、データ統合において様々な形式のデータを組み合わせ、データマッピングのパフォーマンスを向上させる方法を習得してください。
---
Status: #blog

Tags:  #data-integration #join-data #mapforce #mapforce-server

Categories: [data-integration](/blog/ja/category/data-integration.md) 
# Join機能を使用すると、あらゆる形式のデータを統合できます

JOINは、ほとんどのデータベースの種類で利用可能な、強力なSQL操作であり、データベース利用者にとって馴染み深いものです。通常、JOINは、複数のデータベーステーブルから情報を選択し、結合するために使用されます。

Altova MapForceには、データ結合を行うための機能が含まれています [データマッピング](https://www.altova.com/ja/mapforce.html) データベースのテーブルに対するSQLの結合操作のように機能し、ユーザーがあらゆるデータ形式のデータ構造を結合できるようになることで、データ統合機能を拡張します。データベースのテーブルに対する結合操作に慣れている方は、MapForceの結合機能が特に直感的であると感じるでしょう。MapForceにおける結合操作は、さらに進んで、異なるデータ形式を組み合わせ、全く新しい形式で結果を出力することも可能です。

![](/blog/images/Join03.png)

<!--more-->

### データベースのテーブルからデータを結合する

もちろん、MapForceの結合機能は、以下に示すように、データベースのテーブルとも連携できます

![Altova MapForceを使って、データベースのテーブルからデータを結合します](/blog/images/database-join-example.png)

このデータベースの住所テーブルは、外部キーを使用して、各住所をユーザーテーブル内の人物の主キーと関連付けています。この関連付けに使用される条件は、これらのキーを使用します

![Altova MapForceを使用すると、1つまたは複数の条件に基づいてデータを結合できます](/blog/images/db-join-condition.png)

このマッピングでは、等価性を定義するために主要な関連性のみを使用していますが、右上にある「条件の追加」ボタンに注意してください。このボタンを使用することで、より複雑な結合を定義できます。

このデータベースのマッピング処理の最終的な出力は、CSV形式のテキストファイルです。そして、その結果は、SQLのWHERE句/ORDER句コンポーネントおよび関連する入力によってさらに詳細化されます。入力条件は、SQLのWHERE句の部分であり、ここでは自宅住所のみを対象とします

![文字列の値は、データを結合するための条件を定義します](/blog/images/input-component.png)

最終的な出力順序は、SQLのWHERE句やORDER句の設定を行うダイアログで定義され、姓のアルファベット順にリストを作成します

![SQLにおけるWHERE句とORDER BY句を使用して、データを結合します](/blog/images/where-order-properties.png)

データベースのマッピング処理の最終的なCSV出力結果が以下に示されています

![データベーステーブル間の結合操作の結果](/blog/images/db-mapping-output.png)

MapForceの結合機能は、データベースに適用される際に、高速な処理を実現するために不可欠なSQLのJOIN文を生成します。

### あらゆる形式のデータ構造を統合できます

以下に示すデータマッピングでは、2つのXMLファイルから情報を結合し、一連の人々の連絡先リストを作成します。その結果は、JSONファイルに書き出されます。

![Altova MapForceを使用すると、あらゆる形式のデータ構造を結合できます](/blog/images/join-example1.png)

結合コンポーネントの最下部に位置する「条件」要素は、ファイルがどのように結合されるかを定義します。当社のデータマッピングでは、各XML入力ファイルから「FirstName（名）」と「LastName（姓）」を照合し、それぞれの住所を正しいメールアドレスと電話番号に紐づける必要があります。条件要素の横にあるキーアイコンをクリックすると、条件を定義するためのダイアログウィンドウが開きます。

![データ結合時の複数の条件を定義する](/blog/images/define-condition.png)

以下の画像は、左側と中央に2つのXML入力ファイル、そしてそのマッピング結果のJSON形式の出力結果を示しています

![結合データ操作の入力と結果](/blog/images/source-files.png)

注意点として、最初の入力ファイルには4つのデータが含まれていますが、2番目の入力ファイルには3つの一致するデータしかありません。これらのデータはJSON形式の出力ファイルに書き込まれます。4番目の名前に対して住所を特定できるデータがないため、そのデータは出力に含まれていません。

### ジョイン機能を使用することで、繰り返し行うデータ変換処理のパフォーマンスを向上させることができます

MapForceでデータマッピングを設計・テストした後、MapForce Server上で必要に応じて実行することで、繰り返し行われるデータ変換を自動化し、ビジネスプロセスを効率化することができます。

MapForce Server Accelerator Editionには、高性能なサーバー環境向けに、複数の最適化機能が搭載されています。これには、個々のデータ変換処理をマルチスレッドで実行する機能や、新しいMapForceの結合機能を含むデータ変換処理の最適化などが含まれます。

弊社のテストの結果、MapForce Server Accelerator Editionを使用した場合、一部のデータマッピング処理が最大70倍高速になることが確認されました。*

特定のデータ統合の課題に対して、多くの場合、いくつかの異なるデータマッピングの設計が考えられます。フィルターを使用することも同様の結果を得ることができますが、結合機能を使用することで、データマッピングがより簡単かつ明確になり、結果の生成速度も大幅に向上します。 [無料トライアル版をダウンロードする](https://www.altova.com/ja/download-trial-server.html) ぜひ、ご自身で確かめてみてください！

 

* パフォーマンスの結果は、Altova社内でのテストに基づいています。お客様の環境では、結果が異なる場合があります。
