IP Library › Granted Patent US 11,481,377
Granted Patent B2
US 11,481,377 · App. 16/175,414 · Granted Oct 25, 2022

Compute-efficient effective tag determination for data assets

Inventors: Saikat Guha (Seattle, WA); Boris Asipov (Bellevue, WA); Justin Dellamore (Lynnwood, WA)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06F16/2365G06F16/13G06F16/148G06F16/185
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,481,377
App. No.
16/175,414
Granted
Oct 25, 2022
Kind
B2
Abstract

Techniques described herein are directed to determining an effective tag for data assets. For instance, each tag associated with a data asset may be associated with certain attributes. Non-limiting examples for such attributes may include a confidence level associated with a source that applied the tag, an applied date at which the tag was applied to the data asset, and/or a hierarchical depth of the data asset to which the tag was applied, as well as additional and/or alternative types of attributes. When a request to determine a tag for a data asset is received, the attributes for all the tags applied to the data asset may be retrieved and/or analyzed to determine which of such tags effectively classifies the data asset. The determined effective tag may be returned to the requesting entity.

Claims (62)

1. A method, comprising:

receiving, by a server, a user-initiated request for an effective tag associated with a data object stored in a hierarchy of data objects, the data objects including files and folders, the data objects in the hierarchy having a plurality of associated applied tags, the user-initiated request including a resource identifier that specifies the data object and a subset of the data objects in the hierarchy that are in a hierarchical path of the data object;

responsive to receiving the user-initiated request for the effective tag associated with the data object:

issuing, by the server, a query to a data structure that associates the data object and each of the subset of the data objects in the hierarchical path of the data object with respective applied tags of the plurality of associated applied tags; and

receiving, by the server, a response that includes the respective applied tags for the data object and each of the subset of the data objects in the hierarchical path of the data object;

determining, by the server, confidence levels associated with the respective applied tags;

determining, by the server, that a first subset of applied tags of the respective applied tags have a highest confidence level of the determined confidence levels;

determining, by the server, hierarchical depths associated with the respective applied tags of the first subset;

determining, by the server, a deepest hierarchical depth of the determined hierarchical depths; and

selecting, by the server, an applied tag of the first subset having the deepest hierarchical depth to be the effective tag; and

providing, by the server, the effective tag subsequent to determining the effective tag.

2. The method of claim 1 , wherein an applied tag of the respective applied tags is inherited from another data object in the path.

3. The method of claim 1 , wherein the data structure is a reference table.

4. The method of claim 1 , wherein each respective applied tag of the respective applied tags is associated with at least one attribute.

5. The method of claim 4 , wherein the at least attribute comprises at least one of:

a respective confidence level of the confidence levels;

an applied date at which the respective applied tag was associated with a corresponding data object; or

a respective hierarchical depth, of the hierarchical depths, of the associated data object in the hierarchy.

6. The method of claim 4 , wherein the data objects in the hierarchy are associated with the plurality of associated applied tags by an automatic tagging tool.

7. The method of claim 6 , wherein the at least one attribute comprises a name of the automatic tagging tool.

8. A system, comprising:

at least one processor circuit; and

at least one memory that stores program code configured to be executed by the at least one processor circuit, the program code comprising:

a tag engine configured to receive a user-initiated request for an effective tag associated with a data object stored in a hierarchy of data objects, the data objects including files and folders, the data objects in the hierarchy having a plurality of associated applied tags, the user-initiated request including a resource identifier that specifies the data object and a subset of the data objects in the hierarchy that are in a hierarchical path of the data object;

an applied tag determiner configured to, responsive to receiving the user-initiated request for the effective tag associated with the data object:

issue a query to a data structure that associates the data object and each of the subset of the data objects in the hierarchical path of the data object with respective applied tags of the plurality of associated applied tags; and

receive a response that includes the respective applied tags for the data object and each of the subset of the data objects in the hierarchical path of the data object; and

a confidence comparator configured to:

determine confidence levels associated with the respective applied tags; and

determine that a first subset of applied tags of the respective applied tags have a highest confidence level of the determined confidence levels; and

a depth comparator configured to:

determine hierarchical depths associated with the respective applied tags of the first subset;

determine a deepest hierarchical depth of the determined hierarchical depths; and

select an applied tag of the first subset having the deepest hierarchical depth to be the effective tag,

the tag engine further configured to provide the effective tag subsequent to determining the effective tag.

9. The system of claim 8 , wherein an applied tag of the respective applied tags is inherited from another data object in the path.

10. The system of claim 8 , wherein the data structure is a reference table.

11. The system of claim 8 , wherein each respective applied tag of the respective applied tags is associated with at least one attribute.

12. The system of claim 11 , wherein the at least attribute comprises at least one of:

a respective confidence level of the confidence levels;

an applied date at which the respective applied tag was associated with a corresponding data object; or

a respective hierarchical depth, of the hierarchical depths, of the associated data object in the hierarchy.

13. The system of claim 11 , wherein the data objects in the hierarchy are associated with the plurality of associated applied tags by an automatic tagging tool.

14. The system of claim 13 , wherein the at least one attribute comprises a name of the automatic tagging tool.

15. A computer-readable storage medium having program instructions recorded thereon that, when executed by at least one processor of a server, perform a method, the method comprising:

receiving, by a server, a user-initiated request for an effective tag associated with a data object stored in a hierarchy of data objects, the data objects including files and folders, the data objects in the hierarchy having a plurality of associated applied tags, the user-initiated request including a resource identifier that specifies the data object and a subset of the data objects in the hierarchy that are in a hierarchical path of the data object;

responsive to receiving the user-initiated request for the effective tag associated with the data object:

issuing, by the server, a query to a data structure that associates the data object and each of the subset of the data objects in the hierarchical path of the data object with respective applied tags of the plurality of associated applied tags; and

receiving, by the server, a response that includes the respective applied tags for the data object and each of the subset of the data objects in the hierarchical path of the data object; determining, by the server, confidence levels associated with the respective applied tags;

determining, by the server, that a first subset of applied tags of the respective applied tags have a highest confidence level of the determined confidence levels;

determining, by the server, hierarchical depths associated with the respective applied tags of the first subset;

determining, by the server, a deepest hierarchical depth of the determined hierarchical depths; and

selecting, by the server, an applied tag of the first subset having the deepest hierarchical depth to be the effective tag; and

providing, by the server, the effective tag subsequent to determining the effective tag.

16. The computer-readable storage medium of claim 15 , wherein an applied tag of the respective applied tags is inherited from another data object in the path.

17. The computer-readable storage medium of claim 15 , wherein the data structure is a reference table.

18. The computer-readable storage medium of claim 15 , wherein each respective applied tag of the respective applied tags is associated with at least one attribute.

19. The computer-readable storage medium of claim 18 , wherein the at least attribute comprises at least one of:

a respective confidence level of the confidence levels;

an applied date at which the respective applied tag was associated with a corresponding data object; or

a respective hierarchical depth, of the hierarchical depths, of the associated data object in the hierarchy.

20. The computer-readable storage medium of claim 18 , wherein the data objects in the hierarchy are associated with the plurality of associated applied tags by an automatic tagging tool.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2018
From: GUHA, SAIKAT; ASIPOV, BORIS; DELLAMORE, JUSTIN
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 047363/0371 →
Continuity (1)
Related Publication 20200134064A1 · Apr 30, 2020