JP2019102059A - 不揮発性メモリにおけるマルチバージョン同時実行制御(mvcc) - Google Patents
不揮発性メモリにおけるマルチバージョン同時実行制御(mvcc) Download PDFInfo
- Publication number
- JP2019102059A JP2019102059A JP2018161332A JP2018161332A JP2019102059A JP 2019102059 A JP2019102059 A JP 2019102059A JP 2018161332 A JP2018161332 A JP 2018161332A JP 2018161332 A JP2018161332 A JP 2018161332A JP 2019102059 A JP2019102059 A JP 2019102059A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- version
- record
- event
- statement
- 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
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/23—Updating
- G06F16/2308—Concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1474—Saving, restoring, recovering or retrying in transactions
-
- 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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0808—Multiuser, multiprocessor or multiprocessing cache systems with cache invalidating means
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- 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/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2329—Optimistic concurrency control using versioning
-
- 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/60—Details of cache memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本出願は、Oukidらによる、2017年12月14日に出願された「Multi-Versioning Concurrency Control (MVCC) In Non-Volatile Memory」の米国仮特許出願第62/594,270号の利益を主張するものであり、Oukidらによる、2017年6月13日に出願された「Big Block Allocation of Persistent Main Memory」の同時係属米国特許出願第15/621,640号、Oukidらによる、2017年6月13日に出願された「Defragmentation of Persistent Main Memory」の米国特許出願第15/621,736号、およびBoossらによる「Hybrid SCM_DRAM Transactional Storage Engine for Fast Recovery」の米国特許出願第2015/0355981号に関係し、それらのすべては、参照によりその全体が本明細書に組み込まれる。
104 マルチバージョンデータベース(MDB)
106 トランザクション
108 不揮発性メモリ(NVM)
110 揮発性メモリ(VM)
112 削除タイムスタンプ(DTS)
114 行メタデータ
116 行/レコード
118 開始タイムスタンプ(STS)
120 作成またはコミットタイムスタンプ(CTS)
122 ポインタ
124 トランザクションオブジェクト
126 読取りセット
128 グローバルカウンタ/グローバルタイムスタンプカウン
130 トランザクション識別子(TXID)
132 書込みセット
134 読取りタイムスタンプ(RTS)
136 コミットフラグ
140 ステートメント識別子(ID)
200 方法
210〜240 要素
300 コンピュータシステム
302 ユーザ入力/出力インターフェース
303 ユーザ入力/出力デバイス
304 プロセッサ
306 通信インフラストラクチャまたはバス
307 揮発性メモリ
308 メインメモリまたは1次メモリ
309 不揮発性メモリ
310 2次記憶デバイスまたはメモリ
312 ハードディスクドライブ
314 リムーバブルストレージデバイスまたはドライブ
318 リムーバブルストレージユニット
320 インターフェース
322 リムーバブルストレージユニット
324 ネットワークインターフェース
326 通信経路
328 リモートデバイス
410〜440 要素
Claims (20)
- コンピュータ実装方法であって、
イベントが発生したと判定するステップであり、前記イベントより前に保留中であったマルチバージョンデータベースの1つまたは複数のレコードに対する1つまたは複数の書込みトランザクションがコミットしておらず、前記マルチバージョンデータベースが不揮発性メモリに記憶される、ステップと、
前記イベントより前に前記不揮発性メモリに記憶されたコミット値に基づいて前記1つまたは複数の書込みトランザクションを識別するステップであり、前記1つまたは複数の書込みトランザクションの各々がコミット値を含む、ステップと、
前記識別されたコミットされていない書込みトランザクションのうちの特定の1つを選択するステップと、
前記選択されたコミットされていない書込みトランザクションに対応するレコードの第1のバージョンを前記マルチバージョンデータベースから識別するステップであり、前記第1のバージョンがコミットされていない、ステップと、
前記イベントより前にコミットされた前記レコードの以前のバージョンを識別するステップと、
前記レコードの前記以前のバージョンが可視であり、前記レコードの前記第1のバージョンが可視でないことを示すように、前記レコードの可視性を設定するステップと
を含むコンピュータ実装方法。 - 前記可視性を設定する前記ステップが、
前記レコードの前記以前のバージョンが可視であることを示すために、前記レコードの前記以前のバージョンに対応する削除タイムスタンプを設定するステップであり、トランザクションに対するレコードの前記可視性が前記削除タイムスタンプに基づく、ステップ
を含む、請求項1に記載の方法。 - 前記可視性を設定する前記ステップが、
前記レコードの前記第1のバージョンに対応する削除タイムスタンプをガベージコレクションしきい値未満に設定するステップ
を含む、請求項1に記載の方法。 - 前記ガベージコレクションしきい値が、最も古い実行中のトランザクションが開始された時間に対応する最小開始タイムスタンプに基づく、請求項3に記載の方法。
- 前記イベントが、コンピュータシステムのクラッシュまたはリブートに対応する、請求項1に記載の方法。
- 選択する前記ステップが、
前記識別されたトランザクションが複数のステートメントを含むことを決定するステップであり、前記マルチバージョンデータベースが前記複数のステートメントの各々のステートメント識別子を含む、ステップと、
前記複数のステートメントの第1のステートメントを識別するステップと
を含む、請求項1に記載の方法。 - 前記ステートメント識別子がステートメントカウンタに基づき、前記選択されたコミットされていない書込みトランザクションに対応するトランザクション識別子が、前記ステートメントカウンタとは異なるトランザクションカウンタに対応する、請求項6に記載の方法。
- メモリと、
前記メモリに結合された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサが、
イベントが発生したと判定することであり、前記イベントより前に保留中であったマルチバージョンデータベースの1つまたは複数のレコードに対する1つまたは複数の書込みトランザクションがコミットしておらず、前記マルチバージョンデータベースが不揮発性メモリに記憶される、判定することと、
前記イベントより前に前記不揮発性メモリに記憶されたコミット値に基づいて前記1つまたは複数の書込みトランザクションを識別することであり、前記1つまたは複数の書込みトランザクションの各々がコミット値を含む、識別することと、
前記識別されたコミットされていない書込みトランザクションのうちの特定の1つを選択することと、
前記選択されたコミットされていない書込みトランザクションに対応するレコードの第1のバージョンを前記マルチバージョンデータベースから識別することであり、前記第1のバージョンがコミットされていない、識別することと、
前記イベントより前にコミットされた前記レコードの以前のバージョンを識別することと、
前記レコードの前記以前のバージョンが可視であり、前記レコードの前記第1のバージョンが可視でないことを示すように、前記レコードの可視性を設定することと
を行うように構成されている、システム。 - 前記可視性を設定する前記プロセッサが、
前記レコードの前記以前のバージョンが可視であることを示すために、前記レコードの前記以前のバージョンに対応する削除タイムスタンプを設定することであり、トランザクションに対するレコードの前記可視性が前記削除タイムスタンプに基づく、設定すること
を行うように構成されている、請求項8に記載のシステム。 - 前記可視性を設定する前記プロセッサが、
前記レコードの前記第1のバージョンに対応する削除タイムスタンプをガベージコレクションしきい値未満に設定する
ように構成されている、請求項8に記載のシステム。 - 前記ガベージコレクションしきい値が、最も古い実行中のトランザクションが開始された時間に対応する最小開始タイムスタンプに基づく、請求項10に記載のシステム。
- 前記イベントが、コンピュータシステムのクラッシュまたはリブートに対応する、請求項8に記載のシステム。
- 選択する前記プロセッサが、
前記識別されたトランザクションが複数のステートメントを含むことを決定し、前記マルチバージョンデータベースが前記複数のステートメントの各々のステートメント識別子を含み、
前記複数のステートメントの第1のステートメントを識別する
ように構成されている、請求項8に記載のシステム。 - 前記ステートメント識別子がステートメントカウンタに基づき、前記選択されたコミットされていない書込みトランザクションに対応するトランザクション識別子が、前記ステートメントカウンタとは異なるトランザクションカウンタに対応する、請求項13に記載のシステム。
- 少なくとも1つのコンピューティングデバイスによって実行されると、前記少なくとも1つのコンピューティングデバイスに、
イベントが発生したと判定することであり、前記イベントより前に保留中であったマルチバージョンデータベースの1つまたは複数のレコードに対する1つまたは複数の書込みトランザクションがコミットしておらず、前記マルチバージョンデータベースが不揮発性メモリに記憶される、判定することと、
前記イベントより前に前記不揮発性メモリに記憶されたコミット値に基づいて前記1つまたは複数の書込みトランザクションを識別することであり、前記1つまたは複数の書込みトランザクションの各々がコミット値を含む、識別することと、
前記識別されたコミットされていない書込みトランザクションのうちの特定の1つを選択することと、
前記選択されたコミットされていない書込みトランザクションに対応するレコードの第1のバージョンを前記マルチバージョンデータベースから識別することであり、前記第1のバージョンがコミットされていない、識別することと、
前記イベントより前にコミットされた前記レコードの以前のバージョンを識別することと、
前記レコードの前記以前のバージョンが可視であり、前記レコードの前記第1のバージョンが可視でないことを示すように、前記レコードの可視性を設定することと
を含む動作を実行させる命令が記憶された非一時的コンピュータ可読デバイス。 - 前記可視性を設定することが、
前記レコードの前記以前のバージョンが可視であることを示すために、前記レコードの前記以前のバージョンに対応する削除タイムスタンプを設定することであり、トランザクションに対するレコードの前記可視性が前記削除タイムスタンプに基づく、設定すること
を含む、請求項15に記載のデバイス。 - 前記可視性を設定するように構成された前記1つのコンピューティングデバイスが、
前記レコードの前記第1のバージョンに対応する削除タイムスタンプをガベージコレクションしきい値未満に設定すること
を含む動作を実行するように構成されている、請求項15に記載のデバイス。 - 前記ガベージコレクションしきい値が、最も古い実行中のトランザクションが開始された時間に対応する最小開始タイムスタンプに基づく、請求項17に記載のデバイス。
- 前記イベントが、コンピュータシステムのクラッシュまたはリブートに対応する、請求項15に記載のデバイス。
- 選択するように構成された前記1つのコンピューティングデバイスが、
前記識別されたトランザクションが複数のステートメントを含むことを決定することであり、前記マルチバージョンデータベースが前記複数のステートメントの各々のステートメント識別子を含む、決定することと、
前記複数のステートメントのうちの第1のステートメントを識別することであり、前記ステートメント識別子がステートメントカウンタに基づき、前記選択されたコミットされていない書込みトランザクションに対応するトランザクション識別子が、前記ステートメントカウンタとは異なるトランザクションカウンタに対応する、識別することと
を含む動作を実行するように構成されている、請求項15に記載のデバイス。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762594270P | 2017-12-04 | 2017-12-04 | |
US62/594,270 | 2017-12-04 | ||
US15/900,150 US10795877B2 (en) | 2017-12-04 | 2018-02-20 | Multi-version concurrency control (MVCC) in non-volatile memory |
US15/900,150 | 2018-02-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019102059A true JP2019102059A (ja) | 2019-06-24 |
JP7101566B2 JP7101566B2 (ja) | 2022-07-15 |
Family
ID=63528511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018161332A Active JP7101566B2 (ja) | 2017-12-04 | 2018-08-30 | 不揮発性メモリにおけるマルチバージョン同時実行制御(mvcc) |
Country Status (6)
Country | Link |
---|---|
US (1) | US10795877B2 (ja) |
EP (1) | EP3493071A1 (ja) |
JP (1) | JP7101566B2 (ja) |
CN (1) | CN109871386B (ja) |
AU (1) | AU2018220055B2 (ja) |
CA (1) | CA3015328A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10394468B2 (en) | 2017-02-23 | 2019-08-27 | International Business Machines Corporation | Handling data slice revisions in a dispersed storage network |
US11675738B2 (en) | 2017-08-29 | 2023-06-13 | Neustar, Inc. | Database locking using logical lock mechanism |
CN110515705B (zh) * | 2019-08-07 | 2022-03-11 | 上海交通大学 | 可扩展的持久性事务内存及其工作方法 |
CN110825752B (zh) * | 2019-10-16 | 2020-11-10 | 深圳巨杉数据库软件有限公司 | 基于无碎片回收的数据库多版本并发控制系统 |
US11593026B2 (en) * | 2020-03-06 | 2023-02-28 | International Business Machines Corporation | Zone storage optimization using predictive protocol patterns |
US11422970B2 (en) * | 2020-05-11 | 2022-08-23 | Sap Se | Handling of data archiving events in a replication system |
US11436212B2 (en) * | 2020-09-22 | 2022-09-06 | Snowflake Inc. | Concurrent transaction processing in a database system |
US11468032B2 (en) | 2020-09-22 | 2022-10-11 | Snowflake Inc. | Concurrent transaction processing in a database system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06318165A (ja) * | 1991-03-28 | 1994-11-15 | Internatl Business Mach Corp <Ibm> | 故障後の再起動中でのトランザクション適応システムにおいてデータを利用可能にする方法 |
US20100106753A1 (en) * | 2008-10-24 | 2010-04-29 | Microsoft Corporation | Cyclic commit transaction protocol |
JP2014215914A (ja) * | 2013-04-26 | 2014-11-17 | 株式会社東芝 | 端末装置、情報処理方法及び情報処理プログラム |
US20150355981A1 (en) * | 2014-06-09 | 2015-12-10 | Daniel Booss | Hybrid SCM-DRAM Transactional Storage Engine For Fast Data Recovery |
JP2016162981A (ja) * | 2015-03-04 | 2016-09-05 | 国立大学法人九州工業大学 | 改質mr流体及びこの改質mr流体を用いた把持機構並びに把持装置 |
JP2017027326A (ja) * | 2015-07-22 | 2017-02-02 | 株式会社東芝 | ストレージシステムおよびストレージシステム用プログラム |
JP2017054207A (ja) * | 2015-09-07 | 2017-03-16 | 富士通株式会社 | データベース制御プログラム、データベース制御方法及びデータベース制御装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9417974B2 (en) | 2013-03-28 | 2016-08-16 | Microsoft Technology Licensing, Llc. | Transaction processing for database in persistent system |
US10035497B2 (en) | 2013-10-24 | 2018-07-31 | Mitsuba Corporation | Wiper blade |
US10474645B2 (en) * | 2014-02-24 | 2019-11-12 | Microsoft Technology Licensing, Llc | Automatically retrying transactions with split procedure execution |
US9430274B2 (en) * | 2014-03-28 | 2016-08-30 | Futurewei Technologies, Inc. | Efficient methods and systems for consistent read in record-based multi-version concurrency control |
US20160125022A1 (en) | 2014-10-31 | 2016-05-05 | Microsoft Corporation | Efficient maintenance of column store indexes on memory-optimized tables |
US10409864B2 (en) * | 2014-11-25 | 2019-09-10 | Sap Se | Transaction control block for multiversion concurrency commit status |
US10127260B2 (en) | 2014-11-25 | 2018-11-13 | Sap Se | In-memory database system providing lockless read and write operations for OLAP and OLTP transactions |
US9952931B2 (en) | 2016-01-19 | 2018-04-24 | Microsoft Technology Licensing, Llc | Versioned records management using restart era |
-
2018
- 2018-02-20 US US15/900,150 patent/US10795877B2/en active Active
- 2018-08-22 AU AU2018220055A patent/AU2018220055B2/en active Active
- 2018-08-23 CA CA3015328A patent/CA3015328A1/en active Pending
- 2018-08-28 EP EP18191143.9A patent/EP3493071A1/en active Pending
- 2018-08-30 JP JP2018161332A patent/JP7101566B2/ja active Active
- 2018-08-31 CN CN201811009677.6A patent/CN109871386B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06318165A (ja) * | 1991-03-28 | 1994-11-15 | Internatl Business Mach Corp <Ibm> | 故障後の再起動中でのトランザクション適応システムにおいてデータを利用可能にする方法 |
US20100106753A1 (en) * | 2008-10-24 | 2010-04-29 | Microsoft Corporation | Cyclic commit transaction protocol |
JP2014215914A (ja) * | 2013-04-26 | 2014-11-17 | 株式会社東芝 | 端末装置、情報処理方法及び情報処理プログラム |
US20150355981A1 (en) * | 2014-06-09 | 2015-12-10 | Daniel Booss | Hybrid SCM-DRAM Transactional Storage Engine For Fast Data Recovery |
JP2016162981A (ja) * | 2015-03-04 | 2016-09-05 | 国立大学法人九州工業大学 | 改質mr流体及びこの改質mr流体を用いた把持機構並びに把持装置 |
JP2017027326A (ja) * | 2015-07-22 | 2017-02-02 | 株式会社東芝 | ストレージシステムおよびストレージシステム用プログラム |
JP2017054207A (ja) * | 2015-09-07 | 2017-03-16 | 富士通株式会社 | データベース制御プログラム、データベース制御方法及びデータベース制御装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109871386A (zh) | 2019-06-11 |
CA3015328A1 (en) | 2019-06-04 |
AU2018220055A1 (en) | 2019-06-20 |
EP3493071A1 (en) | 2019-06-05 |
JP7101566B2 (ja) | 2022-07-15 |
CN109871386B (zh) | 2023-02-28 |
AU2018220055B2 (en) | 2024-05-23 |
US20190171721A1 (en) | 2019-06-06 |
US10795877B2 (en) | 2020-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7101566B2 (ja) | 不揮発性メモリにおけるマルチバージョン同時実行制御(mvcc) | |
CN107077495B (zh) | 数据库管理系统中的高性能事务 | |
US10241907B2 (en) | DBMS storage management for non-volatile memory | |
CN108363806B (zh) | 数据库的多版本并发控制方法、装置、服务器及存储介质 | |
EP3111347B1 (en) | Efficient methods and systems for consistent read in record-based multi-version concurrency control | |
EP3170106B1 (en) | High throughput data modifications using blind update operations | |
US9098522B2 (en) | Version garbage collection using snapshot lists | |
US8909610B2 (en) | Shared log-structured multi-version transactional datastore with metadata to enable melding trees | |
Levandoski et al. | LLAMA: A cache/storage subsystem for modern hardware | |
EP3827347B1 (en) | Constant time database recovery | |
US9053153B2 (en) | Inter-query parallelization of constraint checking | |
US20140040208A1 (en) | Early release of transaction locks based on tags | |
US20220382651A1 (en) | Fast recovery and replication of key-value stores | |
JP7395227B2 (ja) | データバックアップ方法、装置、サーバ及びコンピュータプログラム | |
KR101419428B1 (ko) | 모바일 환경에 구축된 데이터베이스에 대한 트랜잭션 로깅 및 회복 장치 및 그 방법 | |
CN114816224A (zh) | 数据管理方法和数据管理装置 | |
CN114691307A (zh) | 事务处理方法及计算机系统 | |
Nguyen et al. | In-page shadowing and two-version timestamp ordering for mobile DBMSs | |
Schwalb et al. | Leveraging non-volatile memory for instant restarts of in-memory database systems | |
Cai et al. | Garbage collection and data recovery for N2DB | |
Xu et al. | An Efficient Bucket Logging for Persistent Memory | |
US11379433B2 (en) | Persistent version storage for relational database management system | |
Magalhaes et al. | MM-DIRECT | |
Wang | Building a More Efficient Cache Hierarchy by Taking Advantage of Related Instances of Objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210702 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220120 |
|
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: 20220606 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220705 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7101566 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |