orangeitems’s diary

クラウドではたらくエンジニアの日々の感想です。

データが人間を導く時代

f:id:orangeitems:20180928222210j:plain

 

まずはログの思い出から

ほんの10年前までログは捨てるものでした。まずシステムの運用設計で考えるべきものはログをいかにローテーションするか。ログを取得していなければ問題が発生した時に何が起こったか分からないのでもちろん何をログするか、それがどれぐらい一日で発生するかを計算するところは、インフラエンジニアの力の見せどころでした。ただ、ログを保管するストレージは昔は高価でしたし、容量も低く、かつアクセススピードが低速でした。長期大容量保管に向く磁気テープは基本的にアーカイブした状態でシーケンシャルに・・、わかりやすく言えば圧縮をリアルタイムにかけつつデータの先頭から順番に保管していきます。ということはランダムアクセスできないので、データのアクセスをいざやろうと思っても、インフラエンジニアが磁気テープを保管庫から取り出し、ハードディスクに書き戻し、かつ解凍しなければいけないという大変な作業でした。

今となってみれば、あれで給料もらえていたのだから古き良き時代なのかもしれません。

 

状況の変化

今はすっかり状況が変わりました。ストレージが大容量したことはもちろんですが、分散技術、つまりたくさんのノード(計算機)でデータを分割して持ち、計算によって実データにたどり着くようになりました。そして、SSDやフラッシュメモリーの技術も登場し、データへのアクセスが激速になっています。AWSなどのクラウドベンダーがこれを抽象化してS3などのオブジェクトストレージを普及させ人々に大容量は人間でも扱える自信をつけてくれました。もはや、ログの管理はゴミ処理場ではありません。もうそのまま圧縮すらせずに(もしくは解凍コストもゼロに近くなり)昔は考えられないほど放置しておいても何も困らなくなりました。したがって、昔ながらの運用設計をしている人は考え直した方がいいかもしれません。ログは削除するものではなく、大容量高速ストレージにおいておくべきものになっているのです。そして何の利用をするか決めなくても保管したままであってもコストがかからないのであれば、ログのサイジングなんて無駄なのです。そこは現実の世界とそろそろ乖離し始めていて、保管コストのリスクよりログを捨てることの方がリスクになる分岐点を超えたように思います。それぐらい保管コストはもう安いし、しかも取り出しも十分に早い。

さて、ログのようなデータがこれだけ垂れ流してもいい時代になると、人間が全部読むのは完全に無理です。コンピュータが分散処理で対処しないといけません。しかもその読み方もAIやディープラーニング等の登場で、人間っぽい調べ方に近づいています。これは偶然の一致ではないのです。ハードウェアの進化で高速に大量の読み出しが安価にできるようになってきたからこそ、昔からあった技術が生きたのです。必然の一致です。こうなってくると、人間の科学的な演繹的思考をひっくり返さなければいけなくなるのにお気づきでしょうか。

もっとかみ砕きます。ある人が何か新しい説をひらめいたとします。その説はまだ個人的な見解の域を超えず事実と呼ぶには及びません。これを憶測と言います。これを裏付けなければ新発見とは呼びません。したがってこれを仮説と定義し、これを裏付けるための実験を開始します。再現性があることを確かめるのです。その際には、すべての条件を試すわけにはいかないので、ある程度サンプリングします。たとえば日本人の傾向を調べるのであれば電話調査で2000人くらいのアンケートを取ってそれを参考にしますよね。1億2000万人全員から裏取りはできないのです。そしてこの2000人のアンケート結果を客観的に検討し、結論を得る。これが科学的な態度と呼ばれるものでした。

この方法が、陳腐化してきているということです。人間が読み取れない大量のデータを元データとし、人間的な思考アルゴリズムを用いて、結果を取り出そうとするのです。そこには仮説すら不要で、データから導き出した結果しかありません。

このプロセスには落とし穴もあります.

・アルゴリズム自体に欠陥があり、間違った結果を導いてしまうかもしれない。
・収集したデータが不十分なため、結果が真実とかけ離れてしまう可能性がある。
・どんなアルゴリズムでそれを導き出したのかが人間に理解できないかもしれない。
・プロジェクトリーダーが偏った結果を出すためにアルゴリズムやデータに操作を加えるかもしれない。

こういった懸念に先回りしたサービスも生まれてきています。

 

www.nikkei.com

米IBMは人工知能(AI)の意思決定の流れを可視化するソフトウエアを開発した。AIの判断基準を明示してシステムの信頼性を高める。AIの判断ミスなどへの不安から導入をためらっている企業の受注獲得につなげる。

 

旧来の科学的方法が陳腐化する

もはや人間が仮説をもとに真実を導くという旧来の科学的な態度とは別に、データがまずそこにありそこから事実をコンピュータが引出しこのフィードバックを人間が利用しより確実な行動を取る。この大きな変化が起こったため旧来の科学を大事にしてきた大学等がより社会の進化と乖離し始めているという考察も成り立ってくるのではないかと思います。データとコンピュータとアルゴリズムさえあれば、未知の事実を取り出すという大学が担ってきた分野を侵食してしまうのです。圧倒的な生産性で次々と真実を導き出してしまうのであれば、大学が論文を年間いくつ提出したかというベンチマークで勝負しているのとは大きな差がついてしまうのではないでしょうか。ビッグデータから生まれた真実をまとめていく作業は、これまでの科学研究とは似ても似つかぬものです。

・・・というような状況がついに現実のニュースにも反映され始めたようです。

 

pps-net.org

 

newswitch.jp

 

日々のログが大量にある発電所を中心にまず、ログから故障を割り出し人間が動くというフローが確立されたニュースなのですが、こんなものはまだ序の口のように思います。これから、大量の非正規なデータから事実を生み出すアルゴリズムがどんどん生まれていきます。人間が起点ではなくデータが起点であり、それを知りえる人が成功していくのです。大量資金による大規模な設備投資が20世紀では勝ちパターンだったのですが、2020年に向けて、どうも大量のデータを保有している組織にお金が大量に集まってきています。Google / Amazon / Facebook / Apple。みんなビッグデータを保有しています。もちろん使われ方に疑義を唱えられ窮地に陥ったFacebookのような例はあるにしろ、この方向性はゆるぎないと思います。

 

マイクロサービスの登場の意味

これまで、データというものは無駄なものは削ぎ取られ、正規化していなければいけないというのがスタンダードな考え方で、それに向いているシステムがいわゆるモノリシックと呼ばれる古典的なWEB+AP+DBの3層システムでした。ところがデータが爆発的に増殖し最早、そのデータそのものは非正規な状態でも欲しいときにコンピュータが取りまとめて計算して表示する方がビッグデータの処理としてはふさわしいという考え方が流行してきました。これに相応するのが、コンテナの利用を中心にしたマイクロサービスです。ですから、マイクロサービスを試してみたけど全然ダメで、モノリシックに戻したという例が出てくるのです。そもそもアプローチが違うのに流行だけでマイクロサービスを行っても意味がありません。それがわかっただけでもやらないよりはやったほうが学びにはなるのですが。Googleの検索サービスのように、毎回の結果が同じである必要が必ずしもないものは、検索対象のページデータをリレーショナルデータベースに持つのはそもそも無理なのです。ビッグデータありきのマイクロサービスであり、デプロイがしやすくて開発者が楽、なんていう即物的な理由が一番であるはずがないのです。

 

インフラエンジニアは中心にいる

さきほど、Google / Amazon / Facebook / Apple が大量なデータを持っていると言いましたがそれでも彼らが持っているデータは、地球の神羅万象から発生するデータのうちほんのかけらにしかすぎません。また、データはクラウドに吸い上げるだけが唯一の方法ではなく、オンプレミスでも十分なのです。しかも日本企業はいわゆる「オフライン」の企業が非常に多いと思います。町工場や職人を含めそこにはデータがたくさん隠れています。これをどう料理するかを導くのはインフラエンジニアの仕事です。ストレージだけあっても何もインプットされません。ネットワークが必要です。そしてエッジと呼ばれる情報を取る機構も必要です。データから真実を取り出す方法がどんどん洗練されていけばいくほど、それを実現するハードウェアの実装方法は大事になっていきます。まるでビッグデータ処理はクラウドでというのが当たり前のようになってきていますが、全く違います。ほとんどのデータはプライベートでシークレットです。あなたの今日の食事を何人が知っているというのでしょう。これから人間がどうデータを取り扱っていくかという課題に対して、インフラエンジニアは間違いなくブレーンとして活躍できるポジションにあると思います。私の今日の晩御飯の話題がクラウドに保管されるとか絶対にイヤですから。まあシチューでしたけど。

時代は転換点にあります。たくさんのデータを保管する能力を人間が得た後に、どんな変化が待っているか想像はできないのですが、ぜひ、平和的により人間がよりよくなっていくためにインフラエンジニアとしてその実現をリードしていきたいと思っています。

 

 

データ分析の力 因果関係に迫る思考法 (光文社新書)