Database having an integrated transformation engine using pickling and unpickling of data
First Claim
1. A method for handling within a database system data items that are associated with an unsupported data type that is not supported by said database system, the method comprising the steps of:
- the database system receiving type metadata for said unsupported data type, said type metadata including data that specifies a structure and a physical layout for one or more elements of said unsupported data type;
the database system receiving data items of said unsupported data type from one or more external sources and storing, said data items within a database in a native format; and
the database system using said type metadata to understand and access individual elements of said data items.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system are provided for handling within a database system data items that are associated with data types that are not supported by the database language used to the database system. The data types are registered with the database system by storing, in the database, metadata that indicates the structure, physical layout, and constraints that apply to the data types. The database system uses the structure and physical layout information to access individual elements of data items. The database system validates data items using the constraint information, which includes constraints that dictate what values are valid for certain elements based on what values are supplied for other elements. Data items associated with many different data types may be stored in the same table. Applications can access the data items through a transformation view that transforms the data items from their native format to a format expected by the applications.
125 Citations
33 Claims
-
1. A method for handling within a database system data items that are associated with an unsupported data type that is not supported by said database system, the method comprising the steps of:
-
the database system receiving type metadata for said unsupported data type, said type metadata including data that specifies a structure and a physical layout for one or more elements of said unsupported data type;
the database system receiving data items of said unsupported data type from one or more external sources and storing, said data items within a database in a native format; and
the database system using said type metadata to understand and access individual elements of said data items. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
the type metadata further includes constraint information that dictates a set of one or more validity conditions;
the one or more validity conditions include a condition that a first element of said one or more elements have a particular value based on values of at least one other element of said one or more elements; and
the method further includes the step of the database system validating a data item of said unsupported data type by determining whether said data item satisfies said set of one or more validity conditions.
-
-
3. The method of claim 2 wherein said condition requires the first element to be null if a second element has a non-null value.
-
4. The method of claim 2 wherein said condition requires said first element to be a non-null value if a second element has a non-null value.
-
5. The method of claim 2 wherein said condition requires said first element to have a particular arithmetic relationship relative to said at least one other element.
-
6. The method of claim 5 wherein the step of storing said data items within a database includes storing said data items in a table that also contains data items that do not belong to said unsupported data type.
-
7. The method of claim 1 further comprising the steps of:
-
receiving metadata for a transformation view that specifies a transformation for data items of said unsupported data type;
receiving a request from an application to access said data items through said transformation view; and
performing said transformation on said data items prior to supplying said data items to said application in response to said request.
-
-
8. The method of claim 1 further comprising the step of building an index within said database for said unsupported data type.
-
9. The method of claim 8 wherein said index is built on a primary key composed of at least one of said one or more elements.
-
10. A method for validating a data item within a database system, the method comprising the steps of:
-
storing, within a database managed by said database system, type metadata for a data type that includes one or more elements;
wherein said type metadata includes constraint information that dictates a set of one or more validity conditions;
wherein the one or more validity conditions include a condition that a first element of said one or more elements have a particular value based on values of at least one other element of said one or more elements;
receiving the data item from an external source, said data item being associated with said data type; and
the database system validating said data item by determining whether said data item satisfies said set of one or more validity conditions. - View Dependent Claims (11, 12, 13, 14)
storing said data item in said database if said data item satisfies said set of one or more validity conditions; and
generating an error message without storing said data item in said database if said data item does not satisfy said set of one or more validity conditions.
-
-
15. A method for handling within a database system data items that are associated with an unsupported data type that is not supported by said database system, the method comprising the steps of:
-
the database system receiving data items of said unsupported data type from one or more external sources and storing said data items within a database in a native format;
in response to the database system receiving said data items, said database system executing an index-interface transformation routine associated with said unsupported data type, said index-interface transformation routine producing data that indicates how said data items should be indexed;
an indexing mechanism building and maintaining one or more indexes based on said data produced by said index-interface transformation routine; and
the database system using said one or more indexes to determine which data items of said plurality of data items satisfy queries that access said data items. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A computer-readable medium bearing instructions for handling within a database system data items that are associated with an unsupported data type, the instructions including instructions for performing the steps of:
-
the database system receiving type metadata for said unsupported data type, said type metadata including data that specifies a structure and a physical layout for one or more elements of said unsupported data type;
the database system receiving data items of said unsupported data type from one or more external sources and storing said data items within a database in a native format; and
the database system using said type metadata to understand and access individual elements of said data items. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
the type metadata further includes constraint information that dictates a set of one or more validity conditions;
the one or more validity conditions include a condition that a first element of said one or more elements have a particular value based on values of at least one other element of said one or more elements; and
the instructions further include instructions for performing the step of the database system validating a data item of said unsupported data type by determining whether said data item satisfies said set of one or more validity conditions.
-
-
22. The computer-readable medium of claim 21 wherein said condition requires the first element to be null if a second element has a non-null value.
-
23. The computer-readable medium of claim 21 wherein said condition requires said first element to be a non-null value if a second element has a non-null value.
-
24. The computer-readable medium of claim 21 wherein said condition requires said first element to have a particular arithmetic relationship relative to said at least one other element.
-
25. The computer-readable medium of claim 24 wherein the step of storing said data items within a database includes storing said data items in a table that also contains data items that do not belong to said unsupported data type.
-
26. The computer-readable medium of claim 20 further comprising instructions for performing the steps of:
-
receiving metadata for a transformation view that specifies a transformation for data items of said unsupported data type;
receiving a request from an application to access said data items through said transformation view; and
performing said transformation on said data items prior to supplying said data items to said application in response to said request.
-
-
27. The computer-readable medium of claim 20 further comprising instructions for performing the step of building an index within said database for said unsupported data type.
-
28. The computer-readable medium of claim 27 wherein said index is built on a primary key composed of at least one of said one or more elements.
-
29. A computer-readable medium bearing instructions for handling within a database system data items that are associated with an unsupported data type that is not supported by said database system, the instructions including instructions for performing the steps of:
-
the database system receiving data items of said unsupported data type from one or more external sources and storing said data items within a database in a native format;
in response to the database system receiving said data items, said database system executing an index-interface transformation routine associated with said unsupported data type, said index-interface transformation routine producing data that indicates how said data items should be indexed;
an indexing mechanism building and maintaining one or more indexes based on said data produced by said index-interface transformation routine; and
the database system using said one or more indexes to determine which data items of said plurality of data items satisfy queries that access said data items. - View Dependent Claims (30, 31, 32, 33)
-
Specification