-
公开(公告)号:US11468073B2
公开(公告)日:2022-10-11
申请号:US16533614
申请日:2019-08-06
Applicant: Oracle International Corporation
Inventor: Mohamed Zait , Yuying Zhang , Hong Su , Jiakun Li
IPC: G06F16/24 , G06F16/2458 , G06N20/00 , G06N7/00 , G06F16/22
Abstract: Techniques are provided for gathering statistics in a database system. The techniques involve gathering some statistics using an “on-the-fly” technique, some statistics through a “high-frequency” technique, and yet other statistics using a “prediction” technique. The technique used to gather each statistic is based, at least in part, on the overhead required to gather the statistic. For example, low-overhead statistics may be gathered “on-the-fly” using the same process that is performing the operation that affects the statistic, while statistics whose gathering incurs greater overhead may be gathered in the background, while the database is live, using the high-frequency technique. The prediction technique may be used for relatively-high overhead statistics that can be predicted based on historical data and the current value of predictor statistics.
-
公开(公告)号:US20200042522A1
公开(公告)日:2020-02-06
申请号:US16533614
申请日:2019-08-06
Applicant: Oracle International Corporation
Inventor: Mohamed Zait , Yuying Zhang , Hong Su , Jiakun Li
IPC: G06F16/2458 , G06F16/22 , G06N7/00 , G06N20/00
Abstract: Techniques are provided for gathering statistics in a database system. The techniques involve gathering some statistics using an “on-the-fly” technique, some statistics through a “high-frequency” technique, and yet other statistics using a “prediction” technique. The technique used to gather each statistic is based, at least in part, on the overhead required to gather the statistic. For example, low-overhead statistics may be gathered “on-the-fly” using the same process that is performing the operation that affects the statistic, while statistics whose gathering incurs greater overhead may be gathered in the background, while the database is live, using the high-frequency technique. The prediction technique may be used for relatively-high overhead statistics that can be predicted based on historical data and the current value of predictor statistics.
-
公开(公告)号:US11561973B2
公开(公告)日:2023-01-24
申请号:US16147521
申请日:2018-09-28
Applicant: Oracle International Corporation
Inventor: Sunil P. Chakkappen , Mohamed Zait , Christoforus Widodo , Hong Su
IPC: G06F16/00 , G06F16/2453 , G06F7/14 , G06F16/22 , G06F16/23 , G06F16/951 , G06F16/2458
Abstract: Techniques are described for responding to aggregate queries using optimizer statistics already available in the data dictionary of the database in which the database object targeting by the aggregate query resides, without the user creating any additional objects (e.g. materialized views) and without requiring the objects to be loaded into volatile memory in a columnar fashion. The user query is rewritten to produce a transformed query that targets the dictionary tables to form the aggregate result without scanning the user tables. “Accuracy indicators” may be maintained to indicate whether those statistics are accurate. Only accurate statistics are used to answer queries that require accurate answers. The accuracy check can be made during runtime, allowing the query plan of the transformed query to be used regardless of the accuracy of the statistics. For queries that request approximations, inaccurate statistics may be used so long as the statistics are “accurate enough”.
-
公开(公告)号:US11321317B2
公开(公告)日:2022-05-03
申请号:US15666380
申请日:2017-08-01
Applicant: Oracle International Corporation
Inventor: Hong Su , Sunil P. Chakkappen , Mohamed Zait
IPC: G06F16/2453
Abstract: Techniques for processing queries are provided. In one approach, an execution plan for a query includes multiple sub-plans, one or more of which are selected at runtime while one or more other sub-plans are not executed during execution of the execution plan. In another approach, data about misestimate is generated and stored persistently for subsequent queries. In another approach, statistics for a database object are generated automatically and efficiently while the database object is created or data items are added thereto. In another approach, a hybrid histogram is created that includes a feature of frequency histograms and a feature of height-balanced histograms. In another approach, computer jobs are executed in such a way to avoid deadlock. In another approach, changes to a database object trigger a hard parse of a query even though an execution plan already exists for the query.
-
公开(公告)号:US20170024387A1
公开(公告)日:2017-01-26
申请号:US14818663
申请日:2015-08-05
Applicant: Oracle International Corporation
Inventor: Hong Su , Mohamed Zait , Sunil Chakkappen
IPC: G06F17/30
CPC classification number: G06F17/30489
Abstract: A table is processed to determine an approximate NDV for a plurality of groups. For each row, a group based is identified based on one or more group-by columns. A hashed valued is generated by applying a uniform hash function to a value in an NDV column. The hashed value is assigned to a particular bucket based on the values at a first set of bit positions in a binary representation of the hashed value. A bit position value is determined based on for a remaining portion of the binary representation of the hashed value. The bit position value is based on a number of ordered bits in the hashed value that match a particular bit pattern. For each group identified, a maximum bit position (MBP) table is generated. The MBP table stores, for one or more buckets, the maximum bit position value determined for hashed values assigned to a particular bucket.
Abstract translation: 处理表以确定多个组的近似NDV。 对于每一行,基于一个或多个分组列标识基于组。 通过将均匀散列函数应用于NDV列中的值来生成散列值。 基于哈希值的二进制表示中的第一组位位置处的值,将散列值分配给特定存储桶。 基于散列值的二进制表示的剩余部分来确定位位置值。 位位置值基于与特定位模式匹配的散列值中的有序位数。 对于识别的每个组,生成最大位位置(MBP)表。 MBP表为一个或多个桶存储为分配给特定桶的散列值确定的最大位位置值。
-
公开(公告)号:US20140095475A1
公开(公告)日:2014-04-03
申请号:US14041952
申请日:2013-09-30
Applicant: Oracle International Corporation
Inventor: Hong Su , Sunil P. Chakkappen , Mohamed Zait
IPC: G06F17/30
CPC classification number: G06F17/30466 , G06F17/30463
Abstract: Techniques for processing queries are provided. In one approach, an execution plan for a query includes multiple sub-plans, one or more of which are selected at runtime while one or more other sub-plans are not executed during execution of the execution plan. In another approach, data about misestimate is generated and stored persistently for subsequent queries. In another approach, statistics for a database object are generated automatically and efficiently while the database object is created or data items are added thereto. In another approach, a hybrid histogram is created that includes a feature of frequency histograms and a feature of height-balanced histograms. In another approach, computer jobs are executed in such a way to avoid deadlock. In another approach, changes to a database object trigger a hard parse of a query even though an execution plan already exists for the query.
Abstract translation: 提供了处理查询的技术。 在一种方法中,用于查询的执行计划包括多个子计划,其中一个或多个在运行时被选择,而在执行计划的执行期间不执行一个或多个其他子计划。 在另一种方法中,生成有关误会的数据并持续存储以用于后续查询。 在另一种方法中,数据库对象的统计信息是在创建数据库对象或将数据项添加到其中时自动高效生成的。 在另一种方法中,创建包括频率直方图的特征和高度平衡直方图的特征的混合直方图。 在另一种方法中,以这样的方式执行计算机作业以避免死锁。 在另一种方法中,即使执行计划已经存在于查询中,对数据库对象的更改也会触发查询的硬解析。
-
公开(公告)号:US12147440B2
公开(公告)日:2024-11-19
申请号:US17483326
申请日:2021-09-23
Applicant: Oracle International Corporation
Inventor: Mohamed Zait , Yuying Zhang , Hong Su , Jiakun Li
IPC: G06F16/24 , G06F16/22 , G06F16/2458 , G06N7/01 , G06N20/00
Abstract: Techniques are provided for gathering statistics in a database system. The techniques involve gathering some statistics using an “on-the-fly” technique, some statistics through a “high-frequency” technique, and yet other statistics using a “prediction” technique. The technique used to gather each statistic is based, at least in part, on the overhead required to gather the statistic. For example, low-overhead statistics may be gathered “on-the-fly” using the same process that is performing the operation that affects the statistic, while statistics whose gathering incurs greater overhead may be gathered in the background, while the database is live, using the high-frequency technique. The prediction technique may be used for relatively-high overhead statistics that can be predicted based on historical data and the current value of predictor statistics.
-
公开(公告)号:US20230117461A1
公开(公告)日:2023-04-20
申请号:US17451047
申请日:2021-10-15
Applicant: Oracle International Corporation
Inventor: Krishna Kantikiran PASUPULETI , Mohamed Ziauddin , Hong Su , Sunil P. Chakkappen
IPC: G06F16/2453
Abstract: Disclosed is an approach for applying fine-grained hints to obtain optimal control over error handling during query compilation. Using fine-grained hints causes less disruption to the query plans generated by the optimizer as they constrain specific features while retaining scope for the rest of the optimizer functionality. This approach provides a query plan of better quality that avoid errors, particularly in comparison to coarse-grained approaches that restrict processing to earlier database versions or which disables cost-based processing.
-
公开(公告)号:US20250139092A1
公开(公告)日:2025-05-01
申请号:US18384231
申请日:2023-10-26
Applicant: Oracle International Corporation
Inventor: Hong Su , Jiakun Li , Suratna Budalakoti , Mohamed Ziauddin , Alan Paul Wood
IPC: G06F16/2453 , G06F16/22
Abstract: A histogram-augmented dynamic sampling approach is provided for determining cardinality of a two-table join. The approach has a pre-processing phase in which data structures are created that will be used during a compilation phase for cardinality estimation. These data structures include a row histogram and a key histogram, which are created for selected columns of a first table. A cardinality estimation phase uses the data structures to estimate the cardinality of various joins at the time of query compilation. In this phase, the system executes queries that join the histograms with a second table, to perform the cardinality estimation.
-
公开(公告)号:US20240078233A1
公开(公告)日:2024-03-07
申请号:US17902615
申请日:2022-09-02
Applicant: Oracle International Corporation
Inventor: Krishna Kantikiran Pasupuleti , Hong Su , Jiakun Li , Mohamed Ziauddin
IPC: G06F16/2453 , G06F11/34 , G06F16/2455
CPC classification number: G06F16/24542 , G06F11/3419 , G06F16/24552
Abstract: Techniques for automatic error mitigation in database systems using alternate plans are provided. After receiving a database statement, an error is detected as a result of compiling the database statement. In response to detecting the error, one or more alternate plans that were used to process the database statement or another database statement that is similar to the database statement are identified. A particular alternate plan of the one or more alternate plans is selected. A result of the database statement is generated based on processing the particular alternate plan.
-
-
-
-
-
-
-
-
-