2016」に参加しました。Sparkについてプレゼンテーションとデモを行いました。今回のイベントはコミュニティフェスタというように開発元であるIBMさんだけではなく様々な企業の方の講演があり、それに運営を担当してくれたボランティアさんたち、電通大の先生などが協力して開催されました。主体となったのもSoftLayer-UGとBlumixUserGroup、つまりサービスを使う側の人たちが主催になって運営されています。いうことで最初は前佛のセッションから紹介します。このセッションでは最近やたらと流行りのコンテナーであるDockerについて解説しました。その後にDockerを使ってアプリをデプロイするデモ、ここではownCloudやWordPress、ZabbixをDockerを使って立ち上げるデモをお見せしました。タイトルの「SoftLayer上でもScrap&Buildしたい!」というところに某社に気を遣ってる感が^^。このセッションの中ではDockerのイメージがどういう構造になっているのか、DockerコンテナーとDockerイメージの違い、Dockerのライフサイクル、特にDockerのコマンドについての詳しい説明、それからDockerHubやSwarmなどの関連するコンポーネントの話などをしました。デモの部分ではSoftLayerでのDockerの使い方、オプションの設定などをから始まって、既存のWebサイトをDockerを使ってミラーサイトに移行する、というデモを実行しました。runコマンドの-d(デタッチモード)、-p(ポートマッピング)などなかなか細かい内容をお見せしつつ、説明が進みます。「どうしてそもそもDockerが出てきたのか?それは開発だけじゃなくて運用の人に対して環境設定などの面倒な作業をなくしたい、そういう思いから出てきたんじゃないかなと思います」と、元データセンターで運用をやっていた前佛だけに実感がこもったデモが進みます。デモの最後は実際のWebサイト、docs.docker.jpのコンテンツをダウンロードして、コンテナーに格納してSoftLayer上に移設するというデモです。これは本当に簡単で数回コマンドを叩くだけでできてしまうので、これまでサイトのメンテナンスなどでミラーサイトを作ってアクセスを迂回させる作業が必要な時には役に立つのでは?と思います。デモが速すぎてちょっとついていけない人がいるかも?という具合に色々なデモを繰り出しながら前佛のセッションは終わりました。続いて木内のセッションをご紹介します。ここでは「BlumixとApacheSparkでできるIoTデータの姑分析」と題した内容で、まずはBluemixの紹介から始まりました。BluemixはIBMが展開するPaaSで、PivotalのCloudFoundryをベースにしたアプリケーション開発のためにプラットフォームになります。Bluemixを使った事例、サンフランシスコのBART、世界最大の自転車レース、ツール・ド・フランス、それとIBMのリサーチグループが行っているプロジェクトポセイドンという水の有効活用を行うための社会貢献のためのプロジェクトを紹介しました。Sparkを使って分析をする内容に入っていきます。木内が最初のところで強調したのがこの写真のURL。BluemixにログインするためのURLで、このページにたどり着くまでに相当苦労したそうです。今見るとちゃんとBluemixのページにはRegistrationとLoginっていうリンクが有るんですけどねぇ。大事なURLはこれだ!https://console.ng.bluemix.net/このデモではBluemix上で利用できるセンサーのシミュレータから温度のデータをMQTT経由で受け取り、それをBluemix上で稼働するNode-Redで集約&加工した上で、JSONデータを扱えるデータベースCloudantに格納してから、Sparkで分析を行うというものです。実際にBluemix上での動作を検証した上で、インターネット越しに木内の自宅のサーバーで稼働しているSparkに送信して分析、というのが実際に動くとカッコいいんですが、処理が遅くてセッションの持ち時間内に終わらないということで事前に保存しておいたセンサーデータを使ってSparkで処理を行いました。お料理番組的な感じですね。MQTTはPublish/Subscribeを使ったメッセージ交換のプラットフォームでセンサーなどのデータをやり取りするのに使われます。プロトコルが軽いのでTCP/IPなどのプロトコルを使うよりもセンサーなどのデバイスにも実装がラクになります。今回はBluemixに用意されているブラウザーで動くセンサーシミュレータを使いました。Node-Redはデータを加工するためのオープンソースのツールでGUIでブロックを繋げたりするだけでデータの加工を行うことができるスグレモノです。そこで加工されたセンサーデータをJSONの形でCloudantに保存します。CloudantはNoSQLと呼ばれるスキーマレスのデータベースをクラウド上で使えるようにしたものです。JSONデータをそのまま保存したり、SQLに似た構文で検索したりすることができます。Sparkに読み込みます。ここで実際にローカルのファイルシステムにあるJSONのファイルを読み込む時もCloudantに接続して読み込む時もそれほど設定を変更することなく行えることを強調しました。変更するのは4行のスクリプトだけなんです。この辺もBluemix、よく出来ています。最後のSparkでの分析はK平均法を使って異常を発生させたセンサーを選り分けるという処理をやってみました。デモで使用したコンポーネントの概念図。このデモは8個のセンサーシミュレータから数時間に渡ってデータを発生させて吐き出された14万個のデータの中からワザと異常なデータを設定したセンサーを判別するというIoTのシステムを想定しています。Sparkを連携させて実際にIoTのシステムを簡単に構築できるというのが分かってもらえたかなと思います。他にもWatsonの話やBlockchainの入門など幅広いトピックが紹介されたイベントでした。最後の懇親会も盛り上がりましたし、次回のイベントも乞うご期待です。LABの情報を逃さずチェックしよう!メールアドレスを登録すると記事が投稿されるとメールで通知します。※登録後メールに記載しているリンクをクリックして認証してください。#Csharp今年のRSGTも最高だったという話。LABの情報を逃さずチェックしよう!メールアドレスを登録すると記事が投稿されるとメールで通知します。※登録後メールに記載しているリンクをクリックして認証してください。