Serverless Operations, inc

>_cd /works/id_666

title

センサーメーカーによる分割データ送信・復号システムの構築を支援、ハードウェアの厳しい制約をAWS IoTやAWS Lambda等の豊富な知見で解決する

og:image

client

A社(企業名非公開)

お客さまの意向により、企業や製品に関する情報は非公開としています。

summary

  • センサーメーカーによるセンサーシステムをフルサーバーレスで構築
  • AWSを使ったIoTの開発経験が豊富なサーバーレスオペレーションズが開発を支援
  • ハードウェアの仕様上の制約のためデータの分割送信や検証、高可用性担保のためのマルチリージョン構成など、AWSの知見をフル活用

関西地方に本社を置くA社は、その技術力が日本のみならず世界で高く評価されているセンサーメーカーです。そして、世界的にIoTによるセンシングやモニタリングへのニーズが高まるなか、同社もデバイスの販売だけでなく、それらを活用したソリューションビジネスに注力しています。

同社は、主力製品のひとつであるセンサーシステムとクラウドを組み合わせた、新たなソリューションの開発に取り組むなかで、クラウド開発の支援をサーバーレスオペレーションズに依頼しました。

製造業であるA社が、クラウドを利用したサービス開発に取り組む上で、どのような課題があり、それに対してサーバーレスオペレーションズがどのような支援を行ったのか。A社のご担当者と、サーバーレスオペレーションズの堀家および金に、プロジェクトについてお話しいただきました。

member

左上から時計回りで、A社のご担当者、サーバーレスオペレーションズの堀家、金、ライターの青山

――A社ではセンサーシステムとクラウドを組み合わせて、どのようなソリューションを開発したのでしょうか

ご担当者 バッテリーで動作するセンサーが、モバイル回線を通してデータをクラウドにアップロードし、専用のウェブサイト上からデータを確認できるというものです。

今回はハードウェアのスペックによる制限が厳しいため、それに合わせて全体のシステムを構築しなければならないため、クラウドでの開発経験が豊富なサーバーレスオペレーションズに支援をお願いしました。

――ハードウェアのスペックによる制限とはどういうものですか

ご担当者 今回のハードウェアはセンサーが検知したときのデータを通信回線を通じてクラウドにアップロードする仕組みです。電源はバッテリー動作のため、非常に省電力な設計となっています。

省電力設計のため、搭載するメモリーの容量も小さく、大きなデータは一度で送信することができません。したがって、アップロードのためには、データを複数に分割して送信する必要があります。

クラウド側では、分割して送られてきたデータを復元して、データが欠落などで壊れていないか確認する必要があります。データが欠けていた場合はハードウェア側に再送してもらう必要があるため、データファイルの復元と検証を数秒以内で完了させることが必要でした。

また、将来的に多くのお客様へのサービス提供が実現した場合、多くのハードウェアからのデータをきちんと処理できるか、24時間365日停止せずに動作することができるかなど、多くの要件があります。

こうしたシステムをクラウドで開発するにあたって、社内のR&D部門に相談したところ、クラウドに強い開発会社としてサーバーレスオペレーションズを紹介してもらいました。

他にも何社か候補はあったのですが、実際に堀家さんとお話しした際に、我々の疑問に対する答えが妥当なものだったり、過去に似た案件を経験されていたりしたことから、お願いすることに決めました。

堀家 実は、製造業でAWSを利用されているお客様は非常に多くて、業種別で見るともっとも多いのです。そのため、私たちも大企業から中小企業まで、多くのお客様のAWSでの開発を支援してきました。それに、今回の主担当だった金は大手メーカー出身のため、AWSの知識だけじゃなく製造業の知識も豊富なんです。

――具体的にサーバーレスオペレーションズとは、どのような形で開発支援を進めていったのでしょうか

ご担当者 今回は、会社の方針としてAWSを使うことが決まっていたので、それを前提に我々の方で大枠の仕様については資料を作っていました。それとハードウェアについての制約などを合わせて伝えて、定例ミーティングで構成を決めていきました。

金さんとは毎週のミーティングのほか、Slack等で随時やりとりしながら、こちらの案に対して多くのアドバイスをいただきました。資料だけでなく、場合によってはサンプルプログラムも準備していただいたので、開発は非常にスムーズにいきました。

金 今回の開発におけるポイントとして、今後の運用負担を減らすためフルサーバーレスの構成を提案しました。

ハードウェア側で採用していた技術による制約のため、単独のサーバを想定していた部分もあったのですが、最終的にはそうした部分もAWSのサービスで実現できる構成を提案することができました。

――具体的にはどういった構成ですか

金 AWS IoTにはさまざまなサービスや機能が揃っているので、それを活用しています。ハードウェアの管理はAWS IoT Coreを利用し、分割ファイルの復元や検証などはAmazon SQSとLambdaで構成しています。最終的なデータはS3に格納し、お客様向けの専用閲覧サイトもAWS上にサーバーレスで構築しています。また、止まることが許されないシステムなので、システム全体を2つのリージョンに多重化したマルチリージョン構成を取ることで高い可用性と耐障害性を実現しています。

構築したソリューションのシステム構成図

ご担当者 特にデータを分割して送信しなければならないところは、最適な実現方法について参考となる情報が少なかったことで悩んでいました。IoTについては他社も含めて多くの事例がありますが、独自のサービスを構築したり、組み込みのハードウェアや利用環境などで厳しい制約がある場合は、参考になる事例がすくないです。そうした部分は、どうしても自分たちで開発しなければなりませんから。

――クラウドでの開発は、どういった点が課題でしたか

ご担当者 はい、我々がこれまでやってきたソフトウェアとクラウドでは、異なる点が多いです。特に今回は、ハードウェアと通信する部分やデータを処理する部分といったバックエンドだけでなく、お客様が利用するフロント側(ウェブサイト)も作る必要がありました。

本当に助かったのは、金さんはバックエンドだけでなくフロントエンドの知識も経験もお持ちなので、全体を見た上で総合的なアドバイスをいただけたことです。

堀家 クラウドがメインの私たちから見ると、製造業だけでなく流通業や建設業など多くの業種のお客様がいらっしゃいますが、業種が違ってもソフトウェア開発の根本については変わらないという認識です。

もちろん、業種によって利用するAWSのサービスや機能に違いは出てきますが、データの活用だとか、サービスの可用性だとか、運用負荷の削減だとか、求める本質は大きく変わりません。

金 技術的に見ると、細かな特徴があります。特に製造業だと、利用できるハードウェアの制約が大きい一方で、複数の機能を取り入れる必要があることが多いです。パソコンやスマホとは違い、通信する相手のデバイスの状態も考慮しないといけない。だから、一般的なウェブサイトやウェブサービスの開発よりも、IoTプロジェクトの方が難易度は高いです。

――今回の開発で、もっとも難しかったのはどこでしょうか

金 センサーから分割して送られてきたデータを復元、検証してウェブサイトで見られるようにするプロセスをフルサーバーレスで構築し、かつ数秒以内に処理を完了させるところです。

データの復元、検証の処理は、AWSのLambdaを使っているのですが、複数のコードが連動して同じタイミングで動作する必要があります。似た仕組みの経験はあったので、理論的には上手く動くとわかっていましたが、それをA社のエンジニアと共同体制で開発するところは慎重に進めました。

サーバーレスで構築するため、コードを書く必要はほとんどなかったのですが、逆にAWSのサービスを熟知して、使いこなす必要があったので、そこが技術的にはポイントでした。

それと、負荷テストについては、IoTの場合はデバイスを簡単に用意できないため、準備が大変でした。一般的なウェブサイトやウェブサービスの場合、テストツールがいろいろあるので簡単なのですが、今回はIoTサービスなのでいろいろ工夫が必要でした。

――技術面以外のことで、製造業のAWS利用について、何か気を付けたことはありますか

金 A社の皆さんと一緒にチームとして進められるように、質問や意見交換がやりやすい環境を作ることを大切にしました。

アドバイザリーという立場で入る時は、どこから始めれば良いのかステップを明示して、それをクリアしていくことで、チーム全体にノウハウが蓄積していくことが実感できるよう、一緒に伴走しながら課題を解決するということを意識しています。

ご担当者 将来、我々はハードウェアだけでなく、いろんなサービスをお客様に提供していくことになります。クラウドシステムが構築できれば、我々のデバイスと組み合わせた新たな提案もでき、どんどん展開していくことができます。こうしたシステムへの取り組みは、この先において非常に大事になってくると思います。

一般的に、クラウドも含めて優秀なITエンジニアは希少なので、業界全体で育成が課題となっています。すぐには育てられない以上、クラウドシステムを内製化していく為にも、サーバーレスオペレーションズさんには、引き続きご支援いただきたいと思います。

堀家 我々の強みは、お客様に応じて、柔軟なかたちでご支援できるところです。ひとくちに製造業といっても、会社によって状況は様々です。そこに、「クラウドはこういうもの」というやり方を押しつけるのではなく、お客様が本当に求めるものを汲み取り、それに応じた支援ができます。だから、お気軽に悩みを相談していただければと思います。

Back
to list
<-