(57)【要約】  ネットワークを介して接続された複数の機器からデータを収集し、収集したデータに対して処理を行うサーバにおいて、前記複数の機器からデータを受信すると、前記データが用いられるサービス毎に識別可能な状態で前記データを蓄積する蓄積手段と、前記蓄積手段によって蓄積された前記データを前記サービス単位で取り出して所定の処理をする処理手段と、を備えるサーバ。
2015115042.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された複数の機器からデータを受信すると、前記データが用いられるサービス毎に識別可能な状態で前記データを蓄積する蓄積手段と、  前記蓄積手段によって蓄積された前記データから前記サービス単位で前記データを取り出して所定の処理をする処理手段と、を備える、ことを特徴とするサーバ。
【請求項２】
前記蓄積手段は、前記データの送信周期に基づき決定したサービス識別子を当該データに付与し、  前記処理手段は、前記蓄積手段が付与した前記サービス識別子を参照して前記データを取り出す、ことを特徴とする請求項１に記載のサーバ。
【請求項３】
前記処理手段は、前記データの送信周期に対して所定倍数の周期で前記データを取り出す、ことを特徴とする請求項１乃至２のいずれか１項に記載のサーバ。
【請求項４】
前記蓄積手段は、前記機器から前記データを受信すると、前記機器の前記データを送信する周期、すなわち送信周期に対応する所定のメモリに、受信した前記データを蓄積し、  前記処理手段は、前記所定のメモリに蓄積された、前記送信周期が同じ前記データ毎に前記所定の処理を行う、ことを特徴とする請求項１乃至３のいずれか１項に記載のサーバ。
【請求項５】
ネットワークを介して接続された複数の機器からデータを受信すると、前記データが用いられるサービス毎に識別可能な状態で前記データを蓄積し、  前記蓄積された前記データから前記サービス単位で前記データを取り出して所定の処理をする、ことを特徴とするデータ処理方法。
【請求項６】
前記蓄積においては、前記データの送信周期に基づき決定したサービス識別子を当該データに付与し、  前記処理において前記データを取り出すときには、前記蓄積において付与した前記サービス識別子を参照して前記データを取り出す、ことを特徴とする請求項５に記載のデータ処理方法。
【請求項７】
前記処理において前記データを取り出すときには、前記データの送信周期に対して所定倍数の周期で前記データを取り出す、ことを特徴とする請求項５乃至６のいずれか１項に記載のデータ処理方法。
【請求項８】
前記蓄積においては、前記機器の前記データを送信する周期、すなわち送信周期に対応する所定のメモリに、収集した前記データを蓄積し、  前記処理を行うときには、前記所定のメモリに蓄積された、前記送信周期が同じ前記データ毎に前記処理を行う、ことを特徴とする付記５乃至７のいずれか１項に記載のデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、サーバ、データ処理方法に関し、特に、センサや端末からデータを収集するサーバ、データ処理方法に関する。
【背景技術】
【０００２】  一般的に、家や車などに設置されるセンサ、端末等のデバイス（以下、「収集デバイス」と総称する）からデータをサーバが収集し、様々なサービスを提供するＭ２Ｍ（Ｍａｃｈｉｎｅ  ｔｏ  Ｍａｃｈｉｎｅ）サービスが知られている。例えば、農業の分野では、農地に設置された複数の収集デバイスから収集した温度や湿度等のデータをサーバが加工、分析し、農作物の育成に必要な情報や指示を利用者に通知するＭ２Ｍサービスが知られている。上述のＭ２Ｍサービスは、農作物の生産性向上や品質の安定を生むことが期待されている。【０００３】  上述のＭ２Ｍサービスを実現する為のシステムは、以下の特許文献１に開示されている。【０００４】  特許文献１の無線通信システムは、基地局とゲートウェイを介して、収集したデータをサーバに送信するＭ２Ｍ端末を複数備える。基地局は、Ｍ２Ｍ端末及び一般的な携帯端末と通信を行う。ゲートウェイは、基地局とサーバに接続され、Ｍ２Ｍ端末とサーバ間のデータ通信を制御する。さらに、特許文献１の無線通信システムは、Ｍ２Ｍ端末の発信や着信といったシグナリング通信を制御する呼処理制御装置とを備える。基地局と、ゲートウェイと、呼処理制御装置は、有線にてメッシュ状に接続される。【０００５】  基地局、呼処理制御装置及びゲートウェイの少なくともいずれかは、Ｍ２Ｍ端末や一般的な携帯端末からサービス開始要求を受信すると、該サービス開始要求がＭ２Ｍ端末からの要求であるか判断する。基地局、呼処理制御装置及びゲートウェイの少なくともいずれかは、Ｍ２Ｍ端末からの要求であると判断すると、シグナリング通信及び／又はデータ通信に使用するセッション識別子として、共通のセッション識別子をＭ２Ｍ端末に割り当てる。各Ｍ２Ｍ端末は、いずれも共通のセッション識別子を用いて、サーバとシグナリング通信及び／又はデータ通信を行い、収集したデータをサーバに送信する。【０００６】  上述の構成や動作の通り、特許文献１の無線通信システムは、複数のＭ２Ｍ端末が共通のセッション識別子を使用して通信を行うため、一般的な携帯端末に割り当てるセッション識別子の枯渇を防ぎ、携帯端末の通信に影響を与えることを防ぐことができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１３−１１０５５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】  しかし、特許文献１の無線通信システム等、Ｍ２Ｍサービスを提供するシステムの一般的なサーバ（以下、「Ｍ２Ｍサービスのサーバ」という）は、収集デバイスが多くなると、収集デバイスの数に応じて処理能力を増強しなければならないという課題があった。【０００９】  なぜなら、Ｍ２Ｍサービスのサーバは、収集デバイスからデータを収集する毎に処理（具体的には、収集したデータを加工する処理や加工したデータを分析するアプリケーションに出力する処理）を行うからである。すなわち、Ｍ２Ｍサービスのサーバは、収集デバイス毎に処理を行うので、収集デバイスの数が多くなると、それに応じて処理能力の増強をしなければならなかった。【００１０】  なお、Ｍ２Ｍサービスのサーバは、将来的に、数千万台の収集デバイスからデータを収集することが想定されている。その為、一般的なＭ２Ｍサービスのサーバは、数千万台の収集デバイス分、処理能力を大きく増強しなければならず、サーバの製造コストが高くなることが予想されている。【００１１】  本発明は、上記課題を解決するサーバ、データ処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】  上記目的を達成するために、本発明のサーバは、ネットワークを介して接続された複数の機器からデータを受信すると、前記データが用いられるサービス毎に識別可能な状態で前記データを蓄積する蓄積手段と、前記蓄積手段によって蓄積された前記データから前記サービス単位で前記データを取り出して所定の処理をする処理手段と、を備える。【００１３】  上記目的を達成するために、本発明のデータ処理方法は、ネットワークを介して接続された複数の機器からデータを受信すると、前記データが用いられるサービス毎に識別可能な状態で前記データを蓄積し、前記蓄積された前記データから前記サービス単位で前記データを取り出して所定の処理をする。
【発明の効果】
【００１４】  本発明によれば、Ｍ２Ｍサービスのサーバは、収集デバイスが多くなったとしても、収集デバイスの数に応じて処理能力を増強する必要がなくなる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施の形態におけるサーバの動作概略を説明する図である。
【図２】本発明の第１の実施の形態におけるサーバの構成例を示す図である。
【図３】本発明の第１の実施の形態におけるサーバの動作を説明する為の図（その１）である。
【図４】本発明の第１の実施の形態におけるサーバの動作を説明する為の図（その２）である。
【図５】本発明の第１の実施の形態におけるサーバに事前設定されるデータを説明する為の図である。
【図６】本発明の第２の実施の形態におけるサーバの構成例を示す図である。
【発明を実施するための形態】
【００１６】  次に本発明の実施形態について、図面を参照して詳細に説明する。
【００１７】  ［第１の実施の形態］  本発明の第１の実施の形態におけるサーバは、端末から送信されるデータを収集する。本実施形態のサーバは、複数の端末からデータを収集してもよい。各端末は、所定のＭ２Ｍサービスに対応する一般的な収集デバイスである。すなわち、各端末は、図１に示されるように、自身が対応するＭ２Ｍサービスに応じた所定の周期（例えば５秒周期や７秒周期）でサーバにデータを送信する。上述の所定の周期は、以下、「送信周期」という。
【００１８】  本実施形態のサーバ１０は、送信周期が同じデータをメモリに集める。例えば、図１に示されるように、各端末から送信周期５秒、若しくは７秒でデータが送信される場合、本実施形態のサーバは、（端末２０、４０からの）同じ送信周期５秒のデータをメモリ１に集め、（端末３０からの）送信周期７秒のデータをメモリ２に集める。本実施形態のサーバは、集めた同じ送信周期のデータ毎に所定の処理を纏めて行う。
【００１９】  本実施形態のサーバは、上述の動作を実現する為、以下のように処理を行う。
【００２０】  まず、送信周期が同じデータを集める為、本実施形態のサーバは、いずれかの端末からデータを受信すると、そのデータを端末がどのような周期で送信しているのか、送信周期を求める。送信周期の具体的な求め方については、［動作の説明］で詳細を説明する。次に、本実施形態のサーバは、受信したデータを、求めた送信周期に対応するメモリに蓄積する。例えば、求めた送信周期が５秒であれば、本実施形態のサーバ１０は、受信したデータを、送信周期５秒に対応するメモリ（例えばメモリ１）に蓄積する。同じ送信周期（例えば送信周期５秒）のデータを１つのメモリに集める為である。送信周期に対応するメモリがどのメモリなのかは、予め本実施形態のサーバのユーザによってサーバに設定される。各メモリには、同じ送信周期のデータ（例えば、送信周期５秒のデータや送信周期７秒のデータ）がそれぞれ蓄積され、集められていく。次に、本実施形態のサーバ１０は、各メモリに蓄積されたデータ毎に、一定時間経過すると、纏めて所定の処理を行う。本実施形態のサーバは、同じ送信周期のデータ毎に所定の処理を行うことができる。上述の一定時間は、各メモリで異なっていてもよい。また、所定の処理は、データを加工する処理や、加工したデータを分析するアプリケーションに出力する処理であり、具体的には、後述するＳ３０〜Ｓ３４、Ｓ４０〜Ｓ４２の通りに実施される。
【００２１】  （効果の説明）  送信周期とＭ２Ｍサービスとは対応づけられているので、同じ送信周期のデータ毎に所定の処理を行うことは、同じＭ２Ｍサービスのデータ毎に処理を行うことである。その為、本実施形態のサーバは、同じＭ２Ｍサービスのデータ毎に処理を行う。その結果、本実施形態のサーバは、端末毎でなく、Ｍ２Ｍサービス毎にデータを処理するので、端末の数に応じて処理能力を増強する必要がなくなる。
【００２２】  以下に、本発明の第１の実施の形態におけるサーバの構成や機能、動作について説明する。
【００２３】  ［構成の説明］  まず、本発明の第１の実施の形態におけるサーバの構成と機能について説明する。
【００２４】  （１）本発明の第１の実施の形態におけるサーバの構成  図２は、本発明の第１の実施の形態におけるサーバの構成例を示す図である。図２に示されるように、本実施形態のサーバ１０は、受信部１００と、一次メモリ１０１−ｉ（ｉ＝１〜３）と、データ加工部１０２と、端末ＤＢ（Ｄａｔａｂａｓｅ）１０３と、Ｍ２Ｍ（Ｍａｃｈｉｎｅ  ｔｏ  Ｍａｃｈｉｎｅ）サービス管理部１０４を備える。さらに、本実施形態のサーバ１０は、加工済みデータ格納ＤＢ１０５と、データ送信部１０６と、Ｍ２Ｍサービス設定ＤＢ１０７を備える。
【００２５】  本実施形態のサーバ１０の受信部１００は、端末２０、３０、４０と接続される。なお、サーバ１０の受信部１００は、図示していないが、特許文献１の無線通信システムのサーバのように、一般的な基地局やゲートウェイを介して端末２０、３０、４０と接続されてもよい。サーバ１０のＭ２Ｍサービス管理部１０４は、管理用端末５０と接続される。さらに、サーバ１０のデータ送信部１０６は、アプリケーション部６０と接続される。本実施形態のサーバ１０の各機能部は互いに接続されていてもよい。
【００２６】  アプリケーション部６０は、本実施形態のサーバ１０内に備わっていてもよいが、図２に示されるように、サーバ１０の外部、すなわちサーバ１０と接続される別のサーバ（図示せず）に備わってもよい。
【００２７】  （２）本発明の第１の実施形態におけるサーバと接続される端末等の機能  （２−１）端末２０、３０、４０の機能  上述の端末２０、３０、４０は、所定のＭ２Ｍサービスに対応する、一般的な収集デバイスである。端末２０、３０、４０は、自身が対応するＭ２Ｍサービスに応じた所定の周期（例えば５秒や７秒）毎に、収集した所定のデータを１つ、サーバ１０の受信部１００に送信する。所定の周期は、以下、「送信周期」という。
【００２８】  なお、端末２０、３０、４０には、端末製造者によって、その端末を示す識別子（以下、「端末識別子」という）が設定される。端末２０、３０、４０は、データをサーバ１０の受信部１００に送信する際、端末識別子をデータに含めて送信する。
【００２９】  （２−２）管理用端末５０の機能  管理用端末５０は、Ｍ２Ｍサービス管理部１０４に所定の設定値を設定する。具体的には、管理用端末５０は、ユーザによって所定の設定値が入力され、所定のキーが押下されると、入力された所定の設定値をＭ２Ｍサービス管理部１０４に出力する。
【００３０】  （２−３）アプリケーション部６０の機能  アプリケーション部６０は、データが入力されると、そのデータに対して分析を行い、Ｍ２ＭサービスをＭ２Ｍサービス利用者に提供するアプリケーションである。具体的には、アプリケーション部６０は、データが入力されると、そのデータに対して分析を行い、分析結果に対応する所定の情報や指示を、Ｍ２Ｍサービス利用者が保持する端末（図示せず）に通知する。
【００３１】  （３）本発明の第１の実施形態におけるサーバ１０の機能  サーバ１０は、各端末２０、３０、４０からデータを収集する共通プラットフォームである。サーバ１０の具体的な機能は、以下の通りである。
【００３２】  まず、サーバ１０は、起動後、端末２０、３０、４０からデータを受信すると、そのデータを端末がデータをどのような周期で送信しているのか、送信周期を求める。送信周期の具体的な求め方については、後述の［動作の説明］で詳細を説明する。サーバ１０は、送信周期を求めると、求めた送信周期に対応する一次メモリ１０１−ｉに、受信したデータを一旦、蓄積する。送信周期に対応する一次メモリ１０１−ｉがどの一次メモリ１０１−ｉなのかは、サーバ１０のユーザによって、事前にサーバ１０に設定される。サーバ１０は、各端末からデータを受信する毎に、送信周期を求め、求めた送信周期に対応する一次メモリ１０１−ｉに、受信したデータを蓄積していく。
【００３３】  サーバ１０は、一次メモリ１０１−ｉ（ｉ＝１〜３）毎に、一定時間が経過すると、蓄積されているデータに所定の処理を行う。一定時間は、一次メモリ１０１−ｉ毎に異なる値であってもよい。
【００３４】  （４）本発明の第１の実施形態におけるサーバを構成する各部位の機能  上述の「（３）本発明の第１の実施形態におけるサーバ１０の機能」に示した機能を実現できるよう、サーバ１０を構成する各部位は、以下の機能を有する。
【００３５】  （４−１）受信部１００の機能  まず、受信部１００は、起動後、所定の設定値がＭ２Ｍサービス管理部１０４から入力されると、入力された所定の設定値を記憶する。
【００３６】  受信部１００は、所定の設定値を記憶した後、端末２０、３０、４０のいずれかからデータを受信すると、そのデータを端末がどのような周期で送信しているのか、送信周期を求める。各一次メモリ１０１−ｉに同じ送信周期のデータを集める為である。送信周期の具体的な求め方については、後述の［動作の説明］で詳細を説明する。
【００３７】  受信部１００は、送信周期を求めると、求めた送信周期に対応する一次メモリ１０１−ｉに、受信したデータを一旦、蓄積する。この機能により、各一次メモリ１０１−ｉに同じ送信周期のデータが集まる。
【００３８】  具体的には、受信部１００は、求めた送信周期に対応する一次メモリ１０１−ｉに、受信したデータを出力する。但し、受信部１００は、受信したデータに対し、求めた送信周期を付与して出力する。送信周期に対応する一次メモリ１０１−ｉがどの一次メモリ１０１−ｉなのかは、サーバ１０のユーザによって、事前に受信部１００に設定される。
【００３９】  さらに、受信部１００は、求めた送信周期をもとに、受信したデータを一次メモリ１０１−ｉに格納する時間（以下、「データ格納期間」という）を算出する。受信部１００は、各一次メモリ１０１−ｉに同じ送信周期のデータを集めるが、どのくらいの時間、集めるのかを定義する為である。なお、以下では、受信部１００は、求めた送信周期を所定倍（以下、「Ｘ倍」という）した値をデータ格納期間とするが、同じ送信周期のデータをいくつか集められればよいので、送信周期よりも適当に長い任意の時間をデータ格納期間としてもよい。適当とは、集めたデータがメモリから溢れない程度の時間である。上述のＸは、Ｍ２Ｍサービス管理部１０４から所定の設定値の１つとして入力される整数値である。受信部１００は、算出したデータ格納期間を、一次メモリ１０１−ｉのデータ格納期間として記憶する。
【００４０】  また、受信部１００は、一次メモリ１０１−ｉ（ｉ＝１〜３）に対応する計時機能（以下、「タイマー」という）を備える。受信部１００は、一次メモリ１０１−ｉに初めてデータを出力したときは、一次メモリ１０１−ｉに対応するタイマー（以下、「メモリ１０１−ｉのタイマー」という）を起動し、時間の計測を開始する。計測された時間は、一次メモリ１０１−ｉに同じ送信周期のデータを集め始めてからの時間である。
【００４１】  受信部１００は、メモリ１０１−ｉのタイマーにより計測された時間が、記憶したメモリ１０１−ｉのデータ格納期間を経過したときは、一次メモリ１０１−ｉに対し、データ読み出しを要求する信号（以下、「読み出し信号」という）を出力する。データ格納期間の間に一次メモリ１０１−ｉに集めた同じ送信周期のデータを取得する為である。受信部１００は、読み出し信号を出力した後、一次メモリ１０１−ｉからデータが入力されると、入力されたデータ全てを端末ＤＢ１０３に出力する。受信部１００は、入力されたデータ全てを端末ＤＢ１０３に出力すると、メモリ１０１−ｉに対応するタイマーを一度停止した後、メモリ１０１−ｉに対応するタイマーを再起動して、時間の計測を０秒から開始する。次のデータ格納期間を測定する為である。
【００４２】  （４−２）一次メモリ１０１−ｉ（ｉ＝１〜３）の機能  一次メモリ１０１−ｉ（ｉ＝１〜３）それぞれは、受信部１００からデータ（送信周期が付与されたもの）が入力されると、そのデータを記憶する。一次メモリ１０１−ｉ（ｉ＝１〜３）は、受信部１００から読み出し信号が入力されると、記憶するデータ（送信周期が付与されたもの）を受信部１００に出力する。
【００４３】  （４−３）データ加工部１０２の機能  データ加工部１０２は、起動後、Ｍ２Ｍサービス管理部１０４から所定の設定値が入力されると、入力された所定の設定値を記憶する。データ加工部１０２は、所定の設定値を記憶した後、所定のタイミングになると、データ読み出しを要求する信号（以下、「読み出し信号２」という）を端末ＤＢ１０３に出力する。同じ送信周期のデータを取得する為である。上述の所定のタイミングは、一定間隔毎のタイミングであり、Ｍ２Ｍサービス管理部１０４から所定の設定値の１つとして入力される。
【００４４】  データ加工部１０２は、読み出し信号２を出力した後、端末ＤＢ１０３からデータが入力される。ここで入力されたデータは、送信周期が付与されている。データ加工部１０２は、同じ送信周期のデータ毎に、所定の加工処理を行う。なお、データ加工部１０２は、加工処理をおこなったデータに対し、何の送信周期のデータかが分かるよう、入力されたデータに付与されていた送信周期をそのまま付与する。データ加工部１０２は、加工処理をおこなったデータ（送信周期が付与されたもの）を加工済みデータ格納ＤＢ１０５に出力する。
【００４５】  （４−４）端末ＤＢ１０３の機能  端末ＤＢ１０３は、受信部１００からデータ（送信周期が付与されたもの）が入力されると、それを記憶する。端末ＤＢ１０３は、データ加工部１０２から読み出し信号２が入力されると、記憶しているデータ（送信周期が付与されたもの）をデータ加工部１０２に出力する。
【００４６】  （４−５）Ｍ２Ｍサービス管理部１０４の機能  Ｍ２Ｍサービス管理部１０４は、各部位に設定を行う機能部である。具体的には、Ｍ２Ｍサービス管理部１０４は、以下の通りに処理を行う。
【００４７】  まず、Ｍ２Ｍサービス管理部１０４は、起動後、受信部１００に対し、上述の値Ｘ（送信周期を何倍するのかを示す値）を含む、所定の設定値を出力する。所定の設定値は、上述の値Ｘを含め、本実施形態のサーバ１０のユーザによってＭ２Ｍサービス管理部１０４に設定される。なお、上述の値Ｘを、本実施形態のサーバ１０のユーザは、データを蓄積するメモリのメモリサイズ、受信するデータのデータサイズを考慮して設定することができる  さらに、Ｍ２Ｍサービス管理部１０４は、データ加工部１０２とデータ送信部１０６に対して、所定のタイミングを示す値を含む、所定の設定値を出力する。所定のタイミングを示す値は、本実施形態のサーバ１０のユーザによってＭ２Ｍサービス管理部１０４に設定される。
【００４８】  なお、上述の所定の設定値は、管理用端末５０から入力されてもよい。その際、本実施形態のサーバ１０のユーザは、所定の設定値を管理用端末５０に書き込み、所定のキーを押下する。所定のキーが押下されると、上述の「（２−２）管理用端末５０の機能」で説明したように、管理用端末５０は、Ｍ２Ｍサービス管理部１０４に所定の設定値を出力する。
【００４９】  （４−６）加工済みデータ格納ＤＢ１０５の機能  加工済みデータ格納ＤＢ１０５は、加工処理を行ったデータ（送信周期が付与されたもの）がデータ加工部１０２から入力されると、それらを記憶する。加工済みデータ格納ＤＢ１０５は、データ送信部１０６から読み出しを要求する信号が入力されると、記憶している加工処理を行ったデータ（送信周期が付与されたもの）全てをデータ送信部１０６に出力する。
【００５０】  （４−７）データ送信部１０６の機能  データ送信部１０６は、起動後、Ｍ２Ｍサービス管理部１０４から所定の設定値が入力されると、入力された当該設定値を記憶する。データ送信部１０６は、所定のタイミングになると、データ読み出しを要求する信号を加工済みデータ格納ＤＢ１０５に出力する。上述の所定のタイミングは、一定間隔毎のタイミングであり、Ｍ２Ｍサービス管理部１０４から所定の設定値の１つとして入力される。データ送信部１０６は、データ読み出しを要求する信号を出力した後、加工済みデータ格納ＤＢ１０５から加工処理を行ったデータ（送信周期が付与されたもの）が入力されると、入力された当該データを、アプリケーション部６０に出力する。
【００５１】  受信部１００やデータ送信部１０６は、電子回路やＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）を用いて実現することができる。また、一次メモリ１０１は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を用いて実現することができる。端末ＤＢ１０３、加工済みデータ格納ＤＢ１０５、及びＭ２Ｍサービス設定ＤＢ１０７は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等の演算処理装置やＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）を用いて実現することができる。データ加工部１０２やＭ２Ｍサービス管理部１０４は、一般的なソフトウエアで実現でき、そのソフトウエアを動作させる為のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）とＲＡＭ等のメモリを備える。
【００５２】  ［動作の説明］  図３、４は、本発明の第１の実施の形態におけるサーバの動作を説明する為の図である。
【００５３】  本実施形態のサーバ１０は、図３、４に示されるように、５つのフェーズ（初期設定フェーズ、データ蓄積フェーズ、データ格納フェーズ、データ加工フェーズ、データ出力フェーズ）を行う。図４はデータ蓄積フェーズについて説明する図である。図５は、本発明の第１の実施の形態におけるサーバに事前設定されるデータを説明する為の図である。
【００５４】  図３〜図５を用いて、本実施形態のサーバ１０の動作を以下に説明する。
【００５５】  （１）初期設定フェーズでのサーバ１０の動作  まず、サーバ１０は、起動すると、初期設定フェーズとして、自身構成する各部位に初期設定を行う。
【００５６】  具体的には、サーバ１０のＭ２Ｍサービス管理部１０４が、受信部１００、データ加工部１０２、及びＭ２Ｍサービス管理部１０４に対して、以下のＳ１〜Ｓ３を実施し、所定の設定値を設定する。
【００５７】  （Ｓ１）  サーバ１０のＭ２Ｍサービス管理部１０４は、起動すると、図３に示されるように、受信部１００に対し、送信周期を何倍するのかを示す値（すなわち、値Ｘ）と対応表を、所定の設定値として出力する。
【００５８】  対応表は、図５に示されるように、各端末２０、３０、４０を示す端末識別子と、その端末の送信周期とが関連づけられた表（以下、「対応表」という）である。値Ｘと対応表は、本実施形態のサーバ１０のユーザによって事前にＭ２Ｍサービス管理部１０４に設定される。対応表は、後述のＳ１０にて、送信周期を求める為に使用される。値Ｘは、後述のＳ１２にて、データ格納期間を算出する為に使用される。
【００５９】  （Ｓ２）  次に、サーバ１０のＭ２Ｍサービス管理部１０４は、起動後、データ加工部１０２に対し、所定のタイミングを示す値を、所定の設定値として出力する。
【００６０】  上述の所定のタイミングは、一定間隔毎のタイミングであって、後述のＳ３０にて、データ加工部１０２が動作する契機として使用される。所定のタイミングは、本実施形態のサーバ１０のユーザによって事前にＭ２Ｍサービス管理部１０４に設定される。
【００６１】  （Ｓ３）  次に、サーバ１０のＭ２Ｍサービス管理部１０４は、起動後、データ送信部１０６に対し、所定のタイミングを示す値を、所定の設定値として出力する。
【００６２】  所定のタイミングは、一定間隔のタイミングであり、後述のＳ４０にて、データ送信部１０６が動作する契機として使用される。所定のタイミングを示す値は、本実施形態のサーバ１０のユーザによって事前にＭ２Ｍサービス管理部１０４に設定される。
【００６３】  （Ｓ４）  次に、受信部１００、データ加工部１０２、及びデータ送信部１０６は、上述のＳ１〜Ｓ３の実施によって所定の設定値が入力されると、その所定の設定値を記憶する。
【００６４】  （２）本実施形態の前提動作（端末２０、３０、４０の動作）  本実施形態では、まず始めに、全ての端末２０、３０、４０が同じ送信周期でデータをサーバ１０に送信する場合について説明を行う。各端末２０、３０、４０が異なる送信周期でデータをサーバ１０に送信する場合については、後述の「（７−３）端末２０、３０、４０が異なる周期で動作する場合」にて説明を行う。
【００６５】  後述の「（７−３）端末２０、３０、４０が異なる周期で動作する場合」までは、全ての端末２０、３０、４０は、以下の通りに、同じ送信周期（５秒）でデータをサーバ１０に送信するものとする。
【００６６】  また、端末２０、３０、４０は、いずれも農業に関するＭ２Ｍサービスに対応する、一般的な収集デバイスである。端末２０、３０、４０は、農地の温度や湿度等のデータを収集し、いずれも所定の送信周期５秒毎に、収集したデータをサーバ１０に送信する。
【００６７】  サーバ１０は、端末２０、３０、４０それぞれから送信周期５秒毎にデータを受信する。なお、端末２０、３０、４０は、データをサーバ１０に送信する際、自身を示す識別子（すなわち、端末識別子）をデータに含めて送信する。
【００６８】  （３）データ蓄積フェーズでのサーバ１０の動作  サーバ１０は、データを受信すると、データ蓄積フェーズとして、そのデータを端末がどのような周期で送信しているのか、送信周期（５秒）を求める。さらに、サーバ１０は、求めた送信周期（５秒）に対応する一次メモリ１０１−１に、受信したデータを一定時間、蓄積する。送信周期（５秒）のデータを、一次メモリ１０１−１に集める為である。
【００６９】  上述のデータ蓄積フェーズでのサーバ１０の動作を実現する為、サーバ１０の受信部１００は、以下の「（３−１）蓄積動作（データを初めて受信したとき）」、「（３−２）蓄積動作（その後、データを受信したとき）」に記載されるＳ１０〜Ｓ１４の処理を実施する。
【００７０】  なお、上述の送信周期（５秒）に対応する一次メモリ１０１−ｉが一次メモリ１０１−１であることはサーバ１０のユーザによって事前にサーバ１０に設定される。
【００７１】  （３−１）蓄積動作（データを初めて受信したとき）  （Ｓ１０）  上述のＳ４の後、サーバ１０の受信部１００は、図４に示されるように、端末のいずれか（ここでは端末２０とする）からデータを受信すると、そのデータを端末がどのような周期で送信しているのか、送信周期を求める。
【００７２】  具体的には、受信部１００は、端末２０からデータを受信すると、そのデータに含まれる端末識別子を抽出し、対応表（上述のＳ４で所定の設定値として入力され、記憶した表。図５に図示）から、抽出した端末識別子に関連づけられている送信周期を求める。次のＳ１１において、各一次メモリ１０１−１に送信周期５秒のデータを集める為である。受信部１００は、送信周期を５秒と求めたものとして説明を続ける。
【００７３】  （Ｓ１１）  次に、受信部１００は、送信周期（５秒）を求めると、求めた送信周期（５秒）に対応する一次メモリ１０１−１に、上述のＳ１０にて受信したデータを一旦、蓄積する。一次メモリ１０１−１に、同じ送信周期（５秒）のデータを集める為である。
【００７４】  具体的には、受信部１００は、受信したデータを、送信周期（５秒）に対応する一次メモリ１０１−１に出力する。ここでは、なお、受信部１００は、受信したデータを出力する際、上述のＳ１０で求めた送信周期をデータに付与して出力する。
【００７５】  （Ｓ１２）  次に、受信部１００は、Ｓ１０で求めた送信周期をＸ倍し、データ格納期間を算出する。
【００７６】  上述のデータ格納期間は、「（４−１）受信部１００の機能」に上述したように、受信したデータを、Ｓ１０で求めた送信周期（５秒）に対応する一次メモリ１０１−１に格納する時間である。また、上述の値Ｘは、上述のＳ４で、Ｍ２Ｍサービス管理部１０４から所定の設定値の１つとして入力された値である。
【００７７】  以下では、Ｘが１２０で、受信部１００がデータ格納期間を６００秒（１０分）と算出したものとして説明を続ける。
【００７８】  （Ｓ１３）  次に、受信部１００は、データを初めて一次メモリ１０１−１に出力したときは、一次メモリ１０１−１に対応するタイマーを起動し、時間の計測を開始する。一次メモリ１０１−１に送信周期（５秒）のデータを集め始めてからの時間を測定する為である。
【００７９】  さらに、受信部１００は、タイマーを起動すると、Ｓ１１で算出したデータ格納期間（１０分）を、一次メモリ１０１−１のデータ格納期間として記憶する。
【００８０】  なお、後述の「（３−２）蓄積動作（その後、データを受信したとき）」でも説明するが、受信部１００は、一度データを一次メモリ１０１−１に出力した後は、本処理を行わない。
【００８１】  （Ｓ１４）  一次メモリ１０１−１は、上述のＳ１１により、受信部１００から出力されたデータ（送信周期が付与されたもの）が入力されると、そのデータを記憶する。
【００８２】  その結果、一次メモリ１０１−１は、端末２０からの送信周期（５秒）のデータを記憶することとなる。
【００８３】  （３−２）蓄積動作（その後、データを受信したとき）  （３−２−１）その後、端末３０からデータを受信したときの動作  上述のＳ１３の後、サーバ１０の受信部１００では、一次メモリ１０１−１に対応するタイマーにより時間の計測が継続されている。サーバ１０の受信部１００は、端末３０からデータを受信すると、タイマーが時間を計測するのと並行して、上述のＳ１０〜Ｓ１２を行う。上述のＳ１０〜Ｓ１２が行われた結果、端末３０からの送信周期（５秒）のデータが一次メモリ１０１−１に入力される。一次メモリ１０１−１は、上述のＳ１４を行い、端末３０からの送信周期（５秒）のデータを記憶する。一次メモリ１０１−１は、端末２０、３０からの送信周期（５秒）のデータを記憶することとなる。なお、一次メモリ１０１−１に記憶されるデータには、送信周期（５秒）が付与される。受信部１００は、Ｓ１１を２回実施しており、初めて一次メモリ１０１−１に出力した状態ではないので、上述のＳ１３を実施しない。
【００８４】  （３−２−２）その後、端末４０からデータを受信したときの動作  さらに、その後、サーバ１０の受信部１００は、端末４０からデータを受信すると、タイマーが時間を計測するのと並行して、上述のＳ１０〜Ｓ１２を行う。上述のＳ１０〜Ｓ１２が行われた結果、端末４０からの送信周期（５秒）のデータが一次メモリ１０１−１に入力される。一次メモリ１０１−１は、上述のＳ１４を行い、端末４０からの送信周期（５秒）のデータを記憶する。一次メモリ１０１−１は、端末２０、３０、４０からの送信周期（５秒）のデータを記憶することとなる。一次メモリ１０１−１に記憶されるデータには、送信周期（５秒）が付与される。受信部１００は、Ｓ１１を３回実施しており、初めて一次メモリ１０１−１に出力した状態ではないので、上述のＳ１３を実施しない。
【００８５】  （３−２−３）その後も、各端末からデータを受信したときの動作  その後、サーバ１０の受信部１００は、各端末から送信周期５秒毎にデータを受信する。サーバ１０の受信部１００は、各端末からデータを受信する度に、上述のＳ１０〜Ｓ１２を行い、一次メモリ１０１−１は上述のＳ１４を行う。その結果、一次メモリ１０１−１は、端末２０、３０、４０からの同じ送信周期（５秒）のデータが順次蓄積していく。
【００８６】  （４）データ格納フェーズでのサーバ１０の動作  次に、サーバ１０は、一定時間（データ格納期間）経過後、データ格納フェーズとして、蓄積したデータを端末ＤＢ１０３に格納する。データ格納フェーズは、次のデータ加工フェーズ（蓄積された同じ送信周期５秒のデータを纏めて処理するフェーズ）の準備フェーズである。
【００８７】  上述のデータ格納フェーズでのサーバ１０の動作は、サーバ１０の受信部１００と一次メモリ１０１が以下のＳ２０〜Ｓ２４を実施することで実現される。
【００８８】  （Ｓ２０）  Ｓ１３の後、受信部１００では、一次メモリ１０１−１に対応するタイマーにより時間の計測が継続されている。一次メモリ１０１−１に対応するタイマーにより計測された時間が、一次メモリ１０１−１のデータ格納期間（Ｓ１３で記憶した１０分）を経過すると、受信部１００は、図３に示されるように、データ読み出しを要求する信号を一次メモリ１０１−１に出力する。同じ送信周期（５秒）のデータを取得する為である。上述のデータ読み出しを要求する信号は、以下、「読み出し信号」という。
【００８９】  （Ｓ２１）  次に、一次メモリ１０１−１は、受信部１００から読み出し信号が入力されると、記憶するデータを受信部１００に出力する。ここで出力されるデータには、送信周期が付与されている。
【００９０】  （Ｓ２２）  次に、受信部１００は、一次メモリ１０１−１からデータ（送信周期が付与されたもの）が入力されると、入力されたデータを端末ＤＢ１０３に出力する。
【００９１】  （Ｓ２３）  次に、受信部１００は、端末ＤＢ１０３にデータを出力した後、メモリ１０１−１に対応するタイマーを一度停止した後、メモリ１０１−１に対応するタイマーを再起動して、時間の計測を０秒から開始する。次のデータ格納期間を測定する為である。
【００９２】  （Ｓ２４）  次に、端末ＤＢ１０３は、受信部１００からデータ（送信周期が付与されたもの）が入力されると、それを記憶する。
【００９３】  Ｓ２０〜Ｓ２４の動作により、データ加工部１０２がアクセスできる端末ＤＢ１０３に同じ送信周期（５秒）のデータが格納される。これにより、次のデータ加工フェーズで、データ加工部１０２は、送信周期（５秒）のデータを端末ＤＢ１０３から読み出し、纏めて処理することができる。
【００９４】  なお、上述のＳ２３の後、受信部１００は、データを受信すると、再び上述のＳ１０〜Ｓ１２を行って、受信したデータを蓄積する。そして、受信部１００は、再起動したメモリ１０１−１に対応するタイマーにより計測された時間が、次のデータ格納期間（Ｓ１３で記憶した１０分）となれば、再び、上述のＳ２０〜Ｓ２３を行って、蓄積したデータを端末ＤＢ１０３に出力していく。すなわち、受信部１００は、受信したデータを、送信周期の同じデータ毎にメモリに蓄積し、データ格納期間が経過すると、それまでに蓄積したデータを端末ＤＢ１０３に出力する動作を繰り返していく。受信部１００は、蓄積したデータを端末ＤＢ１０３に出力する際、出力するデータに送信周期を付与する。端末ＤＢ１０３は、データが入力されると、上述のＳ２４を行って、入力されたデータを記憶する。
【００９５】  （４）データ加工フェーズでのサーバ１０の動作  端末ＤＢ１０３に記憶されたデータには、送信周期が付与されている。サーバ１０は、端末ＤＢ１０３に記憶されたデータのうち、同じ送信周期のデータ毎に、所定の加工処理を行う。
【００９６】  上述のデータ加工フェーズでのサーバ１０の動作を実現する為に、データ加工部１０２と端末ＤＢ１０３は、以下のＳ３０〜Ｓ３４の処理を行う。なお、送信周期とＭ２Ｍサービスとは関連しているので、上述の動作は、同じＭ２Ｍサービスのデータ毎に加工処理を行うことに等しい。
【００９７】  （Ｓ３０）  まず、データ加工部１０２は、所定のタイミングになると、データ読み出しを要求する信号（以下、「読み出し信号２」という）を端末ＤＢ１０３に出力する。
【００９８】  上述の所定のタイミングは、一定間隔毎のタイミングである。データ加工部１０２は、所定のタイミングを、上述のＳ４で、Ｍ２Ｍサービス管理部１０４から所定の設定値として入力され、記憶している。
【００９９】  （Ｓ３１）  次に、端末ＤＢ１０３は、データ加工部１０２から読み出し信号２が入力されると、記憶しているデータ（上述のＳ２４で記憶したデータ）をデータ加工部１０２に出力する。
【０１００】  上述のＳ２４で記憶したデータは、送信周期が付与されたデータであるので、端末ＤＢ１０３は、送信周期が付与されているデータを出力する。
【０１０１】  （Ｓ３２）  次に、上述のＳ３１の後、データ加工部１０２は、端末ＤＢ１０３からデータが入力されると、（入力されたデータには送信周期が付与されているので、）付与されている送信周期が同じデータ毎に、所定の加工処理を行う。
【０１０２】  なお、データ加工部１０２は、加工処理をおこなったデータに対し、どの送信周期のデータを加工したのかが分かるよう、入力されたデータに付与されていた送信周期をそのまま付与する。
【０１０３】  （Ｓ３３）  次に、データ加工部１０２は、加工処理を行ったデータ（送信周期が付与されたもの）を、加工済みデータ格納ＤＢ１０５に出力する。
【０１０４】  （Ｓ３４）  加工済みデータ格納ＤＢ１０５は、加工処理を行ったデータ（送信周期が付与されたもの）がデータ加工部１０２から入力されると、それらを記憶する。
【０１０５】  （５）データ出力フェーズでのサーバ１０の動作  次に、サーバ１０は、データ出力フェーズとして、加工処理を行ったデータを、纏めてアプリケーション部６０に出力する。具体的には、データ送信部１０６と加工済みデータ格納ＤＢ１０５が、以下のＳ４０〜Ｓ４２の処理を行う。
【０１０６】  （Ｓ４０）  まず、データ送信部１０６は、所定のタイミングになると、データ読み出しを要求する信号（以下、「読み出し信号３」という）を加工済みデータ格納ＤＢ１０５に出力する。
【０１０７】  上述の所定のタイミングは、一定間隔毎のタイミングである。データ送信部１０６は、上述のＳ４で、所定のタイミングを、Ｍ２Ｍサービス管理部１０４から所定の設定値として入力され、記憶している。
【０１０８】  （Ｓ４１）  次に、加工済みデータ格納ＤＢ１０５は、読み出し信号３がデータ送信部１０６から入力されると、記憶しているデータ（送信周期が付与されたもの）全てをデータ送信部１０６に出力する。
【０１０９】  （Ｓ４２）  次に、データ送信部１０６は、加工済みデータ格納ＤＢ１０５からデータが入力されると、入力されたデータ（送信周期が付与されたもの）を、アプリケーション部６０に出力する。
【０１１０】  アプリケーション部６０は、図示していないが、加工されたデータが入力されると、そのデータに付与されている送信周期を抽出する。アプリケーション部６０は、送信周期、すなわちＭ２Ｍサービス毎に所定の分析を行い、分析結果に対応する所定の情報や指示（例えば、農産物の育成に必要な情報や指示等）を、Ｍ２Ｍサービス利用者が保持する端末（図示せず）に通知する。Ｍ２Ｍサービス利用者は、自身が保持する端末に通知された情報を確認し、農産物の育成に必要な情報や指示等を受ける、すなわち、Ｍ２Ｍサービスを受けることができる。
【０１１１】  （６）動作まとめ  本実施形態のサーバ１０は、上述のＳ１０〜Ｓ１４の処理により、各端末から受信したデータを、その送信周期毎に分けてメモリに蓄積する。本実施形態のサーバ１０は、上述のＳ２０〜Ｓ２４、Ｓ３０〜Ｓ３４の処理により、メモリに蓄積されている同じ送信周期のデータ毎に加工処理を行う。すなわち、本実施形態のサーバ１０は、同じＭ２Ｍサービスのデータ毎に加工処理を行う。さらに、本実施形態のサーバ１０は、上述のＳ４０〜Ｓ４２によって加工処理を行ったデータをアプリケーション部に出力する。
【０１１２】  上述のように、本実施形態のサーバ１０は、端末からデータを受信する毎に処理（加工処理やアプリケーション部への出力処理）を行うのではなく、Ｍ２Ｍサービス毎に処理を行う。本実施形態のサーバ１０は、Ｍ２Ｍサービス毎に処理を行うので、端末の数に応じて処理能力を増強する必要がなくなる。
【０１１３】  （７）補足  （７−１）Ｓ１０について  各端末２０、３０、４０がいずれも同じ送信周期（例えば５秒）でデータを送信するときには、上述のＳ１０を実施しなくても、同じ送信周期（例えば５秒）のデータを集めることは可能である。受信部１００は、上述のＳ１０を実施せず、次のＳ１１で、受信したデータ全てを一次メモリ１０１−１に集めればよい。
【０１１４】  しかし、各端末２０、３０、４０が異なる送信周期でデータを送信するときには、上述のＳ１０は必要である。Ｓ１０にて送信周期を求めることで、本実施形態のサーバは、次のＳ１１において、求めた送信周期のデータを各一次メモリ１０１−ｉに蓄積することができる。端末２０、３０、４０が異なる送信周期を実施するときについては、以下の「（７−３）端末２０、３０、４０が異なる周期で動作する場合について」で説明する。
【０１１５】  （７−２）一次メモリ１０１−ｉ（ｉ＝１〜３）について  上記では、サーバ１０は、一次メモリ１０１−ｉ（ｉ＝１〜３）を３つ備えたが、３つに限定しない。サーバ１０は、３つ以上、一次メモリ１０１−ｉを備えていてもよい。なお、サーバ１０は、端末がデータを送信する周期の種類数（以下、「種類数Ａ」という）分の一次メモリ１０１−ｉ（ｉ＝１〜種類数Ａ）を備える。
【０１１６】  例えば、サーバ１０に接続される端末が５台あり、４台の端末が５秒毎にデータをサーバ１０に送信し、もう１台の端末がデータを７秒毎にデータを送信する場合、端末がデータを送信する周期は５秒と７秒の２種類なので、種類数Ａは２である。その場合、サーバ１０は、少なくとも２つ、一次メモリ１０１−ｉ（ｉ＝１〜２）を備える。
【０１１７】  （７−３）端末２０、３０、４０が異なる周期で動作する場合  上記では、端末２０、３０、４０全てが、同じ周期（５秒）でデータをサーバ１０に送信する場合について説明した。しかし、端末２０、３０、４０は、異なる送信周期（例えば５秒や７秒）でサーバ１０にデータを送信してもよい。その場合、サーバ１０は、いくつかの送信周期のデータを受信することとなる。例えば、端末２０、４０が送信周期５秒でデータが送信し、端末３０が送信周期７秒でデータが送信する場合、サーバ１０は、（端末２０、４０から）送信周期５秒のデータと、（端末３０から）送信周期７秒のデータを受信することとなる。サーバ１０は、送信周期の種類数分の一次メモリ１０１−ｉ（ｉ＝１〜種類数Ａ）を備えており、受信した各送信周期のデータを、その送信周期に対応する一次メモリ１０１−ｉ（ｉ＝１〜種類数Ａ）に格納する。例えば、サーバ１０は、（端末２０、４０からの）送信周期５秒のデータを、送信周期５秒に対応する一次メモリ１０１−１に格納し、（端末３０からの）送信周期７秒のデータを、送信周期７秒に対応する一次メモリ１０１−２に格納する。
【０１１８】  上記の「（７−３）端末２０、３０、４０が異なる周期で動作する場合」の動作を実現する為に、サーバ１０は、上述のＳ１０を実施した後、「一次メモリ１０１−１」を全て「一次メモリ１０１−ｊ」と読み替えた上で、上述のＳ１１〜Ｓ１３、Ｓ２０〜Ｓ２４を実施する。「一次メモリ１０１−ｊ」は、Ｓ１０で求められた送信周期に対応するメモリであり、サーバ１０は、「一次メモリ１０１−ｊ」毎に、同じ送信周期のデータを集める。なお、サーバ１０は、「一次メモリ１０１−ｊ」を求める為に、上述のＳ１１の代わりに、以下のＳ１１１を実施するものとする。
【０１１９】  （Ｓ１１１）  サーバ１０の受信部１００は、上述の「一次メモリ１０１−ｊ」を以下の（Ｉ）〜（ＩＩＩ）の通りに求める。
【０１２０】  （Ｉ）まず、受信部１００には、各一次メモリ１０１−ｉ（ｉ＝１〜種類数Ａ）がどの送信周期（例えば５秒や７秒）に対応する一次メモリ１０１−ｉかを示す情報（以下、「メモリ情報」という）が、サーバ１０のユーザによって、事前に設定されているものとする。
【０１２１】  （ＩＩ）次に、受信部１００は、Ｓ１０で求めた送信周期（例えば５秒）に対応する一次メモリ１０１−ｉを上述のメモリ情報から求める。
【０１２２】  （ＩＩＩ）次に、受信部１００は、（ＩＩ）で求めた一次メモリ１０１−ｉを、一次メモリ１０１−ｊとみなす。
【０１２３】  上述の（ＩＩＩ）の後、受信部１００は、Ｓ１０で求めた送信周期に対応する一次メモリ１０１−ｊに、受信したデータを一旦、蓄積する。具体的には、受信部１００は、受信したデータを、Ｓ１０で求めた送信周期に対応する一次メモリ１０１−ｊに出力する。
【０１２４】  （７−４）データに付与する送信周期について  上記のＳ１１において、受信部１００は送信周期をデータに付与した。送信周期はＭ２Ｍサービスに対応するものであるので、付与した送信周期は、Ｍ２Ｍサービスを示す識別子（以下、「サービス識別子」という）である。受信部１００は、送信周期の代わりに、サービス識別子を付与してもよい。
【０１２５】  例えば、受信部１００は、上述のＳ１１において、受信したデータを出力する際、Ｓ１０で求めた送信周期に対応するＭ２Ｍサービス名を示す値を図５の対応表から求め、そのＭ２Ｍサービス名を示す値をサービス識別子としてデータに付与し、出力する。その後、サーバ１０は、Ｓ３０以降の処理（Ｓ３０〜Ｓ３４、Ｓ４０〜Ｓ４２）を実施するが、その際、送信周期をサービス識別子と読み替えて処理を実施する。なお、受信部１００は、Ｓ１、Ｓ１０を実施する際、図５に示されるように、送信周期や端末識別子にＭ２Ｍサービス名を示す値が関連づけられた対応表を用いるものとする。
【０１２６】  （７−５）図５について（その１）  上記Ｓ１、Ｓ１０で用いた対応表は、図５に示されるように、送信周期毎に端末数が関連づけられた表であってもよい。端末数は、関連する送信周期でデータを送信する端末の台数を示す。受信部１００は、上述のＳ１２において、Ｓ１０で求めた送信周期に対応する端末数を対応表から求め、求めた端末数、所定数、及びＳ１０で求めた送信周期を乗算し、さらにＸ倍した値をデータ格納期間としてもよい。受信部１００は、端末からどのくらいの時間、データを集めるのか、データ格納期間を、端末の台数に応じて調整することができる。なお、所定数は、本実施形態のサーバ１０のユーザによって事前に受信部１００に設定される。
【０１２７】  （７−６）図５について（その２）  上述の対応表は、図５に示されるように、送信周期毎に、データ加工部１０２の処理間隔やデータ送信部１０６の処理間隔が関連づけられた表であってもよい。その場合、本実施形態のサーバ１０は、上述のＳ２〜３、Ｓ３０〜Ｓ３２、Ｓ４０〜Ｓ４１の代わりに、以下のＳ５２〜Ｓ５３、Ｓ６０〜Ｓ６２、Ｓ７０〜Ｓ７１の処理を行うものとする。その結果、本実施形態のサーバ１０のデータ加工部１０２やデータ送信部１０６は、各送信周期のデータを、上述の処理間隔にて処理を行うことができる。なお、データ加工部１０２やデータ送信部１０６は、タイマーを複数備えるものとする。タイマーは、自身が備わるデータ加工部１０２やデータ送信部１０６に対し、指定された時間間隔毎に、割り込み信号を入力する一般的なタイマーである。
【０１２８】  （Ｓ５２）  まず、Ｓ２の代わりに、サーバ１０のＭ２Ｍサービス管理部１０４は、対応表（データ加工部１０２の処理間隔やデータ送信部１０６の処理間隔が関連づけられた表）を所定の設定値としてデータ加工部１０２に出力する。
【０１２９】  （Ｓ５３）  上述のＳ５２の後、サーバ１０のＭ２Ｍサービス管理部１０４は、Ｓ３の代わりに、対応表（データ加工部１０２の処理間隔やデータ送信部１０６の処理間隔が関連づけられた表）を所定の設定値としてデータ送信部１０６に出力する。
【０１３０】  （Ｓ５４）  次に、受信部１００、データ加工部１０２、及びデータ送信部１０６は、上述のＳ１、Ｓ５２、Ｓ５３の実施によって所定の設定値が入力されると、その所定の設定値を記憶する。データ加工部１０２とデータ送信部１０６は、対応表を記憶することとなる。
【０１３１】  さらに、データ加工部１０２とデータ送信部１０６は、対応表を記憶すると、記憶した対応表から自身の処理間隔を全て抽出し、抽出した処理間隔の種類数分、タイマーを起動する。例えば、データ加工部１０２は、抽出した処理間隔が３０秒、１５０秒、３６００秒の３種類ならば、タイマーを３つ起動する。なお、データ加工部１０２とデータ送信部１０６は、タイマーを起動する際、起動する各タイマーに、抽出した処理間隔を指定する。例えば、データ加工部１０２は、起動した１つ目のタイマーには処理間隔３０秒を指定し、２つ目のタイマーには処理間隔１５０秒を指定し、３つ目のタイマーには処理間隔３６００秒を指定する。各タイマーは、指定された処理間隔毎（３０秒、１５０秒、３６００秒毎）に、割り込み信号をデータ加工部１０２に入力する動作を開始する。
【０１３２】  また、データ加工部１０２とデータ送信部１０６は、タイマー毎にどのような処理間隔を指定したのかを記憶するものとする。
【０１３３】  端末ＤＢ１０３は、上述のＳ３０〜Ｓ３２の代わりに以下のＳ６０〜Ｓ６２の処理を行う。
【０１３４】  （Ｓ６０）  まず、データ加工部１０２は、割り込み信号がタイマーから入力されると、そのタイマーに指定した処理間隔（Ｓ５４で記憶）に関連する送信周期を対応表（Ｓ５４で記憶）から抽出する。データ加工部１０２は、送信周期を抽出すると、抽出した送信周期を、データ読み出しを要求する信号（以下、「読み出し信号４」という）に含めて端末ＤＢ１０３に出力する。
【０１３５】  （Ｓ６１）  次に、端末ＤＢ１０３は、データ加工部１０２から読み出し信号４が入力されると、読み出し信号４から送信周期を抽出する。さらに、端末ＤＢ１０３は、記憶しているデータ（上述のＳ２４で記憶）の中から、抽出した送信周期が付与されているデータを取り出してデータ加工部１０２に出力する。
【０１３６】  （Ｓ６２）  次に、上述のＳ６１の後、データ加工部１０２は、端末ＤＢ１０３からデータが入力されると、入力されたデータに対して、所定の加工処理を行う。なお、データ加工部１０２は、加工処理をおこなったデータに対し、どの送信周期のデータを加工したのかが分かるよう、入力されたデータに付与されていた送信周期をそのまま付与する。
【０１３７】  さらに、データ送信部１０６は、Ｓ４０〜Ｓ４１の代わりに以下のＳ７０〜Ｓ７１の処理を行う。
【０１３８】  （Ｓ７０）  データ送信部１０６は、割り込み信号がタイマーから入力されると、そのタイマーに指定した処理間隔（Ｓ５４で記憶）に関連する送信周期を対応表（Ｓ５４で記憶）から抽出する。さらに、データ送信部１０６は、送信周期を抽出すると、抽出した送信周期を、データ読み出しを要求する信号（以下、「読み出し信号５」という）に含めて加工済みデータ格納ＤＢ１０５に出力する。
【０１３９】  （Ｓ７１）  次に、加工済みデータ格納ＤＢ１０５は、読み出し信号５がデータ送信部１０６から入力されると、読み出し信号４から送信周期を抽出する。さらに、加工済みデータ格納ＤＢ１０５は、記憶しているデータ（上述のＳ２４で記憶）の中から、抽出した送信周期が付与されているデータを取り出してデータ送信部１０６に出力する。
【０１４０】  （８）その他の動作  本実施形態のサーバ１０は、上述のＳ１、Ｓ４、Ｓ１２の代わりに、以下のＳ１０１、Ｓ１０４、Ｓ１１２の処理を行うことができる。その結果、本実施形態のサーバ１０は、上述のＳ１０で求めた送信周期に応じて、データ格納期間を変更することができる。
【０１４１】  （Ｓ１０１）  まず、Ｍ２Ｍサービス管理部１０４は、送信周期、端末識別子、送信周期を何倍するかを示す値（すなわち、上述の値Ｘ）、及びデータ格納期間が対応づけられてた対応表（以下、「対応表２」という）を所定の設定値として受信部１００に出力する。
【０１４２】  対応表２は、本実施形態のサーバ１０のユーザによってＭ２Ｍサービス管理部１０４に設定される。本実施形態のサーバ１０のユーザは、同じ送信周期には同じ値Ｘを対応づけた対応表２をＭ２Ｍサービス管理部１０４に設定する。データ格納期間は、送信周期と値Ｘが乗算された値である。
【０１４３】  （Ｓ１０４）  次に、受信部１００は、上述のＳ１０１により、対応表２が入力されると、入力された対応表２を記憶する。
【０１４４】  （Ｓ１１２）  Ｓ１１の後、受信部１００は、Ｓ１０で求めた送信周期に対応づけられている値Ｘを、対応表２から抽出し、Ｓ１０で求めた送信周期をＸ倍してデータ格納期間を求める。
【０１４５】  なお、受信部１００は、Ｓ１０で求めた送信周期に関連づけられているデータ格納期間を対応表２から直接、求めてもよい。
【０１４６】  なお、上記では、サーバ１０は端末からデータを収集したが、端末に限らない。サーバ１０は、センサ等の一般的なデバイスからデータを収集してもよい。
【０１４７】  ［効果の説明］  本実施形態によれば、Ｍ２Ｍサービスのサーバは、端末が多くなったとしても、端末の数に応じて処理能力を増強する必要がなくなる。
【０１４８】  なぜならば、Ｍ２Ｍサービスのサーバは、端末からデータが受信する毎に処理を行うのではなく、一度、受信したデータを蓄積し、同じ種別のデータ毎（具体的には、送信周期が同じデータ毎）に処理を行うからである。その結果、Ｍ２Ｍサービスのサーバは、端末毎ではなく、送信周期が同じデータ毎、すなわちＭ２Ｍサービス毎に所定の処理を行うので、端末の数に応じて処理能力を増強する必要がなくなる。
【０１４９】  端末の数に応じて処理能力を増強する増強する必要がなくなるので、Ｍ２Ｍサービスのサーバは、端末の数が多くなったとしても、そのコストを抑えることができる。
【０１５０】  ［第２の実施の形態］  次に、本発明の第２の実施の形態について説明する。
【０１５１】  ［構成の説明］  図６は、本発明の第２の実施の形態におけるサーバの構成例を示す図である。
【０１５２】  第２の実施の形態におけるサーバ２００は、図６に示されるように、機器２０１、２０２、２０３からデータを収集するサーバである。サーバ２００と機器２０１、２０２、２０３は、ネットワーク２０４を介して接続されている。
【０１５３】  機器２０１、２０２、２０３は、Ｍ２Ｍサービスに対応する収集デバイスである。
【０１５４】  具体的には、機器２０１、２０２は、農業に関するＭ２Ｍサービスに対応する一般的な収集デバイスである。機器２０１、２０２は、農地の温度や湿度等のデータを収集し、所定の周期（ここでは５秒とする）で、収集したデータをサーバ２００に送信する。
【０１５５】  また、機器２０３は、高齢者の見守りＭ２Ｍサービスに対応する一般的な収集デバイスである。機器２０３は、高齢者の生活行動の１つとして、部屋の扉の開閉情報を収集し、所定の周期（ここでは７秒とする）で、収集したデータをサーバ２００に送信する。
【０１５６】  なお、データを送信する上述の所定の周期は、Ｍ２Ｍサービス毎に異なるものとする。機器２０１、２０２、２０３は、端末やセンサであってもよい。
【０１５７】  サーバ２００は、蓄積部２１０と、処理部２１１と、を備える。
【０１５８】  サーバ２００の蓄積部２１０は、ネットワーク２４０を介して接続された複数の機器２０１、２０２、２０３からデータを受信すると、当該データが用いられるサービス毎に識別可能な状態で（受信したデータを）蓄積する。
【０１５９】  サーバ２００の処理部２１１は、蓄積部２１０によって蓄積されたデータからサービス単位でデータを取り出して所定の処理をする。
【０１６０】  所定の処理は、データを加工する処理や加工したデータを分析するアプリケーション（図示せず）に出力する処理である。
【０１６１】  また、上述のサービスとは、Ｍ２Ｍサービスのことである。Ｍ２Ｍサービスとは、様々な機器からサーバがデータを収集し、自律的に制御を行うことで実現されるサービスである。本実施形態では、Ｍ２Ｍサービスとして、農業に関するサービスや高齢者見守りに関するサービスを例とするが、これらに限らない。
【０１６２】  Ｍ２Ｍサービスは、各家庭やビルに設置された電力使用量メータからサーバが電力使用量を収集し、最適な発電量を電気事業者に提供する電力サービスであってもよい。また、Ｍ２Ｍサービスは、自動販売機から在庫状況をサーバが収集し、補充すべき必要な商品数を自動販売機の管理者に提供する在庫管理サービスであってもよい。さらに、Ｍ２Ｍサービスは、農業に関するＭ２Ｍサービスの中の、収集したデータをまとめてグラフとして提供するＭ２Ｍサービスや、収集したデータを分析して収穫時期を予測するＭ２Ｍサービスであってもよい。サーバ２００は、蓄積部２１０と処理部２１１を用いて、各Ｍ２Ｍサービスに対応する複数の機器からデータを受信し、それらをＭ２Ｍサービス毎に識別可能な状態で蓄積し、サービス単位でデータを取り出して所定の処理を行う。
【０１６３】  以下、本実施形態のサーバ２００の動作について説明する。
【０１６４】  [動作の説明]  まず、サーバ２００の蓄積部２１０は、ネットワーク２０４を介して接続された複数の機器２０１、２０２、２０３からデータを受信すると、当該データが用いられるサービス毎に（受信したデータを）識別可能な状態で蓄積する。
【０１６５】  例えば、サーバ２００の蓄積部２１０は、受信したデータを、以下のように、サービス毎に識別可能な状態で蓄積してもよい。
【０１６６】  まず、サーバ２００の蓄積部２１０は、農業に関するＭ２Ｍサービスに対応する機器２０１、２０２からデータを受信すると、受信したデータの送信周期（５秒）を求める。さらに、サーバ２００の蓄積部２１０は、求めた送信周期（５秒）に基づき決定したサービス識別子を当該データに付与して、自身に備わる所定のメモリ（以下、「メモリＩ」という）に蓄積する。また、サーバ２００は、高齢者の見守りに関するＭ２Ｍサービスに対応する機器２０３からデータを受信すると、受信したデータの送信周期（７秒）を求める。サーバ２００は、求めた送信周期（７秒）に基づき決定したサービス識別子を当該データに付与して、自身に備わる所定のメモリ（以下、「メモリＩＩ」という）に蓄積する。送信周期（５秒）のデータが蓄積されるメモリＩと、送信周期（７秒）のデータが蓄積される所定のメモリＩＩとは異なっていてもよい。各データには、サービス識別子が付与されているので、どのサービスのデータかを識別可能である。
【０１６７】  次に、サーバ２００の処理部２１１は、蓄積部２１０によって蓄積されたデータからサービス単位でデータを取り出して所定の処理をする。
【０１６８】  具体的には、サーバ２００の処理部２１１は、メモリＩに蓄積されたデータから、送信周期５秒に対応するサービス識別子が付与された（機器２０１、２０２からの）データを取り出して所定の処理を行ってもよい。サーバ２００の処理部２１１は、メモリＩＩに蓄積したデータから、送信周期７秒に対応するサービス識別子が付与された（機器２０３からの）データを取り出して所定の処理を行ってもよい。
【０１６９】  ［効果の説明］  本実施形態によれば、サーバは、データを収集する機器が多くなったとしても、機器の数に応じて処理能力を増強する必要がなくなる。
【０１７０】  なぜならば、本実施形態のサーバは、機器からデータを収集する毎に処理を行うのではなく、一度、収集したデータをサービス毎に蓄積し、サービス単位に纏めて処理を行うからである。その結果、サーバは、機器毎ではなく、サービス単位に所定の処理を行うので、機器の数に応じて処理能力を増強する必要がなくなる。
【０１７１】  機器の数に応じて処理能力を増強する必要がなくなるので、本実施形態のサーバは、端末の数が多くなったとしても、そのコストを抑えることができる。
【０１７２】  以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１７３】  この出願は、２０１４年１月３１日に出願された日本出願特願２０１４−０１６２８０を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１７４】  １０、２００    サーバ  １００    受信部  １０１    一次メモリ  １０２    データ加工部  １０３    端末ＤＢ（Ｄａｔａｂａｓｅ）  １０４    Ｍ２Ｍサービス管理部  １０５    加工済みデータ格納ＤＢ  １０６    データ送信部  １０７    Ｍ２Ｍサービス設定ＤＢ  ２０、３０、４０    端末  ５０    管理用端末  ６０    アプリケーション部  ２０１、２０２、２０３    機器  ２０４    ネットワーク  ２１０    蓄積部  ２１１    処理部
【図１】
2015115042.tif 000003
【図２】
2015115042.tif 000004
【図３】
2015115042.tif 000005
【図４】
2015115042.tif 000006
【図５】
2015115042.tif 000007
【図６】
2015115042.tif 000008
【手続補正書】
【提出日】平成28年7月8日(2016.7.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された複数の機器からデータを受信すると、前記データが用いられるサービス毎に識別可能な状態で前記データを蓄積する蓄積手段と、
前記蓄積手段によって蓄積された前記データから前記サービス単位で、前記機器複数台分の前記データを取り出して所定の処理をする処理手段と、を備える、
ことを特徴とするサーバ。
【請求項２】
前記蓄積手段は、前記データの送信周期に基づき決定したサービス識別子を当該データに付与し、
前記処理手段は、前記蓄積手段が付与した前記サービス識別子を参照して前記データを取り出す、
ことを特徴とする請求項１に記載のサーバ。
【請求項３】
前記処理手段は、前記データの送信周期に対して所定倍数の周期で前記データを取り出す、
ことを特徴とする請求項１乃至２のいずれか１項に記載のサーバ。
【請求項４】
前記蓄積手段は、前記機器から前記データを受信すると、前記機器の前記データを送信する周期、すなわち送信周期に対応する所定のメモリに、受信した前記データを蓄積し、
前記処理手段は、前記所定のメモリに蓄積された、前記送信周期が同じ前記データ毎に前記所定の処理を行う、
ことを特徴とする請求項１乃至３のいずれか１項に記載のサーバ。
【請求項５】
ネットワークを介して接続された複数の機器からデータを受信すると、前記データが用いられるサービス毎に識別可能な状態で前記データを蓄積し、
前記蓄積された前記データから前記サービス単位で、前記機器複数台分の前記データを取り出して所定の処理をする、
ことを特徴とするデータ処理方法。
【請求項６】
前記蓄積においては、前記データの送信周期に基づき決定したサービス識別子を当該データに付与し、
前記処理において前記データを取り出すときには、前記蓄積において付与した前記サービス識別子を参照して前記データを取り出す、
ことを特徴とする請求項５に記載のデータ処理方法。
【請求項７】
前記処理において前記データを取り出すときには、前記データの送信周期に対して所定倍数の周期で前記データを取り出す、
ことを特徴とする請求項５乃至６のいずれか１項に記載のデータ処理方法。
【請求項８】
前記蓄積においては、前記機器の前記データを送信する周期、すなわち送信周期に対応する所定のメモリに、収集した前記データを蓄積し、
前記処理を行うときには、前記所定のメモリに蓄積された、前記送信周期が同じ前記データ毎に前記処理を行う、
ことを特徴とする付記５乃至７のいずれか１項に記載のデータ処理方法。
【国際調査報告】
2015115042.tif 000009
2015115042.tif 000010
2015115042.tif 000011
2015115042.tif 000012