Database driven type extensibility
First Claim
1. In a multi-tier server system that includes a back end server at a first tier and a plurality of additional servers at a middle tier, each additional server using multiple types of data objects that must be defined on the plurality of additional servers before the data objects can be used by the plurality of middle tier servers, a method for deploying one or more data types from the back end server to the plurality of middle tier servers in a manner that maintains consistency and compatibility in the definitions of the data types and in code associated with each data type as stored on each middle tier server in the system, the method comprising:
- an act of creating a special table in a database of the back end server, the special table including a plurality of data elements storing data identifying data types used by the plurality of middle tier servers, each data element including;
a data type identification field;
a code field containing any code necessary for enabling use of a corresponding data type; and
a link to one or more data type specific tables containing information further defining the corresponding data type,wherein the database of the back end server acts as a repository for each data type used by any of the plurality of middle tier servers, and the back end server acts as a single and centralized source from which each of the plurality of middle tier servers obtains all data types used by any other of the plurality of middle tier servers and the corresponding code required to enable use of the data types by the plurality of middle tier servers, and such that the plurality of middle tier servers each obtain all data types from the single and centralized source which operates at a different tier than the plurality of middle tier servers;
an act of identifying a data type to be deployed from the back end server to one or more of the plurality of middle tier servers;
an act of obtaining an extended assembly that corresponds to the data type to be deployed, the extended assembly including data obtained using the special table, including data identifying the data type, one or more definitions of the data type, and the code for enabling processing of data corresponding to the data type, the extended assembly being generated after the act of identifying the data type to be deployed; and
an act of transmitting the extended assembly to the one or more middle tier servers of the plurality of middle tier servers in the multi-tier system such that the data type, as transmitted to and received by the one or more of the plurality of middle tier servers in the multi tier system, is consistent and compatible with a data type of the same kind stored on other middle tier servers in the system.
2 Assignments
0 Petitions
Accused Products
Abstract
Data types can be created, modified and deployed in multi-tier database systems by using extended assemblies. The extended assemblies are created by a back end server using the data and code contained in special tables and object tables of the back end server. The back end server determines which data types are to be deployed in the system, based on push or pull conditions. Thereafter, the corresponding extended assemblies are to be obtained and sent to one or more middle tier servers that utilize the extended assemblies to use the data types. However, some of the middle tier servers may need to be configured with appropriate logic modules prior to utilizing the extended assemblies. A data type can be created or modified by creating or editing data and code contained in the special table and object tables prior to creating the extended assemblies.
-
Citations
34 Claims
-
1. In a multi-tier server system that includes a back end server at a first tier and a plurality of additional servers at a middle tier, each additional server using multiple types of data objects that must be defined on the plurality of additional servers before the data objects can be used by the plurality of middle tier servers, a method for deploying one or more data types from the back end server to the plurality of middle tier servers in a manner that maintains consistency and compatibility in the definitions of the data types and in code associated with each data type as stored on each middle tier server in the system, the method comprising:
-
an act of creating a special table in a database of the back end server, the special table including a plurality of data elements storing data identifying data types used by the plurality of middle tier servers, each data element including; a data type identification field; a code field containing any code necessary for enabling use of a corresponding data type; and a link to one or more data type specific tables containing information further defining the corresponding data type, wherein the database of the back end server acts as a repository for each data type used by any of the plurality of middle tier servers, and the back end server acts as a single and centralized source from which each of the plurality of middle tier servers obtains all data types used by any other of the plurality of middle tier servers and the corresponding code required to enable use of the data types by the plurality of middle tier servers, and such that the plurality of middle tier servers each obtain all data types from the single and centralized source which operates at a different tier than the plurality of middle tier servers; an act of identifying a data type to be deployed from the back end server to one or more of the plurality of middle tier servers; an act of obtaining an extended assembly that corresponds to the data type to be deployed, the extended assembly including data obtained using the special table, including data identifying the data type, one or more definitions of the data type, and the code for enabling processing of data corresponding to the data type, the extended assembly being generated after the act of identifying the data type to be deployed; and an act of transmitting the extended assembly to the one or more middle tier servers of the plurality of middle tier servers in the multi-tier system such that the data type, as transmitted to and received by the one or more of the plurality of middle tier servers in the multi tier system, is consistent and compatible with a data type of the same kind stored on other middle tier servers in the system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 30, 31, 32)
-
-
9. In a multi-tier server system that includes a back end server at a first tier and a plurality of additional servers at a middle tier, each additional server using multiple types of data objects that must be defined on the plurality of additional servers before the data objects can be used by the plurality of middle tier servers, a method for deploying one or more data types from the back end server to the plurality of middle tier servers in a manner that maintains consistency and compatibility in the definitions of the data types and in code associated with each data type as stored on each middle tier server in the system, the method comprising:
-
an act of modifying a special table in a database of the back end server, the special table including a plurality of data elements storing data that identifies data types used by the plurality of middle tier servers and includes; a data type identification field; a code field containing any code necessary for enabling use of a corresponding data type; and a link to one or more data type specific tables containing information further defining the corresponding data type, wherein the database of the backend server acts as a repository for each data type used by any of the plurality of middle tier servers, and the back end server acting as a single and centralized source from which all middle tier servers obtain all data types used by any other of the plurality of middle tier servers and the corresponding code required to enable use of the data types by the plurality of middle tier servers, and such that the plurality of middle tier servers each obtain all data types from the single and centralized source which operates at a different tier than the plurality of middle tier servers, the act of modifying including at least one of modifying the stored data within the one or more fields and adding new stored data to the one or more fields; an act of identifying a data type to be deployed from the back end server to one or more of the plurality of middle tier servers; an act of obtaining an extended assembly that corresponds to the data type to be deployed, the extended assembly including at least one of the modified stored data and the new stored data as obtained from the special table, including data identifying the data type, and the executable code that, when executed, enables the one or more middle tier servers to process the modified stored data or the new stored data associated with the data type; and an act of transmitting the extended assembly to the one or more middle tier servers of the plurality of middle tier servers in the multi-tier system such that the data type as transmitted to and received by the one or more of the plurality of middle tier servers in the multi tier system is consistent and compatible with a data type of the same kind stored on other middle tier servers in the system. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. In a multi-tier server system that includes a back end server at a first tier and a plurality of additional servers at a middle tier, each additional server using multiple types of data objects that must be defined on the plurality of additional servers before the data objects can be used by the plurality of middle tier servers, a method for deploying one or more data types from the back end server to the plurality of middle tier servers in a manner that maintains consistency and compatibility in the definitions of the data types and in code associated with each data type as stored on each middle tier server in the system, the method comprising:
-
an act of adding a new middle tier server to the multi-tier system, the new middle tier server being configured to utilize extended assemblies that are obtained from the back end server, the back end server acting as a repository for storing each data type used by any of the plurality of middle tier servers, the back end server acting as a single and centralized source from which all middle tier servers obtain all data types used by any other of the plurality of middle tier servers and corresponding code required to enable use of the data types by the plurality of middle tier servers, and such that the plurality of middle tier servers each obtain all data types from the single and centralized source which operates at a different tier than the plurality of middle tier servers, the extended assemblies being configured to enable the use of one or more data types that are defined by data and enabled by executable code that is contained in the extended assemblies; an act of determining which of the one or more data types are to be deployed from the back end server to the new middle tier server, wherein the act of determining is based at least in part on a request by the new middle tier server for data to enable use of one or more data types; an act of obtaining one or more extended assemblies corresponding to the one or more data types that have been determined to be deployed, each of the one or more extended assemblies including data and executable code obtained from a special table stored in a database of the back end server, the special table including a plurality of data elements storing data identifying data types and corresponding code for processing data associated with the data types, each data element including; a data type identification field; a code field containing any code necessary for enabling use of a corresponding data type; and a link to one or more data type specific tables containing information further defining the corresponding data type; and an act of transmitting, to the new middle tier server, the one or more extended assemblies that correspond to the one or more data types that have been determined to be deployed, such that the one or more data types as transmitted to, and received by, the new middle tier server are consistent and compatible with one or more data types of the same kind on other middle tier servers in the system, and which were received by the other middle tier servers from the back end server. - View Dependent Claims (17)
-
-
18. In a multi-tier server system that includes a back end server at a first tier and a plurality of additional servers at a middle tier, each additional server using multiple types of data objects that must be defined on the plurality of additional servers before the data objects can be used by the plurality of middle tier servers, a method for deploying one or more data types from the back end server to the plurality of middle tier servers in a manner that maintains consistency and compatibility in the definitions of the data types and in code associated with each data type as stored on each middle tier server in the system, the method comprising:
-
an act of creating a special table in a database of the back end server, the special table including a plurality of data elements for storing data identifying a data type used by the plurality of middle tier servers, each data element including; data type identification field; a code field containing any executable code necessary for enabling processing of data associated with the corresponding data type; and a link to one or data type specific tables containing information further defining the corresponding data type, wherein the database of the back end server acts as a repository for storing each data type used by any of the plurality of middle tier servers, and the back end server acting as a single and centralized source from which all middle tier servers obtain all data types used by any other of the plurality of middle tier servers and the corresponding code required to enable use of the data types by the plurality of middle tier servers, and such that the plurality of middle tier servers each obtain all data types from the single and centralized source which operates at a different tier than the plurality of middle tier servers; a step for deploying the data type from the back end server to one or more of the plurality of middle tier servers, upon request, such that the data type as transmitted to and received by the one or more of the plurality of middle tier servers in the multi-tier server system is consistent and compatible with a data type of the same kind stored on other middle tier servers in the system. - View Dependent Claims (19, 20, 21)
-
-
22. A computer program product for use in a multi-tier server system that includes a back end server at a first tier and a plurality of additional servers at a middle tier, each additional server using multiple types of data objects that must be defined on the plurality of additional servers before the data objects can be used by the plurality of middle tier servers, the computer program product including one or more computer-readable storage media having stored thereon computer-executable instructions for implementing a method for deploying one or more data types from the back end server to the plurality of middle tier servers in a manner that maintains consistency and compatibility in the definitions of the data types and in code associated with each data type as stored on each middle tier server in the system, the method comprising:
-
an act of creating a special table in a database of the back end server, the special table including a plurality of data elements storing data identifying data types used by the plurality of middle tier servers, each data element including; a data type identification field; a code field containing any code necessary for enabling use of a corresponding data type; and a link to one or more data type specific tables containing information further defining the corresponding data type, wherein the database of the back end server acts as a repository storing each data type used by any of the plurality of middle tier servers, and the back end server acting as a single and centralized source from which each of the plurality of middle tier servers obtains all data types used by any other of the plurality of middle tier servers and the corresponding code required to enable use of the data types by the plurality of middle tier servers, and such that the plurality of middle tier servers each obtain all data types from the single and centralized source which operates at a different tier than the plurality of middle tier servers; an act of identifying a data type to be deployed from the back end server to one or more of the plurality of middle tier servers; an act of obtaining an extended assembly that corresponds to the data type to be deployed, the extended assembly including data obtained from the special table, including data identifying the data type, one or more definitions of the data type, and the code for enabling processing of data associated with the data type; and an act of transmitting the extended assembly to one or more of the plurality of middle tier servers in the multi-tier system such that the data type as transmitted to and received by the one or more of the plurality of middle tier servers in the multi tier system is consistent and compatible with a data type of the same kind stored on other middle tier servers in the system. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
-
33. At a middle tier server in a multi-tier database server system that includes a back end database server at a first tier and a plurality of additional database servers at a middle tier, wherein the plurality of middle tier servers are configured to process data corresponding to data types defined by the back end server at the first tier, a method for deploying one or more data types from the back end server to the plurality of middle tier servers in a manner that maintains consistency and compatibility in the definitions of the data types and in code associated with each data type in the multi-tier database server system, the method comprising:
-
an act of receiving at a middle tier email exchange server one or more data objects from a back end SQL server, the one or more received data objects being associated with at least one data type; an act of initiating one or more processing functions for the one or more received data objects associated with the at least one data type; an act of identifying that the at least one data type of the one or more data objects is not recognized, such that the initiated one or more initiated processing functions have failed at the middle tier email exchange server; an act of pulling one or more extended assemblies corresponding to the at least one data type from the back end SQL server, wherein the one or more extended assemblies were generated by the back end SQL server after the SQL server received a request from the middle tier email exchange server to pull the one or more extended assemblies, and in response thereto, wherein the back end SQL server acts as a repository for each data type used by any of the plurality of middle tier servers, as a single and centralized source from which each of the plurality of middle tier servers obtains all extendable assemblies corresponding to all data types used by any other of the plurality of middle tier servers, and as a single and centralized location at which all data types for the middle tier servers are modified, and such that the plurality of middle tier servers each obtain all data types from, and modify all data types at, the single and centralized source which operates at a different tier than the plurality of middle tier servers, and wherein the back end SQL server generates the extended assembly by using a special table in a database of the back end server, the special table including a plurality of data elements storing data identifying data types usedly the plurality of middle tier servers, each data element being specific to a particular data type and including; a data type identification field having a unique identification for the corresponding data type; a data name field identifying a name of the corresponding data type; a code field containing executable code necessary for enabling the middle tier email server to use the corresponding data type; and a link to at least one data type specific table that contains information further defining the corresponding data type; and an act of processing the one or more data objects associated with the at least one data type using the pulled one or more extended assemblies, wherein the middle tier email exchange server successfully recognizes the at least one data type, and successfully processes the one or more received data objects associated with the at least one data type. - View Dependent Claims (34)
-
Specification