データ分析とインテリジェンス

データアナリストやデータサイエンティストはどれぐらいのSQLが使えるべきなのか

データを扱うならSQLは必要だけどみんなが同じことをできる必要はない

SQLは体力みたいなものと考えるのがよさそうだ。あるに越したことは無いが、スポーツ選手でもないのに体力を身に着けることに多く時間を費やす必要は無い。それよりも身に着けるべきことがあるはずだ。スポーツ選手であっても競技次第でどれぐらい必要なのかは違いがある。

そこで、どんな仕事にはどれぐらいのSQLが書けるといいのかをまとめる。タイトルに「データアナリストやデータサイエンティスト」を掲げたがこれは釣りで、言葉の指している職務範囲が人によって違うので使わない。その代わりに仕事を一般・分析・整備の3つに分ける。比較としてスポーツを使う。

また、対象は「データを使うためのSQL」を考える。つまり基盤を作るためのSQLは考慮しない。意思決定と分析のプロセスの全体像で言えば、「収集」 フェーズの集約の後から「処理」フェーズを対象とする。理由は単純で自分がわからないから。

一覧にまとめると以下のようになる。その後続いて詳しくみていく。

一般の仕事に必要なSQLはピボットテーブルやBIと同じことが出来るレベル

一般の仕事とはここでは「データの扱いを専門あるいは主業務にする以外全部」のことだ。どんな人であれデータに必ず関わっているし分析も行っているので「分析しない仕事」ではおかしくなる。

ここではピボットテーブルやBIと同じレベルのことが出来れば十分だろう。やることは同じでSQLで表現するだけなので、ピボットテーブルやBIが使えるならばすぐにできるようになる(はず)。

環境次第なので必要であれば身につくだろうし、そうでなければ身に着けても使いどころがあまりない。ようするに、SQLがどうとかはあまり気にしなくてよいと思う。

ここはスポーツ選手以外の人が当てはまるだろう。スポーツ選手でなくとも体力があれば集中力が増したり健康でいられる。しかし、スポーツ選手なみの体力をみんなが持つ必要はないのと同じだ。

分析の仕事に必要なSQLはDWHから欲しいデータを取ってこられるぐらい

分析の仕事とはクロス集計よりも複雑な手法を使う役割を想定している。数理モデリング、機械学習、因果推論、統計とか。

SQLの目安は大体整っているデータ(DWH)をいくつか組み合わせて集計して自分が分析するのに必要なデータを作れるぐらい。なのでSQLとしては入門書に書いてある+αぐらいか。現在のところSQL関連の書籍の中で一番難易度が高いのは『ビッグデータ分析・活用のためのSQLレシピ』だと思うが、ここにあるクエリがすんなり書けるのがあたりまえに必要かといえばそうでもないだろう。

より複雑なクエリも書いている人は少なくないだろうが、その多くは分析のタスクではなく整備のタスクとして捉えたほうがよいのではないかと思うので次項で別に扱う。意識あるなしに兼務している状態と表現できるだろう。

道具を使う競技ならばいくら体力があってもそのスポーツで好成績を収めるのは厳しい。とはいえまったく体力が無いと厳しい競技は多い。どれぐらい必要かは競技次第という状況はSQLに似ている。

整備の仕事はどんなデータが来てもなんとかできるスキルが必要

最後に整備の仕事だが、どんなデータでもなんとかするだけの力が必要だ(といつつ書いている自分もできないことはたくさんあるが)。『ビッグデータ分析・活用のためのSQLレシピ』に出てくるクエリは書けないと仕事にならない。

実際にはDWHやデータマートの作成やアドホックなデータ抽出依頼の対応ために扱うデータレイクのデータはひどく汚いのが普通なのでさらにその手前にもっと入り組んでいてきめ細かい(?)処理をするクエリまで必要になる。

あえてスポーツに例えるなら長距離走の選手だろう。体力がないと話にならない(と思っているが認識が正しくなかったら教えてください)。

SQLだけ身に着けても仕事にはならない

かなり大雑把にまとめてみた。SQLに限らず、仕事や環境に合わせて何がどれぐらいが必要かも変わっていくので、特に分析はやること次第でさらに分けたほうがいいかもしれないがさしあたりはこれぐらいで十分ではないだろうか。

今回はSQLに特化した話をしたが、この記事だけで「一般が下位で整備が上位」などと勘違いをしないで欲しい。SQLというたくさんあるスキルの1面を切り取っただけにすぎない。分析スキル、何かの分野の専門知識、コミュニケーション、段取りよく進める力などと組み合わせなければ、データ抽出すらろくにできない。

なのであくまでも目安である。よほど特殊な状況でなければSQLだけでできる仕事はない。

関連記事

分析や整備とそれ以外でわけているのは、基礎はともかくそれ以上複雑なクエリはみんなが書けなくてもいいと思っているから。

カテゴリー:意思決定と分析のプロセス