JP6362316B2 - バッファ・プールをメモリ常駐型データのための常在インメモリ・ストレージとして用いた、ハイブリッド・テーブル実装のための方法、システム、およびコンピュータ・プログラム製品 - Google Patents
バッファ・プールをメモリ常駐型データのための常在インメモリ・ストレージとして用いた、ハイブリッド・テーブル実装のための方法、システム、およびコンピュータ・プログラム製品 Download PDFInfo
- Publication number
- JP6362316B2 JP6362316B2 JP2013215799A JP2013215799A JP6362316B2 JP 6362316 B2 JP6362316 B2 JP 6362316B2 JP 2013215799 A JP2013215799 A JP 2013215799A JP 2013215799 A JP2013215799 A JP 2013215799A JP 6362316 B2 JP6362316 B2 JP 6362316B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- reference value
- disk
- memory storage
- 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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90339—Query processing by using parallel associative memories or content-addressable memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/119—Details of migration of file 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/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/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computational Linguistics (AREA)
Description
220 バッファ
230 ディスク・メモリ・ストレージ
240 インメモリ・ストレージ
Claims (17)
- 一つ以上のプロセッサを用いて実装される検索エンジンが、データベースに対する検索インデックスを生成するステップであって、前記検索インデックスは、データを第一メモリまたは第二メモリ中のストレージ場所にそれぞれ関連付ける第一型の参照値または第二型の参照値を有する、前記生成するステップと、
前記検索エンジンが、データ読み出し要求に応じ、前記参照値を使って、前記第一メモリまたは前記第二メモリのデータにアクセスするステップと、
前記検索エンジンが、前記検索インデックスの参照内容の型を変更し参照値を再計算することによって、前記第一メモリと第二メモリとの間でデータを移行するステップと、
を含む、データ・マネジメントの方法。 - 前記第一メモリがインメモリ・ストレージであり、前記第二メモリがディスク・メモリ・ストレージである、請求項1に記載の方法。
- 前記データ読み出し要求の対象である特定のデータのアドレスが前記ディスク・メモリ・ストレージのアドレスであって、前記特定のデータがバッファ・プールにおいてアクセス可能であると判定された場合、前記第二型の前記参照値を使って、前記バッファ・プールの前記特定のデータにアクセスするステップをさらに含む、請求項2に記載の方法。
- 前記検索インデックスがツリー構造のインデックスである、請求項3に記載の方法。
- 前記ツリーが葉ノードを有する、請求項4に記載の方法。
- 前記第一型の前記参照値はインメモリ・ストレージへのページ・ポインタであり、前記第二型の前記参照値はページのディスク・アドレスである、請求項5に記載の方法。
- 与えられた前記参照値による前記ページ・ポインタまたは前記ページのディスク・アドレスを用いて、データ・アクセスが提供される、請求項6に記載の方法。
- インメモリ中のメモリ・データに対する前記葉ノードのインデキシング参照値は、前記バッファ・プール中のページへのポインタであり、ディスク・データに対する前記葉ノードのインデキシング参照値は、ディスク・アドレスである、請求項5に記載の方法。
- 前記検索インデックスが、バイナリ(Bツリー)インデックス構造体である、請求項5に記載の方法。
- 前記検索インデックスは複数の行および列を有し、前記行は関連付けられたキーを有する、請求項6に記載の方法。
- 前記キーの順序付けが、前記行の順序付けに対応する、請求項10に記載の方法。
- データ・マネジメントのためのコンピュータ・プログラムであって、前記コンピュータ・プログラムが、コンピュータに、データベースに対する検索インデックスを生成するステップであって、前記検索インデックスは、データを第一メモリまたは第二メモリ中のストレージ場所にそれぞれ関連付ける第一型の参照値または第二型の参照値を有する、前記生成するステップと、
データ読み出し要求に応じ、前記参照値を使って、前記第一メモリまたは前記第二メモリのデータにアクセスするステップと、
前記検索インデックスの参照内容の型を変更し参照値を再計算することによって、前記第一メモリと第二メモリとの間でデータを移行するステップと、
を実行させる、コンピュータ・プログラム。 - 前記検索インデックスは複数の行および列を有し、前記インデックスは各行に対応する関連付けられたキーを有する、請求項12に記載のコンピュータ・プログラム。
- インデキシングの粒度はページであり、前記検索インデックスは、追加のオンページ・アクセスを持つことができるようにされた、請求項13に記載のコンピュータ・プログラム。
- 前記第一メモリがインメモリ・ストレージであり、前記第二メモリがディスク・メモリ・ストレージである、請求項14に記載のコンピュータ・プログラム。
- 前記検索インデックスが、スパース・インデックスであり、ディスク・ページとメモリ・ページとは、内容を除いて構造が同一である、請求項14に記載のコンピュータ・プログラム。
- インメモリ・ストレージと、
前記インメモリ・ストレージと処理通信をしているディスク・メモリ・ストレージと、
前記インメモリ・ストレージおよび前記ディスク・メモリ・ストレージと処理通信をしているバッファであって、前記バッファはバッファ・プールを取り扱うためのバッファ・プール・マネージャを含む、前記バッファと、
データ検索インデックス構造体を管理するための少なくとも一つのプロセッサを有するデータベース検索エンジンであって、前記検索インデックスはデータを前記インメモリ・ストレージおよび前記ディスク・メモリ・ストレージに関連付ける第一型の参照値または第二型の参照値を有する、前記検索エンジンと、
を含むシステムであって、
前記第一型の参照値は、前記バッファ・プール中の、インメモリ・ストレージへのページ・ポインタであり、前記第二型の参照値は、前記バッファ・プールによって処理されるページのディスク・アドレスであり、
前記検索エンジンは、前記検索インデックスの参照内容の型を変更し参照値を再計算することによって、前記インメモリ・ストレージと前記ディスク・メモリ・ストレージとの間でデータを移行する、システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/675634 | 2012-11-13 | ||
US13/675,634 US10114908B2 (en) | 2012-11-13 | 2012-11-13 | Hybrid table implementation by using buffer pool as permanent in-memory storage for memory-resident data |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014099163A JP2014099163A (ja) | 2014-05-29 |
JP6362316B2 true JP6362316B2 (ja) | 2018-07-25 |
Family
ID=50682727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013215799A Active JP6362316B2 (ja) | 2012-11-13 | 2013-10-16 | バッファ・プールをメモリ常駐型データのための常在インメモリ・ストレージとして用いた、ハイブリッド・テーブル実装のための方法、システム、およびコンピュータ・プログラム製品 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10114908B2 (ja) |
JP (1) | JP6362316B2 (ja) |
CN (1) | CN103810237B (ja) |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9582588B2 (en) | 2012-06-07 | 2017-02-28 | Google Inc. | Methods and systems for providing custom crawl-time metadata |
US9189518B2 (en) * | 2012-10-19 | 2015-11-17 | International Business Machines Corporation | Gathering index statistics using sampling |
ES2924347T3 (es) * | 2015-03-26 | 2022-10-06 | Nagravision Sa | Método y sistema para buscar al menos un dato específico en una unidad de usuario |
CN109299113B (zh) * | 2015-06-08 | 2021-03-30 | 南京航空航天大学 | 具有存储感知的混合索引的范围查询方法 |
KR102525295B1 (ko) * | 2016-01-06 | 2023-04-25 | 삼성전자주식회사 | 데이터 관리 방법 및 장치 |
JP2018018133A (ja) * | 2016-07-25 | 2018-02-01 | 富士通株式会社 | 情報処理装置、ストリームストレージ制御プログラム、及びインデックスデータ参照方法 |
CN106484790B (zh) * | 2016-09-20 | 2021-03-26 | 上海万格生物科技有限公司 | 一种信息系统的样本库信息管理方法及装置 |
WO2018067471A1 (en) | 2016-10-03 | 2018-04-12 | Ocient Llc | Payload store and index store in highly parallel database management system |
US10747738B2 (en) | 2016-12-14 | 2020-08-18 | Ocient, Inc. | Efficient database management system and method for prioritizing analytical calculations on datasets |
WO2018112074A1 (en) | 2016-12-14 | 2018-06-21 | Ocient Llc | System and method for utilizing a designated leader within a database management system |
WO2018187229A1 (en) * | 2017-04-03 | 2018-10-11 | Ocient, Inc | Database management system using hybrid indexing list and hierarchical query processing architecture |
US11269842B2 (en) * | 2017-05-09 | 2022-03-08 | Accenture Global Solutions Limited | Data storage layer index for efficient information retrieval |
US10747765B2 (en) | 2017-05-30 | 2020-08-18 | Ocient Inc. | System and method for optimizing large database management systems with multiple optimizers |
ES2977411T3 (es) * | 2017-08-29 | 2024-08-23 | Repsol Sa | Método implementado por ordenador para manipular un modelo numérico de un dominio en 3D |
US11182125B2 (en) | 2017-09-07 | 2021-11-23 | Ocient Inc. | Computing device sort function |
US10776165B2 (en) * | 2018-05-15 | 2020-09-15 | Sap Se | Optimized database resource handling |
US11886436B2 (en) | 2018-10-15 | 2024-01-30 | Ocient Inc. | Segmenting a partition of a data set based on a data storage coding scheme |
US11709835B2 (en) | 2018-10-15 | 2023-07-25 | Ocient Holdings LLC | Re-ordered processing of read requests |
US12050580B2 (en) | 2018-10-15 | 2024-07-30 | Ocient Inc. | Data segment storing in a database system |
US11880368B2 (en) | 2018-10-15 | 2024-01-23 | Ocient Holdings LLC | Compressing data sets for storage in a database system |
US11256696B2 (en) | 2018-10-15 | 2022-02-22 | Ocient Holdings LLC | Data set compression within a database system |
CN109407985B (zh) * | 2018-10-15 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种数据管理的方法以及相关装置 |
US11249916B2 (en) | 2018-10-15 | 2022-02-15 | Ocient Holdings LLC | Single producer single consumer buffering in database systems |
US11360953B2 (en) * | 2019-07-26 | 2022-06-14 | Hitachi Vantara Llc | Techniques for database entries de-duplication |
JP7237782B2 (ja) | 2019-09-13 | 2023-03-13 | キオクシア株式会社 | ストレージシステム及びその制御方法 |
US11093500B2 (en) | 2019-10-28 | 2021-08-17 | Ocient Holdings LLC | Enforcement of minimum query cost rules required for access to a database system |
US11106679B2 (en) | 2019-10-30 | 2021-08-31 | Ocient Holdings LLC | Enforcement of sets of query rules for access to data supplied by a plurality of data providers |
US11609911B2 (en) | 2019-12-19 | 2023-03-21 | Ocient Holdings LLC | Selecting a normalized form for conversion of a query expression |
US11853364B2 (en) | 2020-01-31 | 2023-12-26 | Ocient Holdings LLC | Level-based queries in a database system and methods for use therewith |
US11061910B1 (en) | 2020-01-31 | 2021-07-13 | Ocient Holdings LLC | Servicing concurrent queries via virtual segment recovery |
US11238041B2 (en) | 2020-03-25 | 2022-02-01 | Ocient Holdings LLC | Facilitating query executions via dynamic data block routing |
US11599463B2 (en) | 2020-03-25 | 2023-03-07 | Ocient Holdings LLC | Servicing queries during data ingress |
US11580102B2 (en) | 2020-04-02 | 2023-02-14 | Ocient Holdings LLC | Implementing linear algebra functions via decentralized execution of query operator flows |
US11294916B2 (en) | 2020-05-20 | 2022-04-05 | Ocient Holdings LLC | Facilitating query executions via multiple modes of resultant correctness |
CN111597403B (zh) * | 2020-05-21 | 2023-06-27 | 抖音视界有限公司 | 一种构建图索引的方法、装置、电子设备及存储介质 |
CN111708958B (zh) * | 2020-06-12 | 2024-04-12 | 中国工商银行股份有限公司 | 一种多键值缓存存储方法、装置及系统 |
CN111831655B (zh) * | 2020-06-24 | 2024-04-09 | 北京字节跳动网络技术有限公司 | 一种数据处理的方法、装置、介质和电子设备 |
US11775529B2 (en) | 2020-07-06 | 2023-10-03 | Ocient Holdings LLC | Recursive functionality in relational database systems |
US11321288B2 (en) | 2020-08-05 | 2022-05-03 | Ocient Holdings LLC | Record deduplication in database systems |
US11880716B2 (en) | 2020-08-05 | 2024-01-23 | Ocient Holdings LLC | Parallelized segment generation via key-based subdivision in database systems |
US11755589B2 (en) | 2020-08-05 | 2023-09-12 | Ocient Holdings LLC | Delaying segment generation in database systems |
US11822532B2 (en) | 2020-10-14 | 2023-11-21 | Ocient Holdings LLC | Per-segment secondary indexing in database systems |
US11507578B2 (en) | 2020-10-19 | 2022-11-22 | Ocient Holdings LLC | Delaying exceptions in query execution |
US11675757B2 (en) | 2020-10-29 | 2023-06-13 | Ocient Holdings LLC | Maintaining row durability data in database systems |
US11297123B1 (en) | 2020-12-11 | 2022-04-05 | Ocient Holdings LLC | Fault-tolerant data stream processing |
US11314743B1 (en) | 2020-12-29 | 2022-04-26 | Ocient Holdings LLC | Storing records via multiple field-based storage mechanisms |
CN113515508B (zh) * | 2021-04-01 | 2022-08-02 | 广州云硕科技发展有限公司 | 一种用于智能机器人的信息采集方法及系统 |
US11645273B2 (en) | 2021-05-28 | 2023-05-09 | Ocient Holdings LLC | Query execution utilizing probabilistic indexing |
US11874765B2 (en) | 2021-05-28 | 2024-01-16 | International Business Machines Corporation | Buffer pool management |
US11803544B2 (en) | 2021-10-06 | 2023-10-31 | Ocient Holdings LLC | Missing data-based indexing in database systems |
US11983172B2 (en) | 2021-12-07 | 2024-05-14 | Ocient Holdings LLC | Generation of a predictive model for selection of batch sizes in performing data format conversion |
US12072887B1 (en) | 2023-05-01 | 2024-08-27 | Ocient Holdings LLC | Optimizing an operator flow for performing filtering based on new columns values via a database system |
CN117235078B (zh) * | 2023-11-15 | 2024-01-30 | 湖南速子文化科技有限公司 | 一种高速处理海量数据的方法、系统、装置及存储介质 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2708657B2 (ja) | 1992-02-18 | 1998-02-04 | 富士通株式会社 | スプリット制御方法 |
US6708178B1 (en) * | 2001-06-04 | 2004-03-16 | Oracle International Corporation | Supporting B+tree indexes on primary B+tree structures with large primary keys |
US7113953B2 (en) | 2003-06-30 | 2006-09-26 | International Business Machines Corporation | System and method for efficiently writing data from an in-memory database to a disk database |
JP4739786B2 (ja) | 2005-03-28 | 2011-08-03 | 株式会社日立製作所 | データの再配置方法 |
US7870122B2 (en) | 2007-04-23 | 2011-01-11 | Microsoft Corporation | Self-tuning index for flash-based databases |
US8151084B2 (en) | 2008-01-23 | 2012-04-03 | Oracle America, Inc. | Using address and non-address information for improved index generation for cache memories |
US7974967B2 (en) | 2008-04-15 | 2011-07-05 | Sap Ag | Hybrid database system using runtime reconfigurable hardware |
US20110113208A1 (en) | 2008-05-01 | 2011-05-12 | Norman Paul Jouppi | Storing checkpoint data in non-volatile memory |
US8572085B2 (en) * | 2008-05-19 | 2013-10-29 | Technion Research & Development Foundation Limited | Apparatus and method for incremental physical data clustering |
US8397051B2 (en) | 2009-02-23 | 2013-03-12 | Autonomy, Inc. | Hybrid hash tables |
US8180763B2 (en) * | 2009-05-29 | 2012-05-15 | Microsoft Corporation | Cache-friendly B-tree accelerator |
JP5256173B2 (ja) | 2009-11-18 | 2013-08-07 | 株式会社日立製作所 | データベース管理方法、データベース管理システム及びデータベース管理プログラム |
US9235531B2 (en) * | 2010-03-04 | 2016-01-12 | Microsoft Technology Licensing, Llc | Multi-level buffer pool extensions |
US8433684B2 (en) | 2010-03-30 | 2013-04-30 | Sybase, Inc. | Managing data backup of an in-memory database in a database management system |
US9251214B2 (en) | 2010-04-08 | 2016-02-02 | Microsoft Technology Licensing, Llc | In-memory database system |
US10430298B2 (en) | 2010-10-28 | 2019-10-01 | Microsoft Technology Licensing, Llc | Versatile in-memory database recovery using logical log records |
US9495398B2 (en) | 2011-02-18 | 2016-11-15 | International Business Machines Corporation | Index for hybrid database |
-
2012
- 2012-11-13 US US13/675,634 patent/US10114908B2/en not_active Expired - Fee Related
-
2013
- 2013-10-16 JP JP2013215799A patent/JP6362316B2/ja active Active
- 2013-11-13 CN CN201310571289.8A patent/CN103810237B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
US10114908B2 (en) | 2018-10-30 |
CN103810237A (zh) | 2014-05-21 |
CN103810237B (zh) | 2017-03-01 |
JP2014099163A (ja) | 2014-05-29 |
US20140136510A1 (en) | 2014-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6362316B2 (ja) | バッファ・プールをメモリ常駐型データのための常在インメモリ・ストレージとして用いた、ハイブリッド・テーブル実装のための方法、システム、およびコンピュータ・プログラム製品 | |
US9977802B2 (en) | Large string access and storage | |
KR101938953B1 (ko) | 빅 데이터 질의 엔진을 위한 플래시 최적화된 열 데이터 배치 및 데이터 액세스 처리 알고리즘 | |
US9805079B2 (en) | Executing constant time relational queries against structured and semi-structured data | |
US10831736B2 (en) | Fast multi-tier indexing supporting dynamic update | |
US8868926B2 (en) | Cryptographic hash database | |
WO2018064962A1 (zh) | 数据存储方法、电子设备和计算机非易失性存储介质 | |
US9311252B2 (en) | Hierarchical storage for LSM-based NoSQL stores | |
TWI603211B (zh) | Construction of inverted index system based on Lucene, data processing method and device | |
US20180239788A1 (en) | Paged column dictionary | |
US9292554B2 (en) | Thin database indexing | |
US20120215752A1 (en) | Index for hybrid database | |
US10521117B2 (en) | Unified table delta dictionary memory size and load time optimization | |
JP6670097B2 (ja) | 関係型データベース表の列横断的検索 | |
CN103914483A (zh) | 文件存储方法、装置及文件读取方法、装置 | |
JP6006740B2 (ja) | インデックス管理装置 | |
US9292553B2 (en) | Queries for thin database indexing | |
EP3696688B1 (en) | Locking based on categorical memory allocation | |
US20210286793A1 (en) | Indexing stored data objects using probabilistic filters | |
Omar et al. | A scalable array storage for efficient maintenance of future data | |
Pagh | Basic external memory data structures | |
Byun et al. | A column-aware index management using flash memory for read-intensive databases | |
US20170337003A1 (en) | System and Method for Concurrent Indexing and Searching of Data in Working Memory | |
US11010101B1 (en) | Object storage subsystems | |
TWI475419B (zh) | 用於在儲存系統上存取檔案的方法和系統 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161004 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170823 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170905 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171201 |
|
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: 20180605 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180626 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6362316 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |