US20100023551A1 - Method for accessing and updating data in a database using membership abstractions and logical representations - Google Patents
Method for accessing and updating data in a database using membership abstractions and logical representations Download PDFInfo
- Publication number
- US20100023551A1 US20100023551A1 US12/587,209 US58720909A US2010023551A1 US 20100023551 A1 US20100023551 A1 US 20100023551A1 US 58720909 A US58720909 A US 58720909A US 2010023551 A1 US2010023551 A1 US 2010023551A1
- Authority
- US
- United States
- Prior art keywords
- derived
- data
- membership
- abstraction
- expression
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99954—Version management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
This is a computer-implemented method for accessing and updating data in a database that preserves relationships among data, including derived data. Data need not be stored in a tabular form. The method incorporates and integrates membership abstractions, relation predicates, and logical predicates of data with relationships among data so as too avoid update and other errors and to translate among logical representations, symbolic abstractions, and physical representations.
Description
- This application claims benefit of priority of, and is a division of, U.S. patent application Ser. No. 11/649,089, filed on Dec. 31, 2006, which is a continuation-in-part of Ser. No. 10/114,609, filed Apr. 2, 2002, now U.S. Pat. No. 7,263,512. This application is filed to continue the prosecution, separately, of the invention described in the claims 1-38 below, and expressly incorporates both below and by reference all of the original application's specification and drawings.
- Not Applicable
- Not Applicable
Claims (38)
1. A computer implemented method for accessing and updating data in a database comprising:
accepting an expression comprising at least both an operation on the first derived data and a first data reference to a first derived data;
selecting a first derived membership abstraction associated with the first data reference;
decomposing the first derived membership abstraction into a decomposed derived membership abstraction, said decomposed derived membership abstraction comprising a set of source data references to source data, a set of operations on the source data, and a set of constraints;
forming a derived expression by modifying the expression according to, and incorporating elements of, the decomposed derived membership abstraction, said derived expression being logically equivalent to the expression;
and,
performing at least a first operation in the set of operations on the source data as specified by and according to the derived expression.
2. A method as in claim 1 wherein at least a portion of the source data has a tabular representation.
3. A method as in claim 1 wherein at least a portion of the source data is has a non-tabular representation.
4. A method as in claim 1 wherein the set of constraints comprises at least one multi-table constraint.
5. A method as in claim 1 wherein the set of constraints comprises at least one column constraint.
6. A method as in claim 1 wherein the set of constraints comprises at least one row constraint.
7. A method as in claim 1 wherein the set of constraints comprises at least one multi-row constraint.
8. A method as in claim 1 further comprising identifying at least one membership abstraction as corresponding to at least one data reference in the derived expression.
9. A method as in claim 1 further comprising identifying at least one table name as corresponding to at least one data reference in the derived expression.
10. A method as in claim 1 further comprising identifying at least one table metadata as corresponding to at least one data reference in the derived expression.
11. A method as in claim 1 further comprising identifying at least one relation predicate as corresponding to at least one data reference in the derived expression.
12. A method as in claim 1 further comprising identifying at least one logical predicate as corresponding to at least one data reference in the derived expression.
13. A method as in claim 1 further comprising identifying at least one data structure as corresponding to at least one data reference in the derived expression.
14. A method as in claim 1 wherein at least one membership abstraction denoted by a table name.
15. A method as in claim 1 wherein at least one membership abstraction comprises a plurality of membership abstractions.
16. A method as in claim 1 wherein at least member of a set consisting of the first derived membership abstraction and the decomposed derived membership abstraction is a logical predicate.
17. A method as in claim 1 wherein at least member of a set consisting of the first derived membership abstraction and the decomposed derived membership abstraction is a relation predicate.
18. A method as in claim 1 wherein the step of performing is determined to be logically consistent with each membership abstraction logically implied by the derived expression.
19. A method as in claim 1 further comprising:
applying each operation of the set of operations when that operation as specified by the derived expression is determined to be logically consistent with a membership abstraction associated with the data to which that operation is to be applied.
20. A method as in claim 1 wherein the physical representation of at least a portion of the source data is non-tabular.
21. A method as in claim 1 wherein at least one membership abstraction associated with at least one data reference is stored in and retrieved from a repository.
22. A method as in claim 1 wherein the said derived expression comprises a set of source membership abstractions and is logically equivalent to the expression.
23. A method as in claim 1 wherein the step of performing further comprises applying the set of operations on source data to a physical representation of source data according to and consistent with a logical representation of source data.
24. A method as in claim 1 further comprising:
checking, after the step of performing, whether the result of performing at least the first operation is logically consistent with at least a first post-operation constraint;
guaranteeing that the first operation has no effect on the source data if the step of checking determines that the result of that first operation on the source data is not logically consistent with the first post-operation constraint; and,
completing the effect on the source data by the first operation if and only if the step of checking determines that the result of that operation is consistent with the first post-operation constraint.
25. A method as in claim 24 wherein the first post-operation constraint is among a plurality of source data;
26. A method as in claim 24 wherein the first post-operation constraint is on data having a plurality of data structures.
27. A method as in claim 24 wherein the step of guaranteeing has a result that is equivalent to the first operation having no effect on the source data and is independent of the result of other operations logically implied by the derived expression.
28. A computer implemented method for accessing and updating data in a database comprising:
specifying a plurality of membership abstractions, each corresponding to a member of a set of data types;
defining a derived data type as comprising at least a combination of at least two members of the set of data types;
deriving a derived membership abstraction for the derived data type as comprising both the plurality of membership abstractions, and a set of operators corresponding to the combination and comprising at least a first operator;
storing the derived membership abstraction in association with a first symbolic reference to the derived data type, and each of the plurality of membership abstractions in association with at least one symbolic reference to that membership abstraction's corresponding data type;
and,
modifying the derived membership abstraction responsive to a change in at least one of the set of data types, the plurality of membership abstractions, and the combination.
29. A method as in claim 28 wherein the first operator corresponds to one member of a set of operators consisting of a logical operator, a relational operator, and a set operator.
30. A method as in claim 28 wherein at least one of the derived data type and a member of the set of data types is a table column's type.
31. A method as in claim 28 wherein at least one of the derived data type and a member of the set of data types is one member of a set consisting of a table's type and a relation's type.
32. A method as in claim 28 wherein at least one of the derived data type and a member of the set of data types is a non-tabular type.
33. A method as in claim 28 wherein at least one of the plurality of membership abstractions and the derived membership abstraction is a member of a set consisting of a logical predicate and a relation predicate.
34. A method as in claim 28 wherein at least one of the plurality of membership abstractions and the derived membership abstraction is denoted by a symbolic name.
35. A method as in claim 28 wherein the first operator corresponds to a computational procedure.
36. A method as in claim 35 wherein the computational procedure produces at least one member of a set of results consisting of summarized data and aggregated data.
37. A data processing system comprising:
a processor for performing operations;
a storage means for storing any of expressions, operations, data, data references, membership abstractions, and metadata;
means for accepting a expression comprising at least a first data reference to a first derived data and an operation on the first derived data;
means for selecting a first derived membership abstraction associated with the first data reference;
means for decomposing the first derived membership abstraction into a decomposed derived membership abstraction, said decomposed derived membership abstraction comprising a set of source data references to source data, a set of operations on the source data, and a set of constraints;
means for forming a derived expression by modifying the expression according to and incorporating elements of the decomposed derived membership abstraction, and being logically equivalent to the expression;
and,
means for performing at least a first operation in the set of operations on the source data as specified by and according to the derived expression.
38. An apparatus comprising machine-readable program code recorded on recordable media, the program code comprising instructions for controlling the operation of at least a first data processing system on which it executes to perform the following steps:
accepting a expression comprising at least a first data reference to a first derived data and an operation on the first derived data;
selecting a first derived membership abstraction associated with the first data reference;
decomposing the first derived membership abstraction into a decomposed derived membership abstraction, said decomposed derived membership abstraction comprising a set of source data references to source data, a set of operations on the source data, and a set of constraints;
forming a derived expression by modifying the expression according to and incorporating elements of the decomposed derived membership abstraction, and being logically equivalent to the expression;
and,
performing at least a first operation in the set of operations on the source data as specified by and according to the derived expression.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/587,209 US20100023551A1 (en) | 2002-04-02 | 2009-10-03 | Method for accessing and updating data in a database using membership abstractions and logical representations |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/114,609 US7263512B2 (en) | 2002-04-02 | 2002-04-02 | Accessing and updating views and relations in a relational database |
| US11/649,089 US7620664B2 (en) | 2002-04-02 | 2006-12-31 | Computer-implemented method for translating among multiple representations and storage structures |
| US12/587,209 US20100023551A1 (en) | 2002-04-02 | 2009-10-03 | Method for accessing and updating data in a database using membership abstractions and logical representations |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US11/649,089 Division US7620664B2 (en) | 2002-04-02 | 2006-12-31 | Computer-implemented method for translating among multiple representations and storage structures |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| US20100023551A1 true US20100023551A1 (en) | 2010-01-28 |
Family
ID=46328476
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US11/649,089 Expired - Fee Related US7620664B2 (en) | 2002-04-02 | 2006-12-31 | Computer-implemented method for translating among multiple representations and storage structures |
| US12/587,209 Abandoned US20100023551A1 (en) | 2002-04-02 | 2009-10-03 | Method for accessing and updating data in a database using membership abstractions and logical representations |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US11/649,089 Expired - Fee Related US7620664B2 (en) | 2002-04-02 | 2006-12-31 | Computer-implemented method for translating among multiple representations and storage structures |
Country Status (1)
| Country | Link |
|---|---|
| US (2) | US7620664B2 (en) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007068091A1 (en) * | 2005-12-12 | 2007-06-21 | Audiokinetic Inc. | Method and system for multi-version digital authoring |
| US8352431B1 (en) * | 2007-10-31 | 2013-01-08 | Emc Corporation | Fine-grain policy-based snapshots |
| US9507820B1 (en) | 2012-10-23 | 2016-11-29 | Dell Software Inc. | Data modeling system for runtime schema extensibility |
| US8838654B1 (en) * | 2012-10-23 | 2014-09-16 | Dell Software Inc. | Data modeling system for runtime schema extensibility |
| CN113505127B (en) * | 2021-06-22 | 2024-06-18 | 侍意(厦门)网络信息技术有限公司 | Storage structure and method for data with associated objects, retrieval and visual display method |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5822750A (en) * | 1997-06-30 | 1998-10-13 | International Business Machines Corporation | Optimization of correlated SQL queries in a relational database management system |
| US20010013030A1 (en) * | 1998-03-27 | 2001-08-09 | Informix Software, Inc. | Defining and characterizing an analysis space for precomputed views |
Family Cites Families (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4514826A (en) * | 1981-05-18 | 1985-04-30 | Tokyo Shibaura Denki Kabushiki Kaisha | Relational algebra engine |
| US4769772A (en) * | 1985-02-28 | 1988-09-06 | Honeywell Bull, Inc. | Automated query optimization method using both global and parallel local optimizations for materialization access planning for distributed databases |
| US4918593A (en) * | 1987-01-08 | 1990-04-17 | Wang Laboratories, Inc. | Relational database system |
| US5247665A (en) * | 1988-09-30 | 1993-09-21 | Kabushiki Kaisha Toshiba | Data base processing apparatus using relational operation processing |
| US5226158A (en) * | 1989-05-24 | 1993-07-06 | International Business Machines Corporation | Method and apparatus for maintaining referential integrity within a relational database |
| US5701466A (en) * | 1992-03-04 | 1997-12-23 | Singapore Computer Systems Limited | Apparatus and method for end user queries |
| US5566333A (en) * | 1992-11-05 | 1996-10-15 | Trace Technologies, Inc. | Relational database information management system for facilitating normalization of a relational database |
| JP2583010B2 (en) * | 1993-01-07 | 1997-02-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Method of maintaining consistency between local index table and global index table in multi-tier index structure |
| US5594837A (en) * | 1993-01-29 | 1997-01-14 | Noyes; Dallas B. | Method for representation of knowledge in a computer as a network database system |
| US5455945A (en) * | 1993-05-19 | 1995-10-03 | Vanderdrift; Richard | System and method for dynamically displaying entering, and updating data from a database |
| US5493671A (en) * | 1993-06-04 | 1996-02-20 | Marcam Corporation | Method and apparatus for conversion of database data into a different format on a field by field basis using a table of conversion procedures |
| US5701453A (en) * | 1993-07-01 | 1997-12-23 | Informix Software, Inc. | Logical schema to allow access to a relational database without using knowledge of the database structure |
| US5615361A (en) * | 1995-02-07 | 1997-03-25 | International Business Machines Corporation | Exploitation of uniqueness properties using a 1-tuple condition for the optimization of SQL queries |
| US5590324A (en) * | 1995-02-07 | 1996-12-31 | International Business Machines Corporation | Optimization of SQL queries using universal quantifiers, set intersection, and max/min aggregation in the presence of nullable columns |
| US5717924A (en) * | 1995-07-07 | 1998-02-10 | Wall Data Incorporated | Method and apparatus for modifying existing relational database schemas to reflect changes made in a corresponding object model |
| US5734887A (en) * | 1995-09-29 | 1998-03-31 | International Business Machines Corporation | Method and apparatus for logical data access to a physical relational database |
| US6088524A (en) * | 1995-12-27 | 2000-07-11 | Lucent Technologies, Inc. | Method and apparatus for optimizing database queries involving aggregation predicates |
| US5870739A (en) * | 1996-09-20 | 1999-02-09 | Novell, Inc. | Hybrid query apparatus and method |
| US6591272B1 (en) * | 1999-02-25 | 2003-07-08 | Tricoron Networks, Inc. | Method and apparatus to make and transmit objects from a database on a server computer to a client computer |
| US6356900B1 (en) * | 1999-12-30 | 2002-03-12 | Decode Genetics Ehf | Online modifications of relations in multidimensional processing |
| CA2354437A1 (en) * | 2001-07-31 | 2003-01-31 | Ibm Canada Limited-Ibm Canada Limitee | A schema for sharing relational database types |
-
2006
- 2006-12-31 US US11/649,089 patent/US7620664B2/en not_active Expired - Fee Related
-
2009
- 2009-10-03 US US12/587,209 patent/US20100023551A1/en not_active Abandoned
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5822750A (en) * | 1997-06-30 | 1998-10-13 | International Business Machines Corporation | Optimization of correlated SQL queries in a relational database management system |
| US20010013030A1 (en) * | 1998-03-27 | 2001-08-09 | Informix Software, Inc. | Defining and characterizing an analysis space for precomputed views |
Also Published As
| Publication number | Publication date |
|---|---|
| US7620664B2 (en) | 2009-11-17 |
| US20080010235A1 (en) | 2008-01-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20100023551A1 (en) | Method for accessing and updating data in a database using membership abstractions and logical representations | |
| US8122052B2 (en) | Data model simplification through field fallout | |
| US5950210A (en) | Database row version differentiation process | |
| US8983934B2 (en) | SQL tuning base | |
| US7412439B2 (en) | Method for statistics management | |
| US8566909B2 (en) | Row-level security with expression data type | |
| US9043307B2 (en) | Generating statistics on text pattern matching predicates for access planning | |
| US8843890B2 (en) | System and method for transplanting source code | |
| US7464073B2 (en) | Application of queries against incomplete schemas | |
| US8005704B2 (en) | Method and system for tracking of work-item revisions | |
| US20050160355A1 (en) | Maintaining annotations for distributed and versioned files | |
| US20060047696A1 (en) | Partially materialized views | |
| US20050154710A1 (en) | Dynamic bitmap processing, identification and reusability | |
| US20060122977A1 (en) | Techniques for managing interdependent data objects | |
| WO2013154521A1 (en) | Creating an archival model | |
| JP4159099B2 (en) | Dimension table processing apparatus, dimension hierarchy extraction apparatus, dimension table processing method, dimension hierarchy extraction method, and program | |
| US20050198011A1 (en) | System and method for managing presentation of data | |
| US6763358B2 (en) | Method and system for activating column triggers in a database management system | |
| US20050283466A1 (en) | Techniques for creating queries | |
| US8639711B2 (en) | Method and system for evaluating data | |
| CA2526045C (en) | Complex data access | |
| US20100030733A1 (en) | Transforming SQL Queries with Table Subqueries | |
| US20090055357A1 (en) | Data integrity checking for set-oriented data stores | |
| US8990186B2 (en) | Techniques for updating join indexes | |
| US7415455B2 (en) | Self-healing RDBMS optimizer |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |