「RPAツールとは画面操作の付いたETLツールである」というのが、僕の認識だ。誰もこのように言わないので、僕だけの認識なのかもしれないが、この点をもう少し詳しく解説したい。
まず、ETLツールとは何かを簡単に解説する。ETLツールとは「Extract(抽出)」、「Transform(変換)」、「Load(ロード)」の3つのプロセスを実行するソフトウェアのことである。基幹系システムからデータウェアハウスにデータを送るときに使われることが多い。なので、ほとんどのBIツールには付属している。
有名なETLツールとしては、データスパイダー(DataSpider)やTalend(タレンド)などがある。SQL Serverにも「SQL Server Integration Services」(SSIS)と呼ばれるETLツールが付属している。
ノンプログラミングでデータを抽出、加工でき、他のデータソースにアップロードできるので、非常に使いどころが多く、便利なツールだ。この機能を使って、単純にデータ連携のみならず、帳票の自動作成、業務ロジックの自動実行なども行うことができる。
ここまで、読まれた方は「これってRPAツールと同じじゃない?」と思わないだろうか。そうです。RPAツールと役割は同じです。
では、なぜETLツールブームは起きず、RPAツールはブームになったのか?
それは「RPAツールは画面操作を行うから」だと思う。インパクトがあり、エンジニアではない人(特にお偉いさん)にとって効果がわかりやすい!
マウスが勝手に動いていれば、「ロボットが操作してる!」となって、「スゴイ!」となるわけ。
ETLツールにはこういうのはない……。
まぁともかく、RPAツールは画面操作ができる点がETLツールと決定的に違う、ということ。そして、そこが一番のメリットである。
僕はもともとBIツールを触る機会も多かった。
2000年台初頭から業務で触れていたし、BIツールに付随しているETLツールを使って業務の自動化も行っていた。これは「そこにたまたまETLツールがあったから」であり、特別に「ETLツールを使って自動化してやる!」という意図を持っていたわけではないのだが、開発もしやすい、ノンプログラミングでブラックボックス化しないで自動化できるしから引継ぎもできる、くらいで使っていた。
そこにRPAツールが登場したので、「ETLツールではできなかった画面操作もできる!これで完全自動化できるな!」となったわけである。僕が「RPAツールは画面操作できるETLツール」というのは、ここが原点だ。
つまり、僕の頭の中ではあくまでETLが主軸であり、RPAはその一機能なのだ。
なぜRPAが「主軸」にならないのか?だけ、簡単に説明して終わろう。
RPAツールは画面を操作するので、画面イメージが必要。つまり、フォアグランドで動作することがほとんどだ(バックグラウンドで動作するライセンスもあるが高額)。
フォアグランドで動作し、画面を操作することは動作速度が遅くなりがちだし、不安定。加えて、これはRPAツールのせいではまったくないが、画面は改変が多いため、RPAツールが止まってしまうことが多い。
また、ETLツールよりバックグラウンドでの動作や各種アプリやサービスへの接続機能は弱い。そこに力を入れると大きなソフトウェアになってしまうので、そこは避けている風に思える。
図にすると以下の守備範囲となる。
総合してみると、RPAツールがETLツールの代わりをすることにはならない。ETLツールもRPAツールの強みを持たない。
よって、組み合わせるしかないのが現状だと僕は認識している。ちなみに上の図にもあるし、「ツールから考えるのはやめなさい」という記事にも書いたが、一番の主役はDB(データベース)。
大将がDBで、騎馬隊がETL、歩兵がRPAという感じかな。
1つのツールだけで業務を自動化することは現時点では難しいなぁという話でした。では。
コメント ログインすると書き込めます