Extensible query language with support for rich data types

Information

  • Patent Application
  • 20070219976
  • Publication Number
    20070219976
  • Date Filed
    August 21, 2006
    18 years ago
  • Date Published
    September 20, 2007
    16 years ago
Abstract
Data management between a common data store and multiple applications of multiple disparate application frameworks. A data storage component is provided that facilitates the storage of data, which data includes structured, semi-structured, and unstructured data. A common data platform interfaces to the data storage component to provide data services accessible by a plurality of disparate application frameworks, which data services allow a corresponding application of the different frameworks to access the data.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates a system that employs a common data platform (CDP) in accordance with the subject architecture.



FIG. 2 illustrates a more detailed CDP system in accordance with the disclosed architecture.



FIG. 3 illustrates a methodology of implementing a common data platform that facilitates managing data.



FIG. 4 illustrates a schematic diagram of CDP components in relation to the architecture of the subject innovation.



FIG. 5 illustrates the data flow within the various components of the CDP.



FIG. 6 illustrates the various frameworks that can be implemented with the CDP.



FIG. 7 illustrates a common database-based file storage system scenario allowing multiple applications to share data.



FIG. 8 illustrates a single application utilizing multiple frameworks in accordance with the CDP and associated architecture.



FIG. 9 illustrates the CDP sharing data with multiple applications associated with a plurality of disparate frameworks.



FIG. 10 illustrates a two-tier deployment of the CDP to facilitate data management.



FIG. 11 illustrates a two-tier deployment with shared data to facilitate data management.



FIG. 12 illustrates a second configuration such that an application has private data that it does not want seen and/or utilized by other applications.



FIG. 13 illustrates a third configuration of interest such that another application accesses the store directly.



FIG. 14 illustrates a three-tier deployment configuration of the CDP components.



FIG. 15 illustrates a three-tier deployment configuration of the CDP components.



FIG. 16 illustrates a diagram of the application logic running on both the client tier and the middle tier.



FIG. 17 illustrates a diagram of the application logic running on both the client tier and the middle tier.



FIG. 18 illustrates modeling items utilizing at least one entity.



FIG. 19 illustrates extensible mechanisms to implement various functionalities by incorporating the UAF on top of the CDP.



FIG. 20 illustrates an example of a LOB application being implemented over the CDP.



FIG. 21 illustrates a methodology that facilitates managing the flow of data within the various components of CDP.



FIG. 22 illustrates a methodology that facilitates deploying a CDP across multiple disparate frameworks, wherein disparate applications can be related to each framework.



FIG. 23 illustrates a block diagram of a computer operable to execute the disclosed architecture.



FIG. 24 illustrates a schematic block diagram of an exemplary computing environment in accordance with the subject innovation.


Claims
  • 1. A data platform that facilitates data management by providing data services accessible by a plurality of disparate application frameworks allowing uniform access to data, comprising: an application program interface (API) that facilitates communicating to applications in the form of at least one of a public class, an interface, and a static helper function;a runtime component that interfaces to the API and provides at least one of object-relational mapping, query mapping, and enforcing of constraints; anda common data model that factors out a data interface that is common to the plurality of disparate application frameworks.
  • 2. The platform of claim 1, the common data model facilitates creation of at least one of a domain specific type, a constraint, and a relationship.
  • 3. The platform of claim 2, the domain specific type is an entity type that is a specification for a grouping of at least one of property and a method, which domain specific type employs at least one of an entity, a table, a table set, and a relationship.
  • 4. The platform of claim 3, a schema defines at least one of the entity, the relationship, and the table set such that a namespace is associated therewith.
  • 5. The platform of claim 2, the common data model defines a query language over the specific domain type system, wherein the query language allows rich queries against an object structure that provides a strongly typed, object-based abstraction against stored data.
  • 6. The platform of claim 5, the query language is at least one of Opath and OSQL (object-oriented structured query language).
  • 7. The platform of claim 1, further comprising a constraint/security engine that facilitates declarative authoring of constraints, and controls access to at least one entity of the data platform.
  • 8. The platform of claim 1, further comprising a persistence engine that invokes object-relational mapping that maps a language class to an underlying tabular representation by invoking at least one of a prescriptive object-relational mapping and a non-prescriptive object-relational mapping.
  • 9. The platform of claim 8, the mapping is from an application space to the common data model, and independent from the common data model to a store.
  • 10. The platform of claim 1, the plurality of disparate application frameworks includes at least one of a line of business framework, an end user framework, a system management framework, a user application framework, a collaboration framework, a business framework, and a personal information framework.
  • 11. The platform of claim 1, the application is at least one of an end-user application, a knowledge worker application, a line-of-business application, a web application, a contact management application, document management application, a collaboration application, an email application, a customer relationship management application, an enterprise resource planning application, and a system management application.
  • 12. The platform of claim 1, the runtime component provides management of an entity state which includes at least one of an identification mapping, an object change tracking, and an original value.
  • 13. The platform of claim 1, the data platform and respective components are tier-agnostic and can exist in at least one of a client tier, a middle tier, a server tier, and a web service tier.
  • 14. The platform of claim 1, the common data model provides shared data within the data storage component such that disparate applications associated with corresponding frameworks can access the shared data.
  • 15. The platform of claim 1, the common data model provides private data within the data storage component such that the private data is accessed solely by a particular application associated with a particular framework.
  • 16. The platform of claim 1, further comprising at least one of a rule service, a change tracking service, a conflict detection service, an eventing service and a notification service.
  • 17. A computer-implemented method of managing data, comprising: overlaying a data platform on a store that models and stores structured, semi-structured, and unstructured data types to provide a data service which supports at least one of a rich data model, a mapping, query, and a data access mechanism for disparate application frameworks;overlaying one or more application frameworks onto the data platform to allow at least one application within each framework to access the data store;communicating to the application in the form of at least one of a public class, an interface, and a static helper function;providing at least one of an object-relational mapping, a query mapping, and an enforcing of constraints; andfactoring out a modeling concept that is common to a plurality of the disparate application frameworks.
  • 18. The method of claim 17, further comprising: creating an object;opening a connection to the store with a session and establishing a security context;returning an instance of a storage context to an application;exposing an interface to retrieve objects;mapping a query into SQL while applying security;returning a result to a data platform runtime and the application; andsaving the changes on the encapsulated storage context object.
  • 19. The method of claim 17, further comprising: providing shared data to disparate applications on the disparate application frameworks; andutilizing private data specific to applications on particular disparate application frameworks.
  • 20. A computer-implemented system that facilitates managing data, comprising: means for communicating to applications in the form of at least one of a public class, an interface, and a static helper function;means for providing at least one of object-relational mapping, query mapping, and enforcing of constraints; andmeans for factoring out a modeling concept that is common to a plurality of disparate application frameworks.
Provisional Applications (1)
Number Date Country
60784510 Mar 2006 US