CN117807097A - Data dictionary management method and device - Google Patents
Data dictionary management method and device Download PDFInfo
- Publication number
- CN117807097A CN117807097A CN202311843181.XA CN202311843181A CN117807097A CN 117807097 A CN117807097 A CN 117807097A CN 202311843181 A CN202311843181 A CN 202311843181A CN 117807097 A CN117807097 A CN 117807097A
- Authority
- CN
- China
- Prior art keywords
- dictionary
- data
- program
- acquiring
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 70
- 230000001419 dependent effect Effects 0.000 claims abstract description 41
- 238000012545 processing Methods 0.000 claims abstract description 29
- 230000004044 response Effects 0.000 claims description 13
- 230000002452 interceptive effect Effects 0.000 claims description 9
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 230000002829 reductive effect Effects 0.000 abstract description 3
- 238000012423 maintenance Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000013519 translation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000001965 increasing effect Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The embodiment of the disclosure relates to a data dictionary management method and device, wherein the method comprises the following steps: responding to a data dictionary updating request, acquiring updated dictionary data and storing the updated dictionary data in a database and a remote dictionary service Redis cache; acquiring a full-scale data dictionary from a database or a Redis cache; processing the full data dictionary to obtain a constant program file; setting a program providing method and a program providing interface; code-dependent packages are generated according to the constant program file, the program providing method and the program providing interface and stored in a Maven repository, so that data query requests are responded based on the code-dependent packages. By adopting the technical scheme, the dictionary data is stored in the database or the Redis cache, so that the dictionary data can be maintained in the interface function, the service processing cost is reduced, the processing efficiency is improved, and the use requirement of a user is met.
Description
Technical Field
The present disclosure relates to the field of data processing technologies, and in particular, to a method and an apparatus for managing a data dictionary.
Background
In conventional storage of data dictionaries, constant classes are typically written in programs for storage or stored in a table structure in databases, and field packet values and type matches are handled in business programs using data dictionaries, also by program hard coding or database querying of data dictionaries.
However, there are some problems stored in the data dictionary usage of a business complex platform: (1) greater performance overhead: whether stored in a database or a program catalogue, each service attribute inquiry needs to carry out service coding for dictionary translation, all services only need to process logic of the service and also need to translate data dictionary values, and program overhead is increased; (2) increases the complexity of the procedure: when maintaining the dictionary, the program needs to be independently written to process dictionary translation logic, so that the complexity of the program is increased; in addition, the large service platform has a plurality of data fields, the reference dictionary is more complex, and the program is more complex in an intangible way; (3) there is a risk of access anomalies: under the architecture of front-end and back-end separation, if the translation of the data dictionary is processed at the front end, the front end and the back end need to maintain data fields, and when the dictionary values at two sides are inconsistent in maintenance, the risk of abnormal business access exists; (4) slow response speed: the dictionary value codes are required to be translated no matter the front end or the back end processes the data dictionary independently, and particularly, a great deal of time is required for modules which are particularly large in list type or dictionary grouping when the service layers are processed one by one, so that the program response is slow; (5) difficult maintenance: when the data dictionary is stored in the program, the program needs to be modified every time maintenance, and the maintainability is extremely poor.
Disclosure of Invention
In order to solve the above technical problems or at least partially solve the above technical problems, the present disclosure provides a data dictionary management method and apparatus.
The embodiment of the disclosure provides a data dictionary management method, which comprises the following steps:
responding to a data dictionary updating request, acquiring updated dictionary data and storing the updated dictionary data in a database and a remote dictionary service Redis cache;
acquiring a full-scale data dictionary from the database or the Redis cache;
processing the full data dictionary to obtain a constant program file;
setting a program providing method and a program providing interface;
and generating a code dependent package according to the constant program file, the program providing method and the program providing interface and storing the code dependent package in a Maven warehouse so as to respond to a data query request based on the code dependent package.
Optionally, the obtaining updated dictionary data in response to the data dictionary update request includes:
acquiring a data dictionary adding request based on an interactive interface, and acquiring newly added dictionary data as the updated dictionary data; and/or the number of the groups of groups,
and acquiring dictionary data to be modified based on the data dictionary modification request of the interactive interface, and modifying the dictionary data to be modified according to the data dictionary modification request to obtain the updated dictionary data.
Optionally, the data dictionary management method further includes:
responding to the data query request to obtain dictionary block codes;
and acquiring dictionary value codes and dictionary value names matched with the dictionary block codes according to the constant program files in the code dependency package.
Optionally, the processing the full-volume data dictionary to obtain a constant program file includes:
and replacing the variable names corresponding to the full-quantity data dictionary with constant values to obtain the constant program file.
Optionally, the data dictionary management method further includes:
acquiring a target service field in the constant program file;
acquiring annotation methods and dictionary packet names;
updating the code dependent package by adding the annotation method and the dictionary packet name in the target service field based on the program providing method;
acquiring the data query request and responding based on a target interface, and acquiring dictionary value codes;
the dictionary value is transcoded into dictionary value names based on the code dependent package.
Optionally, the data dictionary management method further includes:
and receiving the data query request sent by the front-end application program, acquiring the full-volume data dictionary from the database or the Redis cache, and sending the full-volume data dictionary to the front-end application program.
Optionally, the data dictionary management method further includes:
receiving the data query request sent by the front-end application program, and obtaining an interface identifier;
and acquiring target dictionary data from the database or the Redis cache according to the interface identifier and sending the target dictionary data to the front-end application program.
The embodiment of the disclosure also provides a data dictionary management device, which comprises:
the acquisition and storage module is used for responding to the data dictionary updating request, acquiring updated dictionary data and storing the updated dictionary data in a database and a remote dictionary service Redis cache;
the acquisition module is used for acquiring a full-quantity data dictionary from the database or the Redis cache;
the processing module is used for processing the full data dictionary to obtain a constant program file;
a setting module for setting a program providing method and a program providing interface;
and the generation storage module is used for generating a code dependent package according to the constant program file, the program providing method and the program providing interface and storing the code dependent package in a Maven warehouse so as to respond to a data query request based on the code dependent package.
The embodiment of the disclosure also provides an electronic device, which comprises: a processor; a memory for storing the processor-executable instructions; the processor is configured to read the executable instructions from the memory and execute the instructions to implement a data dictionary management method as provided in an embodiment of the present disclosure.
The present disclosure also provides a computer-readable storage medium storing a computer program for executing the data dictionary management method as provided by the embodiments of the present disclosure.
Compared with the prior art, the technical scheme provided by the embodiment of the disclosure has the following advantages: according to the data dictionary management scheme provided by the embodiment of the disclosure, updated dictionary data is obtained and stored in a database and a remote dictionary service Redis cache in response to a data dictionary update request; acquiring a full-scale data dictionary from a database or a Redis cache; processing the full data dictionary to obtain a constant program file; setting a program providing method and a program providing interface; code-dependent packages are generated according to the constant program file, the program providing method and the program providing interface and stored in a Maven repository, so that data query requests are responded based on the code-dependent packages. By adopting the technical scheme, the data dictionary is not required to be manually encoded and maintained in the program, the transformation cost is low, the maintainability is high, the data dictionary is stored in the database, the stability is high, the data dictionary value name is automatically enhanced and the dependence package constant program is automatically generated through the program to realize the low-code management and platform adaptation of the data dictionary, the service processing cost is reduced, the processing efficiency is improved, and the use requirement of a user is met.
Drawings
The above and other features, advantages, and aspects of embodiments of the present disclosure will become more apparent by reference to the following detailed description when taken in conjunction with the accompanying drawings. The same or similar reference numbers will be used throughout the drawings to refer to the same or like elements. It should be understood that the figures are schematic and that elements and components are not necessarily drawn to scale.
Fig. 1 is a flow chart of a data dictionary management method according to an embodiment of the present disclosure;
FIG. 2 is a flowchart illustrating another method for managing a data dictionary according to an embodiment of the present disclosure;
fig. 3 is a schematic structural diagram of a data dictionary management apparatus according to an embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure have been shown in the accompanying drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustration purposes only and are not intended to limit the scope of the present disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order and/or performed in parallel. Furthermore, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "including" and variations thereof as used herein are intended to be open-ended, i.e., including, but not limited to. The term "based on" is based at least in part on. The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments. Related definitions of other terms will be given in the description below.
It should be noted that the terms "first," "second," and the like in this disclosure are merely used to distinguish between different devices, modules, or units and are not used to define an order or interdependence of functions performed by the devices, modules, or units.
It should be noted that references to "one", "a plurality" and "a plurality" in this disclosure are intended to be illustrative rather than limiting, and those of ordinary skill in the art will appreciate that "one or more" is intended to be understood as "one or more" unless the context clearly indicates otherwise.
The names of messages or information interacted between the various devices in the embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
In the prior art, some problems are stored in the use of a data dictionary of a platform with complex service: the method has the advantages of high performance cost, increased complexity of the program, access abnormality risk, low response speed, difficult maintenance and the like. In pursuit of high concurrency, high performance, easy maintenance and expandable use of the same class in a data dictionary system, the above problems need to be solved.
Compared with the processing scheme of hard coding maintenance data dictionary in the program at present, the method for managing the data dictionary does not need to manually code maintenance data dictionary in the program, and has lower transformation cost and higher maintainability; compared with the prior scheme of storing the data dictionary in each sub-project, the method adopts a scheme of single maintenance source, and has higher stability when being stored in a database; the present disclosure may enable low code management and platform adaptation of a data dictionary by automatically enhancing translated data dictionary value names by a program and automatically generating a dependency package constant program.
Fig. 1 is a flow chart of a data dictionary management method according to an embodiment of the present disclosure, where the method may be performed by a data dictionary management apparatus, and the apparatus may be implemented by software and/or hardware, and may be generally integrated in an electronic device. As shown in fig. 1, the method includes:
step 101, in response to a data dictionary update request, updated dictionary data is acquired and stored in a database and a remote dictionary service Redis cache.
The data dictionary refers to a catalog of record databases and application metadata that can be accessed by users for classifying, describing and defining data elements. Data dictionaries typically contain information about the names, meanings, data types, lengths, etc. of data elements, as well as relationships and constraints between data elements.
Wherein the data dictionary comprises: dictionary group coding, dictionary group names, dictionary value coding, and dictionary value names; the dictionary block coding refers to naming coding corresponding to each group of dictionary in the data dictionary; the dictionary grouping names refer to the naming names of each group of dictionaries in the data dictionary; dictionary value coding refers to attribute value coding under each group of corresponding dictionaries in the data dictionary; dictionary value names refer to attribute value names under corresponding each set of dictionaries in the data dictionary.
In the embodiment of the disclosure, a user can perform updating operation on dictionary data on an interactive interface, such as adding dictionary data, modifying dictionary data, deleting dictionary data and the like.
In the embodiment of the present disclosure, after receiving the data dictionary update request, the dictionary data in the database and Redis (Remote Dictionary Server) cache is updated in response to the data dictionary update request, for example, newly added dictionary data is obtained, and modified dictionary data is stored in the database and the dis cache; some dictionary data, such as dictionary data in databases and Redis caches, is also deleted; thus, dictionary data in the database and the Redis cache can be updated in real time in response to the data dictionary update request to meet the user's use requirements. Wherein the database can be considered an electronic file system capable of storing, retrieving, maintaining and organizing data so that users can easily access, modify and manage the data; redis cache is a memory-based high performance key-value pair storage system that supports storing and retrieving data that can be used to improve the performance and response speed of an application.
In some embodiments, obtaining the data dictionary augmentation request based on the interactive interface, obtaining newly augmented dictionary data as updated dictionary data; and/or, acquiring the dictionary data to be modified based on the data dictionary modification request of the interactive interface, and modifying the dictionary data to be modified according to the data dictionary modification request to obtain updated dictionary data.
In addition, in the embodiment of the disclosure, the dictionary data are stored in the database and the Redis cache at the same time, so that the data can be further ensured to be acquired, for example, the dictionary data can be acquired when any one of the database or the Redis cache is unavailable, and the priority can be set to acquire the dictionary data from the Redis cache so as to improve the data query efficiency, and meet the use requirements of users.
Step 102, acquiring a full-scale data dictionary from a database or a Redis cache.
And 103, processing the full-quantity data dictionary to obtain a constant program file.
In the embodiment of the disclosure, all dictionary data, namely the full-size data dictionary, can be obtained from a database or a Redis cache, and further, the full-size data dictionary is processed to obtain a constant program file. Wherein, the constant program is a programming technique for replacing constant values with variable names, which can replace constant values in the program with variables with names, thereby increasing the readability and maintainability of the program.
In some embodiments, the variable names corresponding to the full-scale data dictionary are replaced by Chang Liangzhi, so that a constant program file is obtained; in other embodiments, the full data dictionary is processed based on a pre-set programming algorithm to obtain a constant program file.
Step 104, a program providing method and a program providing interface are set.
Step 105, generating a code dependent package according to the constant program file, the program providing method and the program providing interface and storing the code dependent package in a Maven warehouse so as to respond to the data query request based on the code dependent package.
Code-dependent packages, among other things, refer to one or more software packages that a program needs to run properly. These dependency packages typically include library files, frameworks, and other necessary dependencies.
Specifically, in order to meet the user query requirement, a program providing method and a program providing interface are set, and a code dependent package is generated by a constant program file, a program providing method and a program providing interface and stored in a Maven repository, so that a data query request is responded based on the code dependent package. Among them, maven repository is a service for centrally managing Java API (Application Programming Interface ) resources (components) based on simple file system storage. Any one of the components in the warehouse has its unique coordinates from which its unique storage path in the warehouse can be defined. The mode of any Maven item using any component is the same, maven can uniformly store all components shared by the Maven items at a certain position, the uniform position is a warehouse, and components generated after the project is built can be installed or deployed in the warehouse for other projects to use.
It is understood that the user may perform data query operations according to different scene needs. As one example, dictionary block codes are acquired in response to a data query request, and dictionary value codes and dictionary value names matching the dictionary block codes are acquired from constant program files in a code dependent package.
As another example, a target service field in a constant program file is acquired, an annotation method and a dictionary packet name are acquired, a code-dependent package is updated by adding the annotation method and the dictionary packet name to the target service field based on a program providing method, a data query request is acquired and responded based on a target interface, a dictionary value code is acquired, and the dictionary value code is converted into the dictionary value name based on the code-dependent package.
The Java annotation method is a method for marking or annotating codes at compiling time, and can be read by a compiler or a tool at running time and execute corresponding processing. Metadata information such as parameters, return values, exceptions, etc. of the method can be provided through the annotation method, and can also be used for realizing functions such as static analysis of codes and code generation.
As yet another example, a data query request sent by a front-end application is received, a full data dictionary is obtained from a database or dis cache and sent to the front-end application.
As yet another example, a data query request sent by a front-end application is received, an interface identifier is obtained, and target dictionary data is obtained from a database or a dis cache according to the interface identifier and sent to the front-end application; the interface identifier can uniquely identify one interface; the target dictionary data acquired by different interface identifiers are different.
Specifically, the back-end program can receive the data query request to perform corresponding processing; the back-end program is a program running on a server and used for processing and responding to the front-end request. It typically includes database operations, business logic processing, API interface development, and the like. The front-end program is a program that runs on the user device and interacts directly with the user. The method comprises web pages, mobile applications, desktop applications and the like, is responsible for presentation and interaction, and needs to process user input and interface display.
Wherein fields are variables declared in the interface that define the properties or parameters of the interface. The interface fields may be public or private depending on the particular programming language and design requirements. The access rights of the interface field are typically the same as the access rights of the interface method. An interface, an interface in software, is a convention or protocol that defines how to interact with a software component. The interfaces specify the functions and behavior of the components, as well as how the components are used, methods, and data. By using an interface, the software can be more flexible and extensible, as the interface can be defined and implemented independent of the implementation.
Specifically, the data dictionary management method of the embodiment of the disclosure includes: the data dictionary is maintained in an interfacing way, an interfacing function is developed to manage the data dictionary, and the data dictionary can be added and deleted on the interface and stored in a database and a Redis cache. The page function distinguishes a production environment and a development environment, and only dictionary grouping names and dictionary values can be modified in the production environment and cannot be added and deleted.
Specifically, a business data dictionary code dependency package is generated, constant program files which can automatically generate a full quantity of data dictionaries are generated when the data dictionaries are maintained in a development environment each time, the constant program files are automatically packaged into code dependency packages to be pushed to a formulated private Maven warehouse, constant program dependencies are directly updated when a back-end program needs to be used in business codes, dictionary value codes and names are obtained through dictionary block codes, and the constant program of the data dictionary is not required to be maintained in the back-end program.
Specifically, the platform business interface dictionary enhancement method, the code dependent package can also provide an automatic enhancement annotation method, a developer only needs to add a corresponding annotation method and a dictionary packet name on a business field, and the code dependent package program can automatically enhance and translate dictionary value codes into dictionary value names without writing dictionary translation logic in the business program.
Specifically, the data dictionary display interface generates a full-quantity full-type data dictionary query interface which can be automatically generated when the data dictionary is maintained in the development environment every time, and when the business platform architecture is front-end and back-end separation, the front-end program can directly call the data dictionary interface to acquire all dictionary data for reference in the front-end program without independently maintaining the dictionary data in the front-end program.
As an example of a scenario, as shown in fig. 2, when a developer adds or modifies a data dictionary in the interface, dictionary data is simultaneously saved in the database and the dis cache (data storage shown in fig. 2), and constant program files (code files) which automatically generate the full-scale data dictionary (all dictionary data) are generated, and are automatically packaged into code dependent packages (including constant program files, program providing methods and program providing interfaces) to be pushed into the formulated private Maven warehouse (automatic generation shown in fig. 2); in addition to the dictionary constant data, the code dependent package provides a dictionary enhancement method (a program providing method shown in fig. 2), and a developer only needs to add a corresponding annotation method and a dictionary packet name on a service field, so that the code dependent package program can automatically translate the dictionary value coding enhancement into the dictionary value name; the code dependent package also provides a data dictionary presentation interface (program providing interface shown in fig. 2) that contains the full amount of data dictionary data for use by the front-end program. It should be noted that different dictionary data may also be invoked through different interfaces.
For example, a data query request, a corresponding annotation method (a row of codes includes variable names) and dictionary packet names (such as gender) are added to a business field (such as a personnel information table) through a personnel information query interface, and a code dependent packet program automatically performs enhanced translation of dictionary value codes (such as 0 and 1) into dictionary value names (such as male and female).
The data dictionary management method has the following beneficial effects: (1) robustness: in the production environment, if the dictionary value name needs to be modified or the dictionary value needs to be hidden, maintenance can be performed in the interface function to be effective immediately, and a program needs to be modified, so that stronger robustness is achieved; (2) ease of maintenance: the data of the data dictionary is uniformly stored in the database, and the method is different from the traditional front-end and back-end maintenance mode of each sub-platform, and the maintenance of the data dictionary is only required to be carried out in an interface function, so that the maintenance is easier; (3) low overhead: the dictionary value names of the data dictionary in all the businesses are translated from the dictionary value codes and are uniformly completed by the bottom-layer dependent program, the business program is not required to be independently processed, and the cost is lower; (4) improving the running speed of the platform: in the traditional dictionary maintenance, the translation is sequentially carried out, and the dictionary translation is carried out into batch processing after the dependent package is accessed, so that the speed is higher.
According to the data dictionary management scheme provided by the embodiment of the disclosure, updated dictionary data is obtained and stored in a database and a remote dictionary service Redis cache in response to a data dictionary update request; acquiring a full-scale data dictionary from a database or a Redis cache; processing the full data dictionary to obtain a constant program file; setting a program providing method and a program providing interface; code-dependent packages are generated according to the constant program file, the program providing method and the program providing interface and stored in a Maven repository, so that data query requests are responded based on the code-dependent packages. By adopting the technical scheme, the data dictionary is not required to be manually encoded and maintained in the program, the transformation cost is low, the maintainability is high, the data dictionary is stored in the database, the stability is high, the data dictionary value name is automatically enhanced and the dependence package constant program is automatically generated through the program to realize the low-code management and platform adaptation of the data dictionary, the service processing cost is reduced, the processing efficiency is improved, and the use requirement of a user is met.
Fig. 3 is a schematic structural diagram of a data dictionary management apparatus according to an embodiment of the present disclosure, where the apparatus may be implemented by software and/or hardware, and may be generally integrated in an electronic device. As shown in fig. 3, the apparatus includes:
an acquisition and storage module 301, configured to respond to a data dictionary update request, acquire update dictionary data and store the update dictionary data in a database and a remote dictionary service dis cache;
an obtaining module 302, configured to obtain a full-scale data dictionary from the database or the dis cache;
the processing module 303 is configured to process the full-scale data dictionary to obtain a constant program file;
a setting module 304 for setting a program providing method and a program providing interface;
a generation storage module 305 is configured to generate a code dependency package according to the constant program file, the program providing method, and the program providing interface, and store the code dependency package in a Maven repository, so as to respond to a data query request based on the code dependency package.
Optionally, the acquiring storage module 301 is specifically configured to:
acquiring a data dictionary adding request based on an interactive interface, acquiring newly added dictionary data as the updated dictionary data and storing the updated dictionary data in a database and a remote dictionary service Redis cache; and/or the number of the groups of groups,
and acquiring dictionary data to be modified based on the data dictionary modification request of the interactive interface, modifying the dictionary data to be modified according to the data dictionary modification request, obtaining the updated dictionary data and storing the updated dictionary data in a database and a remote dictionary service Redis cache.
Optionally, the data dictionary management device further includes:
the response acquisition module is used for responding to the data query request and acquiring dictionary block codes;
and the processing acquisition module is used for acquiring dictionary value codes and dictionary value names matched with the dictionary block codes according to the constant program files in the code dependency package.
Optionally, the processing module 303 is specifically configured to:
and replacing the variable names corresponding to the full-quantity data dictionary with constant values to obtain the constant program file.
Optionally, the data dictionary management device further includes:
the acquisition field module is used for acquiring a target service field in the constant program file;
the information acquisition module is used for acquiring annotation methods and dictionary packet names;
an updating module for adding the annotation method and the dictionary packet name to the target service field based on the program providing method to update the code dependent package;
the acquisition coding module is used for acquiring the data query request based on a target interface and responding to the data query request to acquire dictionary value codes;
and the conversion module is used for converting the dictionary value codes into dictionary value names based on the code dependency package.
Optionally, the data dictionary management device further includes:
the receiving and sending module is used for receiving the data query request sent by the front-end application program, acquiring the full-quantity data dictionary from the database or the Redis cache and sending the full-quantity data dictionary to the front-end application program.
Optionally, the data dictionary management device further includes:
the receiving and acquiring module is used for receiving the data query request sent by the front-end application program and acquiring an interface identifier;
and the acquisition and transmission module is used for acquiring target dictionary data from the database or the Redis cache according to the interface identifier and transmitting the target dictionary data to the front-end application program.
The data dictionary management device provided by the embodiment of the disclosure can execute the data dictionary management method provided by any embodiment of the disclosure, and has the corresponding functional modules and beneficial effects of the execution method.
Embodiments of the present disclosure also provide a computer program product comprising a computer program/instruction which, when executed by a processor, implements the data dictionary management method provided by any embodiment of the present disclosure.
It should be noted that the computer readable medium described in the present disclosure may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this disclosure, a computer-readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present disclosure, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, fiber optic cables, RF (radio frequency), and the like, or any suitable combination of the foregoing.
In some implementations, the clients, servers may communicate using any currently known or future developed network protocol, such as HTTP (Hyper Text Transfer Protocol ), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the internet (e.g., the internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
The computer readable medium may be contained in the electronic device; or may exist alone without being incorporated into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: monitoring a mouse event through an interaction event monitoring module, determining mouse operation according to the mouse event, and receiving clicking operation on an operation icon in a view toolbar; determining a target view operation according to the mouse operation and/or the click operation; the method comprises the steps that a driving view controller is operated according to a target view to update and render views in a display interface, a current view is obtained, and update parameters corresponding to updating and rendering are stored; the illumination parameters of the view control Cheng Qizhong are updated according to the current view.
Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, including, but not limited to, an object oriented programming language such as Java, smalltalk, C ++ and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units involved in the embodiments of the present disclosure may be implemented by means of software, or may be implemented by means of hardware. Wherein the names of the units do not constitute a limitation of the units themselves in some cases.
The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), an Application Specific Standard Product (ASSP), a system on a chip (SOC), a Complex Programmable Logic Device (CPLD), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, the present disclosure provides an electronic device comprising:
a processor;
a memory for storing the processor-executable instructions;
the processor is configured to read the executable instructions from the memory and execute the instructions to implement any of the data dictionary management methods provided in the present disclosure.
According to one or more embodiments of the present disclosure, there is provided a computer-readable storage medium storing a computer program for performing any one of the data dictionary management methods provided by the present disclosure.
The foregoing description is only of the preferred embodiments of the present disclosure and description of the principles of the technology being employed. It will be appreciated by persons skilled in the art that the scope of the disclosure referred to in this disclosure is not limited to the specific combinations of features described above, but also covers other embodiments which may be formed by any combination of features described above or equivalents thereof without departing from the spirit of the disclosure. Such as those described above, are mutually substituted with the technical features having similar functions disclosed in the present disclosure (but not limited thereto).
Moreover, although operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the present disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are example forms of implementing the claims.
Claims (10)
1. A method of data dictionary management, comprising:
responding to a data dictionary updating request, acquiring updated dictionary data and storing the updated dictionary data in a database and a remote dictionary service Redis cache;
acquiring a full-scale data dictionary from the database or the Redis cache;
processing the full data dictionary to obtain a constant program file;
setting a program providing method and a program providing interface;
and generating a code dependent package according to the constant program file, the program providing method and the program providing interface and storing the code dependent package in a Maven warehouse so as to respond to a data query request based on the code dependent package.
2. The data dictionary management method of claim 1, wherein the acquiring updated dictionary data in response to the data dictionary update request comprises:
acquiring a data dictionary adding request based on an interactive interface, and acquiring newly added dictionary data as the updated dictionary data; and/or the number of the groups of groups,
and acquiring dictionary data to be modified based on the data dictionary modification request of the interactive interface, and modifying the dictionary data to be modified according to the data dictionary modification request to obtain the updated dictionary data.
3. The data dictionary management method of claim 1, further comprising:
responding to the data query request to obtain dictionary block codes;
and acquiring dictionary value codes and dictionary value names matched with the dictionary block codes according to the constant program files in the code dependency package.
4. The method of claim 1, wherein said processing the full data dictionary to obtain a constant program file comprises:
and replacing the variable names corresponding to the full-quantity data dictionary with constant values to obtain the constant program file.
5. The data dictionary management method of claim 1, further comprising:
acquiring a target service field in the constant program file;
acquiring annotation methods and dictionary packet names;
updating the code dependent package by adding the annotation method and the dictionary packet name in the target service field based on the program providing method;
acquiring the data query request and responding based on a target interface, and acquiring dictionary value codes;
the dictionary value is transcoded into dictionary value names based on the code dependent package.
6. The data dictionary management method of claim 1, further comprising:
and receiving the data query request sent by the front-end application program, acquiring the full-volume data dictionary from the database or the Redis cache, and sending the full-volume data dictionary to the front-end application program.
7. The data dictionary management method of claim 1, further comprising:
receiving the data query request sent by the front-end application program, and obtaining an interface identifier;
and acquiring target dictionary data from the database or the Redis cache according to the interface identifier and sending the target dictionary data to the front-end application program.
8. A data dictionary management apparatus, comprising:
the acquisition and storage module is used for responding to the data dictionary updating request, acquiring updated dictionary data and storing the updated dictionary data in a database and a remote dictionary service Redis cache;
the acquisition module is used for acquiring a full-quantity data dictionary from the database or the Redis cache;
the processing module is used for processing the full data dictionary to obtain a constant program file;
a setting module for setting a program providing method and a program providing interface;
and the generation storage module is used for generating a code dependent package according to the constant program file, the program providing method and the program providing interface and storing the code dependent package in a Maven warehouse so as to respond to a data query request based on the code dependent package.
9. An electronic device, the electronic device comprising:
a processor;
a memory for storing the processor-executable instructions;
the processor is configured to read the executable instructions from the memory and execute the instructions to implement the data dictionary management method according to any one of the preceding claims 1-7.
10. A computer readable storage medium, characterized in that the storage medium stores a computer program for executing the data dictionary management method of any one of the preceding claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311843181.XA CN117807097A (en) | 2023-12-27 | 2023-12-27 | Data dictionary management method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311843181.XA CN117807097A (en) | 2023-12-27 | 2023-12-27 | Data dictionary management method and device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117807097A true CN117807097A (en) | 2024-04-02 |
Family
ID=90419570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311843181.XA Pending CN117807097A (en) | 2023-12-27 | 2023-12-27 | Data dictionary management method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117807097A (en) |
-
2023
- 2023-12-27 CN CN202311843181.XA patent/CN117807097A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11797558B2 (en) | Generating data transformation workflows | |
CN109086409B (en) | Microservice data processing method and device, electronic equipment and computer readable medium | |
CN110704479A (en) | Task processing method and device, electronic equipment and storage medium | |
CN106687955B (en) | Simplifying invocation of an import procedure to transfer data from a data source to a data target | |
US20150356158A1 (en) | Storage-Side Scanning on Non-Natively Formatted Data | |
US9753723B2 (en) | Systems and methods for generating, linking, and presenting computer code representations from diverse sources | |
Siddiqui et al. | Pseudo-cache-based IoT small files management framework in HDFS cluster | |
CN110858202A (en) | Method and device for generating where clause in database query statement | |
US10019473B2 (en) | Accessing an external table in parallel to execute a query | |
US20190370255A1 (en) | Remote query optimization in multi data sources | |
CN113419740B (en) | Program data stream analysis method and device, electronic equipment and readable storage medium | |
CN111666293A (en) | Database access method and device | |
CN111241189B (en) | Method and device for synchronizing data | |
CN108959294B (en) | Method and device for accessing search engine | |
CN113886485A (en) | Data processing method, device, electronic equipment, system and storage medium | |
CN113625998B (en) | Request processing method and device | |
CN113760961B (en) | Data query method and device | |
CN113760969A (en) | Data query method and device based on elastic search | |
US9201937B2 (en) | Rapid provisioning of information for business analytics | |
CN117807097A (en) | Data dictionary management method and device | |
CN113742321B (en) | Data updating method and device | |
CN116127143A (en) | Data query method, device, electronic equipment and readable storage medium | |
CN113760240B (en) | Method and device for generating data model | |
CN112988778B (en) | Method and device for processing database query script | |
US10114864B1 (en) | List element query support and processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |