Methods and systems for auto-partitioning of schema objects
First Claim
1. A method of partitioning a schema object comprising a plurality of rows, each row including a date, comprising the steps of:
- generating a list of dates associated with the plurality of rows;
determining whether a partition exists for each unique date in the generated list of dates;
determining whether a partition exists for each date that immediately precedes each unique date in the generated list of dates;
carrying out a first creating step to create a partition for each date in the generated list of dates for which a partition does not yet exist, and carrying out a second creating step to create a partition for each date that immediately precedes each date in the generated list for which a partition does not yet exist.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of partitioning a schema object containing Web server log file data that includes a plurality of dated entries. Existing partitions within the schema object are identified, as well as the date associated with each existing partition. Unique dates of the entries within the log file data are also identified. A separate partition within the schema object is then automatically created for a) each identified unique date of the entries within the log file data that is not associated with an identified existing partition, and for b) each date immediately preceding each date in a) unless the partition has previously been created. This method avoids splitting loaded partitions when the Web server log file data is loaded out of turn.
77 Citations
27 Claims
-
1. A method of partitioning a schema object comprising a plurality of rows, each row including a date, comprising the steps of:
-
generating a list of dates associated with the plurality of rows;
determining whether a partition exists for each unique date in the generated list of dates;
determining whether a partition exists for each date that immediately precedes each unique date in the generated list of dates;
carrying out a first creating step to create a partition for each date in the generated list of dates for which a partition does not yet exist, and carrying out a second creating step to create a partition for each date that immediately precedes each date in the generated list for which a partition does not yet exist. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A machine-readable medium having data stored thereon representing sequences of instructions which, when executed by computing device, causes said computing device to partition a schema object comprising a plurality of rows, each row including a date, by performing the steps of:
-
generating a list of dates associated with the plurality of rows;
determining whether a partition exists for each unique date in the generated list of dates;
determining whether a partition exists for each date that immediately precedes each unique date in the generated list of dates;
carrying out a first creating step to create a partition for each date in the generated list of dates for which a partition does not yet exist, and carrying out a second creating step to create a partition for each date that immediately precedes each date in the generated list for which a partition does not yet exist. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer system suitable for partitioning a schema object comprising a plurality of rows, each row including a date, comprising:
-
at least one processor;
at least one data storage device;
a plurality of processes spawned by said at least one processor, the processes including processing logic for;
generating a list of dates associated with the plurality of rows;
determining whether a partition exists for each unique date in the generated list of dates;
determining whether a partition exists for each date that immediately precedes each unique date in the generated list of dates;
carrying out a first creating step to create a partition for each date in the generated list of dates for which a partition does not yet exist, and carrying out a second creating step to create a partition for each date that immediately precedes each date in the generated list for which a partition does not yet exist.
-
-
18. A method of partitioning a database table comprising a plurality of rows, each row being associated with a date, comprising the steps of:
-
generating a first list of dates, the first list of dates containing dates associated with the plurality of rows;
generating a second list of dates from the first list, the second list containing only dates that immediately precede each date in the first list;
generating a third list of dates from the first and second lists of dates, the third list containing each unique date that appears on the first list or on the second list and that does not have an existing partition within the database table associated therewith;
for each date in the third list, sequentially carrying out the steps of;
identifying a partition in the table associated with an earliest date that is after the date in the third list, and splitting the identified partition at a boundary defined by the date in the third list to create a new partition associated with the date in the third list. - View Dependent Claims (19, 20, 21)
-
-
22. A machine-readable medium having data stored thereon representing sequences of instructions which, when executed by computing device, causes said computing device to partition a database table comprising a plurality of rows, each row being associated with a date, by performing the steps of:
-
generating a first list of dates, the first list of dates containing dates associated with the plurality of rows;
generating a second list of dates from the first list, the second list containing only dates that immediately precede each date in the first list;
generating a third list of dates from the first and second lists of dates, the third list containing each unique date that appears on the first list or on the second list and that does not have an existing partition within the database table associated therewith;
for each date in the third list, sequentially carrying out the steps of;
identifying a partition in the table associated with an earliest date that is after the date in the third list, and splitting the identified partition at a boundary defined by the date in the third list to create a new partition associated with the date in the third list. - View Dependent Claims (23, 24, 25)
-
-
26. A computer system suitable for partitioning a database table comprising a plurality of rows, each row being associated with a date, the computer system comprising:
-
at least one processor;
at least one data storage device;
a plurality of processes spawned by said at least one processor, the processes including processing logic for;
generating a first list of dates, the first list of dates containing dates associated with the plurality of rows;
generating a second list of dates from the first list, the second list containing only dates that immediately precede each date in the first list;
generating a third list of dates from the first and second lists of dates, the third list containing each unique date that appears on the first list or on the second list and that does not have an existing partition within the database table associated therewith;
for each date in the third list, sequentially carrying out the steps of;
identifying a partition in the table associated with an earliest date that is after the date in the third list, and splitting the identified partition at a boundary defined by the date in the third list to create a new partition associated with the date in the third list.
-
-
27. A method of partitioning a schema object containing Web server log file data, the log file data including a plurality of dated entries, comprising:
-
identifying existing partitions within the schema object, a date being associated with each existing partition;
identifying unique dates of the entries within the log file data;
creating a separate partition within the schema object for;
a) each identified unique date of the entries within the log file data that is not associated with an identified existing partition, and b) each date immediately preceding each date in a) unless previously created.
-
Specification