Abstract: A method, computer program product and system for minimizing system resources used to decompress read-only compressed analytic data in a relational database table. An i-code list associated with a relational database table is converted into a programming language. The programming language is compiled in object code and stored in a module in the user's system. The object code is called with a pointer designating the particular row in the database containing the compressed data to be decompressed. The compressed data designated by the pointer is decompressed upon execution of the object code. By having the source code for decompressing the compressed data stored as object code in the user's system, the interpretation step (as used in the i-code method) is avoiding thereby reducing the number of machine cycles used to decompress the compressed data. As a result, query programs will be able to access large amounts of data more quickly.
Abstract: A method, computer program product and system for minimizing system resources used to decompress read-only compressed analytic data in a relational database table. An i-code list associated with a relational database table is converted into a programming language. The programming language is compiled in object code and stored in a module in the user's system. The object code is called with a pointer designating the particular row in the database containing the compressed data to be decompressed. The compressed data designated by the pointer is decompressed upon execution of the object code. By having the source code for decompressing the compressed data stored as object code in the user's system, the interpretation step (as used in the i-code method) is avoiding thereby reducing the number of machine cycles used to decompress the compressed data. As a result, query programs will be able to access large amounts of data more quickly.
Abstract: A method, computer program product and system for minimizing system resources used to decompress read-only compressed analytic data in a relational database table. An i-code list associated with a relational database table is converted into a programming language. The programming language is compiled in object code and stored in a module in the user's system. The object code is called with a pointer designating the particular row in the database containing the compressed data to be decompressed. The compressed data designated by the pointer is decompressed upon execution of the object code. By having the source code for decompressing the compressed data stored as object code in the user's system, the interpretation step (as used in the i-code method) is avoiding thereby reducing the number of machine cycles used to decompress the compressed data. As a result, query programs will be able to access large amounts of data more quickly.
Abstract: A method, computer program product and system for balancing compression efficiency against access performance. Source data is read from a database row by row and column by column within each row. Algorithm(s) are selected to compress the data read for each column. Algorithms are selected in a manner that closely maximizes the amount of data stored in a given amount of disk space but requires minimal system resources to decompress the compressed data. These algorithms are stored in a control block. Further, parameters that allow the read data to be stored in a compressed manner efficiently are stored in the control block. Upon a second reading of the source data, data is compressed column by column using the appropriate algorithms and parameters. The compressed data may then be decompressed using the appropriate algorithms and parameters. In this manner, a better balance may be realized between compression efficiency and access performance.
Abstract: A method, computer program product and system for balancing compression efficiency against access performance. Source data is read from a database row by row and column by column within each row. Algorithm(s) are selected to compress the data read for each column. Algorithms are selected in a manner that closely maximizes the amount of data stored in a given amount of disk space but requires minimal system resources to decompress the compressed data. These algorithms are stored in a control block. Further, parameters that allow the read data to be stored in a compressed manner efficiently are stored in the control block. Upon a second reading of the source data, data is compressed column by column using the appropriate algorithms and parameters. The compressed data may then be decompressed using the appropriate algorithms and parameters. In this manner, a better balance may be realized between compression efficiency and access performance.