DENORMALIZE RECURSIVE, UNBALANCED, & RAGGED HIERARCHIES
First Claim
1. An apparatus for transforming an unstructured database, wherein the apparatus transforms the unstructured database into a structured database, the apparatus comprising:
- a memory;
a computing processor; and
a module stored in the memory, said module comprising instruction code executable by one or more computing processors, and configured to cause the one or more computing processors to;
import an unstructured database into a computing device system, the unstructured database comprising a plurality of entities in a hierarchy of levels below a highest level;
analyze the unstructured database to identify relationships between the entities in the hierarchy;
generate a flattened database by expanding entities from higher levels into lower levels of the database such that every entity is present in a lowest level at least once;
determine one or more instances of unbalanced or ragged hierarchies in the unstructured database, wherein;
an unbalanced hierarchy is a hierarchy having branches of unequal length, anda ragged hierarchy is a hierarchy where at least one entity below the highest level does not have a direct supervisor;
populate the flattened database according to one or more predetermined rules in order to develop relationships between the one or more instance of the unbalanced or ragged hierarchies and the remaining entities in the hierarchy; and
provide an output of a structured database comprising the populated hierarchy.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments disclosed herein relate to systems, methods, and computer program products for transforming an unstructured database into a structured database. In some embodiments, the system and method imports an unstructured database comprising entities and a hierarchy associated with the entities. The system and method analyze the unstructured database, flatten the database so that a recursive database is converted into a database that fully expands all entities into lower levels, and identifies instances of unbalanced or ragged hierarchies. The system populates the database according to predetermined rules to address the unbalanced or ragged hierarchies and outputs a structured database that can be used for accurate analysis of the hierarchy and entities stored therein, such as corporate structure hierarchies or stock inventory hierarchies.
-
Citations
20 Claims
-
1. An apparatus for transforming an unstructured database, wherein the apparatus transforms the unstructured database into a structured database, the apparatus comprising:
-
a memory; a computing processor; and a module stored in the memory, said module comprising instruction code executable by one or more computing processors, and configured to cause the one or more computing processors to; import an unstructured database into a computing device system, the unstructured database comprising a plurality of entities in a hierarchy of levels below a highest level; analyze the unstructured database to identify relationships between the entities in the hierarchy; generate a flattened database by expanding entities from higher levels into lower levels of the database such that every entity is present in a lowest level at least once; determine one or more instances of unbalanced or ragged hierarchies in the unstructured database, wherein; an unbalanced hierarchy is a hierarchy having branches of unequal length, and a ragged hierarchy is a hierarchy where at least one entity below the highest level does not have a direct supervisor; populate the flattened database according to one or more predetermined rules in order to develop relationships between the one or more instance of the unbalanced or ragged hierarchies and the remaining entities in the hierarchy; and provide an output of a structured database comprising the populated hierarchy. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product for transforming an unstructured database, wherein the apparatus transforms the unstructured database into a structured database, the computer program product comprising:
a non-transitory computer-readable medium comprising; an executable portion for causing a computer to import an unstructured database into a computing device system, the unstructured database comprising a plurality of entities in a hierarchy of levels below a highest level; an executable portion for causing a computer to analyze the unstructured database to identify relationships between the entities in the hierarchy; an executable portion for causing a computer to generate a flattened database by expanding entities from higher levels into lower levels of the database such that every entity is present in a lowest level at least once; an executable portion for causing a computer to determine one or more instances of unbalanced or ragged hierarchies in the unstructured database, wherein; an unbalanced hierarchy is a hierarchy having branches of unequal length, and a ragged hierarchy is a hierarchy where at least one entity below the highest level does not have a direct supervisor; an executable portion for causing a computer to populate the flattened database according to one or more predetermined rules in order to develop relationships between the one or more instance of the unbalanced or ragged hierarchies and the remaining entities in the hierarchy; and an executable portion for causing a computer to provide an output of a structured database comprising the populated hierarchy. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
15. A computer-implemented method for transforming an unstructured database, wherein the apparatus transforms the unstructured database into a structured database, the method comprising:
-
importing an unstructured database into a computing device system, the unstructured database comprising a plurality of entities in a hierarchy of levels below a highest level; analyzing the unstructured database to identify relationships between the entities in the hierarchy; generating a flattened database by expanding entities from higher levels into lower levels of the database such that every entity is present in a lowest level at least once; determining one or more instances of unbalanced or ragged hierarchies in the unstructured database, wherein; an unbalanced hierarchy is a hierarchy having branches of unequal length, and a ragged hierarchy is a hierarchy where at least one entity below the highest level does not have a direct supervisor; populating the flattened database according to one or more predetermined rules in order to develop relationships between the one or more instance of the unbalanced or ragged hierarchies and the remaining entities in the hierarchy; and providing an output of a structured database comprising the populated hierarchy. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification