Introduction to Policies and Processes
NineData's Database DevOps module provides convenient and fast SQL development management functions. In enterprise scenarios where multiple people collaborate in development, there may be a need for standardized development processes and security control. NineData provides SQL development policies and approval processes, supporting rule setting, linked approval, execution and other operations based on dimensions such as table structure definition and data queries.
Feature Introduction
When you create a data source in NineData, you need to specify an environment for the data source. By default, NineData provides two environments: Production and Development, each with corresponding SQL development policies and approval processes to ensure that all data sources in the environment follow the same standards.
You can customize and create development policies and approval processes based on your actual needs, and then associate them with the target environment or target data source.
Associated with Environment: SQL development policies and approval processes are effective for all data sources under the environment.
tipIf a SQL development policy or approval process is separately configured for a data source under the current environment, the policy or process configured in the environment will no longer be effective for that data source, and other data sources in the environment will not be affected.
Associated with Data Source: The data source will apply the newly associated SQL development policies and approval processes and will no longer be affected by the policies and processes configured in the current environment.
SQL Development Policies: When a user performs operations on a data source (such as executing insert, update, delete or select operations in an SQL Console), the system will review the SQL statements based on the SQL development policies. The statements will only be executed if they meet the requirements, otherwise the user will be prompted to submit the SQL task for approval by designated approvers before execution.
Approval Processes: The approval processes configured by you enable process automation. The system automatically reviews the SQL tasks submitted by users based on the rules in the SQL development policies, and the tasks will only be submitted to approvers if they pass the pre-approval.
By using the policies and processes functionality, errors can be greatly reduced, and the efficiency and security of data development can be improved.
Module Introduction
- Environment Configuration: Used to change the SQL development policies and approval processes associated with the target environment. Each environment can only be associated with 1 policy and 1 approval process, and these apply to all data sources in the environment.
- Data Source Configuration: Used to directly bind SQL development policies and approval processes to the target data source. Each data source can only be bound to 1 policy and 1 approval process. The priority of Data Source Configuration is higher than that of Environment Configuration. That is, after the data source is bound, it will ignore the policy and approval process configured in the environment to which it belongs.
- SQL Development Policy: Consists of many different rules to control changes to table structures, and the performance of SQL queries and updates. This ensures that SQL complies with specific syntax and semantic rules before execution to ensure safe execution of queries and changes.
- Approval Process: Configures the handling strategy when non-compliant actions are detected, either by rejecting execution or allowing specific personnel to approve.
Advantages
- Ensures data integrity and accuracy: Avoids duplicate, inconsistent or incorrect data, thereby improving the reliability and quality of data.
- Improves data security: Prevents malicious users from attacking databases through SQL injection and other means, ensuring data security.
- Improves code readability and maintainability: Standardizes code formatting, comments, naming conventions, etc., making code easier to understand and maintain.
- Improves code execution efficiency: Avoids redundant and unnecessary operations, thereby reducing code execution time and resource consumption.
- Promotes team collaboration: Unifies team members' code style and coding habits, reduces communication costs, and promotes team collaboration and development efficiency.