JP6004453B2 - 展開マップを用いた改良されたデータアクセスのパフォーマンス - Google Patents
展開マップを用いた改良されたデータアクセスのパフォーマンス Download PDFInfo
- Publication number
- JP6004453B2 JP6004453B2 JP2014169597A JP2014169597A JP6004453B2 JP 6004453 B2 JP6004453 B2 JP 6004453B2 JP 2014169597 A JP2014169597 A JP 2014169597A JP 2014169597 A JP2014169597 A JP 2014169597A JP 6004453 B2 JP6004453 B2 JP 6004453B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- subset
- compressed
- row
- computer program
- 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
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/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- 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/24—Querying
- G06F16/245—Query processing
-
- 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/24553—Query execution of query operations
- G06F16/24561—Intermediate data storage techniques for performance improvement
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
列C1(行のバイト1〜10)のみが必要とされる。
C1は既に展開されているため、列C17(行のバイト161〜170)のみが必要とされる。
202:プロセッサ
204:記憶素子
205:オペレーティングシステム
206:コンピュータプログラム
208:ネットワークアダプタ
210:I/Oコントローラ
212:入力装置
214:出力装置
216:記憶装置
220:システムバス
Claims (20)
- データベースシステム内のデータを展開するためにコンピュータが実行する方法であって、
圧縮されているデータセット内のデータサブセットに関連するクエリーを受信するステップと、
見積もられたフィルターファクタを有するコストモデルを使用して、1以上の展開ストラテジーを評価するステップと、
1以上の展開ストラテジーの評価結果に基づいて、コストの低い展開ストラテジーを選択するステップと、
圧縮されているデータセット内の要求されているデータサブセットを表す1以上のバイトの位置を特定するステップと、
選択された展開ストラテジーを用いて、データサブセットに対応する圧縮されているデータの一部のみを展開し、残りのデータセットを圧縮された状態のままにするステップと
を含む、方法。 - 前記データサブセットは、
1のデータベーステーブルの1の行に含まれる複数列のサブセット、
前記データベーステーブル内の複数列または複数バイトのサブセット、
前記データベーステーブルの1のページ内の複数列のサブセット
のうちの1つを含む、請求項1に記載の方法。 - 前記展開ストラテジーは、2以上の展開段階を含む、請求項1または2に記載の方法。
- 1以上の展開ストラテジーを評価するステップは、
1の行内の列のサブセットのみを展開するためのコストを算出するステップと、
算出したコストと前記行内の全ての列を展開するコストとを比較するステップと
を含む、請求項1〜3のいずれか1項に記載の方法。 - 前記圧縮されているデータセット内の要求されているデータサブセットを示す1以上のバイトの位置を特定するステップは、
圧縮されているデータの特定の数のバイトを示すユニットを決定するステップと、
前記圧縮されているデータセット内の要求されているデータサブセットを示す1以上のバイトを取得するために、いずれのユニットを展開する必要があるか決定するステップと
を含む、請求項1〜4のいずれか1項に記載の方法。 - 前記方法は、
各ユニットの開始位置に対するオフセットを表す各行のマップを格納するステップをさらに含む、請求項5に記載の方法。 - 前記マップは、前記データベースシステムのバッファメモリに配列として格納されることを特徴とする、請求項6に記載の方法。
- 各可変長の列が、可変長の列の長さを示す数に応じて整列されることを特徴とする、請求項5〜7のいずれか1項に記載の方法。
- 前記展開は、行の先頭から開始することを特徴とする、請求項1〜8のいずれか1項に記載の方法。
- 前記展開は、行の最後から開始することを特徴とする、請求項1〜8のいずれか1項に記載の方法。
- データベースシステム内のデータを展開するコンピュータプログラムであって、前記コンピュータプログラムは、プログラムコードを有するコンピュータ読取可能な記憶媒体を備え、前記プログラムコードが、プロセッサによって実行されることにより、前記プロセッサが、
圧縮されているデータセット内のデータサブセットに関連するクエリーを受信するステップと、
見積もられたフィルターファクタを有するコストモデルを使用して、1以上の展開ストラテジーを評価するステップと、
1以上の展開ストラテジーの評価結果に基づいて、コストの低い展開ストラテジーを選択するステップと、
圧縮されているデータセット内の要求されているデータサブセットを表す1以上のバイトの位置を特定するステップと、
選択された展開ストラテジーを用いて、データサブセットに対応する圧縮されているデータの一部のみを展開し、残りのデータセットを圧縮された状態のままにするステップと
を実行する、コンピュータプログラム。 - 前記データサブセットは、
1のデータベーステーブルの1の行に含まれる複数列のサブセット、
前記データベーステーブル内の複数列または複数バイトのサブセット、
前記データベーステーブルの1のページ内の複数列のサブセット
のうちの1つを含む、請求項11に記載のコンピュータプログラム。 - 前記展開ストラテジーは、2以上の展開段階を含む、請求項11または12に記載のコンピュータプログラム。
- 1以上の展開ストラテジーを評価するステップは、
1の行内の列のサブセットのみを展開するためのコストを算出するステップと、
算出したコストと前記行内の全ての列を展開するコストとを比較するステップと
を含む、請求項11〜13のいずれか1項に記載のコンピュータプログラム。 - 前記圧縮されているデータセット内の要求されているデータサブセットを示す1以上のバイトの位置を特定するステップは、前記プロセッサが、
圧縮されているデータの特定の数のバイトを示すユニットを決定するステップと、
前記圧縮されているデータセット内の要求されているデータサブセットを示す1以上のバイトを取得するために、いずれのユニットを展開する必要があるか決定するステップと
を含む、請求項11〜14のいずれか1項に記載のコンピュータプログラム。 - 前記プロセッサに対し、各ユニットの開始位置に対するオフセットを表す各行のマップを格納するステップを実行させるプログラムコードをさらに備える、請求項15に記載のコンピュータプログラム。
- 前記マップは、前記データベースシステムのバッファメモリに配列として格納されることを特徴とする、請求項16に記載のコンピュータプログラム。
- 各可変長の列が、可変長の列の長さを示す数に応じて整列されることを特徴とする、請求項15〜17のいずれか1項に記載のコンピュータプログラム。
- 前記展開は、行の先頭から開始することを特徴とする、請求項11〜18のいずれか1項に記載のコンピュータプログラム。
- 前記展開は、行の最後から開始することを特徴とする、請求項11〜18のいずれか1項に記載のコンピュータプログラム。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/032,122 US9753983B2 (en) | 2013-09-19 | 2013-09-19 | Data access using decompression maps |
US14/032122 | 2013-09-19 | ||
US14/307,838 US9753984B2 (en) | 2013-09-19 | 2014-06-18 | Data access using decompression maps |
US14/307838 | 2014-06-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015060590A JP2015060590A (ja) | 2015-03-30 |
JP6004453B2 true JP6004453B2 (ja) | 2016-10-05 |
Family
ID=52668946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014169597A Active JP6004453B2 (ja) | 2013-09-19 | 2014-08-22 | 展開マップを用いた改良されたデータアクセスのパフォーマンス |
Country Status (3)
Country | Link |
---|---|
US (4) | US9753983B2 (ja) |
JP (1) | JP6004453B2 (ja) |
CN (1) | CN104462176B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10432217B2 (en) | 2016-06-28 | 2019-10-01 | International Business Machines Corporation | Page filtering via compression dictionary filtering |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10223399B2 (en) | 2015-11-03 | 2019-03-05 | International Business Machines Corporation | Global filter factor estimation |
US10877668B2 (en) | 2018-12-05 | 2020-12-29 | Intel Corporation | Storage node offload of residual part of a portion of compressed and distributed data to a second storage node for decompression |
US20190196907A1 (en) * | 2019-03-05 | 2019-06-27 | Intel Corporation | Compression techniques for distributed data |
US12118041B2 (en) * | 2019-10-13 | 2024-10-15 | Thoughtspot, Inc. | Query execution on compressed in-memory data |
US11971856B2 (en) * | 2020-01-31 | 2024-04-30 | Snowflake Inc. | Efficient database query evaluation |
US11558067B2 (en) * | 2020-05-19 | 2023-01-17 | Sap Se | Data compression techniques |
CN111723053A (zh) * | 2020-06-24 | 2020-09-29 | 北京航天数据股份有限公司 | 一种数据的压缩方法及装置、解压方法及装置 |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442350A (en) | 1992-10-29 | 1995-08-15 | International Business Machines Corporation | Method and means providing static dictionary structures for compressing character data and expanding compressed data |
US6170047B1 (en) | 1994-11-16 | 2001-01-02 | Interactive Silicon, Inc. | System and method for managing system memory and/or non-volatile memory using a memory controller with integrated compression and decompression capabilities |
US6002411A (en) | 1994-11-16 | 1999-12-14 | Interactive Silicon, Inc. | Integrated video and memory controller with data processing and graphical processing capabilities |
US6606040B2 (en) | 2001-02-13 | 2003-08-12 | Mosaid Technologies, Inc. | Method and apparatus for adaptive data compression |
US6614368B1 (en) | 2002-01-16 | 2003-09-02 | Unisys Corporation | Data compression method and apparatus utilizing cascaded character tables |
US7051152B1 (en) | 2002-08-07 | 2006-05-23 | Nvidia Corporation | Method and system of improving disk access time by compression |
US20050210023A1 (en) | 2004-03-18 | 2005-09-22 | Renato Barrera | Query optimizer using implied predicates |
US7526607B1 (en) | 2004-09-23 | 2009-04-28 | Juniper Networks, Inc. | Network acceleration and long-distance pattern detection using improved caching and disk mapping |
US20060098031A1 (en) * | 2004-10-26 | 2006-05-11 | Lai Jimmy K L | System and method for effectively performing image rotation procedures in a compressed domain |
CN100343851C (zh) * | 2004-11-03 | 2007-10-17 | 北京神舟航天软件技术有限公司 | 数据库压缩及解压缩方法 |
CN1904882A (zh) * | 2005-07-26 | 2007-01-31 | 北京九州汇宝软件有限公司 | 数据库近线数据的压缩方法 |
WO2008105406A1 (ja) | 2007-02-27 | 2008-09-04 | Nec Corporation | データ収集システム、データ収集方法、およびデータ収集プログラム |
US10430415B2 (en) | 2008-12-23 | 2019-10-01 | International Business Machines Corporation | Performing predicate-based data compression |
US7987162B2 (en) * | 2009-03-06 | 2011-07-26 | Bluearc Uk Limited | Data compression in a file storage system |
JP2010250449A (ja) | 2009-04-13 | 2010-11-04 | Canon Inc | 情報処理装置、情報処理方法 |
US8645337B2 (en) * | 2009-04-30 | 2014-02-04 | Oracle International Corporation | Storing compression units in relational tables |
US8307241B2 (en) * | 2009-06-16 | 2012-11-06 | Sandisk Technologies Inc. | Data recovery in multi-level cell nonvolatile memory |
US7868789B1 (en) | 2009-06-28 | 2011-01-11 | Sap Ag | Dictionary-based order-preserving string compression for main memory column stores |
KR101049699B1 (ko) | 2009-07-17 | 2011-07-15 | (주)이스트소프트 | 데이터의 압축방법 |
US8832142B2 (en) | 2010-08-30 | 2014-09-09 | Oracle International Corporation | Query and exadata support for hybrid columnar compressed data |
US8417727B2 (en) * | 2010-06-14 | 2013-04-09 | Infobright Inc. | System and method for storing data in a relational database |
US20110320446A1 (en) * | 2010-06-25 | 2011-12-29 | Microsoft Corporation | Pushing Search Query Constraints Into Information Retrieval Processing |
US8676834B2 (en) | 2011-02-16 | 2014-03-18 | International Business Machines Corporation | Set-level comparisons in dynamically formed groups |
US9824138B2 (en) | 2011-03-25 | 2017-11-21 | Orbis Technologies, Inc. | Systems and methods for three-term semantic search |
US9009124B2 (en) * | 2011-06-17 | 2015-04-14 | Microsoft Technology Licensing, Llc | Compression aware physical database design |
US8799240B2 (en) | 2011-06-23 | 2014-08-05 | Palantir Technologies, Inc. | System and method for investigating large amounts of data |
CN102917020B (zh) * | 2011-09-24 | 2016-02-17 | 国网电力科学研究院 | 一种基于数据包的移动终端与业务系统数据同步的方法 |
US8838551B2 (en) | 2011-10-21 | 2014-09-16 | International Business Machines Corporation | Multi-level database compression |
JP5831298B2 (ja) * | 2012-03-06 | 2015-12-09 | 富士通株式会社 | プログラム、情報処理装置およびインデックス生成方法 |
US9355111B2 (en) | 2014-04-30 | 2016-05-31 | Microsoft Technology Licensing, Llc | Hierarchical index based compression |
-
2013
- 2013-09-19 US US14/032,122 patent/US9753983B2/en not_active Expired - Fee Related
-
2014
- 2014-06-18 US US14/307,838 patent/US9753984B2/en active Active
- 2014-08-22 JP JP2014169597A patent/JP6004453B2/ja active Active
- 2014-09-18 CN CN201410476850.9A patent/CN104462176B/zh active Active
-
2017
- 2017-05-24 US US15/604,210 patent/US10437826B2/en not_active Expired - Fee Related
- 2017-05-24 US US15/604,239 patent/US10437827B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10432217B2 (en) | 2016-06-28 | 2019-10-01 | International Business Machines Corporation | Page filtering via compression dictionary filtering |
US10439638B2 (en) | 2016-06-28 | 2019-10-08 | International Business Machines Corporation | Page filtering via compression dictionary filtering |
US10903851B2 (en) | 2016-06-28 | 2021-01-26 | International Business Machines Corporation | Page filtering via compression dictionary filtering |
US10903850B2 (en) | 2016-06-28 | 2021-01-26 | International Business Machines Corporation | Page filtering via compression dictionary filtering |
Also Published As
Publication number | Publication date |
---|---|
US10437826B2 (en) | 2019-10-08 |
US9753983B2 (en) | 2017-09-05 |
US20170255679A1 (en) | 2017-09-07 |
US10437827B2 (en) | 2019-10-08 |
US9753984B2 (en) | 2017-09-05 |
US20150081650A1 (en) | 2015-03-19 |
CN104462176B (zh) | 2018-05-11 |
JP2015060590A (ja) | 2015-03-30 |
CN104462176A (zh) | 2015-03-25 |
US20170255678A1 (en) | 2017-09-07 |
US20150081651A1 (en) | 2015-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6004453B2 (ja) | 展開マップを用いた改良されたデータアクセスのパフォーマンス | |
US10789252B2 (en) | Efficient evaluation of aggregate functions | |
US8977626B2 (en) | Indexing and searching a data collection | |
US11461321B2 (en) | Technology to reduce cost of concatenation for hash array | |
WO2018040270A1 (zh) | 在Windows系统中加载Linux系统ELF文件的方法及装置 | |
US20190095486A1 (en) | Group determination based on multi-table dictionary codes | |
US11036517B2 (en) | Database management system performing column operations using a set of SIMD processor instructions selected based on performance | |
JP6726690B2 (ja) | 基本データシーブを用いて無損失削減されたデータに対する多次元検索、コンテンツ連想的な取出し、ならびにキーワードベースの検索および取出しの実行 | |
TW202006565A (zh) | 鏈結串列搜索裝置及方法 | |
US20150212944A1 (en) | Method and Apparatus for Pushing Memory Data | |
US8782375B2 (en) | Hash-based managing of storage identifiers | |
WO2021120713A1 (zh) | 一种数据处理方法、解码电路及处理器 | |
Damme et al. | A benchmark framework for data compression techniques | |
CN114518841A (zh) | 存储器中处理器和使用存储器中处理器输出指令的方法 | |
CN113342813B (zh) | 键值数据处理方法、装置、计算机设备及可读存储介质 | |
US9697899B1 (en) | Parallel deflate decoding method and apparatus | |
US11226740B2 (en) | Selectively performing inline compression based on data entropy | |
WO2015172718A1 (zh) | 在存储器中进行多访问的方法、装置和存储系统 | |
JP2023540456A (ja) | ガベージ・コレクションのための3色ビットマップ・アレイ | |
CN109802686A (zh) | 加速压缩方法以及加速压缩装置 | |
JP4941355B2 (ja) | 滞留データ測定システム、方法、及び、プログラム | |
JP2014503916A (ja) | ユニバーサルプラグアンドプレイ検索条件の変換 | |
US11593010B2 (en) | Systems and methods for block-data clustering-based deduplication | |
KR102017135B1 (ko) | 멀티코어 캐시를 이용한 해싱 처리 장치 및 그 방법 | |
US11593311B2 (en) | Compression system with longest match processing for generating compressed data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160112 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20160128 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20160205 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160426 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160513 |
|
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: 20160809 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20160809 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160831 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6004453 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |