JP2022020737A - ストリームデータにおける空間変化検出器 - Google Patents
ストリームデータにおける空間変化検出器 Download PDFInfo
- Publication number
- JP2022020737A JP2022020737A JP2021179468A JP2021179468A JP2022020737A JP 2022020737 A JP2022020737 A JP 2022020737A JP 2021179468 A JP2021179468 A JP 2021179468A JP 2021179468 A JP2021179468 A JP 2021179468A JP 2022020737 A JP2022020737 A JP 2022020737A
- Authority
- JP
- Japan
- Prior art keywords
- data stream
- continuous data
- geometry
- event
- stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000008859 change Effects 0.000 title claims description 37
- 238000000034 method Methods 0.000 claims abstract description 114
- 238000012545 processing Methods 0.000 claims abstract description 96
- 238000001914 filtration Methods 0.000 claims description 7
- 208000033748 Device issues Diseases 0.000 claims description 3
- 238000005304 joining Methods 0.000 claims description 3
- 238000005192 partition Methods 0.000 abstract description 37
- 238000004422 calculation algorithm Methods 0.000 abstract description 14
- 230000008569 process Effects 0.000 description 54
- 238000003860 storage Methods 0.000 description 43
- 238000007726 management method Methods 0.000 description 30
- 238000010586 diagram Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 21
- 230000009471 action Effects 0.000 description 15
- 238000001514 detection method Methods 0.000 description 15
- 238000012544 monitoring process Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 238000011161 development Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 239000011521 glass Substances 0.000 description 5
- 230000010354 integration Effects 0.000 description 5
- 238000013403 standard screening design Methods 0.000 description 5
- 230000001174 ascending effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- MROJXXOCABQVEF-UHFFFAOYSA-N Actarit Chemical compound CC(=O)NC1=CC=C(CC(O)=O)C=C1 MROJXXOCABQVEF-UHFFFAOYSA-N 0.000 description 3
- 244000046052 Phaseolus vulgaris Species 0.000 description 3
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013523 data management Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000000875 corresponding effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000004513 sizing Methods 0.000 description 2
- 230000029305 taxis Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 240000005020 Acaciella glauca Species 0.000 description 1
- 241000238558 Eucarida Species 0.000 description 1
- 102000014160 PTEN Phosphohydrolase Human genes 0.000 description 1
- 108010011536 PTEN Phosphohydrolase Proteins 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000009529 body temperature measurement Methods 0.000 description 1
- 208000018747 cerebellar ataxia with neuropathy and bilateral vestibular areflexia syndrome Diseases 0.000 description 1
- 238000002591 computed tomography Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000002595 magnetic resonance imaging Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000002600 positron emission tomography Methods 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 235000003499 redwood Nutrition 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 238000012358 sourcing Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24568—Data stream processing; Continuous queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2237—Vectors, bitmaps or matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2272—Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
Abstract
Description
本願は、2016年9月15日に出願され、「AUTOMATIC PARALLELIZATION FOR GEOFENCE APPLICATIONS(ジオフェンスアプリケーションのための自動並列化)」と題された米国仮出願第62/395,204号に基づく優先権および利益を主張するものであり、当該出願のすべての記載内容を、あらゆる目的のために引用により本明細書に援用する。
従来のデータベースシステムでは、データは、通常、1つ以上のデータベースにテーブルの形で格納される。その後、格納されたデータは、構造化問い合わせ(クエリ)言語(SQL:Structured Query Language)などのデータ管理言語を用いて問い合わせおよび処理される。たとえば、SQLクエリを定義、実行し、データベースに格納されたデータから関連性のあるデータを特定してもよい。よって、SQLクエリは、データベースに格納された有限な一連のデータに対して実行される。さらに、SQLクエリが実行されるとき、SQLクエリは、有限なデータセットに対して1回実行され、有限で静的な結果を作成する。よって、データベースは、有限な格納データセットに対してクエリを実行するのに最適である。
イベントストリームのイベントを処理するための技術を提供する(たとえば、方法、シ
ステム、1つ以上のプロセッサによって実行可能なコードまたは命令を格納した非一時的なコンピュータ読み取り可能な媒体)。1つ以上のコンピュータを備えるシステムは、システムにアクションを実行させるソフトウェア、ファームウェア、ハードウェア、または、それらの組合せがシステム上にインストールされていることにより、特定の動作またはアクションを実行するように構成され得る。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると装置にアクションを実行させる命令を含んでいることにより、特定の動作またはアクションを実行するように構成され得る。包括的な一態様は、連続データストリームを処理するための方法を含み、当該方法は、コンピューティングデバイスが、アプリケーションに関する連続データストリームを受信するステップを含む。また、方法は、コンピューティングデバイスが、連続データストリームのジオメトリをリレーションに変換するステップを含む。また、方法は、コンピューティングデバイスが、連続データストリームに含まれる複数の移動オブジェクトを追跡するステップを含む。また、方法は、コンピューティングデバイスが、リレーションおよび連続データストリームのジオメトリに少なくとも基づいて、複数の移動オブジェクトに含まれる、少なくとも第1の移動オブジェクトと第2の移動オブジェクトとの近接を判断するステップを含む。また、方法は、少なくとも第1の移動オブジェクトと第2の移動オブジェクトとの近接が予め定められた閾値を超えた場合、アラートを生成するステップを含む。
タストリームのジオメトリの空間インデックスを含む、システム。システムは、コンピューティングデバイスが、範囲を用いて空間インデックスにフィルタを適用して連続データストリームのジオメトリについてのフィルタ処理された結果を取得することをさらに含み、近接を判断することは、フィルタ処理された結果を用いて第1の移動オブジェクトと第2の移動オブジェクトとの距離を算出することを含む。システムは、コンピューティングデバイスが、連続データストリームのジオメトリに変更があるかどうかを判断することと、コンピューティングデバイスが、連続データストリームのジオメトリに変更があった場合、更新イベントを発行することとをさらに含む。更新イベントは、挿入操作、削除操作、および更新操作をサポートするメモリ内キャッシュ上で発行される,システム。システ
ムは、結合演算を用いてコンピューティングデバイスが、連続データストリームのジオメトリとリレーションとを結合することをさらに含む。追跡することは、少なくとも第1の移動オブジェクトの第2の移動オブジェクトに対する関係を追跡するための空間演算を用いて実行される、システム。記載の技術の実装形態は、ハードウェア、方法もしくはプロセス、または、コンピュータによってアクセス可能な媒体上のコンピュータソフトウェアを含んでもよい。
はプロセス、または、コンピュータによってアクセス可能な媒体上のコンピュータソフトウェアを含んでもよい。
以下の説明において、様々な実施形態を説明する。説明の便宜上、実施形態の十分な理解のために具体的な構成および詳細を説明する。しかしながら、実施形態が具体的な詳細なしに実施され得ることは、当業者に明らかになるだろう。さらに、記載の実施形態を曖昧にしてしまわないように、周知の特徴は省略または簡略化される場合がある。
複合イベント処理(CEP)は、イベント駆動型アーキテクチャに基づいてアプリケーションを構築するためのモジュラープラットフォームを提供する。CEPプラットフォームの中心にあるのは、連続問い合わせ(クエリ)言語(CQL:Continuous Query Language)である。CQLによって、アプリケーションは、SQLのような宣言型言語を用いてデータのストリームに対してフィルタ処理、問い合わせ、およびパターンマッチング動作を実行できるようになる。開発者は、軽量Java(登録商標)プログラミングモデルと合わせてCQLを使用してアプリケーションを書いてもよい。他のプラットフォームモジュールとして、一例を挙げると、機能が豊富なIDE、管理コンソール、クラスタリング、分散キャッシング、イベントリポジトリ、モニタリングな
どがある。
イベントがそれらの関連する時間情報に基づいて順序付けされることを可能にしてもよい。この順序付けを可能にするために、後に生成されるイベントが、前に生成されたイベントよりも後のタイムスタンプを有するよう、イベントストリームに含まれるイベントにタイムスタンプが非降順で関連付けられてもよい。別の例として、時間情報としてシーケンス番号が利用されている場合、後に生成されるイベントに関連付けられるシーケンス番号は、それよりも前に生成されたイベントに関連付けられるシーケンス番号よりも大きくてもよい。いくつかの例では、たとえば、データストリームイベントが表す世俗的イベントが同じ時間に発生した場合、複数のイベントが同じタイムスタンプまたはシーケンス番号に関連付けられてもよい。同じイベントストリームに属するイベントは、一般に、関連する時間情報がイベントに設定した順序で処理されてもよく、前のイベントが後のイベントよりも前に処理される。
symbol>(銘柄記号)と<stock price>(株価)とを含んでもよい。このようなストリームを介して受信された各イベントは、1つのタイムスタンプと2つの属性とを有することになる。たとえば、チッカーイベントストリームは、以下のイベントおよび関連するタイムスタンプを受信してもよい。
(<timestamp_N>,<NVDA,4>)
(<timestamp_N+1>,<ORCL,62>)
(<timestamp_N+2>,<PCAR,38>)
(<timestamp_N+3>,<SPOT,53>)
(<timestamp_N+4>,<PDCO,44>)
(<timestamp_N+5>,<PTEN,50>)
…
上記のストリームでは、ストリーム要素(<timestamp_N+1>,<ORCL,62>)について、イベントは、<ORCL,62>であり、属性「stock_symbol」および「stock_value」を有する。ストリーム要素に関連付けられたタイムスタンプは、「timestamp_N+1」である。よって、連続イベントストリームは、イベントのフローであり、各イベントは同じ一連の属性を有する。
)であってもよく、「s」は、Sのスキーマに含まれ、「T」は、時間ドメインに含まれる。これに加えて、ストリーム要素は、タプルとタイムスタンプとのペアであってもよく、タイムスタンプが記録されたタプル挿入のシーケンスとして表され得る。つまり、ストリームは、タイムスタンプが記録されたタプルのシーケンスであってもよい。場合によっては、同じタイムスタンプを有する2つ以上のタプルがあってもよい。そして、入力ストリームのタプルは、タイムスタンプの昇順でシステムに到着する必要があってもよい。これに代えて、リレーション(「時間変化リレーション」とも称す。リレーショナルデータベースからのデータを含み得る「リレーショナルデータ」と混同しないこと。)は、時間ドメインからスキーマRの無限のタプルバッグへのマッピングであり得る。いくつかの例では、リレーションは、順序付けされていない、時間で変化するタプルバッグ(すなわち、瞬間のリレーション)であってもよい。場合によっては、各時間において、リレーションは、有界集合であってもよい。リレーションは、リレーションが変化する状態を捉えるために挿入、削除、および/または更新を含み得る、タイムスタンプが記録されたタプルのシーケンスとして表すこともできる。ストリームと同様に、リレーションは、リレーションの各タプルが準拠し得る固定スキーマを有してもよい。さらに、本明細書で使用するとき、連続クエリは、一般に、ストリームおよび/またはリレーションのデータを処理することが可能であってもよい(すなわち、問い合わせされる)。これに加えて、リレーションは、ストリームのデータを参照してもよい。
エリがアーカイブされたリレーションに基づいていることを示す当該クエリをCQLエンジンが確認した場合、そのアーカイブされたリレーションは、たとえば、過去のコンテキストを問い合わせするためにリレーションが呼び出すことができる特定のエンティティがあることも示してもよい。いくつかの例では、データ定義言語(DDL:Data Definition Language)は、これらに限定されないが、問い合わせをどのように行うか、テーブルにおいて重要なカラムはどれであるか、および/または残りのデータの送リ先など、アーカイブされたリレーションについての注釈を示してもよい。いくつかの例では、CQLエンジンにおいてクエリが組み立てられると(たとえば、グラフとして)、システムは、質問グラフを分析してもよい。これに加えて、いくつかの態様では、「distinct」、「group aggr」、「pattern」、および/または「group by」のような、ステートフルな特定の演算子がある。しかしながら、ステートレスな演算子は、入力を取ってそれを親、たとえば、下流の演算子に送るだけであろう。ついては、1つの手法は、このテーブル全体をここに記憶することである。しかしながら、アーカイブされたリレーションを利用して、システムは、質問グラフを分析して、アーカイブを問い合わせするのに使用できる最下位のステートフル演算子がどれであるかを決めてもよい。いくつかの例では、システム(または、1つ以上のコンピュータにより実現される方法)は、グラフを横断しながら到達した最下位のステートフル演算子での状態を検索してもよい。たとえば、質問グラフは、ソースからトポロジー順に分析されてもよい。この最初のステートフル演算子の少なくとも一部に基づいて、CQLエンジンは、アーカイブされたリレーションに対して定義されたクエリの演算子の状態を初期化するために、フェッチするデータの最適な量を決定してもよい。
)、DSTREAM(すなわち、削除ストリーム)、およびRSTREAM(すなわち、リレーションストリーム)が、リレーションからストリームへの演算子である。いくつかの例では、ユーザ、開発者、および/または管理者は、クエリエンジンまたはクエリエンジンを操作もしくはホストしている1つ以上のコンピューティングシステムが提供するウィンドウサイズを(たとえば、UIを介して)設定してもよい。いくつかの例では、ストリーム上のウィンドウは、時間ベースの範囲ウィンドウであってもよい。たとえば、アーカイブされたリレーション上の構成可能な値ウィンドウは、ウィンドウサイズ、およびウィンドウが算出される属性を用いて指定されてもよい。アーカイブされたリレーション上で指定された構成可能な値ウィンドウがある場合、スナップショットクエリが計算されてもよく、ウィンドウ制限内のスナップショットタプルが出力されてもよい。これに加えて、状態の初期化後、値ウィンドウは、受信アクティブデータに適用されてもよい。いくつかの例では、ウィンドウ属性の値がウィンドウサイズよりも小さい、現在のイベント時刻とは異なるウィンドウに、受信アクティブデータだけが挿入されることになる。
ていなくてもよい。待ち受けサービスは、待ち受けることができるだけであり、何かが起こると、待ち受けサービスはそれが聞こえてもよい。いくつかの例では、これが、たとえば顧客から持続性が切り離される方法である。これに加えて、いくつかの例では、アラートエンジンは、アラートエンジンが聞いた内容、場合によっては、そしてさらにはリスナーに関連性のあるプロセスクエリを待ち受けている可能性のあるSQLエンジンに基づいてアラートを挙げてもよい。
着してもよい。CQLエンジンに入ってくるイベントはソース演算子(複数可)に到達し、最終的に、これらのイベントに処理を実行して適切な出力イベントを生成する方法で、演算子とともに下流に移動する。
RAWインフラストラクチャおよびビジネスイベントの量および速度は、IT環境において急激に増加している。それが金融サービスの株式データをストリーミング配信していようと、軍用衛星データまたは運送/ロジスティクス業のリアルタイム車両位置データをストリーミング配信していようと、複数の業界の企業は、大容量の複合データをリアルタイムで処理しなければならない。これに加えて、モバイル機器の急激な増加および高速接続性の偏在性がモバイルデータの急激な増加を増大させる。同時に、ビジネスプロセスの俊敏性および実行の需要も増えている。これらの2つの傾向が、実装のイベント駆動型アーキテクチャパターンをサポートする能力を上げるよう、組織に圧力をかけている。リアルタイムイベント処理は、イベント処理要件を実行するためのインフラストラクチャおよびアプリケーション開発環境の両方を必要とする。これらの要件は、日々のユースケースから、潜在的に、数秒の応答時間ではなく、マイクロ秒で計測されるレイテンシを有する非常に高速のデータおよびイベントスループットまで拡大する必要性を含んでいる場合が多い。これに加えて、イベント処理アプリケーションは、これらのイベントのフローに含まれる複雑なパターンを検出しなければならないことが多い。
ITシステム:障害が発生しているアプリケーションまたはサーバをリアルタイムで検出し、修正措置を作動させる能力。
互いに接続されるデバイスの数が増えるにつれてデータが急激に増加することにより、組織内を移動するデータだけでなく、ファイアウォール外を移動するデータについても動的に変化するデータが大量に増えている。高速データは、特に変動が激しいビジネスプロセスにとって大きな価値がある。しかしながら、このデータのうちのいくつかは、短時間でその運用価値が失われてしまう。ビッグデータを利用すれば、実用的な洞察を行うため
の処理を時間をかけて行うことができる。一方では、ファストデータ(Fast Data)の場合、非常に動的かつ戦略的なデータから最大限の価値を引き出す必要がある。ファストデータは、さらに高速な処理が必要とされ、生成されたデータにできるだけ近いタイムリーなアクションを取ることができるようになる。Oracle Stream Analyticsプラットフォームは、応答性が向上したファストデータを実現することができる。Oracle Edge Analyticsでは、ネットワークエッジに処理がプッシュされ、データを相関分析、フィルタ処理、および分析して、実用的な洞察をリアルタイムで行うことができる。
全に互換性があり、ANSI SQLの審査を受けたリアルタイムの連続クエリパターンマッチングのための標準SQLの拡張機能をサポートした業界初の製品であった。CQLエンジンによって、プロセッサ内のクエリの実行が最適化されるので、開発者は、最適化よりもビジネスロジックに集中することができる。
きる。標準の業界用語を利用してイベントソース、プロセッサ、およびイベント出力またはイベントシンクを記述することにより、このプラットフォームは、アプリケーション内のイベントを定義および操作するためのメタデータ駆動型の手法を提供する。その開発者は、アプリケーション設計のための視覚的な、方向付きのグラフ・キャンバスおよびパレットを使用して、イベント間およびデータソース間のイベントおよび処理のフローの概略を素早く作成することができる。開発者は、ドラッグ・アンド・ドロップモデルと構成ウィザードとによってこのフローを作成し、適切なメタデータ定義を入力して、設計を実装に結びつけることができる。開発者は、必要性や好みに応じて、ワンクリックで、カスタムJavaコード開発に変更したり、Spring(登録商標)フレームワークを用いて最新の概念をアプリケーションに直接コーディングしたりすることができる。
自動車交通量監視などのアプリケーションでは、データは、連続データストリームの形である。連続データストリームは、はっきりとした終端範囲なしでストリーム処理サーバに到着するデータのストリームである。連続データストリームを処理することによって、アプリケーションは、複雑なパターン、イベント間の相関関係、およびイベント間の関係を検出できる。たとえば、連続データストリームは、高速道路の特定の区画を通過する車についての情報を有していてもよい。自動車は、位置座標を継続的に送ることができる。このデータストリームに基づいて、車両台数と他の車両を利用している人の数との「m」対「n」関係をソリューションが処理する必要がある状況において自動車の位置の近くにいる人を検出するなどの問題、または、車両台数が百万台にわたるときの問題を解決してもよい。
Partitioner)110、および空間クエリプロセッサ(SQP:Spatial Query Processor)115。空間クラスタジェネレータ105コンポーネントは、継続的にK-MeansまたはDBSCANなどの空間クラスタアルゴリズムを漸進的に実行して、入力ジオメトリからジオメトリクラスタを作成するように構成されてもよい。出力(クラスタジオメトリおよびクラスタに含まれるジオメトリの数)は、クラスタベース・パーティショナ110に送られてもよい。クラスタベース・パーティ
ショナ110コンポーネントは、入力ジオメトリをパーティション分割して、どのジオメトリがどのパーティションに行くかを決定するように構成されてもよい。いくつかの実施形態では、クラスタベース・パーティショナ110は、パーティションサイズを動的に変更する役割がある。空間クエリプロセッサ115コンポーネントは、空間クエリを処理する。一例として、空間カートリッジ(Spatial Cartridge)を有するCQLEngineがある。各空間クエリプロセッサ115コンポーネントは、1つ以上のパーティションを処理するように構成されてもよい。図1に示すコンポーネントのうちの1つ以上は、ソフトウェアで、ハードウェアで、またはそれらの組合せで実現されてもよい。いくつかの実施形態では、ソフトウェアは、メモリ(たとえば、非一時的なコンピュータ読み取り可能な媒体)に、メモリ素子または他の物理メモリ上に格納されてもよく、1つ以上の処理装置(たとえば、1つ以上のプロセッサ、1つ以上のプロセッサコア、1つ以上のGPUなど)によって実行されてもよい。
ティションを決定してもよい。いくつかの実施形態では、CBPのパーティションアルゴリズムは、次の処理を含んでもよい。(i)クラスタ変更検出、(ii)クラスタ削除、(iii)パーティションの変更、および(iv)入力ジオメトリへのパーティション識別子の割り当て。これらの処理はさらに詳細に後述する。ステップ240において、出力ジオメトリの1つ以上のパーティションのサイズを動的に変更してもよい。ステップ245において、連続データストリームに関連付けられた出力ジオメトリを、1つ以上のパーティションのサイズが動的に変更された状態で送信してもよい。
対応付けてもよい。特定の実施形態では、クラスタ削除アルゴリズムは、パーティションIDの入力ジオメトリへの割り当てをさらに含んでもよい。パーティション識別子の割り当ては、RTreeでクラスタを探索し、範囲比較によってグリッドを見つけ、インデックステーブルをパーティション分割するためのグリッドインデックスをルックアップすることによって行われてもよい。よって、本開示の実施形態は、空間クラスタリングとグリッドパーティション分割とを組合せた空間クラスタリングアルゴリズムを用いてパーティションのサイズを動的に決定するための技術を提供する。さらに、ジオメトリのストリームからパーティションおよびグリッドサイズを動的に変更するための技術を開示する。
本開示の実施形態は、ストリームに含まれる移動オブジェクトの近接検出およびチェックを実行する技術を提供する。様々な実施形態では、移動オブジェクトを追跡でき、2つの以上の移動オブジェクトが互いに近接している場合にアラートを作成できる空間変化検出器が開示されている。たとえば、空間変化検出器は、空港にある移動オブジェクトを追跡し、それらが所与の範囲内に接近しないようにすることができる。
・オブジェクトの「booked」プロパティがtaxiCacheにおいて「false」であるかどうかをチェックし、「booked」プロパティをtrueに設定し、trueを返し、エントリを変更することの副作用を作成しつつ、フィルタを結果に適用することができる。
CQLEngineがシングルトンのCacheを作成する。
Cache-変更を検知するための通常操作
if (get(key) == null) {
put
add(new TupleValue(PLUS, ...))
} else {
put
add(new TupleValue(UPDATE, ...)
}
if (expiredTupleQueue.size > 0) {
待ち行列からすべてのタプルを削除して削除
add(new TupleValue(MINUS, ...)
}
キャッシュは、タイマを開始してタプルを自己満了させ、満了したタプルを待ち行列expiredTupleQueueに追加する
キャッシュは、CheckAndSet操作も有する
value = get(key)
if (value.getProperty(property) != newValue)
value.setProperty(property, newValue)
return true
else return false
このように、上記技術を用いて、開示の空間変化検出器は、ジオメトリデータストリームに対する空間「withindistance」演算がより高速で実行されることを可能にし、開示のチェック・セット操作は、アービトレーションにCQLを提供することを可能にする。上記技術を用いて、移動オブジェクトの近接チェックおよび要求・派遣システムなどのジオ・ストリーミングのユースケースを実施することができる。
ソース904から第1の入力イベントストリーム914を受信し、イベントソース906から第2の入力イベントストリーム916を受信し、イベントソース908から第3のイベントストリーム918を受信する。1つ以上のイベント処理アプリケーション(920、922、および924)がEPS902上でデプロイされてEPS902によって実行されてもよい。EPS902が実行するイベント処理アプリケーションは、1つ以上の入力イベントストリームを待ち受けて、入力イベントストリームから1つ以上のイベントを注目イベントとして選択する処理ロジックに基づいて1つ以上のイベントストリームを介して受信したイベントを処理するように構成されてもよい。次に、注目イベントが1つ以上の出力イベントストリームの形で1つ以上のイベントシンク(910、912)に送られてもよい。たとえば、図9において、EPS902は、第1の出力イベントストリーム926をイベントシンク910に出力し、第2の出力イベントストリーム928をイベントシンク912に出力する。特定の実施形態では、イベントソース、イベント処理アプリケーション、およびイベントシンクは、1つのコンポーネントがその他のコンポーネントに変更を生じさせずにこれらのコンポーネントのうちのいずれかを追加または削除できるよう、互いから切り離される。
(1)入出力ストリーム、ならびに、リレーションソースおよびリレーションシンクに直接インタフェース接続される1つ以上のアダプタ。アダプタは、入出力ストリームプロトコルを理解するように構成され、かつ、アプリケーションプロセッサが問い合わせし得る正規化された形式にイベントデータを変換する責任がある。アダプタは、正規化されたイベントデータをチャネルまたは出力ストリームおよびリレーションシンクに転送してもよい。イベントアダプタは、様々なデータソースおよびデータシンク用に規定されてもよい。
(2)イベント処理エンドポイントとして機能する1つ以上のチャネル。特に、チャネルは、イベント処理エージェントがイベントデータに対して作用できるようになるまで当該イベントデータを待ち行列に入れる責任がある。
(2)1つ以上のアプリケーションプロセッサ(または、イベント処理エージェント)は、チャネルからの正規化されたイベントデータを消費し、それをクエリを用いて処理して
注目イベントを選択し、選択された注目イベントを出力チャネルに転送する(または、コピーする)ように構成される。
(4)1つ以上のBeanは、出力チャネルを待ち受けるように構成され、新しいイベントが出力チャネルに挿入されることによりトリガされる。いくつかの実施形態では、このユーザコードは、POJO(Plain-Old-Java-Object)である。ユーザアプリケーションは、JMS、Webサービス、およびファイルライターなど、外部サービスのセットを利用して、生成されたイベントを外部のイベントシンクに転送することができる。
(5)イベントBeanは、出力チャネルを待ち受けるために登録されてもよく、新しいイベントが出力チャネルに挿入されることによりトリガされる。いくつかの実施形態では、このユーザコードは、BeanをOracle CEPで管理できるように、Oracle CEPイベントBean APIを利用してもよい。
相当してもよい。プロセスが関数に相当する場合、その終了は、呼び出し関数またはメイン関数へのこの関数の戻りに相当してもよい。
とを含んでもよい。
図11~図13は、様々な実施形態に係る本開示の態様を実現するための例示的な環境の態様を説明する図である。図11は、本開示の実施形態を実現するための分散システム1100の簡略図である。図示した実施形態では、分散システム1100は、1つ以上のクライアントコンピューティングデバイス1102、1104、1106、および1108を備える。1つ以上のクライアントコンピューティングデバイス1102、1104、1106、および1108は、1つ以上のネットワーク(複数可)1110でウェブブラウザ、プロプライエタリ・クライアント(たとえば、Oracle Forms)などのクライアントアプリケーションを実行および操作するように構成される。サーバ1112は、ネットワーク1110を介して、リモートクライアントコンピューティングデバイス1102、1104、1106、および1108と通信可能に接続されてもよい。
たは1108は、様々な種類のコンピュータシステムを含んでもよい。たとえば、クライアントデバイスは、Microsoft Windows Mobile(登録商標)などのソフトウェアおよび/またはiOS、Windows(登録商標)Phone、Android、BlackBerry 10、Palm OSなどのいろいろなモバイルオペレーティングシステムを実行する手のひらサイズのポータブルデバイス(たとえば、iPhone(登録商標)、携帯電話、iPad(登録商標)、コンピューティングタブレット、携帯情報端末(PDA))またはウェアラブルデバイス(たとえば、Google
Glass(登録商標)ヘッドマウントディスプレイ)を含んでもよい。デバイスは、様々なインターネット関連アプリ、電子メール、ショートメッセージサービス(SMS)アプリケーションなど、様々なアプリケーションをサポートしてもよく、様々な他の通信プロトコルを使用してもよい。また、クライアントコンピューティングデバイスは、一例として、様々なバージョンのMicrosoft Windows(登録商標)、Apple Macintosh(登録商標)、および/またはLinux(登録商標)オペレーティングシステムを実行するパーソナルコンピュータおよび/またはラップトップコンピュータを含む、汎用パーソナルコンピュータを含んでもよい。クライアントコンピューティングデバイスは、これらに限定されないが、たとえば、Google Chrome
OSなど、いろいろなGNU/Linux(登録商標)オペレーティングシステムを含む、流通している各種のUNIX(登録商標)またはUNIX(登録商標)に似たオペレーティングシステムを実行するワークステーションコンピュータであり得る。また、クライアントコンピューティングデバイスは、シンクライアントコンピュータ、インターネット対応のゲーミングシステム(たとえば、Kinect(登録商標)ジェスチャ入力装置付きまたは無しのMicrosoft Xboxのゲーミングコンソール)、および/またはパーソナルメッセージングデバイスなど、ネットワーク(複数可)1110で通信可能な電子機器を含んでもよい。
どを含む)、サーバファーム、サーバクラスタ、またはその他の適切な配置および/または組合せから構成されてもよい。サーバ1112は、仮想オペレーティングシステムを実行している1つ以上の仮想マシン、または仮想化を伴う他のコンピューティングアーキテクチャを含み得る。論理記憶装置の1つ以上のフレキシブルプールを仮想化して、サーバ用の仮想記憶装置を維持することができる。仮想ネットワークは、ソフトウェア定義ネットワーキングを使用して、サーバ1112によって制御することができる。様々な実施形態において、サーバ1112は、上記の開示において説明した1つ以上のサービスまたはソフトウェア・アプリケーションを実行するようになされてもよい。たとえば、サーバ1112は、本開示の実施形態に係る上述した処理を実行するためのサーバに相当してもよい。
新、および取り出すようになされたOracleが提供するデータベースなど、リレーショナルデータベースを含んでもよい。
速化装置1206が提供されてもよい。
を格納するための有形の非一時的なコンピュータ読み取り可能な記憶媒体を提供する。処理サブシステム1204によって実行されると上述の機能を提供するソフトウェア(プログラム、コードモジュール、命令)がストレージサブシステム1218に格納されてもよい。ソフトウェアは、処理サブシステム1204の1つ以上の処理装置によって実行されてもよい。また、ストレージサブシステム1218は、本開示に応じて使用されるデータを格納するためのリポジトリを提供してもよい。
Access Memory)など、複数の異なる種類のメモリを含んでもよい。
Drives)、ソリッドステートRAM、動的RAM、静的RAMなど、揮発性メモ
リに基づくSSD、DRAMベースのSSD、磁気抵抗RAM(MRAM)SSD、およびDRAMのSSDとフラッシュメモリベースのSSDとの組合せを使用するハイブリッドSSDを含んでもよい。コンピュータ読み取り可能な媒体1222は、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、およびコンピュータシステム1200用の他のデータのストレージを提供してもよい。
For Global Evolution)などの次世代データネットワークテクノロジー、WiFi(IEEE 802.11ファミリー標準規格)、他の移動オブジェクト通信技術、またはそれらの任意の組合せを使用する)、GPS(Global Positioning System)受信コンポーネント、および/または他のコンポーネントを含んでもよい。いくつかの実施形態では、通信サブシステム1224は、ワイヤレスインタフェースに加えて、またはワイヤレスインタフェースの代わりに、有線ネットワーク接続性(たとえば、Ethernet)を提供できる。
構造化データフィード1226、イベントストリーム1228、イベント更新1230などの形で受信してもよい。たとえば、通信サブシステム1224は、Twitter(登録商標)フィード、Facebook(登録商標)の更新、RSS(Rich Site
Summary)フィードなどのwebフィード、および/または1つ以上のサードパーティ情報ソースからのリアルタイム更新など、ソーシャルメディアネットワークおよび/または他のコミュニケーションサービスのユーザから、データフィード1226をリアルタイムで受信する(または送る)ように構成されてもよい。
アプリケーションなどのオンデマンドアプリケーション一式を構築および届ける機能が挙げられるが、これらに限定されない。SaaSサービスは、クラウドインフラストラクチャシステム上で実行中のアプリケーションを、顧客がアプリケーション用のソフトウェアを購入する必要なしに利用することを可能にする。PaaSサービスとして、JCS(Oracle Java Cloud Service)、DBCS(Oracle Database Cloud Service)など、組織(Oracleなど)が既存のアプリケーションを共有の共通アーキテクチャ上に1つにまとめることを可能にするサービス、およびプラットフォームが提供する共有サービスを活用する新しいアプリケーションを作る能力などが挙げられるが、これらに限定されない。IaaSサービスは、通常、SaaSプラットフォームおよびPaaSプラットフォームが提供するサービスを利用している顧客のための、ストレージ、ネットワーク、および他の基本的なコンピューティングリソースなど、礎となるコンピューティングリソースの管理および制御を容易にする。
1つ以上のクライアントコンピューティングデバイス1304、1306、および1308を含む。1つ以上のクライアントコンピューティングデバイス1304、1306、および1308は、ユーザによって、クラウドサービスを提供するクラウドインフラストラクチャシステム1302と対話するために使用されもよい。クライアントコンピューティングデバイスは、ウェブブラウザ、プロプライエタリ・クライアントアプリケーション(たとえば、Oracle Forms)、または他のアプリケーションなど、クライアントアプリケーションを操作するように構成されてもよい。クライアントアプリケーションは、クライアントコンピューティングデバイスのユーザによって、クラウドインフラストラクチャシステム1302と対話を行ってクラウドインフラストラクチャシステム1302が提供するサービスを利用するために使用され得る。
コンピュータおよびサーバを含み得る1台以上のコンピュータおよび/またはサーバから構成されてもよい。
では、クラウドインフラストラクチャシステム1302およびクラウドインフラストラクチャシステム1302が提供するサービスが、関連コミュニティ内のいくつかの組織によって共有される。クラウドサービスは、ハイブリッドクラウドモデル下で提供されてもよい。ハイブリッドクラウドモデルとは、2つ以上の異なるモデルの組合せである。
Service)、DBCS(Oracle Database Cloud Service)など、およびその他が挙げられるが、これらに限定されない。
サービスは、データベース・クラウドサービス、ミドルウェアクラウドサービス(たとえば、Oracle Fusion Middlewareサービス)、およびJavaクラウドサービスを含んでもよい。一実施形態では、データベース・クラウドサービスは、共有サービスデプロイメントモデルをサポートしてもよい。共有サービスデプロイメントモデルは、組織が、データベースリソースをプールし、データベース・クラウドの形のサービスとしてデータベースを顧客に提供することを可能にする。ミドルウェアクラウドサービスは、顧客が様々な業務アプリケーションを開発およびデプロイするためのプラットフォームを提供してもよく、Javaクラウドサービスは、顧客がクラウドインフラストラクチャシステムにおいてJavaアプリケーションをデプロイするためのプラットフォームを提供してもよい。
308などのクライアントデバイスを使用している顧客は、クラウドインフラストラクチャシステム1302が提供する1つ以上のサービスを要求し、クラウドインフラストラクチャシステム1302が提供する1つ以上のサービスのサブスクリプションのオーダーをすることによってクラウドインフラストラクチャシステム1302とやり取りしてもよい。特定の実施形態では、顧客は、クラウドUI1312、クラウドUI1314 および
/またはクラウドUI1316などのクラウドユーザインタフェース(UI:User Interface)にアクセスし、これらのUIを介してサブスクリプションのオーダーを行ってもよい。顧客がオーダーをすることに応答してクラウドインフラストラクチャシステム1302が受信したオーダー情報は、この顧客を特定する情報、および、顧客がサブスクリプションをする予定である、クラウドインフラストラクチャシステム1302が提供する1つ以上のサービスを含んでもよい。
効にする。オーダープロビジョニングモジュール1324は、クラウドインフラストラクチャシステム1300が提供するクラウドサービスと、要求されたサービスを提供するためのリソースをプロビジョニングするために使用される物理実施層との間に抽象度を設ける。よって、サービスおよびリソースがオンザフライで実際にプロビジョニングされたかどうか、または予めプロビジョニングされて要求された場合にのみ割り当てられたかどうかなどの実装の詳細からオーダーオーケストレーションモジュール1322を切り離すことができる。
Claims (20)
- 連続データストリームを処理するための方法であって、
コンピューティングデバイスが、アプリケーションに関する前記連続データストリームを受信するステップと、
前記コンピューティングデバイスが、前記連続データストリームのジオメトリをリレーションに変換するステップと、
前記コンピューティングデバイスが、前記連続データストリームに含まれる複数の移動オブジェクトを追跡するステップと、
前記コンピューティングデバイスが、前記リレーションおよび前記連続データストリームのジオメトリに少なくとも基づいて、前記複数の移動オブジェクトに含まれる、少なくとも第1の移動オブジェクトと第2の移動オブジェクトとの近接を判断するステップと、
前記コンピューティングデバイスが、少なくとも前記第1の移動オブジェクトと前記第2の移動オブジェクトとの前記近接が予め定められた閾値を超えた場合、アラートを生成するステップとを含む、方法。 - 前記リレーションは、前記連続データストリームのジオメトリの空間インデックスを含む、請求項1に記載の方法。
- 前記コンピューティングデバイスが、範囲を用いて前記空間インデックスにフィルタを適用して前記連続データストリームのジオメトリについてのフィルタ処理された結果を取得するステップをさらに含み、前記近接を判断するステップは、前記フィルタ処理された結果を用いて前記第1の移動オブジェクトと前記第2の移動オブジェクトとの距離を算出するステップを含む、請求項2に記載の方法。
- 前記コンピューティングデバイスが、前記連続データストリームのジオメトリに変更があるかどうかを判断するステップと、前記コンピューティングデバイスが、前記連続データストリームのジオメトリに変更があった場合、更新イベントを発行するステップとをさらに含む、請求項3に記載の方法。
- 前記更新イベントは、挿入操作、削除操作、および更新操作をサポートするメモリ内キャッシュ上で発行される、請求項4に記載の方法。
- 結合演算を用いて前記コンピューティングデバイスが、前記リレーションと前記連続データストリームのジオメトリとを結合するステップをさらに含む、請求項2に記載の方法。
- 前記追跡するステップは、少なくとも前記第1の移動オブジェクトの前記第2の移動オブジェクトに対する関係を追跡するための空間演算を用いて実行される、請求項6に記載の方法。
- コンピュータによって実行可能な命令を格納するように構成されたメモリと、
前記メモリにアクセスして前記コンピュータによって実行可能な命令を実行するように構成されたプロセッサとを備え、前記コンピュータによって実行可能な命令は、
アプリケーションに関する連続データストリームを受信するための命令と、
前記連続データストリームのジオメトリをリレーションに変換するための命令と、
前記連続データストリームに含まれる複数の移動オブジェクトを追跡するための命令と、
前記リレーションおよび前記連続データストリームのジオメトリに少なくとも基づいて、前記複数の移動オブジェクトに含まれる、少なくとも第1の移動オブジェクトと第2の
移動オブジェクトとの近接を判断するための命令と、
少なくとも前記第1の移動オブジェクトと前記第2の移動オブジェクトとの前記近接が予め定められた閾値を超えた場合、アラートを生成するための命令とを含む、システム。 - 前記リレーションは、前記連続データストリームのジオメトリの空間インデックスを含む、請求項8に記載のシステム。
- 前記コンピューティングデバイスが、範囲を用いて前記空間インデックスにフィルタを適用して前記連続データストリームのジオメトリについてのフィルタ処理された結果を取得することをさらに含み、前記近接を判断することは、前記フィルタ処理された結果を用いて前記第1の移動オブジェクトと前記第2の移動オブジェクトとの距離を算出することを含む、請求項9に記載のシステム。
- 前記コンピューティングデバイスが、前記連続データストリームのジオメトリに変更があるかどうかを判断することと、前記コンピューティングデバイスが、前記連続データストリームのジオメトリに変更があった場合、更新イベントを発行することとをさらに含む、請求項10に記載のシステム。
- 前記更新イベントは、挿入操作、削除操作、および更新操作をサポートするメモリ内キャッシュ上で発行される、請求項11に記載のシステム。
- 結合演算を用いて前記コンピューティングデバイスが、前記連続データストリームのジオメトリと前記リレーションとを結合することをさらに含む、請求項9に記載のシステム。
- 前記追跡することは、少なくとも前記第1の移動オブジェクトの前記第2の移動オブジェクトに対する関係を追跡するための空間演算を用いて実行される、請求項13に記載のシステム。
- コンピュータによって実行可能なコードを格納したコンピュータ読み取り可能な媒体であって、前記コンピュータによって実行可能なコードは、プロセッサによって実行されると、前記プロセッサに動作を行わせ、前記動作は、
アプリケーションに関する第1の連続データストリームを受信することと、
前記第1の連続データストリームのジオメトリをリレーションに変換することと、
前記連続データストリームに含まれる複数の移動オブジェクトを追跡することと、
前記アプリケーションに関する第2の連続データストリームを受信することと、
前記リレーションおよび前記第2の連続データストリームのジオメトリに少なくとも基づいて、少なくとも前記複数の移動オブジェクトに含まれる移動オブジェクトと前記第2の連続データストリームに含まれるオブジェクトとの関係をチェックすることと、
前記関係が予め定められた基準を満たす場合、前記移動オブジェクトのプロパティを設定することとを含む、コンピュータ読み取り可能な媒体。 - 前記リレーションは、前記連続データストリームのジオメトリの空間インデックスを含む、請求項15に記載のコンピュータ読み取り可能な媒体。
- 前記関係をチェックすることは、前記リレーションおよび前記第2の連続データストリームのジオメトリに少なくとも基づいて、少なくとも前記複数の移動オブジェクトに含まれる前記移動オブジェクトと前記第2の連続データストリームに含まれる前記オブジェクトとの近接を判断することを含む、請求項16に記載のコンピュータ読み取り可能な媒体。
- 少なくとも前記複数の移動オブジェクトに含まれる前記移動オブジェクトと前記第2の連続データストリームに含まれる前記オブジェクトとの前記近接が予め定められた閾値を超えた場合、前記移動オブジェクトのプロパティが設定される、請求項17に記載のコンピュータ読み取り可能な媒体。
- 前記動作は、範囲を用いて前記空間インデックスにフィルタを適用して前記第1の連続データストリームのジオメトリについてのフィルタ処理された結果を取得することをさらに含み、前記近接を判断することは、前記複数の移動オブジェクトに含まれる前記移動オブジェクトと前記第2の連続データストリームに含まれる前記オブジェクトとの距離を算出することを含む、請求項18に記載のコンピュータ読み取り可能な媒体。
- 前記動作は、前記第1の連続データストリームのジオメトリに変更があるかどうかを判断することと、前記第1の連続データストリームのジオメトリに変更があった場合、更新イベントを発行することとをさらに含み、前記更新イベントは、挿入操作、削除操作、および更新操作をサポートするメモリ内キャッシュ上で発行される、請求項19に記載のコンピュータ読み取り可能な媒体。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662395204P | 2016-09-15 | 2016-09-15 | |
US62/395,204 | 2016-09-15 | ||
JP2019514286A JP6972119B2 (ja) | 2016-09-15 | 2017-09-15 | ストリームデータにおける空間変化検出器 |
PCT/US2017/051878 WO2018053329A1 (en) | 2016-09-15 | 2017-09-15 | Spatial change detector in stream data |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019514286A Division JP6972119B2 (ja) | 2016-09-15 | 2017-09-15 | ストリームデータにおける空間変化検出器 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022020737A true JP2022020737A (ja) | 2022-02-01 |
JP7316341B2 JP7316341B2 (ja) | 2023-07-27 |
Family
ID=59955758
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019514286A Active JP6972119B2 (ja) | 2016-09-15 | 2017-09-15 | ストリームデータにおける空間変化検出器 |
JP2019514227A Active JP7082973B2 (ja) | 2016-09-15 | 2017-09-15 | 方法、システム、およびコンピュータ読み取り可能なプログラム |
JP2021179468A Active JP7316341B2 (ja) | 2016-09-15 | 2021-11-02 | ストリームデータにおける空間変化検出器 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019514286A Active JP6972119B2 (ja) | 2016-09-15 | 2017-09-15 | ストリームデータにおける空間変化検出器 |
JP2019514227A Active JP7082973B2 (ja) | 2016-09-15 | 2017-09-15 | 方法、システム、およびコンピュータ読み取り可能なプログラム |
Country Status (5)
Country | Link |
---|---|
US (3) | US10275492B2 (ja) |
EP (2) | EP3513319B1 (ja) |
JP (3) | JP6972119B2 (ja) |
CN (2) | CN109690525B (ja) |
WO (2) | WO2018053329A1 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015137997A1 (en) | 2013-03-15 | 2015-09-17 | Compology, Inc. | System and method for waste management |
CN109690525B (zh) | 2016-09-15 | 2023-05-30 | 甲骨文国际公司 | 形状的流数据的自动分区 |
CN107402955B (zh) * | 2017-06-02 | 2020-04-14 | 阿里巴巴集团控股有限公司 | 确定地理围栏的索引网格的方法和装置 |
US10231085B1 (en) | 2017-09-30 | 2019-03-12 | Oracle International Corporation | Scaling out moving objects for geo-fence proximity determination |
CN109033439B (zh) * | 2018-08-15 | 2019-11-19 | 中科驭数(北京)科技有限公司 | 流式数据的处理方法和装置 |
CN109509327B (zh) * | 2018-10-31 | 2020-11-24 | 武汉烽火众智数字技术有限责任公司 | 一种异常行为预警方法及装置 |
US10943356B2 (en) | 2018-12-12 | 2021-03-09 | Compology, Inc. | Method and system for fill level determination |
US10798522B1 (en) | 2019-04-11 | 2020-10-06 | Compology, Inc. | Method and system for container location analysis |
US11172325B1 (en) | 2019-05-01 | 2021-11-09 | Compology, Inc. | Method and system for location measurement analysis |
US11201835B1 (en) * | 2019-05-23 | 2021-12-14 | C/Hca, Inc. | Systems and methods for multi-tier resource and subsystem orchestration and adaptation |
CN110366210B (zh) * | 2019-06-20 | 2023-01-06 | 华南理工大学 | 一种针对有状态数据流应用的计算卸载方法 |
US11301498B2 (en) * | 2019-08-08 | 2022-04-12 | Sap Portals Israel Ltd. | Multi-cloud object store access |
DE102019212686A1 (de) * | 2019-08-23 | 2021-02-25 | Denso Corporation | Verfahren und Vorrichtung zum Unterstützen von ereignisbasierten Transaktionen in Bezug auf zumindest ein Fahrzeug |
US10885704B1 (en) * | 2019-09-04 | 2021-01-05 | Microsoft Technology Licensing, Llc | 3D mapping by distinguishing between different environmental regions |
US11681708B2 (en) | 2019-12-26 | 2023-06-20 | Snowflake Inc. | Indexed regular expression search with N-grams |
US10997179B1 (en) | 2019-12-26 | 2021-05-04 | Snowflake Inc. | Pruning index for optimization of pattern matching queries |
US11595320B1 (en) | 2020-07-01 | 2023-02-28 | C/Hca, Inc. | Multi-tier resource, subsystem, and load orchestration |
CN115563097A (zh) * | 2021-07-02 | 2023-01-03 | 华为云计算技术有限公司 | 数据处理方法、装置、存储介质及程序产品 |
CN114173356B (zh) * | 2021-11-04 | 2024-01-09 | 中国联合网络通信集团有限公司 | 网络质量的检测方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03113652A (ja) * | 1989-09-28 | 1991-05-15 | Nec Corp | メモリ領域の動的管理方式 |
JP2010160591A (ja) * | 2009-01-07 | 2010-07-22 | Hitachi Ltd | 空間データ管理装置、空間データ管理方法、および、空間データ管理プログラム |
US20110161328A1 (en) * | 2009-12-28 | 2011-06-30 | Oracle International Corporation | Spatial data cartridge for event processing systems |
JP2012234415A (ja) * | 2011-05-02 | 2012-11-29 | Fujitsu Ltd | インデックス管理方法、インデックス管理プログラムおよびインデックス管理装置 |
US20150148077A1 (en) * | 2013-11-25 | 2015-05-28 | Agco Corporation | Dynamic cooperative geofence |
US9298788B1 (en) * | 2013-03-11 | 2016-03-29 | DataTorrent, Inc. | Checkpointing in distributed streaming platform for real-time applications |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7877405B2 (en) | 2005-01-07 | 2011-01-25 | Oracle International Corporation | Pruning of spatial queries using index root MBRS on partitioned indexes |
US8896597B2 (en) * | 2008-04-14 | 2014-11-25 | Siemens Product Lifecycle Management Software Inc. | System and method for modifying geometric relationships in a solid model |
CN101922924B (zh) * | 2009-06-09 | 2013-01-09 | 中国电力科学研究院 | 一种输电线路信息检测系统、方法及gps移动站装置 |
JP5395565B2 (ja) * | 2009-08-12 | 2014-01-22 | 株式会社日立製作所 | ストリームデータ処理方法及び装置 |
US20120201472A1 (en) * | 2011-02-08 | 2012-08-09 | Autonomy Corporation Ltd | System for the tagging and augmentation of geographically-specific locations using a visual data stream |
US8341223B1 (en) | 2011-06-07 | 2012-12-25 | Banjo, Inc. | Method for relevant content discovery |
US20140067801A1 (en) | 2012-08-31 | 2014-03-06 | Fujitsu Limited | Geotagging based on specified criteria |
US9563663B2 (en) * | 2012-09-28 | 2017-02-07 | Oracle International Corporation | Fast path evaluation of Boolean predicates |
US20150095355A1 (en) * | 2012-11-15 | 2015-04-02 | Banjo, Inc. | Systems and methods for dynamic event content curation |
US9293109B2 (en) * | 2012-12-20 | 2016-03-22 | Nvidia Corporation | Technique for storing shared vertices |
WO2014188500A1 (ja) * | 2013-05-20 | 2014-11-27 | 富士通株式会社 | データストリーム処理の並列化プログラム、及びデータストリーム処理の並列化システム |
US9418113B2 (en) * | 2013-05-30 | 2016-08-16 | Oracle International Corporation | Value based windows on relations in continuous data streams |
US9514133B1 (en) | 2013-06-25 | 2016-12-06 | Jpmorgan Chase Bank, N.A. | System and method for customized sentiment signal generation through machine learning based streaming text analytics |
US9396253B2 (en) | 2013-09-27 | 2016-07-19 | International Business Machines Corporation | Activity based analytics |
US20160253094A1 (en) * | 2013-11-01 | 2016-09-01 | Nec Corporation | Information processing device, data cache device, information processing method, and data caching method |
US9307359B2 (en) * | 2013-12-05 | 2016-04-05 | Ebay Inc. | Methods, systems, and apparatus for a geo-fence system |
US9292705B2 (en) * | 2014-02-21 | 2016-03-22 | Lens Ventures, Llc | Management of drone operations and security in a pervasive computing environment |
US9293029B2 (en) * | 2014-05-22 | 2016-03-22 | West Corporation | System and method for monitoring, detecting and reporting emergency conditions using sensors belonging to multiple organizations |
US9042911B1 (en) * | 2014-06-20 | 2015-05-26 | MTN Satellite Communications Inc. | Dynamically reconfigured geo-fence boundaries |
KR101958723B1 (ko) * | 2014-07-22 | 2019-03-15 | 인텔 코포레이션 | 지오펜스 크로싱 기반 제어를 위한 시스템들 및 기술들 |
US10510193B2 (en) * | 2014-08-12 | 2019-12-17 | SVR Tracking, Inc. | Method and system for geofencing of vehicle impound yards |
US9288622B1 (en) * | 2014-08-21 | 2016-03-15 | International Business Machines Corporation | Aggregated geo-fencing area based information delivery |
US10120907B2 (en) * | 2014-09-24 | 2018-11-06 | Oracle International Corporation | Scaling event processing using distributed flows and map-reduce operations |
US9586549B2 (en) | 2014-11-20 | 2017-03-07 | Christopher Luke Chambers | Vehicle impact sensor and notification system |
CA2973006C (en) * | 2015-01-05 | 2019-08-06 | Resocator, Inc. | Global resource locator |
US20160241997A1 (en) * | 2015-02-13 | 2016-08-18 | Watch Out!, Inc. | Geofence entry timestamps from diverse sources |
EP3254404A4 (en) * | 2015-03-31 | 2018-12-05 | SZ DJI Technology Co., Ltd. | Authentication systems and methods for generating flight regulations |
CN109690525B (zh) | 2016-09-15 | 2023-05-30 | 甲骨文国际公司 | 形状的流数据的自动分区 |
-
2017
- 2017-09-15 CN CN201780055809.6A patent/CN109690525B/zh active Active
- 2017-09-15 JP JP2019514286A patent/JP6972119B2/ja active Active
- 2017-09-15 EP EP17772284.0A patent/EP3513319B1/en active Active
- 2017-09-15 WO PCT/US2017/051878 patent/WO2018053329A1/en unknown
- 2017-09-15 US US15/705,406 patent/US10275492B2/en active Active
- 2017-09-15 US US15/705,402 patent/US10698903B2/en active Active
- 2017-09-15 WO PCT/US2017/051868 patent/WO2018053320A1/en unknown
- 2017-09-15 CN CN201780056415.2A patent/CN109716323B/zh active Active
- 2017-09-15 JP JP2019514227A patent/JP7082973B2/ja active Active
- 2017-09-15 EP EP17772285.7A patent/EP3513320B1/en active Active
-
2019
- 2019-04-03 US US16/374,173 patent/US10831761B2/en active Active
-
2021
- 2021-11-02 JP JP2021179468A patent/JP7316341B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03113652A (ja) * | 1989-09-28 | 1991-05-15 | Nec Corp | メモリ領域の動的管理方式 |
JP2010160591A (ja) * | 2009-01-07 | 2010-07-22 | Hitachi Ltd | 空間データ管理装置、空間データ管理方法、および、空間データ管理プログラム |
US20110161328A1 (en) * | 2009-12-28 | 2011-06-30 | Oracle International Corporation | Spatial data cartridge for event processing systems |
JP2012234415A (ja) * | 2011-05-02 | 2012-11-29 | Fujitsu Ltd | インデックス管理方法、インデックス管理プログラムおよびインデックス管理装置 |
US9298788B1 (en) * | 2013-03-11 | 2016-03-29 | DataTorrent, Inc. | Checkpointing in distributed streaming platform for real-time applications |
US20150148077A1 (en) * | 2013-11-25 | 2015-05-28 | Agco Corporation | Dynamic cooperative geofence |
Also Published As
Publication number | Publication date |
---|---|
WO2018053320A1 (en) | 2018-03-22 |
US20190278774A1 (en) | 2019-09-12 |
US20180075108A1 (en) | 2018-03-15 |
EP3513320A1 (en) | 2019-07-24 |
US20180075109A1 (en) | 2018-03-15 |
US10831761B2 (en) | 2020-11-10 |
JP7316341B2 (ja) | 2023-07-27 |
EP3513320B1 (en) | 2021-12-01 |
EP3513319B1 (en) | 2021-11-24 |
EP3513319A1 (en) | 2019-07-24 |
CN109716323A (zh) | 2019-05-03 |
JP6972119B2 (ja) | 2021-11-24 |
US10698903B2 (en) | 2020-06-30 |
JP2019532416A (ja) | 2019-11-07 |
CN109690525A (zh) | 2019-04-26 |
JP2019533231A (ja) | 2019-11-14 |
CN109690525B (zh) | 2023-05-30 |
CN109716323B (zh) | 2023-06-27 |
US10275492B2 (en) | 2019-04-30 |
JP7082973B2 (ja) | 2022-06-09 |
WO2018053329A1 (en) | 2018-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6972119B2 (ja) | ストリームデータにおける空間変化検出器 | |
US10349210B2 (en) | Scaling out moving objects for geo-fence proximity determination | |
JP7005600B2 (ja) | マイクロバッチストリーミングのための複合イベント処理 | |
JP7009455B2 (ja) | 分散イベント処理システムにおけるデータシリアライズ | |
JP7013450B2 (ja) | 自動時間進行についての処理タイムスタンプおよびハートビートイベント |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211118 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211118 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230110 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230407 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230418 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230509 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230531 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230620 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230714 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7316341 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |