Directory service system and method with tolerance for data entry storage and output
First Claim
1. A method of storing data in a database, comprising:
- obtaining a first raw data value;
generating a first syntax-normalized data value associated with the first raw data value;
storing concurrently in a first table and a second table both the first syntax-normalized data value and the first raw data value;
receiving a query associated with an object and with the first syntax-normalized data value, wherein;
the object is associated with a first entry identifier; and
the first syntax-normalized data value is associated with an attribute identifier;
retrieving from the first table a plurality of entry identifiers, wherein each of the plurality of entry identifiers is associated, in the first table, with a parent entry identifier that matches the first entry identifier; and
for each of the retrieved entry identifiers;
identifying in the second table an entry associated with the respective retrieved entry identifier, wherein the entry is associated with the attribute identifier and comprises a respective syntax-normalized data value and a respective raw data value; and
if the respective syntax-normalized data value matches the first syntax-normalized data value, retrieving the respective raw data value.
4 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for applying an application of a data service, such as X.500 and LDAP, to a relational database, a database design and use of the database to perform such directory services. Specifically addressed is the problem of achieving efficient searching of a directory service database coupled with effective input or output of data from the database. The disclosed method and apparatus, which provide end efficiency and data tolerance in the provision of a variety of database services, is based upon the concurrent storage in a database of both a normalised (syntax normalised) form and a raw (protocol encoded) form of the data. The raw form of data may be in ASN.1. A further feature of the disclosed method and apparatus concerns the transfer of data in and out of a database, where, in finding data in the database, a normalised form is used, and, in transferring data out of the database, a raw form is used. Syntax rules are used to convert the raw form of data to or from the normalised form in which it is stored.
-
Citations
18 Claims
-
1. A method of storing data in a database, comprising:
-
obtaining a first raw data value; generating a first syntax-normalized data value associated with the first raw data value; storing concurrently in a first table and a second table both the first syntax-normalized data value and the first raw data value; receiving a query associated with an object and with the first syntax-normalized data value, wherein; the object is associated with a first entry identifier; and the first syntax-normalized data value is associated with an attribute identifier; retrieving from the first table a plurality of entry identifiers, wherein each of the plurality of entry identifiers is associated, in the first table, with a parent entry identifier that matches the first entry identifier; and for each of the retrieved entry identifiers; identifying in the second table an entry associated with the respective retrieved entry identifier, wherein the entry is associated with the attribute identifier and comprises a respective syntax-normalized data value and a respective raw data value; and if the respective syntax-normalized data value matches the first syntax-normalized data value, retrieving the respective raw data value. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of locating data in a database, wherein a first raw data value is stored in a first table and a second table and linked to a concurrently stored first syntax-normalized data value, comprising:
-
receiving a query associated with an object and with the first syntax-normalized data value, wherein; the object is associated with a first entry identifier; and the first syntax-normalized data value is associated with an attribute identifier; retrieving from the first table a plurality of entry identifiers, wherein each of the plurality of entry identifiers is associated, in the first table, with a parent entry identifier that matches the first entry identifier; and for each of the retrieved entry identifiers; identifying in the second table an entry associated with the respective retrieved entry identifier, wherein the entry is associated with the attribute identifier and comprises a respective syntax-normalized data value and a respective raw data value; and if the respective syntax-normalized data value matches the first syntax-normalized data value, retrieving the respective raw data value.
-
-
9. A database apparatus comprising:
-
means for obtaining a first raw data value; means for generating a first syntax-normalized data value associated with the first raw data value; a storage medium operable to store concurrently in a first table and a second table both the first syntax-normalized data value and the first raw data value; and means for receiving a query associated with an object and with the first syntax-normalized data value, wherein; the object is associated with a first entry identifier; and the first syntax-normalized data value is associated with an attribute identifier; means for retrieving from the first table a plurality of entry identifiers, wherein each of the plurality of entry identifiers is associated, in the first table, with a parent entry identifier that matches the first entry identifier; and means for searching data, wherein the search comprises, for each of the retrieved entry identifiers; identifying in the second table an entry associated with the respective retrieved entry identifier, wherein the entry is associated with the attribute identifier and comprises a respective syntax-normalized data value and a respective raw data value; and if the respective syntax-normalized data value matches the first syntax-normalized data value, retrieving the respective raw data value. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. An apparatus for locating data in a database, wherein:
-
a first raw data value is stored in a first table and a second table and linked to a concurrently stored first syntax-normalized data value, the first syntax-normalized data value generated from the first raw data value; and comprising; means for receiving a query associated with an object and with the first syntax-normalized data value, wherein; the object is associated with a first entry identifier; and the first syntax-normalized data value is associated with an attribute identifier; means for retrieving from the first table a plurality of entry identifiers, wherein each of the plurality of entry identifiers is associated, in the first table, with a parent entry identifier that matches the first entry identifier; and means for searching data, wherein the search comprises, for each of the retrieved entry identifiers; identifying in the second table an entry associated with the respective retrieved entry identifier, wherein the entry is associated with the attribute identifier and comprises a respective syntax-normalized data value and a respective raw data value; and if the respective syntax-normalized data value matches the first syntax-normalized data values retrieving the respective raw data value. - View Dependent Claims (17)
-
-
18. In a directory service system, having a database in which a first raw data value and an associated first syntax-normalized data value are stored in a first table and a second table, apparatus for transferring data into and out of the database, comprising:
-
means receiving a query associated with an object and with the first syntax-normalized data value, wherein; the object is associated with a first entry identifier; and the first syntax-normalized data value is associated with an attribute identifier; means for retrieving from the first table a plurality of entry identifiers, wherein each of the plurality of entry identifiers is associated, in the first table, with a parent entry identifier that matches the first entry identifier; and means for searching data, wherein the search comprises, for each of the retrieved entry identifiers; identifying in the second table an entry associated with the respective retrieved entry identifier, wherein the entry is associated with the attribute identifier and comprises a respective syntax-normalized data value and a respective raw data value; and if the respective syntax-normalized data value matches the first syntax-normalized data value, retrieving the respective raw data value.
-
Specification