CData Software Japanで働き始めて6年目の@kuwazzy です。この記事は QiitaのCData Software Advent Calendar 2021 11日目の記事です。アドベントカレンダーということで、前から気にしていたテーマについて書いてみました😊
最近、CData Softwareのコーポレートメッセージが「データ連携用コネクタのプロフェッショナル」とコネクタが重要なキーワードとなりました。
実は私、プレゼンなどで会社紹介するときに「データドライバ屋のCDataです」「BIやETL/EAI製品のアダプタ開発ベンダのCDataです」と「コネクタ・アダプタ・ドライバ」という言葉を使い分けせず、その場で思い浮かんだ言葉を適当に使っていました😅
これではいけないと思い、この機会を利用して「コネクタ・アダプタ・ドライバ」の違いを明確にして、今後、私自身が使い分けできるようになるために調べてみました。
一般的な用語としてのコネクタ
まずは、コネクタという言葉の定義です。調べると言ったらWikipediaですね。ちなみにコネクタ or コネクターと最後を伸ばすかどうかは、人それぞれでどちらが正解ということはないようですので、本記事ではコネクタに統一してお話します。アダプタ・ドライバも一緒です。
コネクタの定義を見ると重要なキーワードが含まれていました。
- 接続導通するための部品
- 容易に接続出来る
- 合わせて切り離しも繰り返し可能
電気(やデータ)を通すために、簡単に接続、さらに抜き差しできる部品です。みなさんが日常で利用しているUSBやiphoneのLightlingなどのコレがコネクタです。ちゃんと上記の定義を満たしていますね!
アダプタとは?
アダプタもコネクタの同義語だと思っていましたが、コネクタのWilipediaを読んでみるとコネクタの形状の分類の一つとしてアダプタに関する記載がありました。
コネクタ形状
コネクタ形状により以下に分類される。
・接栓
ケーブルに取り付けられる側のコネクタである。開口部形状により、プラグ、ジャックに分類される。プラグとジャック、プラグとレセプタクルの組合せで結合可能。
・接栓座
機器、パネル等に取り付けられる側のコネクタである。レセプタクルはジャックと同じ開口部を持ち、プラグと結合可能。ケーブル取り付けタイプのパネルジャック、開口部がプラグ形状のプラグレセプタクルもある。
・アダプタ
異なる種類のコネクタを互いに接続するための、各種のアダプタ(変換コネクタとも呼ぶ)がある。加えてケーブルの方向を変更する為にL字型になったものや、配線を分岐するためのコネクタや空端子につける終端型のタイプもある。
接栓(せっせん)はプラグと呼ばれ、ケーブル側のコネクタということなのでUSB-Cでいうとこの部分ですね。
一方で、接栓座(せっせんざ)は、あまり聞いたことはないですがレセプタクルとも呼ばれるようで機器やパネル側ということなのでMacbookで例えるとUSB-Cの差し込み口のこの部分ということですね。
アダプタですが、異なる種類のコネクタを互いに接続するということなので、身近なもので探してみるとUSB-Cしか対応していないMacbookProに挿している「USB-C → USB-A 変換のコレ」がアダプタと言えると思います。同じようなものでモニター出力用の「USB-C -> HDMI」もアダプタと言えますね。
ドライバって
コネクタとアダプタの違いは理解できました。次はドライバの番です。
まずはじめに、ドライバという言葉は、全く異なる複数の意味を持っています。代表的なものを挙げると以下のものがあります。
あまりにもCData製品のODBC/JDBC ドライバとは関係なさそう...なので英語サイトも調べてみました。
Computingカテゴリ内にDatabase driverが存在しました(よかった!)
Database driver, application programming interface software used to interact with databases in accordance with Open Database Connectivity (ODBC) standard
重要なキーワードがいくつか含まれていました。
- データベースと対話
- アプリケーションプログラミングインタフェース(つまりはAPI)ソフトウェア
- ODBCといったスタンダード(標準)
コネクタ・アダプタは、どちらかというとハードウェア色が強いですが、(データベース)ドライバは、データベースというソフトウェアに対して標準規格で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社がプロバイダと呼んでいるようです。プロバイダ、つまりは、データを提供するものです。
ExcelはAdd-In(アドイン)です。この製品は、Microsoft社のExcelのアドイン(アドオンとも言いますね)としてExcelのリボン上から操作できるのでアドインが適切でしょう。
Power BI、TableauなどのBIツールの場合はコネクタと呼んでいます。容易に接続できて、(ツールとデータソースの間の)切り離しも可能というコネクタの要件も満たしているので、コネクタが良いでしょう。
Power BIではコネクタのことをデータソースとも呼ばれています。
Tableauではコネクタと呼ばれているようです。
Pythonについては、Python Database API (DB-API) モジュールでの提供なのですがMySQLなど他ベンダのものもコネクタと呼ばれているようです。
MuleSoftについては本家のマニュアル上もAnypointコネクタと呼ばれているようです。
Delphiについては、FireDACと呼ばれるデータアクセスライブラリとしての提供となります。FireDACでは、ODBCなどのドライバ経由でのアクセスも可能としてますが、コードから呼ばれる部品についてはコンポーネントという呼び方をしているようです。
SSISはデータフローを作成する部品の事をコンポーネントと呼んでいます。CDataのSSISコンポーネントはデータの入出力用の部品となるのでコンポーネントが適切です。
次にPowershellです。Powershellのコマンドのことをcmdlets(コマンドレット)と呼ぶようです。CDataのPowerShell向けの製品は、コマンドでのデータ接続を可能としています。
Biztalkですが、こちらはアダプタという呼び方をします。BizTalkは、マイクロソフト社のビジネスプロセス管理(BPM)製品で、プロセス自動化やEDIの製品です。私も詳しくはないのですが、これらのBPMやEDI製品ではアダプターと呼ばれることが多い気がします。
最後に、CData ArcESBはノーコードでデータ連携が可能な製品なのですが、こちらのデータ接続の部品についてはコネクタと呼んでいます。用途に応じて自在に追加して利用できるという意味ではコネクタがピッタリですね。
まとめ
本記事で、私自身がコネクタ・アダプタ・ドライバという言葉の定義を明確に理解することができました。そして、今更ながらCDataの各種テクノロジー製品のコネクタ・アダプタ・ドライバ・アドイン・コンポーネント などといった言葉がなぜそれが選ばれているのかも腹落ちすることができました。と言いながら、結論しては迷った時には コネクタ という言葉を使っておけばアダプタやドライバなどの他の呼び方も包括した意味なので間違いない!ということですw これからも「CData = コネクタのプロフェッショナル」として皆様のデータ活用をご支援していきますのでよろしくお願いします。