Method, device and equipment for data storage
By obtaining user authorization in a collaborative working environment of multiple enterprises, pulling encrypted data and selecting storage tasks according to the data type, the management difficulties and security problems of traditional data storage solutions in a multi-enterprise environment are solved, and efficient and secure data storage and processing are achieved.
Patent Information
- Application Number
- CN202411639125.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-15
- Publication Date
- 2025-03-11
AI Technical Summary
Traditional data storage solutions are difficult to effectively manage and store complex multi-enterprise data in a collaborative working environment of multiple enterprises, resulting in difficulty in data management, low efficiency, weak data security, and inability to support dynamic subject tasks and multi-enterprise data pull.
By obtaining the user authorization for business transactions with the current business entity in the target application, an encrypted database is obtained, and the current key is obtained based on the current business entity and business configuration. Then, based on the data pull task, the encrypted data is pulled from the encrypted database, the data type is determined by comparing the data size with the preset threshold, the corresponding data storage task is selected, the encrypted data is decrypted and stored in the first database.
It realizes efficient and accurate data storage, improves the performance and stability of the data storage system, enhances data security, supports encrypted data pulling and dynamic subject task processing under multiple business entities, and improves user experience and business decision-making accuracy.
Smart Images

Figure CN119597757A_ABST
Abstract
Description
Technical Field
[0001] Example embodiments of the present disclosure relate generally to the field of computer technology, and more particularly, to methods, apparatuses, and devices for data storage. Background Art
[0002] With the widespread use of communication tools in collaboration and communication within and outside the enterprise, a large amount of conversation data is generated, such as conversation data generated by communication with customers, partners and team members. However, traditional data storage solutions have many shortcomings in coping with the challenges of multi-enterprise collaborative work environments. Summary of the invention
[0003] In a first aspect of the present disclosure, a method for data storage is provided. The method includes: in a target application, obtaining authorization of a user who conducts business with a current business subject, obtaining an encrypted database, the encrypted database including relevant encrypted data of business transactions between the current business subject and the user; obtaining a current key based on the current business subject and the corresponding current business configuration; pulling at least one encrypted data in the encrypted database based on a data pulling task corresponding to the current business subject; determining the data type of each encrypted data in the encrypted database based on a comparison result of the size of each encrypted data in the encrypted database with a first preset threshold and a second preset threshold respectively; and selecting a corresponding data storage task based on the data type of each encrypted data, the data storage task being used to decrypt the encrypted data based on the current key and store the parsed encrypted data in the first database.
[0004] In a second aspect of the present disclosure, a device for data storage is provided. The device includes: an acquisition module configured to obtain the authorization of a user who conducts business with the current business subject in a target application, and obtain an encrypted database, the encrypted database including relevant encrypted data of the business between the current business subject and the user; an execution module configured to obtain a current key based on the current business subject and the corresponding current business configuration; a pull module configured to pull at least one encrypted data in the encrypted database based on a data pull task corresponding to the current business subject; a determination module configured to determine the data type of each encrypted data in the encrypted database based on a comparison result of the size of each encrypted data in the encrypted database with a first preset threshold and a second preset threshold; and a storage module configured to select a corresponding data storage task based on the data type of each encrypted data, the data storage task being used to decrypt the encrypted data based on the current key and store the parsed encrypted data in the first database.
[0005] In a third aspect of the present disclosure, an electronic device is provided. The electronic device includes at least one processing unit; and at least one memory, the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, and when the instructions are executed by the at least one processing unit, the electronic device executes the method of the first aspect of the present disclosure.
[0006] It should be understood that the contents described in the summary of the invention are not intended to limit the key features or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] In the following, in conjunction with the accompanying drawings and with reference to the following detailed description, the above and other features, advantages and aspects of various implementations of the present disclosure will become more apparent. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:
[0008] Figure 1 A schematic diagram showing an example environment in which embodiments of the present disclosure can be implemented;
[0009] Figure 2 A flowchart showing a process for data storage according to some embodiments of the present disclosure is shown;
[0010] Figure 3 A flowchart showing a process of data storage according to some embodiments of the present disclosure;
[0011] Figure 4 A schematic structural block diagram of an apparatus for data storage according to some embodiments of the present disclosure is shown; and
[0012] Figure 5 A block diagram of an electronic device is shown in which one or more embodiments of the present disclosure may be implemented. DETAILED DESCRIPTION
[0013] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments described herein. On the contrary, these embodiments 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 only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.
[0014] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below.
[0015] It should be noted that the acquisition, storage and application of user personal information involved in the technical solution of the present disclosure are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0016] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0017] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information, so that the user can independently choose whether to provide personal information to software or hardware such as electronic devices, applications, servers or storage media that execute operations of the technical solution of the present disclosure based on the prompt message.
[0018] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information is sent to the user in a manner such as a pop-up window, in which the prompt information can be presented in text form. In addition, the pop-up window can also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0019] Traditionally, data storage solutions mainly include pulling encrypted data and decrypting the encrypted data to obtain decrypted data, determining the data type of the decrypted data, and storing the decrypted data based on the data type of the decrypted data. Traditional data storage solutions cannot adapt well to the complexity of multi-enterprise data, and may encounter problems such as difficulty in data management and low efficiency. In addition, traditional data storage solutions cannot meet the needs of dynamic subject task processing and multi-enterprise data pulling, and the ability to support data processing is limited. Traditional data storage solutions are also unable to support dynamic key versions and decryption processing of archived data related to business sessions, and there are problems such as weak data security. Traditional data storage solutions cannot support the distribution of file messages, and large file processing will affect small file processing. It is impossible to flexibly query and analyze data in different usage scenarios, and it is impossible to efficiently deal with the failure of session archiving.
[0020] In view of this, an embodiment of the present disclosure provides a solution for data storage. The solution includes: in the target application, obtaining the authorization of the user who conducts business with the current business subject, obtaining an encrypted database, and the encrypted database includes the relevant encrypted data of the current business subject and the user; based on the current business subject and the corresponding current business configuration, obtaining the current key; based on the data pulling task corresponding to the current business subject, pulling at least one encrypted data in the encrypted database; based on the comparison result of the size of each encrypted data in the encrypted database with the first preset threshold and the second preset threshold, respectively, determining the data type of each encrypted data in the encrypted database; and based on the data type of each encrypted data, selecting a corresponding data storage task, the data storage task is used to decrypt the encrypted data based on the current key and store the parsed encrypted data in the first database. In this way, by classifying the data and selecting the corresponding data storage task for data storage, efficient and accurate data storage can be achieved, and the performance and stability of the data storage system can be improved, the availability of the data storage system can be improved, and the user experience can be improved.
[0021] Figure 1 1 is a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. Figure 1 As shown, environment 100 may include electronic device 110 , server 120 , and data storage system 125 .
[0022] The electronic device 110 is at least configured to store data to be stored.
[0023] The data storage system 125 is at least configured to store data to be stored.
[0024] In some embodiments, the data storage system 125 may be deployed in the server 120. The electronic device 110 may communicate with the server 120 to obtain data and / or files required for initialization of the data storage system 125 from the server 120. The server 120 may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content distribution networks, and big data and artificial intelligence platforms. The server 120 may include, for example, a computing system / server, such as a mainframe, an edge computing node, a computing device in a cloud environment, and the like.
[0025] A communication connection may be established between the server 120 and the electronic device 110. The communication connection may be established in a wired manner or a wireless manner. The communication connection may include, but is not limited to, a Bluetooth connection, a mobile network connection, a Universal Serial Bus (USB) connection, a Wireless Fidelity (WiFi) connection, etc., and the embodiments of the present disclosure are not limited in this respect. In the embodiments of the present disclosure, the server 120 and the electronic device 110 may implement signaling interaction through the communication connection between the two.
[0026] The electronic device 110 may include any computing system with computing capabilities, such as various computing devices / systems, terminal devices, server devices, etc. The terminal device may be any type of mobile terminal, fixed terminal or portable terminal, including a mobile phone, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a media computer, a multimedia tablet, a handheld computer, a portable game terminal, a VR / AR device, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a positioning device, a television receiver, a radio receiver, an electronic book device, a game device or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof. It can be understood that although the electronic device 110 and the server 120 are two independent electronic devices in the figure, in some embodiments, the electronic device 110 and the server 120 can also be the same electronic device.
[0027] It should be understood that the structure and function of the various elements in the environment 100 are described for exemplary purposes only and do not imply any limitation on the scope of the present disclosure.
[0028] Some example embodiments of the present disclosure will be described below with continued reference to the accompanying drawings.
[0029] Figure 2 1 shows a flow chart of a process 200 for data storage according to some embodiments of the present disclosure. The process 200 may be implemented at the data storage system 125. For ease of discussion, reference will be made to Figure 1 The process 200 is described with reference to the environment 100 of FIG.
[0030] In block 210 , the data storage system 125 obtains a current key based on a current business principal and a corresponding current business configuration.
[0031] In some embodiments, multiple keys can be pre-set. If the business subject and / or the current business configuration is changed, the data storage system 125 can select a new key from the pre-set multiple keys to replace the current key. Different business subjects can correspond to different keys, and different business configurations can also correspond to different keys. In this way, dynamic key and decryption processing can be implemented to improve the security of data storage, support the data storage system 125 to dynamically manage key versions, ensure the encryption and decryption efficiency of data, and improve the security of data.
[0032] In block 215 , in the target application, the data storage system 125 obtains authorization of the user who conducts business transactions with the current business principal.
[0033] In some embodiments, there may be multiple users who conduct business with the current business subject, and the data storage system 125 may obtain authorizations of the multiple users who conduct business with the current business subject.
[0034] At block 220 , the data storage system 125 determines an encrypted database.
[0035] In some embodiments, with the authorization of the user with whom the current business subject conducts business, the data storage system 125 can obtain the business transaction data between the current business subject and the user. The business transaction data is encrypted data, and at least one encrypted data constitutes an encrypted database.
[0036] At block 225 , the data storage system 125 pulls the encrypted data in the encryption database.
[0037] In some embodiments, based on the data pulling task corresponding to the current business entity, the data storage system 125 can pull at least one encrypted data in the encrypted database.
[0038] In some embodiments, if there are multiple business entities, the data storage system 125 can pre-set corresponding data pulling tasks for each of the multiple business entities. The data storage system 125 can support the simultaneous pulling and storage of data of multiple business entities. Whether it is data generated by the collaborative cooperation within a business entity or data generated by the collaborative cooperation of multiple business entities, the data storage system 125 system can process the data efficiently through a high degree of technical coordination.
[0039] In some embodiments, the data storage system 125 can be used to add, delete or pause work threads for data pulling as needed, thereby achieving a high degree of control over data processing tasks.
[0040] In some embodiments, the data storage system 125 may also be provided with a data re-pulling mechanism based on a sequence number, which may improve the flexibility of the data. The data storage system 125 may independently define and pull data within any valid time to meet different data pulling requirements.
[0041] In some embodiments, after the data storage system 125 pulls at least one encrypted data, it determines the data type of each encrypted data in the encrypted database based on the comparison results of the size of each encrypted data in the encrypted database with the first preset threshold and the second preset threshold respectively.
[0042] At block 230 , the data storage system 125 determines whether the size of the encrypted data is greater than a first preset threshold.
[0043] In some embodiments, the data storage system 125 determines whether the size of the encrypted data pulled is greater than a first preset threshold. If it is determined that the encrypted data is greater than the first preset threshold, block 235 is executed.
[0044] At block 235 , the data storage system 125 selects a first storage task.
[0045] In some embodiments, if the encrypted data is greater than a first preset threshold, the data storage system 125 may determine that the data type of the encrypted data is a first type, and select a first storage task to perform data storage on the first type of encrypted data.
[0046] At block 240 , the data storage system 125 determines whether the size of the encrypted data is less than a second preset threshold.
[0047] In some embodiments, if the size of the pulled encrypted data is less than or equal to a first preset threshold, the data storage system 125 may further determine whether the size of the pulled encrypted data is less than a second threshold.
[0048] In some embodiments, the first preset threshold may be greater than the second preset threshold. In some examples, the first preset threshold may be equal to the second preset threshold.
[0049] At block 245 , the data storage system 125 selects a second storage task.
[0050] In some embodiments, if it is further determined that the size of the pulled encrypted data is less than a second threshold, the data storage system 125 may determine that the data type of the encrypted data is a second type, and select a second storage task to store the second type of encrypted data.
[0051] In some embodiments, the data storage system 125 can achieve efficient and accurate data storage by classifying and storing data.
[0052] At block 250 , the data storage system 125 stores the encrypted data in a first database.
[0053] In some embodiments, the data storage system 125 may select a first storage task to store the first type of encrypted data and store it in the first database. In some embodiments, the data storage system 125 may select a second storage task to store the second type of encrypted data and store it in the first database.
[0054] In some embodiments, the first database is associated with a first search engine, and the first search engine can be used to search and analyze the first data stored in the first database, thereby achieving efficient data indexing and querying.
[0055] In some embodiments, the first search engine may be a full-text search engine (Elasticsearch, ES), which may implement a distributed, highly scalable, and highly real-time search and data analysis engine.
[0056] In some embodiments, the data storage system 125 extracts at least one data segment from the first database based on a preset keyword, and stores the at least one data segment in the second database.
[0057] In some embodiments, the second database is associated with a database management system.
[0058] In some embodiments, the database management system may be a column-based database management system (ClickHouse, CK), which may support data statistics and analysis at different levels.
[0059] In some embodiments, the data storage system 125 may also be provided with an exception handling mechanism, which may intelligently adopt strategies such as retry and alarm according to different failure reasons to ensure the stability and reliability of data processing.
[0060] Figure 3 1 shows a flowchart of a process 300 for storing data according to some embodiments of the present disclosure. The process 300 may be implemented at the data storage system 125. For ease of discussion, reference will be made to Figure 1 The process 300 is described with reference to the environment 100 of FIG.
[0061] In block 310 , the data storage system 125 obtains authorization of a user who has business dealings with the current business subject in the target application, and obtains an encrypted database.
[0062] In some embodiments, the encrypted database includes encrypted data related to business transactions between the current business entity and the user.
[0063] In block 320 , the data storage system 125 obtains a current key based on the current business principal and the corresponding current business configuration.
[0064] In some embodiments, a plurality of keys are preset; in response to a change in a business subject and / or a current business configuration, a new key is selected from the plurality of preset keys to replace the current key.
[0065] In block 330 , the data storage system 125 pulls at least one encrypted data in the encrypted database based on the data pulling task corresponding to the current business subject.
[0066] In some embodiments, if there are multiple business entities, each of the multiple business entities is respectively set with a corresponding data pulling task.
[0067] In block 340 , the data storage system 125 determines the data type of each encrypted data in the encryption database based on the comparison results of the size of each encrypted data in the encryption database with the first preset threshold and the second preset threshold, respectively.
[0068] In some embodiments, if the size of the encrypted data exceeds a first preset threshold, the data type of the encrypted data is determined to be a first type; and if the size of the encrypted data is lower than a second preset threshold, the data type of the encrypted data is determined to be a second type, wherein the first preset threshold is greater than or equal to the second preset threshold.
[0069] In block 350 , the data storage system 125 selects a corresponding data storage task based on the data type of each encrypted data, where the data storage task is used to decrypt the encrypted data based on the current key and store the parsed encrypted data in the first database.
[0070] In some embodiments, if the data type of the encrypted data is a first type, a first storage task is selected; and if the data type of the encrypted data is a second type, a second storage task is selected.
[0071] In some embodiments, based on preset keywords, at least one data segment is extracted from the first database; and the at least one data segment is stored in the second database.
[0072] In some embodiments, the first database is associated with a first search engine, and the first search engine is used to search and analyze the first data stored in the first database.
[0073] In some embodiments, the second database is associated with a database management system.
[0074] In summary, the embodiments of the present disclosure can achieve efficient data storage and improve data storage efficiency based on classified storage of data. Based on dynamic keys, data security and privacy protection can be improved to provide strong guarantees for data processing. It can support the pulling of encrypted data under multiple business entities, and can also achieve high controllability of pulling tasks through dynamic entity tasks. It can adapt to different business needs, and can also provide better support for enterprises in a collaborative working environment with multiple business entities, thereby improving the accuracy of business decisions.
[0075] Tables 1 to 12 below provide sample codes for different execution processes:
[0076] Table 1 below is a sample code for implementing control over the execution of a business subject.
[0077]
[0078] Table 1
[0079] Table 2 below is the sample code for extracting the original ciphertext of a session archive.
[0080]
[0081] Table 2
[0082] Table 3 below is a sample code for implementing decryption using the subject's dynamic decryption machine.
[0083]
[0084]
[0085] Table 3 and Table 4 below are sample codes for implementing abstract message processing.
[0086]
[0087] Table 4 and Table 5 below are sample codes for writing messages into CK.
[0088]
[0089] Table 5 and Table 6 below are sample codes for writing messages to ES.
[0090]
[0091] Table 6 and Table 7 below are sample codes for generating a unique file ID based on data characteristics.
[0092]
[0093] Table 7 and Table 8 below are sample codes for distinguishing data types and pushing different task queues.
[0094]
[0095] Table 8 and Table 9 below are sample codes for large file processing threads and small file processing threads.
[0096]
[0097]
[0098] Table 9 and Table 10 below are sample codes for file data processing in different scenarios.
[0099]
[0100] Table 10 and Table 11 below are sample codes for file upload and download processing.
[0101]
[0102] Table 11 and Table 12 below are sample codes for failure strategy processing.
[0103]
[0104] Table 12
[0105] The embodiments of the present disclosure also provide corresponding devices for implementing the above methods or processes. Figure 4 A schematic structural block diagram of an apparatus 400 for data storage according to some embodiments of the present disclosure is shown. The apparatus 400 may be implemented as or included in a data storage system 125. Each module / component in the apparatus 400 may be implemented by hardware, software, firmware, or any combination thereof.
[0106] like Figure 4As shown, the device 400 includes an acquisition module 410, which is configured to obtain the authorization of the user who conducts business with the current business subject in the target application, and obtain an encrypted database, which includes the relevant encrypted data of the business transaction between the current business subject and the user; the device 400 also includes an execution module 420, which is configured to obtain the current key based on the current business subject and the corresponding current business configuration; the device 400 also includes a pulling module 430, which is configured to pull at least one encrypted data in the encrypted database based on the data pulling task corresponding to the current business subject; the device 400 also includes a determination module 440, which is configured to determine the data type of each encrypted data in the encrypted database based on the comparison result of the size of each encrypted data in the encrypted database with the first preset threshold and the second preset threshold respectively; the device 400 also includes a storage module 450, which is configured to select a corresponding data storage task based on the data type of each encrypted data, and the data storage task is used to decrypt the encrypted data based on the current key and store the parsed encrypted data in the first database.
[0107] In some embodiments, the data type includes a first type and a second type, wherein determining the data type of each encrypted data in the encryption database based on the comparison results of the size of each encrypted data in the encryption database with the first preset threshold and the second preset threshold respectively includes: if the size of the encrypted data exceeds the first preset threshold, determining the data type of the encrypted data to be the first type; and if the size of the encrypted data is lower than the second preset threshold, determining the data type of the encrypted data to be the second type, wherein the first preset threshold is greater than or equal to the second preset threshold.
[0108] In some embodiments, the storage module 450 further includes a classification module configured to select a first storage task if the data type of the encrypted data is a first type; and to select a second storage task if the data type of the encrypted data is a second type.
[0109] In some embodiments, the storage module 450 further includes a second data storage module configured to extract at least one data segment from the first database based on a preset keyword; and store the at least one data segment in the second database.
[0110] In some embodiments, the first database is associated with a first search engine, and the first search engine is used to search and analyze the first data stored in the first database.
[0111] In some embodiments, the second database is associated with a database management system.
[0112] In some embodiments, the pulling module 430 further includes a pulling task setting module, which is configured to set a corresponding data pulling task for each of the multiple business entities if there are multiple business entities.
[0113] In some embodiments, the execution module 420 also includes a dynamic key replacement module, which is configured to pre-set multiple keys; in response to the business subject and / or the current business configuration being replaced, a new key is selected from the pre-set multiple keys to replace the current key.
[0114] The units and / or modules included in the device 400 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some embodiments, one or more units and / or modules can be implemented using software and / or firmware, such as machine executable instructions stored on a storage medium. In addition to or as an alternative to machine executable instructions, some or all of the units and / or modules in the device 400 can be implemented at least in part by one or more hardware logic components. As an example and not limitation, exemplary types of hardware logic components that can be used include field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.
[0115] It should be understood that one or more steps in the above method can be performed by a suitable electronic device or a combination of electronic devices. Such an electronic device or a combination of electronic devices may include, for example, Figure 1 The electronic device 110 in.
[0116] Figure 5 1 shows a block diagram of an electronic device 500 in which one or more embodiments of the present disclosure may be implemented. It should be understood that Figure 5 The electronic device 500 shown is merely exemplary and should not constitute any limitation on the functionality and scope of the embodiments described herein. Figure 5 The electronic device 500 shown can be used to implement Figure 1 Data storage system 125.
[0117] like Figure 5As shown, the electronic device 500 is in the form of a general electronic device. The components of the electronic device 500 may include, but are not limited to, one or more processors or processing units 510, a memory 520, a storage device 530, one or more communication units 540, one or more input devices 550, and one or more output devices 560. The processing unit 510 may be an actual or virtual processor and is capable of performing various processes according to a program stored in the memory 520. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to improve the parallel processing capability of the electronic device 500.
[0118] The electronic device 500 typically includes a plurality of computer storage media. Such media may be any available media accessible to the electronic device 500, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 520 may be a volatile memory (e.g., registers, caches, random access memory (RAM)), a non-volatile memory (e.g., a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 530 may be a removable or non-removable medium, and may include a machine-readable medium, such as a flash drive, a disk, or any other medium, which may be capable of being used to store information and / or data and may be accessed within the electronic device 500.
[0119] The electronic device 500 may further include additional removable / non-removable, volatile / non-volatile storage media. Figure 5 As shown in , a disk drive for reading or writing from a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading or writing from a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to the bus (not shown) by one or more data media interfaces. The memory 520 may include a computer program product 525 having one or more program modules that are configured to perform various methods or actions of various embodiments of the present disclosure.
[0120] The communication unit 540 implements communication with other electronic devices through a communication medium. Additionally, the functions of the components of the electronic device 500 can be implemented in a single computing cluster or multiple computing machines that can communicate through a communication connection. Therefore, the electronic device 500 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.
[0121] The input device 550 may be one or more input devices, such as a mouse, a keyboard, a tracking ball, etc. The output device 560 may be one or more output devices, such as a display, a speaker, a printer, etc. The electronic device 500 may also communicate with one or more external devices (not shown) through the communication unit 540 as needed, such as a storage device, a display device, etc., communicate with one or more devices that allow a user to interact with the electronic device 500, or communicate with any device that allows the electronic device 500 to communicate with one or more other electronic devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0122] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above.
[0123] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices, equipment, and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0124] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0125] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0126] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0127] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the various implementations disclosed herein.
Claims
1. A method for data storage, comprising: In the target application, obtaining authorization of a user who has business dealings with the current business subject, and obtaining an encrypted database, wherein the encrypted database includes relevant encrypted data of business dealings between the current business subject and the user; Based on the current business subject and the corresponding current business configuration, obtain a current key; Pulling at least one encrypted data in the encrypted database based on the data pulling task corresponding to the current business subject; Determine the data type of each encrypted data in the encryption database based on the comparison results of the size of each encrypted data in the encryption database with the first preset threshold and the second preset threshold respectively; as well as Based on the data type of each encrypted data, a corresponding data storage task is selected, where the data storage task is used to decrypt the encrypted data based on the current key and store the parsed encrypted data in the first database.
2. The method according to claim 1, wherein the data type includes a first type and a second type, wherein based on the comparison results of the size of each encrypted data in the encryption database with the first preset threshold and the second preset threshold, respectively, determining the data type of each encrypted data in the encryption database includes: If the size of the encrypted data exceeds the first preset threshold, determining that the data type of the encrypted data is the first type; as well as If the size of the encrypted data is lower than the second preset threshold, the data type of the encrypted data is determined to be a second type, wherein the first preset threshold is greater than or equal to the second preset threshold.
3. The method according to claim 1, wherein based on the data type of each encrypted data, selecting a corresponding data storage task comprises: If the data type of the encrypted data is the first type, selecting a first storage task; as well as If the data type of the encrypted data is the second type, a second storage task is selected.
4. The method according to claim 1, further comprising: Based on preset keywords, extracting at least one data segment from the first database; as well as The at least one data segment is stored in a second database. 5 . The method according to claim 1 , wherein the first database is associated with a first search engine, and the first search engine is used to search and perform data analysis on the first data stored in the first database. The method of claim 4 , wherein the second database is associated with a database management system.
7. The method according to claim 1, further comprising: If there are multiple business entities, each of the multiple business entities is respectively set with a corresponding data pulling task.
8. The method according to claim 1, further comprising: Pre-set multiple keys; In response to the business subject and / or current business configuration being changed, a new key is selected from the plurality of pre-set keys to replace the current key.
9. A device for data storage, comprising: An acquisition module is configured to acquire, in the target application, the authorization of a user who has business dealings with the current business subject, and obtain an encrypted database, wherein the encrypted database includes relevant encrypted data of business dealings between the current business subject and the user; An execution module is configured to obtain a current key based on the current business subject and the corresponding current business configuration; A pulling module, configured to pull at least one encrypted data in the encrypted database based on the data pulling task corresponding to the current business subject; a determination module configured to determine the data type of each encrypted data in the encryption database based on a comparison result between the size of each encrypted data in the encryption database and a first preset threshold and a second preset threshold respectively; as well as The storage module is configured to select a corresponding data storage task based on the data type of each encrypted data, wherein the data storage task is used to decrypt the encrypted data based on the current key and store the parsed encrypted data in the first database.
10. An electronic device, comprising: at least one processing unit; as well as At least one memory, the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, cause the electronic device to perform the method according to any one of claims 1 to 8.