CData Software Blog

クラウド連携のCData Software の技術ブログです。

コネクタ・アダプタ・ドライバ その違いについて今更ながら調べてみた

CData Software Japanで働き始めて6年目の@kuwazzy です。この記事は QiitaのCData Software Advent Calendar 2021 11日目の記事です。アドベントカレンダーということで、前から気にしていたテーマについて書いてみました😊

qiita.com

最近、CData Softwareのコーポレートメッセージが「データ連携用コネクタのプロフェッショナル」とコネクタが重要なキーワードとなりました。 f:id:cdatasoftware:20211209162004p:plain

実は私、プレゼンなどで会社紹介するときに「データドライバ屋のCDataです」「BIやETL/EAI製品のアダプタ開発ベンダのCDataです」と「コネクタ・アダプタ・ドライバ」という言葉を使い分けせず、その場で思い浮かんだ言葉を適当に使っていました😅

f:id:cdatasoftware:20211209162318p:plain

これではいけないと思い、この機会を利用して「コネクタ・アダプタ・ドライバ」の違いを明確にして、今後、私自身が使い分けできるようになるために調べてみました。

一般的な用語としてのコネクタ

まずは、コネクタという言葉の定義です。調べると言ったらWikipediaですね。ちなみにコネクタ or コネクターと最後を伸ばすかどうかは、人それぞれでどちらが正解ということはないようですので、本記事ではコネクタに統一してお話します。アダプタ・ドライバも一緒です。

ja.wikipedia.org

コネクタの定義を見ると重要なキーワードが含まれていました。

  • 接続導通するための部品
  • 容易に接続出来る
  • 合わせて切り離しも繰り返し可能

電気(やデータ)を通すために、簡単に接続、さらに抜き差しできる部品です。みなさんが日常で利用しているUSBやiphoneのLightlingなどのコレがコネクタです。ちゃんと上記の定義を満たしていますね!

f:id:cdatasoftware:20211209163344p:plain

アダプタとは?

アダプタもコネクタの同義語だと思っていましたが、コネクタのWilipediaを読んでみるとコネクタの形状の分類の一つとしてアダプタに関する記載がありました。

コネクタ形状

コネクタ形状により以下に分類される。

・接栓

ケーブルに取り付けられる側のコネクタである。開口部形状により、プラグ、ジャックに分類される。プラグとジャック、プラグとレセプタクルの組合せで結合可能。

・接栓座

機器、パネル等に取り付けられる側のコネクタである。レセプタクルはジャックと同じ開口部を持ち、プラグと結合可能。ケーブル取り付けタイプのパネルジャック、開口部がプラグ形状のプラグレセプタクルもある。

・アダプタ

異なる種類のコネクタを互いに接続するための、各種のアダプタ(変換コネクタとも呼ぶ)がある。加えてケーブルの方向を変更する為にL字型になったものや、配線を分岐するためのコネクタや空端子につける終端型のタイプもある。

Wilipedia - コネクタより

接栓(せっせん)はプラグと呼ばれ、ケーブル側のコネクタということなのでUSB-Cでいうとこの部分ですね。

f:id:cdatasoftware:20211209165946p:plain

一方で、接栓座(せっせんざ)は、あまり聞いたことはないですがレセプタクルとも呼ばれるようで機器やパネル側ということなのでMacbookで例えるとUSB-Cの差し込み口のこの部分ということですね。

f:id:cdatasoftware:20211209170225p:plain

アダプタですが、異なる種類のコネクタを互いに接続するということなので、身近なもので探してみるとUSB-Cしか対応していないMacbookProに挿している「USB-C → USB-A 変換のコレ」がアダプタと言えると思います。同じようなものでモニター出力用の「USB-C -> HDMI」もアダプタと言えますね。

f:id:cdatasoftware:20211209170519p:plain

ドライバって

コネクタとアダプタの違いは理解できました。次はドライバの番です。

ja.wikipedia.org

まずはじめに、ドライバという言葉は、全く異なる複数の意味を持っています。代表的なものを挙げると以下のものがあります。

  • 車の運転手
  • ゴルフクラブ
  • ねじ回し
  • デバイスドライバ(OSの周辺機器の制御ソフトウェア)の略称
  • プロレス技(あぁ、パイルドライバって聞いたことがあるような...)

f:id:cdatasoftware:20211210183041p:plain

あまりにもCData製品のODBC/JDBC ドライバとは関係なさそう...なので英語サイトも調べてみました。

en.wikipedia.org

Computingカテゴリ内にDatabase driverが存在しました(よかった!)

Database driver, application programming interface software used to interact with databases in accordance with Open Database Connectivity (ODBC) standard

Wilipedia - Driverより

重要なキーワードがいくつか含まれていました。

コネクタ・アダプタは、どちらかというとハードウェア色が強いですが、(データベース)ドライバは、データベースというソフトウェアに対して標準規格でAPIアクセスするものとして定義されていました。これですよ!

CData製品のコネクタ・アダプタ・ドライバとは

さて、コネクタ・アダプタ・ドライバの違いがわかったところでCData製品をみていきましょう。ざっとテクノロジー製品毎の呼び方は以下表のとおりです。Sync・API Server・ArcESB・DBAmpはサーバー製品のため今回は対象から外しています。

テクノロジー 呼び方 URL
ODBC Driver(ドライバ) https://www.cdata.com/jp/odbc/
JDBC Driver(ドライバ) https://www.cdata.com/jp/jdbc/
ADO.NET Provider(プロバイダ) https://www.cdata.com/jp/ado/
Excel Add-In(アドイン) https://www.cdata.com/jp/excel/
Power BI Connector(コネクタ) https://www.cdata.com/jp/powerbi/
Tableau Connector(コネクタ) https://www.cdata.com/jp/tableau/
Python Connector(コネクタ) https://www.cdata.com/jp/python/
MuleSoft Connector(コネクタ) https://www.cdata.com/jp/mule/
Delphi Component(コンポーネント) https://www.cdata.com/jp/firedac/
SSIS Component(コンポーネント) https://www.cdata.com/jp/ssis/
PowerShell CMDLET(コマンドレット) https://www.cdata.com/jp/powershell/
BizTalk Adapter(アダプタ) https://www.cdata.com/jp/biztalk/
Sync - https://www.cdata.com/jp/sync/
API Server - https://www.cdata.com/jp/apiserver/
ArcESB - https://www.arcesb.com/jp/
DBAmp - https://www.cdata.com/jp/dbamp/

まず、ODBC/JDBCは、データベースのAPIにアクセスするソフトウェアということで、Driver(ドライバ)で文句なく納得です!

ADO.NETも同様にDriverいう理解なのですが、.NETテクノロジーを提供しているMicrosoft社がプロバイダと呼んでいるようです。プロバイダ、つまりは、データを提供するものです。

docs.microsoft.com

ExcelはAdd-In(アドイン)です。この製品は、Microsoft社のExcelのアドイン(アドオンとも言いますね)としてExcelのリボン上から操作できるのでアドインが適切でしょう。

f:id:cdatasoftware:20211210185835p:plain

Power BI、TableauなどのBIツールの場合はコネクタと呼んでいます。容易に接続できて、(ツールとデータソースの間の)切り離しも可能というコネクタの要件も満たしているので、コネクタが良いでしょう。

Power BIではコネクタのことをデータソースとも呼ばれています。

docs.microsoft.com

Tableauではコネクタと呼ばれているようです。

help.tableau.com

Pythonについては、Python Database API (DB-API) モジュールでの提供なのですがMySQLなど他ベンダのものもコネクタと呼ばれているようです。

dev.mysql.com

MuleSoftについては本家のマニュアル上もAnypointコネクタと呼ばれているようです。

docs.mulesoft.com

Delphiについては、FireDACと呼ばれるデータアクセスライブラリとしての提供となります。FireDACでは、ODBCなどのドライバ経由でのアクセスも可能としてますが、コードから呼ばれる部品についてはコンポーネントという呼び方をしているようです。

www.embarcadero.com

SSISはデータフローを作成する部品の事をコンポーネントと呼んでいます。CDataのSSISコンポーネントはデータの入出力用の部品となるのでコンポーネントが適切です。

docs.microsoft.com

次にPowershellです。Powershellのコマンドのことをcmdlets(コマンドレット)と呼ぶようです。CDataのPowerShell向けの製品は、コマンドでのデータ接続を可能としています。

docs.microsoft.com

Biztalkですが、こちらはアダプタという呼び方をします。BizTalkは、マイクロソフト社のビジネスプロセス管理(BPM)製品で、プロセス自動化やEDIの製品です。私も詳しくはないのですが、これらのBPMやEDI製品ではアダプターと呼ばれることが多い気がします。

docs.microsoft.com

最後に、CData ArcESBはノーコードでデータ連携が可能な製品なのですが、こちらのデータ接続の部品についてはコネクタと呼んでいます。用途に応じて自在に追加して利用できるという意味ではコネクタがピッタリですね。

www.arcesb.com

まとめ

本記事で、私自身がコネクタ・アダプタ・ドライバという言葉の定義を明確に理解することができました。そして、今更ながらCDataの各種テクノロジー製品のコネクタ・アダプタ・ドライバ・アドイン・コンポーネント などといった言葉がなぜそれが選ばれているのかも腹落ちすることができました。と言いながら、結論しては迷った時には コネクタ という言葉を使っておけばアダプタやドライバなどの他の呼び方も包括した意味なので間違いない!ということですw これからも「CData = コネクタのプロフェッショナル」として皆様のデータ活用をご支援していきますのでよろしくお願いします。