データエンジニア日記

データエンジニアの雑記

「データエンジニアの始まり」というエントリーを読んで

データエンジニアの始まり(翻訳) - satoshihirose

というエントリー(翻訳)を読んで考えたことをメモ。 ちなみに元エントリーは

https://medium.freecodecamp.org/the-rise-of-the-data-engineer-91be18f1e603

未だにデータエンジニアとデータサイエンティストの違いがわからない方はとりあえず読んでいただければと思います。

データエンジニアの領域って、広く考えていくといくらでも広く定義することが可能ですよね。 たとえば、世の中のデータエンジニアの雇用募集を眺めると HadoopRDBやインフラ周りの細かい設定を熟知していることを求めるJobdescriptionもあるでしょうし、業務寄りや「ビジネスとデータをつなげる」なんて方向だったりすることもあったり、特定のETLツールに習熟していることを求める場合もあったり、はたまたデータガバナンス寄りの調整役的なポストもあったりと、様々です。

ETLツールの変革について

これは僕も常々感じておりました。「ドラッグアンドドロップ型のETLツール」と「コードや設定ファイルドリブンのツール」の対比。 自分は前者ではTalendを使いますし、一方後者ではDigdagを利用しております。今手がけているシステムでは併用しています。

基本は後者のツールの方がバージョン管理もできるし、シンプルに記述できる要件であれば、こちらのほうがよろしいかと思います。 ただ、(人にもよりますが) 「入れるデータを選べないデータエンジニアは」 という雑用係的(笑)立場である場合、複雑な要件でデータを受け取ることもあります。 たとえば3つの違うテーブルのデータCSVファイルを一つ(!?)のファイルに圧縮したものを渡さえれたりとか。。。 こういうのをコード系のものだけで書くと、かなりスパゲッティな感じなって、どういう処理をしているのか後から追いにくくなります。

自分はこういう未整理な要件のものにはGUIドラッグアンドドロップ側のツール(Talend)を用いたほうが良いと考えます。 インプット・アウトプットのDBや入れ物が2,3種類だけであれば後者だけで結構洗練されたシステムも作れると思いますけど。

データエンジニアは図書館員

このたとえは面白いと思いました。たしかに図書がどこにあるのか?無ければ他の図書館から引っ張ってくるとか、ほんの読み方を教えてあげたりとか、、、たしかに図書館員っぽい仕事ですね!