JP7316724B2 - ストリーミングデータの複数のキャッシュ処理 - Google Patents
ストリーミングデータの複数のキャッシュ処理 Download PDFInfo
- Publication number
- JP7316724B2 JP7316724B2 JP2020564621A JP2020564621A JP7316724B2 JP 7316724 B2 JP7316724 B2 JP 7316724B2 JP 2020564621 A JP2020564621 A JP 2020564621A JP 2020564621 A JP2020564621 A JP 2020564621A JP 7316724 B2 JP7316724 B2 JP 7316724B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- cache area
- time window
- database repository
- synchronization
- 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.)
- Active
Links
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- 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/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/16—General purpose computing application
- G06F2212/163—Server or database system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/282—Partitioned cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
-シナリオ_1:データベースキャッシュから読み取り/書き込みすることができるアプリケーションと、テーブルロックを用いてデータをデータベースキャッシュと定期的に同期させるデータベースとを有する、TS1として上述された従来の解決法、
-シナリオ_2a:本開示の実施形態による、各々がテーブルロックを用いる2つのデータベースキャッシュ、及び
-シナリオ_2b:本開示の実施形態による、2つのデータベースキャッシュ、ハッシュインデックスに基づいてロックされるフロントテーブル、及びバックテーブルの全体がロックされるバックテーブル。
Claims (9)
- ストリーミングデータを処理するためのコンピュータ実施方法であって、
データベースリポジトリと、前記データベースリポジトリのためのキャッシュメモリであって、前記データベースリポジトリと前記キャッシュメモリとの間の同期を有効化すること及び同期を禁止することができるように構成され、同期が有効化されているときには前記データベースリポジトリとの間でデータの同期が行われるように構成された、前記キャッシュメモリと、アプリケーションが前記キャッシュメモリを介して前記データベースリポジトリに書き込みアクセス及び読み取りアクセスをするためのインターフェースと、を含むデータ処理システムにおいて、前記キャッシュメモリ上に第1のキャッシュ領域及び第2のキャッシュ領域を提供することと、動作を繰り返すことと、を含み、前記動作は、
第1の時間窓において、第1のストリーミングデータを受信し、受信した前記第1のストリーミングデータを前記第1のキャッシュ領域上に書き込むことと、
前記第1の時間窓において、前記データベースリポジトリと前記第1のキャッシュ領域との間の同期を禁止することと、
前記第1の時間窓の少なくとも一部において、前記データベースリポジトリと前記第2のキャッシュ領域との間の同期を有効化することと、
前記第1の時間窓の経過時に、前記第1のキャッシュ領域の役割と前記第2のキャッシュ領域の役割とを交換し、第2の時間窓を開始することと、
前記第2の時間窓において、第2のストリーミングデータを受信し、受信した前記第2のストリーミングデータを前記第2のキャッシュ領域上に書き込むことと、
前記第2の時間窓において、前記データベースリポジトリと前記第2のキャッシュ領域との間の同期を禁止することと、
前記第2の時間窓の少なくとも一部において、前記データベースリポジトリと前記第1のキャッシュ領域との間の同期を有効化することと、
前記第2の時間窓の経過時に、前記第1のキャッシュ領域の役割と前記第2のキャッシュ領域の役割とを再交換し、前記第1の時間窓を再び開始することと、
を含む、方法。 - 前記動作は、
前記第1の時間窓において、受信した前記第1のストリーミングデータを前記第1のキャッシュ領域上に書き込む間、前記第1のキャッシュ領域の全体を前記アプリケーションからのアクセスに対してロックすることと、
前記第1の時間窓において、前記データベースリポジトリと前記第2のキャッシュ領域との間の同期が終了するまで、前記第2のキャッシュ領域の全体を前記アプリケーションからのアクセスに対してロックすることと、
前記第2の時間窓において、受信した前記第2のストリーミングデータを前記第2のキャッシュ領域上に書き込む間、前記第2のキャッシュ領域の全体を前記アプリケーションからのアクセスに対してロックすることと、
前記第2の時間窓において、前記データベースリポジトリと前記第1のキャッシュ領域との間の同期が終了するまで、前記第1のキャッシュ領域の全体を前記アプリケーションからのアクセスに対してロックすることと、
をさらに含む、請求項1に記載の方法。 - 前記動作は、
前記第1の時間窓において、受信した前記第1のストリーミングデータを前記第1のキャッシュ領域上に書き込む間、ハッシュインデックスに基づいて前記第1のキャッシュ領域を前記アプリケーションからのアクセスに対してロックすることと、
前記第1の時間窓において、前記データベースリポジトリと前記第2のキャッシュ領域との間の同期が終了するまで、前記第2のキャッシュ領域の全体を前記アプリケーションからのアクセスに対してロックすることと、
前記第2の時間窓において、受信した前記第2のストリーミングデータを前記第2のキャッシュ領域上に書き込む間、ハッシュインデックスに基づいて前記第2のキャッシュ領域を前記アプリケーションからのアクセスに対してロックすることと、
前記第2の時間窓において、前記データベースリポジトリと前記第1のキャッシュ領域との間の同期が終了するまで、前記第1のキャッシュ領域の全体を前記アプリケーションからのアクセスに対してロックすることと、
をさらに含む、請求項1に記載の方法。 - 前記キャッシュメモリ上に第1のキャッシュ領域及び第2のキャッシュ領域を提供することは、前記キャッシュメモリ上に第1のキャッシュ領域と第2のキャッシュ領域との複数の対を提供することを含み、
前記複数の対は、同じ時間窓において同時に使用されるか、又は同じ時間窓において前記複数の対の全てが使用されないように異なる時間窓のそれぞれにおいて使用される、請求項1~請求項3のいずれかに記載の方法。 - それぞれの時間窓の長さは、前記ストリーミングデータを処理するために前記アプリケーションによって更新され、前記更新された長さは、後の時間窓に使用される、請求項1~請求項4のいずれかに記載の方法。
- それぞれの時間窓の長さは、受信した前記ストリーミングデータの量、前記ストリーミングデータの処理時間、前記データベースリポジトリとの同期に要する時間、又はそれらの組み合わせに応じて定められる、請求項1~請求項4のいずれかに記載の方法。
- データ処理システムであって、
1つ又は複数のプロセッサと、
前記プロセッサ上で実行されたとき、ストリーミングデータを処理するための動作を実行するプログラムを格納するメモリと、
データベースリポジトリと、
前記データベースリポジトリのためのキャッシュメモリと、
アプリケーションが前記キャッシュメモリを介して前記データベースリポジトリに書き込みアクセス及び読み取りアクセスをするためのインターフェースと、
を含み、
前記キャッシュメモリは、前記データベースリポジトリと前記キャッシュメモリとの間の同期を有効化すること及び同期を禁止することができるように構成され、同期が有効化されているときには前記データベースリポジトリとの間でデータの同期が行われるように構成され、第1のキャッシュ領域及び第2のキャッシュ領域を含み、
第1の時間窓において、前記データベースリポジトリと前記第1のキャッシュ領域との間の同期が禁止され、第1のストリーミングデータが第1のキャッシュ領域上に書き込まれ、
前記第1の時間窓の少なくとも一部において、前記データベースリポジトリと前記第2のキャッシュ領域との間の同期が有効化され、
前記第1の時間窓の経過時に、前記第1のキャッシュ領域の役割と前記第2のキャッシュ領域の役割とが交換され、第2の時間窓が開始し、
前記第2の時間窓において、前記データベースリポジトリと前記第2のキャッシュ領域との間の同期が禁止され、第2のストリーミングデータが第2のキャッシュ領域上に書き込まれ、
前記第2の時間窓の少なくとも一部において、前記データベースリポジトリと前記第1のキャッシュ領域との間の同期が有効化され、
前記第2の時間窓の経過時に、前記第1のキャッシュ領域の役割と前記第2のキャッシュ領域の役割とが再交換され、前記第1の時間窓が再び開始する、
データ処理システム。 - 請求項1~請求項6のいずれかに記載の方法をコンピュータに実行させる、コンピュータプログラム。
- 請求項8に記載のコンピュータプログラムを格納した、コンピュータ可読ストレージ媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/004,020 | 2018-06-08 | ||
US16/004,020 US10902020B2 (en) | 2018-06-08 | 2018-06-08 | Multiple cache processing of streaming data |
PCT/IB2019/054733 WO2019234685A1 (en) | 2018-06-08 | 2019-06-06 | Multiple cache processing of streaming data |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021526252A JP2021526252A (ja) | 2021-09-30 |
JP7316724B2 true JP7316724B2 (ja) | 2023-07-28 |
Family
ID=68763884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020564621A Active JP7316724B2 (ja) | 2018-06-08 | 2019-06-06 | ストリーミングデータの複数のキャッシュ処理 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10902020B2 (ja) |
JP (1) | JP7316724B2 (ja) |
CN (1) | CN112119387A (ja) |
DE (1) | DE112019001744T5 (ja) |
GB (1) | GB2587583B (ja) |
WO (1) | WO2019234685A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11305194B2 (en) * | 2019-01-21 | 2022-04-19 | Tempus Ex Machina, Inc. | Systems and methods for providing a real-time representation of positional information of subjects |
CN112637355B (zh) * | 2020-12-25 | 2023-05-23 | 新天科技股份有限公司 | 基于多并发单通道无线数据处理方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004362534A (ja) | 2003-06-05 | 2004-12-24 | Carry Computer Eng Co Ltd | 伝送レートを高速化可能なストレージデバイス |
JP2011133947A (ja) | 2009-12-22 | 2011-07-07 | Panasonic Corp | 不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム |
JP2014186397A (ja) | 2013-03-21 | 2014-10-02 | Fujitsu Ltd | キャッシュメモリ装置、情報処理装置及びキャッシュメモリ制御方法 |
JP2015046164A (ja) | 2013-08-28 | 2015-03-12 | バイオセンス・ウエブスター・(イスラエル)・リミテッドBiosense Webster (Israel), Ltd. | リアルタイムデータフローの永続記憶装置用のアトミックトランザクションによるダブルバッファリング |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0453389A (ja) * | 1990-06-21 | 1992-02-20 | Graphics Commun Technol:Kk | 動ベクトル検出装置 |
US7062515B1 (en) | 2001-12-28 | 2006-06-13 | Vignette Corporation | System and method for the synchronization of a file in a cache |
DE602004029146D1 (de) * | 2003-04-09 | 2010-10-28 | Wyeth Llc | Derivate von 2-(8,9-dioxo-2,6-diazabicyclo(5.2.0)non-1(7)-en-2-yl)alkylphosphonsäure und deren verwendung als n-methyl-d-aspartat- (nmda-) rezeptorantagonisten |
US7412496B2 (en) * | 2003-08-22 | 2008-08-12 | Emc Corporation | Management of the file-modification time attribute in a multi-processor file server system |
US7496607B2 (en) | 2003-08-29 | 2009-02-24 | Yahoo! Inc. | Method and system for maintaining synchronization between a local data cache and a data store |
US7831642B1 (en) * | 2004-09-30 | 2010-11-09 | Symantec Operating Corporation | Page cache management for a shared file |
US8402224B2 (en) * | 2005-09-20 | 2013-03-19 | Vmware, Inc. | Thread-shared software code caches |
JP5092374B2 (ja) | 2006-12-01 | 2012-12-05 | 富士通株式会社 | データセンタ及びデータ転送方法 |
US7769958B2 (en) * | 2007-06-22 | 2010-08-03 | Mips Technologies, Inc. | Avoiding livelock using intervention messages in multiple core processors |
US7664799B2 (en) * | 2007-07-30 | 2010-02-16 | Oracle International Corporation | In-memory space management for database systems |
US20100174863A1 (en) * | 2007-11-30 | 2010-07-08 | Yahoo! Inc. | System for providing scalable in-memory caching for a distributed database |
US8302105B2 (en) * | 2009-06-26 | 2012-10-30 | Oracle America, Inc. | Bulk synchronization in transactional memory systems |
US8271729B2 (en) * | 2009-09-18 | 2012-09-18 | International Business Machines Corporation | Read and write aware cache storing cache lines in a read-often portion and a write-often portion |
US8924652B2 (en) | 2009-11-23 | 2014-12-30 | Marvell Israel (M.I.S.L.) Ltd. | Simultaneous eviction and cleaning operations in a cache |
CN102486753B (zh) * | 2009-11-30 | 2015-09-16 | 国际商业机器公司 | 构建及允许访问高速缓存的方法、设备及存储系统 |
US9104684B2 (en) * | 2012-04-04 | 2015-08-11 | International Business Machines Corporation | Cache handling in a database system |
US9710510B2 (en) * | 2013-03-11 | 2017-07-18 | Mongodb, Inc. | System and method for minimizing lock contention |
US10049022B2 (en) * | 2013-06-24 | 2018-08-14 | Oracle International Corporation | Systems and methods to retain and reclaim resource locks and client states after server failures |
US9411869B2 (en) * | 2013-07-09 | 2016-08-09 | Red Hat, Inc. | Replication between sites using keys associated with modified data |
US9619336B2 (en) * | 2014-01-05 | 2017-04-11 | International Business Machines Corporation | Managing production data |
US9870410B2 (en) * | 2014-09-15 | 2018-01-16 | Microsoft Technology Licensing, Llc | Constructed data stream for enhanced event processing |
US10242050B2 (en) | 2015-12-23 | 2019-03-26 | Sybase, Inc. | Database caching in a database system |
US10262032B2 (en) | 2016-02-24 | 2019-04-16 | Salesforce.Com, Inc. | Cache based efficient access scheduling for super scaled stream processing systems |
US10148722B2 (en) | 2016-07-04 | 2018-12-04 | Znipe Esports AB | Methods and nodes for synchronized streaming of a first and a second data stream |
CN108388524A (zh) | 2016-12-21 | 2018-08-10 | 伊姆西Ip控股有限责任公司 | 用于缓存数据的方法和设备 |
US11055271B2 (en) * | 2017-11-13 | 2021-07-06 | International Business Machines Corporation | Funnel locking for sleepable read-copy update |
-
2018
- 2018-06-08 US US16/004,020 patent/US10902020B2/en active Active
-
2019
- 2019-06-06 JP JP2020564621A patent/JP7316724B2/ja active Active
- 2019-06-06 CN CN201980032923.6A patent/CN112119387A/zh active Pending
- 2019-06-06 DE DE112019001744.6T patent/DE112019001744T5/de active Pending
- 2019-06-06 WO PCT/IB2019/054733 patent/WO2019234685A1/en active Application Filing
- 2019-06-06 GB GB2100032.8A patent/GB2587583B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004362534A (ja) | 2003-06-05 | 2004-12-24 | Carry Computer Eng Co Ltd | 伝送レートを高速化可能なストレージデバイス |
JP2011133947A (ja) | 2009-12-22 | 2011-07-07 | Panasonic Corp | 不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム |
JP2014186397A (ja) | 2013-03-21 | 2014-10-02 | Fujitsu Ltd | キャッシュメモリ装置、情報処理装置及びキャッシュメモリ制御方法 |
JP2015046164A (ja) | 2013-08-28 | 2015-03-12 | バイオセンス・ウエブスター・(イスラエル)・リミテッドBiosense Webster (Israel), Ltd. | リアルタイムデータフローの永続記憶装置用のアトミックトランザクションによるダブルバッファリング |
Also Published As
Publication number | Publication date |
---|---|
US20190377822A1 (en) | 2019-12-12 |
GB202100032D0 (en) | 2021-02-17 |
US10902020B2 (en) | 2021-01-26 |
JP2021526252A (ja) | 2021-09-30 |
GB2587583B (en) | 2021-08-25 |
CN112119387A (zh) | 2020-12-22 |
DE112019001744T5 (de) | 2021-03-04 |
WO2019234685A1 (en) | 2019-12-12 |
GB2587583A (en) | 2021-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11163728B2 (en) | Sharing container images utilizing a shared storage system | |
US8793528B2 (en) | Dynamic hypervisor relocation | |
US10983913B2 (en) | Securing exclusive access to a copy of a metadata track via a process while the metadata track is held in a shared mode by another process | |
US10838857B2 (en) | Multi-section garbage collection | |
US20120216007A1 (en) | Page protection ordering for lockless write tracking | |
US10241926B2 (en) | Migrating buffer for direct memory access in a computer system | |
US10678775B2 (en) | Determining integrity of database workload transactions | |
JP7316724B2 (ja) | ストリーミングデータの複数のキャッシュ処理 | |
US20240045870A1 (en) | Methods for updating reference count and shared objects in a concurrent system | |
US9632818B2 (en) | Identifying performance bottleneck of transaction in transaction processing system | |
US10769068B2 (en) | Concurrent modification of shared cache line by multiple processors | |
US10613774B2 (en) | Partitioned memory with locally aggregated copy pools | |
US20190258578A1 (en) | Adjustment of the number of tasks for a cache storage scan and destage application based on the type of elements to be destaged from the cache storage | |
US20140297594A1 (en) | Restarting a Batch Process From an Execution Point | |
US11733994B2 (en) | System and method for state management | |
US10623487B2 (en) | Moveable distributed synchronization objects | |
US9857979B2 (en) | Optimizing page boundary crossing in system memory using a reference bit and a change bit | |
US11947501B2 (en) | Two-hierarchy file system | |
US11977957B2 (en) | Quantum computing program compilation using cached compiled quantum circuit files | |
JP2022187999A (ja) | クラスタ化されたコンピューティング環境内の処理を容易にするためのコンピュータプログラム、コンピュータシステムおよびコンピュータ実装方法(クラスタ化されたコンピューティング環境にわたるリソースロック所有権の識別) | |
US20180210932A1 (en) | Efficient Data Retrieval in Big-Data Processing Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201209 Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210204 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211028 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20220502 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230306 |
|
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: 20230627 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20230627 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230713 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7316724 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |