CSV ファイルベースの統合が API ベースの統合より優れている理由
公開: 2018-11-07多くの場合、販売業者は大量のデータ (製品カタログ、注文、顧客データなど) を処理または整理するために、あるシステムから別のシステムに移動する必要があります。 問題は、あるシステムがデータを構造化して受け入れる方法が、宛先システムと同じではない可能性があることです。 その場合、システム間でデータをどのように転送および共有しますか (手動で入力する以外に)。
多くは、CSV (コンマ区切り値) ファイルを使用してシステム間でデータのテキスト ファイルをエクスポートおよびインポートする統合に依存しています。 CSV は、多くのシステムがサポートするユニバーサル ファイル タイプであり、加盟店は安心して管理できます。 多くの場合、ファイル統合は統合オプションですが、制限もあります。 このデータ統合アプローチを評価する際に、この記事では、CSV ファイルを介したファイルベースの統合が API ベースの統合よりも優れている理由を検討します。
フラットファイル統合とは?
ファイルベースの統合は、ソース データと宛先データのいずれかをファイル (CSV ファイルなど) で表す必要がある場合です。 一部のシステムでは、API または直接データベース接続の代わりとしてこれが必要です。 ファイルベースの統合により、必ずしも直接接続しなくても、異なるデータベースまたはオペレーティング システム間でデータを渡すことができます。
ファイルベースの統合にはさまざまなファイル タイプ (XML、JSON など) を含めることができますが、この記事では特に CSV ファイルの統合に焦点を当てています。 CSV ファイルには 1 つのファイルしか含めることができませんが、ファイルベースの統合では、複数のファイルの要素を組み合わせる必要がある場合があります。 それらは「フラット化された」ファイルと呼ばれ、単一のレコードが複数の行にわたって定義されています。
CSV は、表形式のデータを保存するために使用されます。 つまり、Microsoft Excel やその他の表計算ソフトウェアなど、テーブルにデータを保存するプログラムからインポートおよびエクスポートして、読み取り可能な形式にすることができます。 ただし、CSV には数式や Excel シートが提供する書式設定機能を含めることはできないことに注意してください。 Excel ドキュメントを CSV として保存すると、余分なものはすべて取り除かれます。
商人は、あらゆる種類の理由でシステム間でデータを移動するために、何十年にもわたって CSV ファイル統合を使用して成功してきました。 しかし、過去 10 ~ 15 年間で、API は 2 つのシステムが相互に通信または統合するためのより「現代的な」方法として登場しました。 違いは何ですか?
API 統合と CSV 統合アプローチ
API (Application Program Interface) は、2 つのソフトウェア プログラムが相互に通信できるようにする一連のコードです。 ソフトウェアの API は、開発者が別のシステムまたはアプリケーションからサービスを要求するプログラムを作成するための標準的で予測可能な方法を示しています。
REST (REpresentational State Transfer) API は、GET、PUT、POST、または DELETE データへの HTTP 要求を受け入れます。 REST は、最新の Web サービス開発のほとんどで使用されるアーキテクチャ スタイルとコミュニケーションへのアプローチを表しています。 そのため、ユーザーがクラウド サービスに接続して対話できるようにする API を構築するためによく使用されます。
SOAP (Simple Object Access Protocol) は、API の開発に使用される別のプロトコルです。 新しい API では REST ほど一般的ではありませんが、基本的に同じことを実現します。
API 統合により、API を介して 2 つのシステム間でデータを解釈および変換することにより、2 つのシステムを接続できます。 これにより、ERP の既知の API エンドポイントからの「GET Product」や、e コマース プラットフォームの既知の API エンドポイントへの「PUT Product」などのデータ フローが可能になります。
API 統合はより現代的なアプローチですが、システムの統合を検討しているマーチャントにとって常に適切な (または可能な) ソリューションであるとは限りません。 ファイルベースの統合が API 統合よりも優れている理由について詳しく説明します。
ファイルベースの統合が API 統合より優れている理由
CSV 統合がビジネスにとって最も有効なシナリオがあります。 このシステム統合アプローチの主な利点のいくつかを以下に示します。
API なしでシステムを維持して接続する
すべてのソフトウェア システムに統合用の API が用意されているわけではありません。 これは古い「レガシー」ソフトウェアの場合によくあることですが、Salesforce Commerce Cloud (Demandware) eCommerce プラットフォームなどの最新のシステムにも当てはまります。 これらのシステムとの統合は、API を使用せずに行う必要があります。つまり、最適なオプションはファイルベースの統合である可能性があります。
ほとんどのシステムは、ソフトウェアの年齢に関係なく、少なくとも手動のインポート プロセスを介して CSV を受け入れます。 一部 (Salesforce Commerce Cloud など) は、SFTP サーバーを指定して CSV インポートを自動化する機能を提供します。
多くのマーチャントは、これらの API を使用しないシステムをアップグレードまたは交換するための費用のかかるプロジェクトを引き受ける代わりに、この統合アプローチを使用することに注意することが重要です。
非独占的
CSV ファイルは、特定のソフトウェア ベンダーの所有物ではありません。 CSV の作成と共有は、データを処理する一般的な方法です。 これにより、人とシステムの間で簡単にやり取りしたり、共有したりできます。 Excel やその他の表計算ソフトウェアを利用して CSV を作成でき、ほとんどの人はこの方法で CSV を快適に処理できます。 使用している特定のソフトウェアに関係なく、CSV ファイルをインポートおよびエクスポートできるのは、そのソフトウェアやブランドに固有のものではありません。
ファイルの作成がより簡単に
CSV はプレーンテキスト ファイルであるため、Web 開発者やチームの他のメンバーは、データをスプレッドシートとして簡単に作成、表示、検証できます。 必要なのは、データの先頭行と後続行のヘッダー行だけです。 データを操作して、必要に応じて整理することができます。 これにより、このデータを異なるシステム間で簡単に共有できます。
複数の CSV ファイルでその階層を人為的に表現しない限り、データ間に階層関係はありません。 これを行う必要がある場合、CSV ベースの統合がより複雑になります。
マーチャントが作成する可能性のある CSV ファイルの一般的な例としては、e コマースと ERP または POS システム間で共有する価格表、顧客リスト、製品データ、注文データ、割引などがあります。
複数のソース間の標準通信
CSV ファイルはデータ通信の標準的な方法でもあり、複数のソースやシステムからデータを収集してコンパイルするための優れたツールになります。 データの形式 (どの列をどの順序で) は異なる可能性がありますが、CSV は定評があり、ほぼ普遍的にサポートされているファイル形式です。
たとえば、少数の異なるサプライヤから製品カタログを収集する場合があります。 製品データをマスターするために使用するシステムに関係なく、すべての製品データの CSV をエクスポートできる必要があります。 その後、この CSV を取得してシステムにインポートできます。 システムに直接統合することについて心配する必要はありません。 セキュリティやその他の問題により、オプションとして直接 API を統合することすらできない場合があります。
ファイルベースの統合の制限
この統合アプローチには、考慮すべき欠点があります。特に、このアプローチを API ベースの統合などの代替手段と比較する場合は注意が必要です。
セキュリティの責任
CSV ファイル転送を自動化する場合、基本的にはファイルをサーバーにドロップし、それを別のシステムが取得します。 サーバーを保守しているのは誰ですか? そのプロセス全体でどのようにデータを安全に保ちますか?
ファイルベースの統合では、マーチャントはセキュリティについて別の方法で考える必要があります。 転送中にデータを安全に保つ必要がありますが、アクセスを難しくしすぎることもできません。 そうしないと、他のビジネス システムとの通信が非常に難しくなります。 そのバランスを見つけて、必要に応じてすべての人 (およびそれ以上の人) がこれらのファイルにアクセスできないようにするのは、あなたの責任です。
バッチ同期
システムを統合する場合、ほとんどの加盟店は、システム間でデータをリアルタイムまたは瞬時に同期することを望んでいます。
これは、在庫状況が急速に変化する e コマース アイテムや、2 日以内に出荷する必要がある注文などのデータにとって特に重要です。 注文がオンラインで行われるとすぐに、すべての販売チャネルでその在庫数を減らし、注文処理を開始したいと考えています。 この同期の遅延は、たとえ 30 分程度であっても、フラッシュ セールや休日などのピーク販売時間帯に過剰販売を引き起こす可能性があります。 また、注文のフルフィルメントが遅くなり、保証された配達日を逃す可能性もあります. あなたの顧客はその結果に苦しんでいます。
ほとんどの CSV ファイル統合は、デフォルトでは瞬時に同期できません。 これは、他のシステムが CSV から継続的に新しい行を読み取っている間に、継続的に新しい行を CSV に書き込むことは実際には不可能であるためです。 一連の行をファイルに書き込み、そのファイルをドロップしてピックアップしてから、新しいファイルを開始する必要があります。
これは、新しいファイルを開始するためのルールが「行数」または「期間」であるかどうかに関係なく、プロセスに何らかの遅延が発生することを意味します。
CSV ファイルの統合を別の方法で考えてみてください。電子メールが到着するように、オンデマンドでメールが配信されるわけではありません。 1 日に 1 度、一連の手紙を受け取る可能性があり、それらをまとめて送信することもあります。
複雑なデータ構造の処理
CSV のフラットなファイル構造は利点になる場合もありますが、欠点になる場合もあります。 設計上、CSV データは階層的でもオブジェクト指向でもありません。つまり、どこにでもある構造になっています。 一部のマーチャントにとって、相互に関連する複数のデータ層がある場合、これは問題になります。 複数の品目がある注文や、複数のサイズや色がある商品をどのように表す必要があるかを考えてみてください。
データ間のこの関係を表すために、複数の CSV ファイルを作成することになります。 大量のデータ セットを管理および整理しようとすると、困難な場合があります。
データの検証
システム統合の重要なステップは、転送するデータを検証することです。 特に「無効な」エラーが発生する可能性があるため、不正確または不良なデータを別のシステムに送信したくありません。 CSV ファイルの統合により、データの検証はユーザーにとって手動のプロセスになります。
数百行のデータを含む複数の CSV を扱う場合、検証の管理が難しくなります。 すべてが問題なく送信できるように「目で見て」確認することはできません。 代わりに、ユーザーは Excel で記述された数式またはマクロに依存して、間違っている場合にセルを強調表示します。 次に、手動でエラーを修正する必要があります。 大量のデータを確認する場合、このプロセスは時間がかかり、失敗します。
場合によっては、CSV データをロードするシステムが、インポートされた CSV のデータ検証を提供することがありますが、これには欠点もあります。 これらの機能の存在と堅牢性は、プラットフォーム間で一貫していません。 また、多くの場合、失敗時にインポート トランザクションを適切に管理できません。 つまり、100,000 行のうち 1 行が正しくない場合、インポート全体が失敗する可能性があります。
データ転送中のエラーからの回復
CSV ファイルの統合は、サーバー上のファイルのドロップとピックアップに依存しています。 そのプロセス全体を通して、ファイルが破損したり、サーバーやファイル システムがダウンしたりするなど、多くの問題が発生する可能性があります。 通常、無効な文字、欠落しているデータ記述、またはその他のファイル コンテンツの問題もチェックされません。 これらの問題を含むファイルを送信するとどうなりますか? どのように修正する予定ですか?
データ処理のためのコンピューティング リソースの管理
システムを統合するためのコードの記述方法によっては、ファイルベースの統合では、複数のファイルにまたがる大きなデータ セットを読み取るために、多くの CPU と RAM が必要になる場合があります。
文字エンコーディングの問題
各システムには、UTF-8 など、文字をエンコードするための独自のデフォルトがあります。 テキスト ファイル (CSV など) を共有する場合、加盟店はファイルが同じエンコード文字を使用する必要があることを考慮する必要があります。 そうでない場合、システムが文字を正しく読み取ることができないため、CSV ファイルの 1 つが拒否されるか、データが正しく表示されない可能性があります。 たとえば、宛先システムは、アジア言語用の特殊なアポストロフィや文字を読み取ることができない場合があります。
CSV 統合の詳細
マーチャントには、システムの統合に関してオプションがあります。 また、多くの場合、CSV によるファイルベースの統合が適切なオプションになる可能性があります。 ただし、この統合アプローチには、考慮すべき欠点がないわけではありません。
ファイルベースの統合を通じてビジネスを自動化する方法について詳しく知りたい場合は、このドキュメントで説明されているすべての課題に直接対処するために構築された nChannel のファイル転送ソリューションについて学んでください。