Unified directory entity-based business data management method and device, computer device, medium and product
Patent Information
- Application Number
- CN202610687260.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-05-19
- Publication Date
- 2026-08-18
AI Technical Summary
[0003]现有技术中,通常采用基于代码托管平台的研发管理方式,这类方案以代码仓库为核心提供版本控制、代码审查和持续集成等能力,但其管理粒度局限于代码仓库层面,无法建立服 务、系统、团队、资源等研发对象之间的关联关系,缺乏对研发全生命周期的统一治理视图
[0035] The aforementioned business data management methods, devices, computer equipment, media, and products based on unified directory entities construct a unified directory entity model. Based on this model, they store entity instances corresponding to business data in a unified directory database. According to the attribute information of the entity instances, they establish a directed relationship graph between them. Responding to user access requests for a directory entity list, they obtain database query conditions based on the directed relationship graph and the user's identity information. Based on these query conditions, they retrieve the corresponding set of entity instances from the unified directory database. This enables full-process coverage of R&D data and improves the efficiency of data collaborative governance.
Smart Images

Figure CN122594282A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of business platform development technology, and in particular to a business data management method, apparatus, computer equipment, medium and product based on a unified directory entity. Background Technology
[0002] As enterprises deepen their digital transformation, the scale and complexity of internal R&D activities are constantly increasing. In large enterprises, information related to R&D activities, such as service catalogs, code repositories, personnel organization, continuous integration pipelines, deployment resources, operating environments, and technical documentation, is often scattered across multiple independent systems.
[0003] In existing technologies, R&D management is usually based on code hosting platforms. These solutions provide version control, code review and continuous integration capabilities with code repositories as the core. However, their management granularity is limited to the code repository level, and they cannot establish the relationship between R&D objects such as services, systems, teams and resources, and lack a unified governance view of the entire R&D lifecycle. Summary of the Invention
[0004] Therefore, it is necessary to provide a business data management method, device, computer equipment, medium, and product based on a unified directory entity that can improve the efficiency of data collaborative governance, addressing the aforementioned technical issues.
[0005] Firstly, this application provides a business data management method based on a unified directory entity, including:
[0006] Construct a unified directory entity model, and store the entity instances corresponding to the business data in the unified directory database based on the unified directory entity model; the unified directory entity model is used to represent the attribute structure corresponding to various entity types.
[0007] Based on the attribute information of entity instances, a directed relationship graph is established between entity instances; the directed relationship graph is used to represent the association relationships between entity instances.
[0008] In response to a user's access request for a list of directory entities, the database query conditions are obtained based on the directed relation graph and the user's identity information.
[0009] Retrieve the corresponding set of entity instances from the unified directory database based on database query conditions.
[0010] In one embodiment, the step of establishing a directed relationship graph between entity instances based on the attribute information of entity instances includes:
[0011] Based on the attribute information of entity instances, obtain the relationships between entity instances;
[0012] A directed relationship graph is built based on all the relationships; the relationships include ownership, membership and dependency.
[0013] In one embodiment, the method further includes:
[0014] Obtain the user list and organizational unit list based on business data;
[0015] Map users in the user list to user entity instances, and map organizational unit records in the organizational unit list to organizational unit entity instances;
[0016] Obtain the association between user entity instances and organizational unit entity instances.
[0017] In one embodiment, the step of obtaining database query conditions based on a directed relation graph and user identity information includes:
[0018] Based on the directed relation graph and the user's identity information, obtain the set of entity instances associated with the user; the set of entity instances includes the organizational unit entity instances associated with the user entity instance corresponding to the user.
[0019] Based on the directed relation graph and the set of entity instances, obtain the accessible entity instances;
[0020] Retrieve database query conditions based on accessible entity instances.
[0021] In one embodiment, the step of obtaining accessible entity instances based on a directed relation graph and a set of entity instances includes:
[0022] Retrieve the entity instance to be queried based on the user's query request;
[0023] Based on the directed relation graph and the entity instance set, if the entity instance to be queried meets the preset query conditions, the entity instance to be queried is regarded as an accessible entity instance. The preset query conditions include: the user is a preset administrator, or the entity type of the entity instance to be queried is a public type, or the entity instance to be queried belongs to the entity instance set, or the entity instance to be queried is a user entity instance and an organizational unit entity instance that has the same association with the user entity instance corresponding to the user, or the entity instance to be queried is a preset system entity instance.
[0024] In one embodiment, the method further includes:
[0025] Retrieve the abnormal entity instance from the entity instance;
[0026] Based on the source code location information of the abnormal entity instance, perform metadata completion for the abnormal entity instance.
[0027] Secondly, this application also provides a business data management device based on a unified directory entity, comprising:
[0028] The model building module is used to build a unified directory entity model. Based on the unified directory entity model, the entity instances corresponding to the business data are stored in the unified directory database. The unified directory entity model is used to represent the attribute structure corresponding to various entity types.
[0029] The graph building module is used to build a directed relationship graph between entity instances based on the attribute information of entity instances; the directed relationship graph is used to represent the association relationship between entity instances.
[0030] The condition retrieval module is used to respond to user access requests for a directory entity list and retrieve database query conditions based on a directed relation graph and the user's identity information.
[0031] The data query module is used to retrieve the corresponding set of entity instances from the unified directory database based on database query conditions.
[0032] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the method steps of any one of the first aspects.
[0033] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the method steps of any one of the first aspects.
[0034] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the method steps of any one of the first aspects.
[0035] The aforementioned business data management methods, devices, computer equipment, media, and products based on unified directory entities construct a unified directory entity model. Based on this model, they store entity instances corresponding to business data in a unified directory database. According to the attribute information of the entity instances, they establish a directed relationship graph between them. Responding to user access requests for a directory entity list, they obtain database query conditions based on the directed relationship graph and the user's identity information. Based on these query conditions, they retrieve the corresponding set of entity instances from the unified directory database. This enables full-process coverage of R&D data and improves the efficiency of data collaborative governance. Attached Figure Description
[0036] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0037] Figure 1 This is an application environment diagram of a business data management method based on a unified directory entity in one embodiment.
[0038] Figure 2 This is a flowchart illustrating a business data management method based on a unified directory entity in one embodiment;
[0039] Figure 3 This is a flowchart illustrating a business data management method based on a unified directory entity in another embodiment;
[0040] Figure 4 This is a schematic diagram of the architecture of a business data management platform based on a unified directory entity in one embodiment;
[0041] Figure 5 This is a structural block diagram of a business data management device based on a unified directory entity in one embodiment.
[0042] Figure 6 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0043] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0044] As enterprises deepen their digital transformation, the scale and complexity of internal R&D activities are constantly increasing. In large enterprises, information related to R&D activities, such as service catalogs, code repositories, personnel organization, continuous integration pipelines, deployment resources, operating environments, and technical documentation, is often scattered across multiple independent systems.
[0045] In existing technologies, the first type of solution is the R&D management approach based on code hosting platforms. This approach provides version control, code review, and continuous integration capabilities centered on the code repository. However, its management granularity is limited to the code repository level, failing to establish relationships between R&D objects such as services, systems, teams, and resources, and lacking a unified governance view for the entire R&D lifecycle. The second type of solution is the asset management approach based on Configuration Management Databases (CMDBs). This approach focuses on the registration and configuration records of infrastructure resources, but struggles to effectively link code repositories, organizational relationships, template creation, and R&D delivery behaviors with resource objects. Its static ledger nature cannot meet the needs of dynamic governance during the R&D process. The third type of solution is the R&D platform approach based on portal aggregation. This approach integrates links and status information from multiple external systems through a page, providing a unified access point. However, data between systems relies on manual maintenance or weak synchronization, and the underlying data is not uniformly modeled, resulting in the platform only serving as an information display function, making it difficult to truly achieve closed-loop execution of governance logic.
[0046] The existing solutions generally have the following problems: (1) Software asset information is scattered across multiple systems, and there is a lack of a unified data model and relational view between services, systems, interfaces, personnel and resources, which makes it difficult to retrieve and analyze information across systems; (2) The metadata and directory information of the code repository rely on manual maintenance, which is prone to data loss, errors and delays, and cannot provide a reliable data foundation for automated governance; (3) Access control generally adopts the static role-based access control (RBAC) model, which lacks the ability to dynamically converge permissions based on organizational relationships and entity affiliation, resulting in extensive permission management and the inability to automatically adjust with organizational changes; (4) The project creation process is disconnected from the subsequent governance orchestration, and the repository initialization, pipeline configuration, directory registration and governance attribute filling are scattered in different stages, and governance requirements cannot be implemented in advance when the project is created; (5) The R&D objects and infrastructure resource objects are not included in a unified model, which makes it impossible to achieve effective linkage between the service perspective and the resource perspective.
[0047] Based on this, this application provides a business data management method based on a unified directory entity. By constructing a unified software directory model, it incorporates R&D objects and organizational objects such as services, sites, software libraries, data pipelines, users, teams, systems, and resources into a unified entity model. Relationships, permissions, display, and delivery capabilities are built around these entities to achieve full-process coverage of R&D data and improve the efficiency of data collaborative governance.
[0048] The business data management method based on a unified directory entity provided in this application can be applied to, for example... Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or placed on a cloud or other network server. Terminal 102 is used to construct a unified directory entity model. Based on the unified directory entity model, it stores entity instances corresponding to business data in a unified directory database. Based on the attribute information of the entity instances, it establishes a directed relationship graph between entity instances. Responding to user access requests for the directory entity list, it obtains database query conditions based on the directed relationship graph and the user's identity information, and retrieves the corresponding set of entity instances from the unified directory database based on the database query conditions. Terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, drones, low-altitude aircraft, IoT devices, and portable wearable devices. IoT devices can be smart speakers, smart TVs, smart air conditioners, smart vehicle devices, projection devices, etc. Portable wearable devices can be smartwatches, smart bracelets, head-mounted devices, etc. Headset devices can be virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, etc. Server 104 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services.
[0049] In one exemplary embodiment, such as Figure 2 As shown, a business data management method based on a unified directory entity is provided, which can be applied to... Figure 1 Taking terminal 102 as an example, the explanation includes the following steps 202 to 208. Wherein:
[0050] S202: Construct a unified directory entity model. Based on the unified directory entity model, store the entity instances corresponding to the business data in the unified directory database. The unified directory entity model is used to represent the attribute structure corresponding to various entity types.
[0051] Optionally, the unified directory entity model adopts a structured text format, defining the types and attribute structures of all key objects in the development process. The entity types defined in the model include, but are not limited to: software components, business systems, users, organizational units (such as teams and departments), infrastructure resources, creation templates, interface description information, and file locations. Each entity type includes metadata (such as name, namespace, display title, tags, and annotations) and specifications.
[0052] Furthermore, user lists, group lists, and directory description files stored in the root directory of the code repository are periodically retrieved from the external code repository system. For each user record, attributes such as username, email, and display name are extracted, and a corresponding entity instance is created according to the user entity model, with a globally unique identifier assigned. For each group record, the group name, parent group, and member list are extracted, and an organizational unit entity instance is created. For the directory description file, it is parsed into entity instances such as components, systems, or resources. All entity instances are written to a unified directory database (such as a relational database or graph database), transforming heterogeneous information originally scattered across multiple systems such as the code repository, configuration management database, and lightweight directory access protocol service into entity instances with a unified structure and semantics.
[0053] S204: Based on the attribute information of entity instances, establish a directed relationship graph between entity instances; the directed relationship graph is used to represent the association relationship between entity instances.
[0054] Optionally, after storing entity instances, the references to other entity instances in the specification fields of each entity instance are scanned. Different types of directed relationships are established based on these references, collectively forming a complete relationship graph. These relationships include: attribution, ownership, membership, and dependency. All relationships are stored in the database as a directed graph, supporting forward and reverse traversal queries starting from any entity node (e.g., querying which downstream components a component depends on, or querying which upstream components depend on this component). This enables the formation of a knowledge network from discrete entity instances, achieving cross-entity association analysis, dependency impact assessment, and attribution chain tracing.
[0055] S206: In response to a user's access request for a list of directory entities, obtain database query conditions based on the directed relation graph and the user's identity information.
[0056] Optionally, when a user accesses the list of directory entities via single sign-on (e.g., authentication via a code repository system), the unique identifier of the current user is obtained from the single sign-on callback, and the user entity instance and its attributes corresponding to that user are read from the unified directory database. Using a directed relational graph, the entity instances directly owned by the user, as well as all organizational unit entities to which the user belongs, are queried, and the results are merged into a single set. Then, based on preset permission rules, the accessibility of the entity instance requested by the user is evaluated, generating a permission condition expression. This logical expression is then converted into a filter clause in the structured query language that the unified directory database can execute—that is, a database query condition.
[0057] S208: Retrieve the corresponding set of entity instances from the unified directory database based on database query conditions.
[0058] Optionally, the generated database query conditions are submitted to the unified directory database. When the database engine executes the query, it only retrieves entity instances that meet the conditions (i.e., the user has permission to access them), returns them in a structured data format, performs necessary packaging on these entity instances, and finally sends the set of entity instances to the user via a network protocol. The directory entity list that the user sees on the front end is the result of dynamic filtering based on their identity, team affiliation, entity ownership, etc. The user does not need to understand the underlying permission model and can focus only on the development objects they have permission to access.
[0059] In the aforementioned business data management method based on unified directory entities, a unified directory entity model is constructed. Based on the unified directory entity model, entity instances corresponding to business data are stored in a unified directory database. A directed relationship graph between entity instances is established based on the attribute information of the entity instances. In response to user access requests for the directory entity list, database query conditions are obtained based on the directed relationship graph and the user's identity information. Based on the database query conditions, the corresponding set of entity instances is retrieved from the unified directory database. This method can achieve full-process coverage of R&D data and improve the efficiency of data collaborative governance.
[0060] In an exemplary embodiment, the step of establishing a directed relationship graph between entity instances based on the attribute information of entity instances includes: obtaining the association relationships between entity instances based on the attribute information of entity instances; establishing a directed relationship graph based on all association relationships; the association relationships include ownership relationships, ownership relationships, membership relationships, and dependency relationships.
[0061] Optionally, all entity instances stored in the unified directory database are traversed, and the specification fields of each entity instance are scanned to extract explicit or implicit reference values pointing to other entity instances. Based on the different semantics of the references, the following four types of relationships can be identified: (1) Attribution relationship: When the specification of an entity instance contains a "belonging to system" field, and the value of this field points to the name of another system entity, it is determined that the current component entity belongs to that system entity. Similarly, when the "belonging to domain" field of a system entity points to a domain entity, an attribution relationship of the system belonging to the domain is established. (2) Ownership relationship: When the specification of an entity instance contains a "responsible team" or "owner" field, and the value of this field points to a user entity or organizational unit entity, it is determined that the entity instance is owned by that user or organizational unit. (3) Membership relationship: When the specification of a user entity contains a "belonging to group" field (a list of names of one or more organizational units), it is determined that there is a membership relationship between the user entity and these organizational unit entities. At the same time, when the specification of an organizational unit entity contains the "parent organization" field, it is determined that there is a hierarchical member relationship between the organizational unit and its parent organizational unit. (4) Dependency relationship: When the specification of a component entity or resource entity contains the "dependency" field (a list of names of one or more other components or resource entities), it is determined that there is a dependency relationship between the entity and the target entity (such as service calls, infrastructure dependencies, etc.).
[0062] Furthermore, each identified relationship is treated as a directed edge, and the entity instances participating in the relationship are treated as nodes, stored in a graph database. Each directed edge records: the originating entity identifier, the ending entity identifier, and the relationship type (ownership / ownership / membership / dependency). Simultaneously, to support efficient bidirectional queries, the platform establishes a reverse index for each relationship type, ultimately forming a directed relationship graph that is multi-labeled and multi-relationship type.
[0063] In this embodiment, by obtaining the association relationships between entity instances based on the attribute information of entity instances, and establishing a directed relationship graph based on all the association relationships, the association relationships between data can be accurately identified, thereby improving the comprehensiveness of data governance.
[0064] In an exemplary embodiment, the method further includes: obtaining a user list and an organizational unit list based on business data; mapping users in the user list to user entity instances and mapping organizational unit records in the organizational unit list to organizational unit entity instances; and obtaining the association relationship between user entity instances and organizational unit entity instances.
[0065] Optionally, scheduled tasks can be set up to call the user query interface and group query interface provided by the data source to retrieve all user records and all organizational unit (group) records, respectively. User records typically include attributes such as: unique user identifier (e.g., username), email address, display name, avatar link, and account status. Organizational unit records typically include attributes such as: unique organizational unit identifier (e.g., group path), display name, parent organizational unit identifier, description information, and a list of member users. When interfacing with different types of business data sources (such as different code hosting systems, lightweight directory access protocol services, or configuration management databases), only the corresponding adapters need to be written.
[0066] Furthermore, the username is extracted from the user records as the name of the entity instance, and the email address, display name, and other user information fields stored in the specification are extracted. Users in the user list are mapped to user entity instances, and a globally unique identifier is assigned to each entity instance and written to the user entity set in the unified directory database. Simultaneously, the unique identifier of the organizational unit is extracted as the name of the entity instance, and the display name, description, and other information are extracted and stored in the organizational information fields of the specification. Organizational unit records in the organizational unit list are mapped to organizational unit entity instances. Then, for each organizational unit record's member user list, membership relationships between users and organizational units are created based on the stored user entity instance names and organizational unit entity instance names. When users, organizational units, or membership relationships in the external data source change (e.g., a user joins a new group, a group is renamed), the entity instance attributes and relationship graph in the database are updated accordingly.
[0067] In this embodiment, by obtaining the user list and organizational unit list based on business data, mapping users in the user list to user entity instances, and mapping organizational unit records in the organizational unit list to organizational unit entity instances, the association between user entity instances and organizational unit entity instances can be obtained, which can improve the real-time performance and accuracy of data and provide accurate data support for subsequent access control.
[0068] In an exemplary embodiment, the step of obtaining database query conditions based on a directed relation graph and user identity information includes: obtaining a set of entity instances associated with the user based on the directed relation graph and user identity information; the set of entity instances includes organizational unit entity instances associated with the user entity instance corresponding to the user; obtaining accessible entity instances based on the directed relation graph and entity instance set; and obtaining database query conditions based on the accessible entity instances.
[0069] Optionally, when a user accesses the site via single sign-on, the system retrieves the user's unique identifier in the unified directory database and uses the pre-constructed directed relational graph to read the user entity instance corresponding to the current user. Since hierarchical relationships exist between organizational units, the search is recursively performed upwards. That is, after finding the user's direct organizational unit, the search continues through the "parent organization" relationship of that unit to find higher-level organizational units, until the root organization is reached, ultimately obtaining the set of all organizational unit entity instances to which the user belongs. These two parts are then merged to form the set of entity instances associated with the user, including the user themselves and all their teams and departments. These identifiers will be used as "responsible party matching conditions" in subsequent permission checks.
[0070] Furthermore, the above rules are applied sequentially to each candidate entity instance within the user's request range, collecting all entity instances deemed accessible to form a list of accessible entity instances. It should be noted that in actual implementations, to improve efficiency, rule evaluation is not performed on an entity-by-entity basis in memory; instead, the rules are converted into logical expressions and executed by the database. To reduce data transfer between the application layer and the database and to leverage database indexes for acceleration, the system typically does not retrieve all entities before filtering; instead, the evaluation rules are converted into database query conditions, resulting in a logical expression that precisely matches all accessible entity instances.
[0071] In this embodiment, by obtaining the set of entity instances associated with the user based on the directed relationship graph and the user's identity information, and obtaining accessible entity instances based on the directed relationship graph and the set of entity instances, database query conditions can be obtained based on the accessible entity instances, which can accurately determine the user's access permissions and improve data security.
[0072] In an exemplary embodiment, the step of obtaining an accessible entity instance based on a directed relation graph and an entity instance set includes: obtaining the entity instance to be queried according to the user's query request; and, if the entity instance to be queried meets preset query conditions based on the directed relation graph and the entity instance set, designating the entity instance to be queried as an accessible entity instance. The preset query conditions include: the user is a preset administrator; or the entity type of the entity instance to be queried is a public type; or the entity instance to be queried belongs to the entity instance set; or the entity instance to be queried is a user entity instance and an organizational unit entity instance that has the same association with the user entity instance corresponding to the user; or the entity instance to be queried is a preset system entity instance.
[0073] Optionally, the user request carries one or more entity instances to be queried. Following a pre-defined decision logic, each entity instance is assessed for accessibility by the current user. Specifically, for each entity instance, if the current user's entity name exists in a pre-configured administrator list, all entity instances are unconditionally deemed accessible. This rule has the highest priority, ensuring administrators can perform global governance and maintenance operations. Certain entity types are predefined as "public types," such as templates, locations, and application programming interfaces (APIs). If an entity instance belongs to one of these public types, it is deemed accessible regardless of the current user, allowing basic public resources (such as scaffolding templates, access location information, and API definitions) to be shared by all developers without individual authorization. If the entity instance to be queried is a set of entity instances corresponding to the current user (i.e., the user themselves or any organizational unit to which they belong), then that entity instance can be accessed by the current user. This means the user can only access resources they created or that belong to their team. If the entity instance to be queried is of type "user", then the set of organizational unit entity instances associated with the target user entity is queried (i.e., all groups to which the user belongs are obtained through membership relationships), and the intersection of this set with the current user's entity instance set is calculated. If the intersection is not empty (i.e., the two users belong to at least the same team or department), then the target user entity is determined to be accessible to the current user, ensuring that members within the same team can view each other's basic information (such as contact information and scope of responsibilities), while user information across teams is hidden, thereby protecting employee privacy and reducing information interference. If the entity instance to be queried belongs to a preset "special access system" (such as an enterprise-level basic platform system, where all components and resources should be visible to all employees), then regardless of the current user's identity or organization, it is determined to be accessible.
[0074] Furthermore, for each entity instance to be queried in the user request, the above evaluation is performed, and all entity instances that are determined to be accessible are collected to form an accessible entity instance list. This list will be used to generate database query conditions or directly returned to the user as a response result.
[0075] In this embodiment, by obtaining the entity instance to be queried according to the user's query request, and determining that the entity instance to be queried meets the preset query conditions based on the directed relation graph and the entity instance set, the entity instance to be queried is regarded as an accessible entity instance, which can accurately determine the user's access permissions and improve data security.
[0076] In an exemplary embodiment, the method further includes: obtaining an abnormal entity instance from the entity instances; and performing metadata completion on the abnormal entity instance based on the source code location information of the abnormal entity instance.
[0077] Optionally, after periodically scanning the directory description files in the code repository and resolving them into entity instances, or when a user creates a new entity instance through the front-end interface, the metadata integrity of each entity instance will be checked. Among them, abnormal entity instances refer to entity instances with missing key attributes or those that cannot be directly obtained. For entity instances marked as abnormal, the source code location information of the entity instance that already exists in the external code repository is automatically deduced. The source code location information can come from the following sources: (1) Although the entity instance specification lacks a complete repository link, it may contain some path information, such as fragments of the organization name and project name of the code repository; (2) The source of the entity instance (for example, when created by template-driven creation, the template records the base address of the source code repository); (3) When scanning the code repository at the access and synchronization layer, the root address and directory structure of the repository have been recorded, and the location of the directory description file corresponding to the abnormal entity instance is the source code location of the entity instance.
[0078] Furthermore, based on the aforementioned source code location information, metadata completion is performed, including completing the code repository address, default branch, pipeline entry point, code merge request entry point, and other derived information. The completed information is written into the entity instance's metadata as annotations, or directly populated into the corresponding fields of the specification. The source and update time of the completion are recorded for verification or updating during subsequent incremental synchronization. If certain metadata cannot be derived from the source code location information (e.g., the directory description file is located on the local file system rather than a remote code repository), the missing state is retained and logged, but this does not affect the normal registration and use of the entity instance. In this case, the administrator can manually supplement it.
[0079] In this embodiment, by obtaining abnormal entity instances from entity instances and performing metadata completion on abnormal entity instances based on the source code location information of the abnormal entity instances, the cost of metadata maintenance can be reduced and the comprehensiveness and accuracy of data can be improved.
[0080] In one exemplary embodiment, such as Figure 3 As shown, a business data management method based on a unified directory entity is provided, which includes the following steps:
[0081] (1) Construction of unified directory entity model: Construct a unified directory entity model, and store the entity instances corresponding to the business data in the unified directory database according to the unified directory entity model; the unified directory entity model is used to represent the attribute structure corresponding to various entity types.
[0082] (2) Entity instance mapping: Obtain the user list and organizational unit list based on business data; map the users in the user list to user entity instances, and map the organizational unit records in the organizational unit list to organizational unit entity instances; obtain the association relationship between user entity instances and organizational unit entity instances.
[0083] (3) Missing data completion: Obtain the abnormal entity instance in the entity instance; based on the source code location information of the abnormal entity instance, complete the metadata of the abnormal entity instance.
[0084] (4) Directed Relationship Graph Construction: Based on the attribute information of entity instances, obtain the association relationships between entity instances; construct a directed relationship graph based on all association relationships; association relationships include attribution, ownership, membership, and dependency relationships. The directed relationship graph is used to represent the association relationships between entity instances.
[0085] (5) Entity Instance Query: In response to a user's access request for the directory entity list, obtain the set of entity instances associated with the user based on the directed relationship graph and the user's identity information; the entity instance set includes organizational unit entity instances associated with the user's corresponding user entity instance; obtain the entity instance to be queried based on the user's query request; if the entity instance to be queried meets the preset query conditions based on the directed relationship graph and the entity instance set, the entity instance to be queried is designated as an accessible entity instance; the preset query conditions include the user being a preset administrator, or the entity type of the entity instance to be queried being a public type, or the entity instance to be queried belonging to the entity instance set, or the entity instance to be queried being a user entity instance and having the same association with the user's corresponding user entity instance as an organizational unit entity instance, or the entity instance to be queried being a preset system entity instance; obtain the database query conditions based on the accessible entity instances. Obtain the corresponding entity instance set from the unified directory database based on the database query conditions.
[0086] In this embodiment, a unified directory entity model is constructed, and entity instances corresponding to business data are stored in a unified directory database based on the unified directory entity model. A directed relationship graph between entity instances is established based on the attribute information of the entity instances. In response to a user's access request for the directory entity list, database query conditions are obtained based on the directed relationship graph and the user's identity information. Based on the database query conditions, the corresponding set of entity instances is obtained from the unified directory database. This enables full-process coverage of R&D data and improves the efficiency of data collaborative governance.
[0087] In one exemplary embodiment, such as Figure 4As shown, a business data management platform based on a unified directory entity is provided. The platform can be divided into five layers: access and synchronization layer, unified directory layer, governance and control layer, delivery and orchestration layer, and display and interaction layer.
[0088] The access and synchronization layer is used to collect and import data from external systems. It serves as the entry point for the unified directory model, enabling functions such as code repository discovery and directory file scanning, code repository user and group synchronization, code repository project metadata completion, and the linkage of code repository front-end display components. The code repositories include various self-built repositories, and the platform supports the access and synchronization of multiple code repositories through a plug-in design, providing a stable data source for subsequent unified entity modeling and relationship governance.
[0089] The unified directory layer is the core of the platform, mapping objects from different sources to unified directory entities. Directory entities use YAML (Yellow Instance Classifieds) for easy manual maintenance and are defined with a specific filename. Entity types include, but are not limited to, components (describing software components), templates (describing parameters displayed in the front-end interface and the steps executed during processing), API interfaces (describing the interface information provided by components), groups (describing teams, departments, or other types of organizational units), users (describing user information on the platform), resources (describing various resources used in R&D activities, such as servers, databases, cloud services, etc.), systems (describing business systems or platform systems), domains (describing business domains or technical fields, which are collections of systems), and locations (describing the source location of directory entities). Through this unified directory model, the platform transforms objects from development, testing, deployment, and operation activities into unified entities, and constructs a complete software directory graph by defining relationships between entities (such as dependencies, ownership, and membership), providing a foundation for subsequent access control, display, and delivery orchestration. The unified directory layer not only stores the entities themselves, but also maintains the relationships between entities, such as ownership, membership, dependency, and deployment relationships.
[0090] The governance control layer is built upon directory entities and entity relationships, and is responsible for handling permissions, filtering, conditional decisions, and resource access control. The platform's governance control focuses on: visibility control of directory entities based on organizational affiliation; converged display of user and team information based on group relationships; protection and access control of special objects based on system affiliation; and resource-level authorization of internal plugin resources using a unified permission framework.
[0091] The delivery orchestration layer is template-based and provides capabilities such as project creation, repository initialization, script generation, directory registration, and delivery entry point generation.
[0092] The interactive interface provides a unified entry point for R&D, operations, and platform administrators. The platform front-end is laid out around directory entities and dynamically displays different content based on object type and available capabilities.
[0093] For example, taking the creation of a new microservice project as an example, the user browses the list of available templates on the template center page of the platform front end, selects "Microservice Project Template", and then enters the parameter filling interface. The interface displays the following required parameters: project name, project description, responsible team identifier, system identifier, lifecycle stage, and target code repository organization path.
[0094] Specifically, the template engine of the microservice project template receives parameters and verifies their integrity. It then checks the existence of the target organization path via the code repository system API; if it doesn't exist, it automatically creates the corresponding organization group. The template engine executes the steps sequentially according to the template definition: First, based on a pre-defined code template (such as a template repository containing a standard directory structure, build configuration file, and initial code files) and user input parameters, it renders and generates the initial file structure of the project; simultaneously, it generates a directory description file in the project root directory, which automatically populates the governance parameters provided by the user. The template engine creates a new code repository in the target organization path via the code repository system API, pushing all rendered files as the default branch for the first commit to that repository. The template engine registers the location information of the newly created directory description file in the location entity of the unified directory database, triggering the directory entity parsing process. After parsing, the new component entity is written to the database and automatically establishes a relationship with the filled-in responsible team and system. The platform returns the operation results to the user, including the following access points: the newly created code repository web address, the pipeline configuration entry, and the directory entity details page address.
[0095] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.
[0096] Based on the same inventive concept, this application also provides a unified directory entity-based business data management device for implementing the aforementioned unified directory entity-based business data management method. The solution provided by this device is similar to the implementation described in the above method. Therefore, the specific limitations in one or more unified directory entity-based business data management device embodiments provided below can be found in the limitations of the unified directory entity-based business data management method described above, and will not be repeated here.
[0097] In one exemplary embodiment, such as Figure 5 As shown, a business data management device based on a unified directory entity is provided, including: a model building module 10, a graph building module 20, a condition acquisition module 30, and a data query module 40, wherein:
[0098] The model building module 10 is used to build a unified directory entity model. Based on the unified directory entity model, the entity instances corresponding to the business data are stored in the unified directory database. The unified directory entity model is used to represent the attribute structure corresponding to various entity types.
[0099] The graph building module 20 is used to build a directed relationship graph between entity instances based on the attribute information of entity instances; the directed relationship graph is used to represent the association relationship between entity instances.
[0100] The condition acquisition module 30 is used to respond to a user's access request for a directory entity list and obtain database query conditions based on the directed relationship graph and the user's identity information.
[0101] The data query module 40 is used to retrieve the corresponding set of entity instances from the unified directory database based on database query conditions.
[0102] In an exemplary embodiment, the graph building module 20 is further configured to obtain the association relationships between entity instances based on the attribute information of the entity instances; and to build a directed relationship graph based on all the association relationships; the association relationships include ownership relationships, ownership relationships, membership relationships and dependency relationships.
[0103] In an exemplary embodiment, the graph building module 20 is further configured to obtain a user list and an organizational unit list based on business data; map users in the user list to user entity instances, and map organizational unit records in the organizational unit list to organizational unit entity instances; and obtain the association relationship between user entity instances and organizational unit entity instances.
[0104] In an exemplary embodiment, the condition acquisition module 30 is further configured to acquire a set of entity instances associated with the user based on the directed relation graph and the user's identity information; the set of entity instances includes organizational unit entity instances associated with the user entity instance corresponding to the user; acquire accessible entity instances based on the directed relation graph and the set of entity instances; and acquire database query conditions based on the accessible entity instances.
[0105] In an exemplary embodiment, the condition acquisition module 30 is further configured to acquire the entity instance to be queried according to the user's query request; if the entity instance to be queried meets the preset query conditions based on the directed relation graph and the entity instance set, the entity instance to be queried is designated as an accessible entity instance; the preset query conditions include the user being a preset administrator, or the entity type of the entity instance to be queried being a public type, or the entity instance to be queried belonging to the entity instance set, or the entity instance to be queried being a user entity instance and an organizational unit entity instance that has the same association with the user entity instance corresponding to the user, or the entity instance to be queried being a preset system entity instance.
[0106] In an exemplary embodiment, the model building module 10 is further configured to obtain abnormal entity instances in the entity instances; and to complete the metadata of the abnormal entity instances based on the source code location information of the abnormal entity instances.
[0107] The modules in the aforementioned business data management device based on a unified directory entity can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can invoke and execute the corresponding operations of each module.
[0108] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 6As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When executed by the processor, the computer program implements a business data management method based on a unified directory entity. The display unit is used to form a visually visible image and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0109] Those skilled in the art will understand that Figure 6 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0110] In one exemplary embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to perform the following steps: constructing a unified directory entity model; storing entity instances corresponding to business data in a unified directory database according to the unified directory entity model; the unified directory entity model is used to represent the attribute structure corresponding to various entity types; establishing a directed relationship graph between entity instances based on the attribute information of the entity instances; the directed relationship graph is used to represent the association relationship between entity instances; responding to a user's access request for a directory entity list, obtaining database query conditions based on the directed relationship graph and the user's identity information; and obtaining the corresponding set of entity instances from the unified directory database based on the database query conditions.
[0111] In one embodiment, the process of a processor executing a computer program to establish a directed relationship graph between entity instances based on the attribute information of entity instances includes: obtaining the association relationships between entity instances based on the attribute information of entity instances; and establishing a directed relationship graph based on all the association relationships; the association relationships include ownership relationships, ownership relationships, membership relationships, and dependency relationships.
[0112] In one embodiment, when the processor executes the computer program, it further performs the following steps: obtaining a user list and an organizational unit list based on business data; mapping users in the user list to user entity instances and mapping organizational unit records in the organizational unit list to organizational unit entity instances; and obtaining the association relationship between user entity instances and organizational unit entity instances.
[0113] In one embodiment, when a processor executes a computer program, obtaining database query conditions based on a directed relation graph and the user's identity information includes: obtaining a set of entity instances associated with the user based on the directed relation graph and the user's identity information; the set of entity instances includes organizational unit entity instances associated with the user entity instance corresponding to the user; obtaining accessible entity instances based on the directed relation graph and the set of entity instances; and obtaining database query conditions based on the accessible entity instances.
[0114] In one embodiment, when a processor executes a computer program, obtaining an accessible entity instance based on a directed relation graph and a set of entity instances includes: obtaining a query entity instance based on a user's query request; and, if the query entity instance satisfies preset query conditions based on the directed relation graph and the set of entity instances, designating the query entity instance as an accessible entity instance. The preset query conditions include: the user is a preset administrator; the entity type of the query entity instance is a public type; the query entity instance belongs to an entity instance set; the query entity instance is a user entity instance and is an organizational unit entity instance that has the same association as the user's corresponding user entity instance; or the query entity instance is a preset system entity instance.
[0115] In one embodiment, when the processor executes the computer program, it further performs the following steps: obtaining an abnormal entity instance from the entity instances; and performing metadata completion on the abnormal entity instance based on the source code location information of the abnormal entity instance.
[0116] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, it performs the following steps: constructing a unified directory entity model; storing entity instances corresponding to business data in a unified directory database according to the unified directory entity model; the unified directory entity model is used to represent the attribute structure corresponding to various entity types; establishing a directed relationship graph between entity instances based on the attribute information of the entity instances; the directed relationship graph is used to represent the association relationship between entity instances; responding to a user's access request for a directory entity list, obtaining database query conditions based on the directed relationship graph and the user's identity information; and obtaining the corresponding set of entity instances from the unified directory database based on the database query conditions.
[0117] In one embodiment, when a computer program is executed by a processor, the process of establishing a directed relationship graph between entity instances based on the attribute information of entity instances includes: obtaining the association relationships between entity instances based on the attribute information of entity instances; establishing a directed relationship graph based on all association relationships; the association relationships include ownership relationships, ownership relationships, membership relationships, and dependency relationships.
[0118] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: obtaining a user list and an organizational unit list based on business data; mapping users in the user list to user entity instances and mapping organizational unit records in the organizational unit list to organizational unit entity instances; and obtaining the association relationship between user entity instances and organizational unit entity instances.
[0119] In one embodiment, when a computer program is executed by a processor, obtaining database query conditions based on a directed relation graph and the user's identity information includes: obtaining a set of entity instances associated with the user based on the directed relation graph and the user's identity information; the set of entity instances includes organizational unit entity instances associated with the user entity instance corresponding to the user; obtaining accessible entity instances based on the directed relation graph and the set of entity instances; and obtaining database query conditions based on the accessible entity instances.
[0120] In one embodiment, when a computer program is executed by a processor, obtaining an accessible entity instance based on a directed relation graph and a set of entity instances includes: obtaining a query entity instance based on a user's query request; and, if the query entity instance satisfies preset query conditions based on the directed relation graph and the set of entity instances, designating the query entity instance as an accessible entity instance. The preset query conditions include: the user is a preset administrator; the entity type of the query entity instance is a public type; the query entity instance belongs to an entity instance set; the query entity instance is a user entity instance and is an organizational unit entity instance that has the same association as the user's corresponding user entity instance; or the query entity instance is a preset system entity instance.
[0121] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: obtaining an abnormal entity instance from the entity instances; and performing metadata completion on the abnormal entity instance based on the source code location information of the abnormal entity instance.
[0122] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, performs the following steps: constructing a unified directory entity model; storing entity instances corresponding to business data in a unified directory database based on the unified directory entity model; the unified directory entity model is used to represent the attribute structure corresponding to various entity types; establishing a directed relationship graph between entity instances based on the attribute information of the entity instances; the directed relationship graph is used to represent the association relationships between entity instances; responding to a user's access request for a directory entity list, obtaining database query conditions based on the directed relationship graph and the user's identity information; and obtaining the corresponding set of entity instances from the unified directory database based on the database query conditions.
[0123] In one embodiment, when a computer program is executed by a processor, the process of establishing a directed relationship graph between entity instances based on the attribute information of entity instances includes: obtaining the association relationships between entity instances based on the attribute information of entity instances; establishing a directed relationship graph based on all association relationships; the association relationships include ownership relationships, ownership relationships, membership relationships, and dependency relationships.
[0124] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: obtaining a user list and an organizational unit list based on business data; mapping users in the user list to user entity instances and mapping organizational unit records in the organizational unit list to organizational unit entity instances; and obtaining the association relationship between user entity instances and organizational unit entity instances.
[0125] In one embodiment, when a computer program is executed by a processor, obtaining database query conditions based on a directed relation graph and the user's identity information includes: obtaining a set of entity instances associated with the user based on the directed relation graph and the user's identity information; the set of entity instances includes organizational unit entity instances associated with the user entity instance corresponding to the user; obtaining accessible entity instances based on the directed relation graph and the set of entity instances; and obtaining database query conditions based on the accessible entity instances.
[0126] In one embodiment, when a computer program is executed by a processor, obtaining an accessible entity instance based on a directed relation graph and a set of entity instances includes: obtaining a query entity instance based on a user's query request; and, if the query entity instance satisfies preset query conditions based on the directed relation graph and the set of entity instances, designating the query entity instance as an accessible entity instance. The preset query conditions include: the user is a preset administrator; the entity type of the query entity instance is a public type; the query entity instance belongs to an entity instance set; the query entity instance is a user entity instance and is an organizational unit entity instance that has the same association as the user's corresponding user entity instance; or the query entity instance is a preset system entity instance.
[0127] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: obtaining an abnormal entity instance from the entity instances; and performing metadata completion on the abnormal entity instance based on the source code location information of the abnormal entity instance.
[0128] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.
[0129] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0130] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A method for managing business data based on a unified directory entity, characterized by, The method includes: A unified directory entity model is constructed, and entity instances corresponding to business data are stored in a unified directory database based on the unified directory entity model; the unified directory entity model is used to represent the attribute structure corresponding to various entity types. Based on the attribute information of the entity instances, a directed relationship graph is established between the entity instances; the directed relationship graph is used to represent the association relationships between the entity instances. In response to a user's access request for a directory entity list, database query conditions are obtained based on the directed relation graph and the user's identity information; Based on the database query conditions, the corresponding set of entity instances is obtained from the unified directory database.
2. The method of claim 1, wherein, The step of establishing a directed relationship graph between entity instances based on the attribute information of the entity instances includes: Based on the attribute information of the entity instances, obtain the association relationships between the entity instances; A directed relation graph is constructed based on all the relationships; the relationships include ownership, membership and dependency.
3. The method of claim 1, wherein, The method further includes: Obtain the user list and organizational unit list based on the aforementioned business data; Map users in the user list to user entity instances, and map organizational unit records in the organizational unit list to organizational unit entity instances; Obtain the association relationship between the user entity instance and the organizational unit entity instance.
4. The method of claim 1, wherein, The step of obtaining database query conditions based on the directed relation graph and the user's identity information includes: Based on the directed relation graph and the user's identity information, obtain the set of entity instances associated with the user; the set of entity instances includes the organizational unit entity instances associated with the user entity instance corresponding to the user. Based on the directed relation graph and the entity instance set, obtain the accessible entity instances; Based on the accessible entity instance, obtain the database query conditions.
5. The method of claim 4, wherein, The step of obtaining accessible entity instances based on the directed relation graph and the entity instance set includes: Obtain the entity instance to be queried based on the user's query request; Based on the directed relation graph and the entity instance set, if the entity instance to be queried meets the preset query conditions, the entity instance to be queried is designated as an accessible entity instance. The preset query conditions include: the user is a preset administrator; or the entity type of the entity instance to be queried is a public type; or the entity instance to be queried belongs to the entity instance set; or the entity instance to be queried is a user entity instance and an organizational unit entity instance that has the same association as the user entity instance corresponding to the user; or the entity instance to be queried is a preset system entity instance.
6. The method of claim 1, wherein, The method further includes: Retrieve the abnormal entity instance from the entity instance; Based on the source code location information of the abnormal entity instance, metadata completion is performed on the abnormal entity instance.
7. A business data management device based on a unified directory entity, characterized in that, The device includes: The model building module is used to build a unified directory entity model, and store the entity instances corresponding to the business data in the unified directory database according to the unified directory entity model; the unified directory entity model is used to represent the attribute structure corresponding to various entity types. The graph building module is used to build a directed relationship graph between the entity instances based on the attribute information of the entity instances; the directed relationship graph is used to represent the association relationship between the entity instances. The condition acquisition module is used to respond to a user's access request for a directory entity list and acquire database query conditions based on the directed relationship graph and the user's identity information. The data query module is used to obtain the corresponding set of entity instances from the unified directory database based on the database query conditions.
8. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.
9. A computer readable storage medium having stored thereon a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.