IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヤン,シャオフェンの特許一覧

特許7084691地図上で実時間のソーシャルデータを処理及び提示するための方法
<>
  • 特許-地図上で実時間のソーシャルデータを処理及び提示するための方法 図1
  • 特許-地図上で実時間のソーシャルデータを処理及び提示するための方法 図2
  • 特許-地図上で実時間のソーシャルデータを処理及び提示するための方法 図3A
  • 特許-地図上で実時間のソーシャルデータを処理及び提示するための方法 図3B
  • 特許-地図上で実時間のソーシャルデータを処理及び提示するための方法 図3C
  • 特許-地図上で実時間のソーシャルデータを処理及び提示するための方法 図4
  • 特許-地図上で実時間のソーシャルデータを処理及び提示するための方法 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-07
(45)【発行日】2022-06-15
(54)【発明の名称】地図上で実時間のソーシャルデータを処理及び提示するための方法
(51)【国際特許分類】
   G06Q 50/00 20120101AFI20220608BHJP
   G06F 3/14 20060101ALI20220608BHJP
   G06F 16/909 20190101ALI20220608BHJP
【FI】
G06Q50/00 300
G06F3/14 A
G06F16/909
【請求項の数】 21
(21)【出願番号】P 2016533489
(86)(22)【出願日】2014-08-11
(65)【公表番号】
(43)【公表日】2016-11-10
(86)【国際出願番号】 US2014050492
(87)【国際公開番号】W WO2015021459
(87)【国際公開日】2015-02-12
【審査請求日】2017-08-14
【審判番号】
【審判請求日】2020-04-06
(31)【優先権主張番号】61/864,243
(32)【優先日】2013-08-09
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】516041221
【氏名又は名称】ヤン,シャオフェン
(74)【代理人】
【識別番号】110001999
【氏名又は名称】特許業務法人はなぶさ特許商標事務所
(72)【発明者】
【氏名】ヤン,シャオフェン
【合議体】
【審判長】高瀬 勤
【審判官】中野 浩昌
【審判官】古川 哲也
(56)【参考文献】
【文献】特開2010-54484(JP,A)
【文献】特開2002-333337(JP,A)
【文献】特開2008-292511(JP,A)
【文献】特開2006-139412(JP,A)
【文献】特開2009-99148(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q10/00-99/00
G06F3/14
G06F16/909
(57)【特許請求の範囲】
【請求項1】
クライアントのコンピュータプログラムが保存された非一時的なコンピュータ可読保存媒体を含むクライアント装置と、サーバのコンピュータプログラムが保存された非一時的なコンピュータ可読保存媒体を含むサーバとを含むシステムであって、
前記サーバのコンピュータによって実行されたときに前記サーバのコンピュータプログラムが実行するステップは、
ソーシャルネットワークのウェブサイトから複数の属性を備えたソーシャルデータを収集するステップを含み、ソーシャルデータは、携帯装置を介して投稿されたデータを含んでおり、さらに、
前記サーバのコンピュータによって実行されたときに前記サーバのコンピュータプログラムが実行するステップは、収集されたソーシャルデータの処理手順を含み、該処理手順は、
ソーシャルデータに対して、該ソーシャルデータの生成源である携帯装置の物理的位置に対応する位置タグのないソーシャルデータ及び該ソーシャルデータの生成源である携帯装置の物理的位置に対応する位置情報を決定できないソーシャルデータを除外することを含む事前処理を実行するステップと、
事前処理後のソーシャルデータに対して機械学習処理を実行することによってソーシャルデータをカテゴリ分けするためのカテゴリモデルを確立するステップと、
機械学習処理後のソーシャルデータをメインサーバのキャッシュ中のキューに入れるステップと、
キャッシュリーダー及び複数のワーカーによって、キャッシュに保存されたソーシャルデータを確立されたカテゴリモデルにカテゴリ分けするステップと、を含み、
さらに、前記サーバのコンピュータによって実行されたときに前記サーバのコンピュータプログラムが実行するステップは、
カテゴリ分けされたソーシャルデータをビッグデータ・データベースに保存するステップと、
前記クライアント装置の要求に応答して、カテゴリ分けされたソーシャルデータの要求された部分をクライアントに送信するステップと、を含んでおり、
前記クライアント装置のコンピュータによって実行されたときに前記クライアントのコンピュータプログラムが実行するステップは、
ユーザからの第1の入力を受信するステップと、
入力に基づいてソーシャルデータの要求を前記サーバに送信するステップと、
要求に対する応答として、位置属性を含む前記処理手順後のソーシャルデータを前記サーバから受信するステップと、
前記処理手順後のソーシャルデータに基づいて、クライアント装置にソーシャルマップを表示するステップと、を含み、
ソーシャルマップは、少なくとも第1の地理的領域の第1のジオマップタイルを含み、第1のジオマップタイルには、第1の地理的領域に対応する位置属性を含む処理後のソーシャルデータの第1の部分から編成された第1の記述が重ねられる、ことを特徴とするシステム。
【請求項2】
前記クライアント装置のコンピュータによって実行されたときに前記クライアントのコンピュータプログラムが実行するステップは、ユーザからの第2の入力に応答して、ソーシャルマップ上でズームインを実行するステップをさらに含むことを特徴とする請求項1に記載のシステム。
【請求項3】
前記ズームインを実行するステップは、
少なくとも第2の地理的領域の第2のジオマップタイル及び第3の地理的領域の第3のジオマップタイルを表示するステップを含み、
第2の地理的領域及び第3の地理的領域は、第1の地理的領域内に位置し、
第2のジオマップタイルには、第2の地理的領域に対応する位置属性を含む処理後のソーシャルデータの第2の部分から編成された第2の記述が重ねられ、
第3のジオマップタイルには、第3の地理的領域に対応する位置属性を含む処理後のソーシャルデータの第3の部分から編成された第3の記述が重ねられる、ことを特徴とする請求項2に記載のシステム。
【請求項4】
前記第1の記述は、
個別の属性の第1のリストを含む第1の属性カテゴリと、
第1のリストの個別の属性のそれぞれに対応するカウント数と、を含み、
第1のリストの個別の属性のそれぞれについて、対応するカウント数は、処理後のソーシャルデータの第1の部分中の個別の属性の頻度を特定する、ことを特徴とする請求項1に記載のシステム。
【請求項5】
個別の属性の第1のリストは、個別の属性のそれぞれに対応するカウント数に基づいてソートされることを特徴とする請求項4に記載のシステム。
【請求項6】
個別の属性の第1のリストの少なくとも2つの個別の属性が、同一の対応するカウント数を有する場合、前記少なくとも2つの個別の属性は、処理後のソーシャルデータの第1の部分におけるそれぞれの最新性に基づいてソートされる、ことを特徴とする請求項5に記載のシステム。
【請求項7】
前記クライアント装置のコンピュータによって実行されたときに前記クライアント装置のコンピュータプログラムが実行するステップは、ソーシャルマップを表示するステップの後に、
要求に対する応答として、位置属性を含む更新された処理後のソーシャルデータを受信するステップと、
更新された処理後のソーシャルデータに基づいて、クライアント装置にソーシャルマップを再表示するステップと、を含み、
第1のリストのソートは、更新された処理後のソーシャルデータを反映するように更新される、ことを特徴とする請求項5に記載のシステム。
【請求項8】
前記第1の記述は、
個別の属性の第2のリストを含む第2の属性カテゴリと、
第2のリストの個別の属性のそれぞれに対応するカウント数と、を含み、
第2のリストの個別の属性のそれぞれについて、対応するカウント数は、処理後のソーシャルデータの第1の部分中の個別の属性の頻度を特定する、ことを特徴とする請求項4に記載のシステム。
【請求項9】
前記第1の入力は、ハッシュタグであることを特徴とする請求項1に記載のシステム。
【請求項10】
前記クライアント装置は、携帯電話またはタブレットであり、
前記クライアント装置のコンピュータプログラムは、前記クライアント装置上で実行されるアプリケーションである、ことを特徴とする請求項1に記載のシステム。
【請求項11】
前記サーバのコンピュータプログラムが実行するステップは、
カテゴリ分けされたソーシャルデータを複数の異なる位置にある複数のサーバに分散して保持するステップをさらに含むことを特徴とする請求項1から10のいずれか1項に記載のシステム。
【請求項12】
クライアント装置に表示するためにソーシャルデータを処理する方法と、クライアント装置にソーシャルデータを表示する方法とを含む方法であって、
クライアント装置に表示するためにソーシャルデータを処理する方法は、
ソーシャルネットワークのウェブサイトから複数の属性を備えたソーシャルデータを収集するステップを含み、ソーシャルデータは、携帯装置を介して投稿されたデータを含んでおり、さらに、
ソーシャルデータに対して、該ソーシャルデータの生成源である携帯装置の物理的位置に対応する位置タグのないソーシャルデータ及び該ソーシャルデータの生成源である携帯装置の物理的位置に対応する位置情報を決定できないソーシャルデータを除外することを含む事前処理を実行するステップと、
事前処理後のソーシャルデータに対して機械学習を実行することによってソーシャルデータをカテゴリ分けするためのカテゴリモデルを確立するステップと、
事前処理後のソーシャルデータをメインサーバのキャッシュ中のキューに入れるステップと、
キャッシュリーダー及び複数のワーカーによって、キャッシュに保存されたソーシャルデータを選択されたカテゴリモデルにカテゴリ分けするステップと、
カテゴリ分けされたソーシャルデータをビッグデータ・データベースに保存するステップと
クライアントの要求に応答して、カテゴリ分けされたソーシャルデータの要求された部分をクライアント装置に送信するステップと、を含んでおり、
クライアント装置にソーシャルデータを表示する方法は、
ユーザからの第1の入力を受信するステップと、
入力に基づいてソーシャルデータの要求を送信するステップと、
要求に対する応答として、前記クライアント装置に表示するためにソーシャルデータを処理する方法によって処理された、位置属性を含むソーシャルデータを受信するステップと、
前記クライアント装置に表示するためにソーシャルデータを処理する方法によって処理されたソーシャルデータに基づいて、クライアント装置にソーシャルマップを表示するステップと、を含み、
ソーシャルマップは、少なくとも第1の地理的領域の第1のジオマップタイルを含み、第1のジオマップタイルには、第1の地理的領域に対応する位置属性を含む処理後のソーシャルデータの第1の部分から編成された第1の記述が重ねられる、ことを特徴とする方法。
【請求項13】
クライアント装置にソーシャルデータを表示する方法は、ユーザからの第2の入力に応答して、ソーシャルマップ上でズームインを実行するステップをさらに含むことを特徴とする請求項12に記載の方法。
【請求項14】
ズームインを実行するステップは、
少なくとも第2の地理的領域の第2のジオマップタイル及び第3の地理的領域の第3のジオマップタイルを表示するステップを含み、
第2の地理的領域及び第3の地理的領域は、第1の地理的領域内に位置し、
第2のジオマップタイルには、第2の地理的領域に対応する位置属性を含む処理後のソーシャルデータの第2の部分から編成された第2の記述が重ねられ、
第3のジオマップタイルには、第3の地理的領域に対応する位置属性を含む処理後のソーシャルデータの第3の部分から編成された第3の記述が重ねられる、ことを特徴とする請求項13に記載の方法。
【請求項15】
前記第1の記述は、
個別の属性の第1のリストを含む第1の属性カテゴリと、
第1のリストの個別の属性のそれぞれに対応するカウント数と、を含み、
第1のリストの個別の属性のそれぞれについて、対応するカウント数は、処理後のソーシャルデータの第1の部分中の個別の属性の頻度を特定する、ことを特徴とする請求項12に記載の方法。
【請求項16】
個別の属性の第1のリストは、個別の属性のそれぞれに対応するカウント数に基づいてソートされることを特徴とする請求項15に記載の方法。
【請求項17】
個別の属性の第1のリストの少なくとも2つの個別の属性が、同一の対応するカウント数を有する場合、前記少なくとも2つの個別の属性は、処理後のソーシャルデータの第1の部分におけるそれぞれの最新性に基づいてソートされる、ことを特徴とする請求項16に記載の方法。
【請求項18】
ソーシャルマップを表示するステップの後に、
要求に対する応答として、位置属性を含む更新された処理後のソーシャルデータを受信するステップと、
更新された処理後のソーシャルデータに基づいて、クライアント装置にソーシャルマップを再表示するステップと、を含み、
第1のリストのソートは、更新された処理後のソーシャルデータを反映するように更新される、ことを特徴とする請求項16に記載の方法。
【請求項19】
前記第1の記述は、
個別の属性の第2のリストを含む第2の属性カテゴリと、
第2のリストの個別の属性のそれぞれに対応するカウント数と、を含み、
第2のリストの個別の属性のそれぞれについて、対応するカウント数は、処理後のソーシャルデータの第1の部分中の個別の属性の頻度を特定する、ことを特徴とする請求項15に記載の方法。
【請求項20】
前記第1の入力は、ハッシュタグであることを特徴とする請求項12に記載の方法。
【請求項21】
クライアント装置に表示するためにソーシャルデータを処理する方法は、カテゴリ分けされたソーシャルデータを複数の異なる位置にある複数のサーバに分散して保持するステップをさらに含むことを特徴とする請求項12から20のいずれか1項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2013年8月9日に出願された米国特許仮出願第61/864,243号の優先権を主張するものである。2014年8月9日は週末であったため、本出願は、次の平日である2014年8月11日に出願された。
【0002】
本発明は、一般には、ソーシャルデータを処理及び提示するための方法に関する。より詳しくは、本発明は、位置を含むそれぞれの属性に基づいて地図(geographical map)上において実時間でソーシャルデータを処理及び提示する方法に関する。
【背景技術】
【0003】
オンラインのソーシャルネットワークは、人々の社会生活の重要な部分として出現するとともに、価値の高いソーシャルデータを大量に生成している。オンラインの社会活動の大部分は、ソーシャルネットワークサービス(ウェブサイト/スマートフォンのアプリ)を介して実行される。ソーシャルネットワークサービスは、例えば興味、活動、背景、または他の関係を共有する人々の社会的ネットワークまたは社会的関係を構築するためのプラットフォームである。ソーシャルネットワークサービスは、各ユーザの表現(例えば、プロフィール)、ソーシャルリンク、及びその他の様々なサービスを含む。大部分のソーシャルネットワークサービスはウェブ技術に基づいており、電子メール、インスタントメッセージ等のインターネットを介した相互作用手段をユーザに提供する。オンラインコミュニティサービスは、グループ指向型ではあるが、ソーシャルネットワークサービスとして考えられる場合もある。ソーシャルネットワークサービスによって、ユーザは、意見、画像、投稿、活動、イベント、及び興味を、それぞれのネットワーク中の人々と共有することができる。これらの活動の間、多くの貴重なソーシャルデータが生成される。
【0004】
ソーシャルネットワークサービスは、興味及び活動を共有する人々を、政治的、経済的、及び地理的な境界を越えて繋げることを可能にするものであり、生成されたデータは、個人及び企業の両者にとって非常に有益かつ高価値の情報である。しかしながら、生成された大量のソーシャルデータは、これまで十分かつ有効には使用されてこなかった。このようなソーシャルデータは、適切な収集、ソート、及び分析を用いれば、人々の生活及び仕事の広範な領域において非常に有用であろう。一方、収集、ソート、及び分析によって、ソーシャルデータから多くの潜在的な高価値のビジネス情報を取得することも可能であろう。これらの大きな可能性の観点から言えば、蓄積されたソーシャルデータは、先見の明の持った人々による探査を待つ金鉱と言えるだろう。このようなデータマイニングによって、企業は、その売上及び利益を改善し、または顧客基盤を拡大することが可能となる。
【0005】
Facebook(登録商標)及びTwitter(登録商標)に代表されるソーシャルネットワークサービスは、多くの人々の生活の重要な部分となっている。これらのソーシャルネットワーク上では、毎日、ユーザの投稿等によって大量の情報が生成される。さらに、このような大量の投稿には、傾向または流行といった非常に価値の高い有用な情報が隠れている。このような高価値の情報に対して、多くの企業または組織からの高い需要がある。しかし、このようなソーシャルネットワークの情報は大量かつ多様であるため、それを効果的に分析し、かつ提示するための方法を開発することが重要である。
【0006】
一方、iPone(登録商標)及び他のスマートフォンの出現後、スマートフォン及び従来のPCとは異なるタブレット装置といった携帯装置を使用し、特に、このような携帯装置にインストールされたアプリケーション(アプリ)を介してソーシャルネットワークにアクセスする人々が増加している。
【0007】
ソーシャルデータの使用に関して、重要事項の1つは、適切な属性(それによってソート及び分析を実行できる属性)を見つけることである。現在、ソーシャルネットワークサイトにおいて、新たな動向の最前線にあるのは、「実時間」と「位置」の概念である。実時間性によって、ユーザは、オンラインのどこからでも、コンテツを投稿し、不特定多数に向けて発信することが可能となる。この概念は、ラジオ及びテレビの生放送に類似している。主要なソーシャルネットワークのウェブサイトの1つであるTwitter(登録商標)は、「実時間(リアルタイム)サービスの流行を作り出した。このサービスにおいて、ユーザは、自分がしていることや自分が考えていることを、140文字の制限内で世界に向けて発信することができる。Twitter(登録商標)が言葉に焦点を当てているのに対して、別のリアルタイムサービスであるClixtrはグループ写真共有に焦点を当てている。このサービスにおいて、ユーザは、イベント中の写真で自分たちのフォトストリームを更新することができる。しかしながら、最大の写真共有サイトは、依然としてFacebook(登録商標)である。2012年までにFacebook(登録商標)が有している写真は、約1兆枚と推定されている。
【0008】
一方、益々多くの人々及び企業が、ソーシャルデータの価値と重要性に関して、全てのソーシャルデータが同じではないことに気づいている。大部分の人にとって、自分が生活する場所または仕事をする場所またはその近くのソーシャルデータが、自分にとって最も興味があり、重要であり、そして価値のあるソーシャルデータである。したがって、上述した適切な属性に関して、位置の特性は、ソーシャルデータをソート、編成、及び分析するための最も適切な属性のうちの1つである。さらに、例えば特定の期間または時間間隔のようなソーシャルデータに関連する他の特性も、状況に応じて非常に有用となり得る。
【0009】
蓄積されたソーシャルデータに関して言えば、これらのデータの大部分は、実際には、ソーシャルデータのコンテンツに埋め込まれた特定の特性または属性を既に有している。このような埋め込みは、様々に異なる形で行われる場合がある。ソーシャルデータは、トレンドハッシュタグ、メンション、画像、動画等を有しているかもしれない。多くのソーシャルデータは、データ中に埋め込まれた位置情報を有している。これらの既存の属性タグを使用することは、容易でありながら、収集されたデータのマイニング及び提示のために効果的な方法である。これらの編成されたソーシャルデータは、特に、位置、ハッシュタグ、メンション、画像、動画、及び他の社会的属性の組合せの分析とともに用いることで、人々が社会生活を変革するために役立ち、マーケティング、セキュリティ等のために大きな役割を果たすものである。しかしながら、現在、埋め込まれた位置を備えるソーシャルデータを分析し、それを実時間で地図上に視覚化するための優れた解決手段はない。
【発明の概要】
【発明が解決しようとする課題】
【0010】
したがって、本発明の1つの目的は、収集された実時間のソーシャルデータを、そのソーシャルデータの特定の属性に基づいて処理し、次いで、処理されたソーシャルデータを、特定の位置のような特定の属性に基づいて地図(ソーシャルマップ)上に提示する効果的な方法を提供することである。さらに、より便利かつ自然な方法において、ソーシャルマップ上のこれらのソーシャルデータは、様々な層(すなわち、様々に異なるレベルのタイル)中に整理される。
【図面の簡単な説明】
【0011】
図1図1は、ソーシャルネットワークからのソーシャルデータが処理され、ビッグデータ・データベースに保存されることを示す図である。
図2図2は、ビッグデータ・データベースに保存されたソーシャルデータがクライアントによって要求され、コンピュータ装置上に表示されることを示す図である。
図3A図3Aは、クライアント装置に表示され得る処理されたソーシャルデータの記 述の例である。
図3B図3Bは、クライアント装置に表示され得る処理されたソーシャルデータの記 述の例である。
図3C図3Cは、クライアント装置に表示され得る処理されたソーシャルデータの記 述の例である。
図4図4は、ソーシャルマップを生成するためにソーシャルデータを処理及び提示す る例示的な方法を模式的に示す図である。
図5図5は、本発明に係るソーシャルマップを生成するための手順を示すフローチャ ートである。
【発明を実施するための形態】
【0012】
全ての図面及び実施形態の説明は、本発明の選択された態様を説明することを目的とするものであり、本発明の範囲を限定することを意図するものではない。
【0013】
本発明は、実時間のソーシャルデータをソーシャルマップ上に表示する方法であり、携帯電話、タブレット、または他の携帯装置、あるいは、コンピュータといった、様々なプラットフォーム上で実行することができる。加えて、この方法を実行するために、上述したハードウェアプラットフォームと1つまたは複数のメインサーバとの間の緊密な協働が必要である。この点に関して、本発明は、上述したハードウェアの必須の機能性が必要な特定の方法である。さらに、このようなハードウェアは、通常、従来のコンピュータではなく、携帯電話と特定のサーバである。ハードウェアに加えて、本発明は、携帯装置またはコンピュータと様々なサーバとの間の無線接続も必要とする。
【0014】
本発明において、生成されたソーシャルマップは、ソーシャルデータを編成及び分析し、受信した結果を地図上に実時間で表示するための優れた手段である。これは、高性能のビッグデータ処理エンジン及び次世代マップエンジンを活用して、動的(リアルタイム)ソーシャルマップを作成するものである。様々な地学的レベルで、実時間で処理されたソーシャルデータが地図タイルの方法で提示される。
【0015】
図1には、受信されたソーシャルデータが処理され、データベース中に保存される過程が示されている。本発明に係るリアルタイムソーシャルマップを生成するための最初のステップにおいて、Facebook(登録商標)、Twitter(登録商標)、Instagram(登録商標)、Pinterest(登録商標)、Myspace(登録商標)、Foursquare(登録商標)等のような主要なソーシャルネットワークのウェブサイト101から、ソーシャルデータが適切に収集される。このソーシャルデータは、特に、位置情報及び時刻情報のような特定の情報タグが埋め込まれたデータである。このように、ソーシャルマップは、これらの主要なソーシャルネットワークからソーシャルデータのライブストリームを収集する。このソーシャルデータは、特に位置または他の属性が埋め込まれたデータであり、これらの属性は後に使用される。
【0016】
本発明において、データは、Twitter(登録商標)及び他のソーシャルネットワークから受信される。これらのデータには、テキスト、音、画像(静止画)、動画、任意の形式の投稿、コメント、返信等が含まれるが、これらに限定されるものではない。ソーシャルネットワークのサーバと本発明に係るメインサーバとの間の接続が確立した後、上述したソーシャルデータが、実時間モードで自動的に受信されるものであってもよい。このような接続が中断した場合、接続を再確立するための要求がソーシャルネットワークのサーバに送信される。したがって、本発明では、処理され、その後使用される実時間のデータまたは最新のデータが常に入手可能である。
【0017】
次に、受信されたデータには、事前処理が施される。事前処理の主な目的は、有用なデータを含まない受信データ、及び本発明で使用できない形式の受信データ等を除外することである。加えて、例えば位置タグを備えないソーシャルデータ、または位置情報が決定できないソーシャルデータのような他の種類のソーシャルデータも除去される。さらに、日付タグまたは時刻タグを備えないソーシャルデータ、または、日付情報または時刻情報が決定できないソーシャルデータも除去される。これらのソーシャルデータはいずれも、本発明において正しく処理し、その後使用することができないからである。また、特定の粗く一貫性のないソーシャルデータは、有効かつ一貫性のあるソーシャルデータを抽出するために正規化される。初期のフィルタリング処理に続いて、事前処理に合格したソーシャルデータは、機械学習処理で使用される。
【0018】
機械学習処理102の間、事前処理後のデータは、既知のカテゴリ特性と共に使用され、カテゴリモデルのための対応するモデルが徐々に確立される。確立されたカテゴリモデルは、次のステップにおいて、将来のデータをソート及び分析するために使用される。本発明において、カテゴリには、トピック、位置、人、組織等が含まれるが、これらに限定されるものではない。
【0019】
機械学習処理後のデータは、次に、メインサーバのキャッシュ103に保存され、キュー中に整理される。メインサーバのキャッシュに保存されたソーシャルデータは、さらに、複数の異なるキャッシュリーダーによって分析される。それぞれのキャッシュリーダー104は、特定のIDワーカー105、検索ワーカー106、タグタイムラインワーカー107、メンションタイムラインワーカー108、タイムライン位置ワーカー109等を介して機能してソーシャルデータを分析し、次いで、ソーシャルデータを、Apache HBaseのようなビッグデータ・データベース110に保存する。HBaseは、GoogleのBigTableをモデルとしてJava(登録商標)で書かれたオープンソースの非リレーショナル分散データベースである。これは、大量のスパースデータ(空のデータまたは重要でないデータの大きな集合内に含まれる少量の情報)を、耐障害性を有する方法で保存する。加えて、HBaseは、元のBigTableの論文に概要が記載されているように、圧縮、インメモリー動作、及びカラム毎のBloomフィルタといった特徴を備える。HBase中のテーブルは、Hadoopで実行されるMapReduceジョブのための入出力として機能し、Java(登録商標) APIを通じてアクセスすることができるが、REST、Avro、またはThriftゲートウェイAPIを通じてアクセスすることもできる。
【0020】
上述した処理は、複数の処理装置(マルチプロセッサ)を使用して様々なタスクを同時に実行することが可能なリアルタイム型ビッグデータ処理エンジンによって実行される。言い換えれば、この処理は、通常、複数の処理装置によって並列に実行される。
【0021】
処理ステップの間に、ソーシャルデータは、それぞれの位置属性及び/または他の適切な属性に基づいて処理及び分析されるものである。他の適切な属性は、例えばトレンドハッシュタグ、メンション、画像、動画、個々の単語、期間等である。リアルタイム型ビッグデータ処理エンジンは、特定の手順中で使用される。このような処理動作は、Amazon EC2のような特定のクラウドコンピューティングプラットフォームによって容易になる。適切なコンピューティングプラットフォームは、それぞれのコンピュータアプリケーションを実行させることが可能であり、かつ、アプリケーションをスケーラブルに装備して必要なソフトウェアを含む仮想マシンを構成することが可能である必要がある。この処理の間、待ち時間の最適化と高いレベルの冗長性を保障するため、地理的な位置が制御される。
【0022】
ビッグデータ・データベースに保存されたソーシャルデータは、トラフィックを低減し、効率を改善することを目的として、様々に異なる場所にある複数の異なるサーバに分散される。このステップは、データセットのコモディティハードウェアのクラスタ上での保存及び大規模処理のための特定のソフトウェアフレームワークを使用して実行される。本発明では、このような目的のためにApache Hadoopが使用される。Hadoop(High-availability distributed object oriented platform:高可用性分散オブジェクト指向プラットフォーム)は、Apache v2 ライセンスの下に許諾されたオープンソースのソフトウェアフレームワークであり、データ集約型の分散アプリケーションをサポートする。Hadoopは、コモディティハードウェアの大規模クラスタ上でのアプリケーションの実行をサポートする。Hadoopフレームワークは、アプリケーションに対して信頼性とデータの移動の両方を透過的に与えるものである。Hadoopは、MapReduceと称する計算パラダイムを実行する。この計算パラダイムでは、アプリケーションは小さな作業のフラグメントに分割され、それぞれの作業は、クラスタ内の任意のノード上で実行または再実行され得る。この点で、Amazon Elastic MapReduce(EMR)は、良い実例である。EMRは、スレーブの故障に対する耐障害性を有しており、また、可用性を維持しながら低コストの有利性を得るために、スポットインスタンス上でタスクインスタンスグループのみを実行するために非常に適している。
【0023】
ソーシャルデータのジオマップ(geo-map)上への迅速かつ有効な提示を促進するため、個々のクライアント(クライアントは、携帯装置またはコンピュータにインストールされたアプリケーションまたはプログラムである)が携帯電話等の携帯装置またはコンピュータを介して要求するときに、HBaseのようなビッグデータ・データベースに保存されたソーシャルデータは、既に処理され、特定の基準に基づいてソートされている。さらに、ソーシャルネットワークから新規のソーシャルデータを受信したときには常に、そのソーシャルデータは、上述した事前処理手順及び処理手順に続いて、最終的にビッグデータ・データベースに保存された直後、さらにソートされる。このようにして、クライアントから特定のカテゴリのソーシャルデータの要求があるときにはいつでも、ソーシャルデータのそのカテゴリは、データベースから既に使用可能であるかまたは殆ど使用可能である。この結果、本発明のユーザ体験は、大きく改善される。
【0024】
より詳細には、上述したように、新規のソーシャルデータが、上述した事前処理手順、機械学習手順、及びさらなる処理手順を経て、ビッグデータ・データベースに保存された直後、この新規のソーシャルデータに含まれる属性が抽出される。この属性は、トピック(ソーシャルデータの主題)、位置(このソーシャルデータの生成源の物理的位置。生成源は、携帯電話であってもよい)、人(このソーシャルデータで言及されている人)、画像(このソーシャルデータに含まれる画像。この画像は、ユニフォームリソースロケータ(URL)によって表される)を含む。但し、この属性は、上述したカテゴリに限定されない。本発明は、任意の適切なカテゴリ、トピック、または基準を含むものである。
【0025】
上述したように、本発明において、ソーシャルデータは、ジオマップまたはジオマップのタイル中に提示される。したがって、新規のソーシャルデータから抽出された位置属性は、先ず、地図の様々に異なるズームレベルでのタイルを発見するために使用される。現在、ジオマップは、通常、23段階のズームレベルを有している。すなわち、ジオマップ上のそれぞれの位置に対して、その位置を含む複数の(例えば、23の)ジオマップがあり、これらの複数のジオマップは、異なる範囲及び異なる解像度を有している。例えば、米国議会議事堂の位置は、キャピトルヒルの範囲にわたるジオマップ、ワシントンDC地域のジオマップ、バージニア州、ワシントンDC、及びメリーランド州の範囲にわたるジオマップ、米国東海岸地域の範囲にわたるジオマップ、等々中に存在する。一方、それぞれのジオマップは、複数の異なるタイルに分割される。上記の説明に基づけば、それぞれの位置属性について、その位置属性が複数のジオマップのタイル中に含まれることが分かる。全体で23段階のズームレベルがある場合、個々の位置のそれぞれについて、その位置は23のジオマップのタイル中に含まれる。例えば、米国議会議事堂の位置は、キャピトルヒルのジオマップのタイルに含まれ、ワシントンDC地域のジオマップのタイル等にも含まれる。ここで、上述した23段階のズームレベルは、この分野における従来の方法に過ぎない。ジオマップのそれぞれの解像度に基づいて、より少数または多数のズームレベルを有することもでき、それらの全ては本発明の範囲に含まれる。
【0026】
さらに、それぞれのジオマップのそれぞれのタイル上に、(位置属性に基づいて)このタイル中にカテゴリ分けされたソーシャルデータの属性が計数され、次いでソートされる。トピックの属性については、そのソーシャルデータは、1つのタイル内に、多くの異なるトピックを有することができ、それぞれのトピックは、固有の頻度(カウント数)を有する。例えば、図3Aを参照して、1つのタイルにおいて、そのソーシャルデータは、パーティ、会合、誕生日等々の異なるトピックを有することができ、パーティのトピックは10回言及され、会合のトピックは6回言及され、誕生日のトピックは4回言及されている。したがって、個々のトピックそれぞれの上記頻度(カウント数)に基づいて、これらの個々のトピックがソートされる。例えば、パーティのトピックは最上層に、会合は中間層に、誕生日は最下層にソートされる。
【0027】
要約すると、ジオマップのそれぞれのタイル中に、トピック、人、画像等の異なる複数の属性カテゴリが存在する。それぞれの属性カテゴリについて、それぞれのカウント数または頻度に基づく個々の属性のソートが実施される。さらに、仮に、2つの個別のトピックが同じ頻度を有するものとする。例えば、会合のトピックと誕生日のトピックの両方のカウント数が5であるとする。この場合、1つのタイル中で同じ頻度を備える個々のトピックは、その最新の計数の実施の時刻に基づいてソートされる。上述した例では、図3Bを参照して、最新の会合のトピックを含むソーシャルデータが午前10時に受信され、最新の誕生日のトピックを含むソーシャルデータが午前10時5分に受信された場合、誕生日のトピックは、それが受信された最新のソーシャルデータ中のものであるため、会合のトピックの上層にソートされる。
【0028】
ジオマップ及びタイル情報と共に、上述した計数情報及びソート情報の全てが、本発明に係るビッグデータ・データベースを有するサーバに保存される。本発明の一実施形態において、上述した手順の全てが、作成されたコプロセッサによって実行される。
【0029】
したがって、新規のソーシャルデータの位置属性は、この新規のソーシャルデータを、ジオマップのそれぞれのズームレベルで、対応するジオマップのタイルにカテゴリ分けするために使用される。次いで、属性カテゴリのうちの抽出された新規の個別の属性(例えば、トピック、人、画像)に基づいて、新規のソーシャルデータは、それぞれ対応する個別のカテゴリの計数に追加される。例えば、図3Cを参照して、新規に受信したソーシャルデータが、位置情報、個々の会合のトピック、個人(例えば、オバマ)についての言及(メンション)を有しているものとする。この場合、その位置情報が属するそれぞれのタイル中で(それぞれのズームレベルでこのソーシャルデータが属する1つのタイルがある。したがって、23段階のズームレベルがある場合、それぞれの新規のソーシャルデータは、異なる複数のジオマップ中の少なくとも23のタイルに属する。)、対応する個々のカテゴリ、会合及びオバマについて、それらの頻度に1が加えられる。例えば、会合について、カウント数は5+1で6となり、今度は、トピックのカテゴリにおいて会合のトピックが誕生日のトピックの上層にソートされる。
【0030】
上述したように、新規のソーシャルデータが受信されたときにはいつでも、それに応じて、対応する個々の属性の対応する計数及びソートが更新される。このように、ビッグデータ・データベース中に保存されるソーシャルデータは、クライアントの将来の要求に対して適切に準備された状態にある。この結果、クライアントまたは装置のユーザは、本発明を使用した装置を用いることにより、望ましくかつ円滑な体験をすることができる。上述した全ての手順において、ソーシャルネットワークから受信されたソーシャルデータは、処理されて将来の使用のために保存される。
【0031】
さらに、図2に示すように、ユーザがクライアント201を介して要求を実行すると、クライアントからの要求は、先ずアプリケーションサービス202(例えば、マップエンジンであってもよい)に送信され、アプリケーションサービスは、さらに、メインサーバに対する要求を実行する。ここで、クライアント201は、携帯電話のような携帯装置上で実行されるアプリケーションであってもよく、または、コンピュータによってアクセスされるウェブサイトであってもよい。この手順の後、メインサーバは、先ずそのキャッシュを検査し、メインサーバのキャッシュに保存されている対応する処理後のソーシャルデータを取得する。さらに、メインサーバは、ビッグデータ・データベースに対して要求を実行し、ビッグデータ・データベースから他の対応する処理後のソーシャルデータを取得する。ビッグデータ・データベースは、様々な異なる場所にある複数の異なるサーバに分散されて保存されている
【0032】
さらに、取得された対応する処理後のソーシャルデータは、クライアントによって受信され、クライアント上で表示または再生(音データまたは動画データ)される。実時間のマップエンジンによって、それぞれのタイル中に集約されかつ処理されるソーシャルデータが地図上に表示され、本発明に係るソーシャルマップが生成される。例えば、タイルは、特定の位置における最も人気のあるソーシャル情報(画像、コメント、レビュー、タグ等)を示すものであってもよい。本発明に係るソーシャルマップで使用されるタイルは、階層構造を有している。すなわち、タイルは、複数の異なる層をなすように編成されている。ユーザがズームインを実行すると、現行の大きなタイルが複数の小さな下位レベルのタイルに分割される。最上位レベルのタイルは、最も人気のある、または最も代表的なコンテンツを表示し、一方、その次の下位のレベルのタイルは、その下位レベルの複数のタイルのそれぞれに対して編成された、最も人気のある、または最も代表的なコンテンツを表示する。ズームインに続いて、1片のタイルは、複数の下位のタイルに分割される。
【0033】
さらに、上述したように、実時間機能は、本発明に係るソーシャルマップの重要な特徴である。本発明の実時間機能は、収集され、分析され、そして表示される全てのソーシャルデータが実時間のソーシャルデータであることを含むだけでなく、個々のユーザに対して特定のソーシャルマップが表示されているとき、彼/彼女の視聴時間中に、それぞれのソーシャルマップ中に含まれる特定のソーシャル情報が更新された場合、更新データをそれぞれのソーシャルマップにプッシュすることによって、そのソーシャルマップが直ちに更新されることを含むものである。したがって、集約され/処理されたソーシャルデータが変更されたときは常に、関連するソーシャルマップまたはそのソーシャルマップの特定のタイルが、実時間で更新される。
【0034】
加えて、本発明に係るソーシャルマップによって、ユーザは、特定のソーシャル属性(例えば、@Starbucks)を検索し、ソーシャルマップ上の各タイルのホット値を見ることができる。トレンドハッシュタグのようなそれぞれの特定のソーシャル属性に対して、ソーシャルマップも、関連するマップタイルに基づいて、そのソーシャル属性に関連する全てのソーシャル情報を表示することができる。ソーシャル情報は、例えば、特定のマップタイル内でそのトレンドハッシュタグ(@Starbucks)の全てのツイートである。このように、実時間のソーシャルマップは、そのユーザに複数の便利かつ有用な機能を提供することができる。
【0035】
以上、本発明を好ましい実施形態に関連させて説明したが、本発明の思想から逸脱することなく、多くの他の修正及び変形をすることが可能である。
図1
図2
図3A
図3B
図3C
図4
図5