見出し画像

DATA Saber Bridge【Ordeal6/7】の感想

note読者の皆様、こんにちは!
転勤族協会TKT48の奥田美和です。

11/12から始まった「DATA Saber Bridge」コーナー。
Ordeal7まで進みました。


★Ordeal6/7の記録

<12/3> ※Ord4の沼から抜け、Ord5に入る前に、Ord3の復習をしながら
Ordeal7 動画 2h
Designing Dashboard for Performance

・Ordeal7 解答

<12/4>
・Ordeal7 解答2回目 → OK

<12/19> ※Ord6が終わった後
Ordeal7 動画復習 2h
Designing Dashboard for Performance


Ordeal5の後…

<12/13>
Ordeal6 元シート作成 1.5h

<12/14>
Ordeal6 動画 1.5h
Visual Best Practice: 必要なチャートとグラフとは? 1~2

<12/15>
人流データもどき&Viz作成 1.5h

<12/18>
Ordeal6 動画 2.5h
Visual Best Practice: 必要なチャートとグラフとは? 3~13

・Ordeal6 解答


★いよいよ仕事でTableauを触ることになった日


★パフォーマンスが大事な理由

Ordeal4の沼にはまった後、Ordeal5に行く気がせず、先にOrdeal7の動画を見ました。

「Designing Dashboard for Performance」

Tableauは、業務システム開発をしてきた元SEの私から見ると、
Web業務システムの1つです。

だから、動画を見ながら、2013年のことを思い出していました。


あれは、2013年3月。
イントラマートというシステム上で動く、営業支援システムを新規構築していた時のこと。

「セールスフォースは難しい!」と誰も使わなくなり、
営業の皆さんがExcelで数字を管理し、
営業会議用の資料を作成するのに1週間もかかっていた…

というものを、
「iPadで、誰でもいつでも入力でき、リアルタイムで営業数値を見られるようにする」というプロジェクト。

本稼働は、3月1日。私の誕生日2日前。
社長が大々的にPRし、株主向けの資料も書いてしまったから、本稼働日は絶対死守。


本稼働の前日、2月28日。

パートナー企業さんが作成してくれたものに対して
単体テストレベルの細かさでテストして、エラーを出しまくっては修正してもらい、残すはいよいよ『本番データを使った運用テスト』のみとなりました。


本番データに接続して、システムを起動すると…
初期画面が表示される前に、エラーで落ちた!

原因はすぐに分かりました。


当時はまだ珍しかったGoogle Maps APIを使い、
Google Mapsの上に、営業中~受託済の場所にピンを落とす
(しかも、ピンは顧客の企業キャラの画像を使用)

初期処理内で、上記の処理をしている際に、
テストではやっていなかった…

【5万件のデータを全件読み込んで、地図上に表示させる】


地図システム開発をしたことがある方なら、とんでもないことだとすぐに分かりますよね。

当時私は発注側で、プログラミングから遠ざかっていたSEでしたが、
慌ててソースを開き、初期処理内の該当ループ箇所を探して、書き足してもらいました。

If データ読み込み数 > 10000 Then
 初期処理内の、ピン描画の次の処理
Else
 try
  初期処理内の、ピン描画処理
 catch
  初期処理内の、ピン描画の次の処理(ここにエラー処理ロジックも有)
 End try
End If


とにかく、初期処理内のピン描画処理をクリアして、
初期処理(システムを起動してから、最初の画面が立ち上がる)まで完了させないと、ユーザーにエラーメッセージすら出せません。

【1万件なら、いけるはず…!】 ← SEのカン。笑


……無事、先ほどのロジックで初期処理をクリア。
その後は普通に動いたので、無事3月1日に本稼働できました。
(地図が、ピン代わりの企業キャラだらけになった様子に、皆さんご満悦でした)


これ、「クエリパイプラインの最初は、抽出フィルター」というものですね。


★クエリパイプライン

みのる師匠の解説。


Next…


この記事が気に入ったらサポートをしてみませんか?