WO2020253465A1 - 一种文件交互处理方法、装置及系统 - Google Patents

一种文件交互处理方法、装置及系统 Download PDF

Info

Publication number
WO2020253465A1
WO2020253465A1 PCT/CN2020/091929 CN2020091929W WO2020253465A1 WO 2020253465 A1 WO2020253465 A1 WO 2020253465A1 CN 2020091929 W CN2020091929 W CN 2020091929W WO 2020253465 A1 WO2020253465 A1 WO 2020253465A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
identifier
hash value
channel identifier
server
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.)
Ceased
Application number
PCT/CN2020/091929
Other languages
English (en)
French (fr)
Inventor
于泽棋
江旻
王大飞
文海荣
旷波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Publication of WO2020253465A1 publication Critical patent/WO2020253465A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Definitions

  • the present invention relates to the technical field of financial technology (Fintech), in particular to a file interactive processing method, device and system.
  • the two systems of the file interaction first communicate and align the file formats of both parties, and then the sender packs the file, and provides verification information such as a file digest and a message digest algorithm (MD5), and then passes File transfer protocol (File Transfer Protocol, FTP), or Secure File Transfer Protocol (Secure File Transfer Protocol, SFTP), or Hypertext Transfer Protocol (Hypertext Transfer Protocol, HTTP) and other protocols, upload files to the SFTP server, so, The recipient can retrieve the file from the SFTP server through the SFTP protocol.
  • File Transfer Protocol FTP
  • Secure File Transfer Protocol Secure File Transfer Protocol
  • HTTP Hypertext Transfer Protocol
  • This application provides a file interactive processing method, device, and system to solve the technical problems in the prior art that the file interactive method is difficult to develop and the actual use is complicated.
  • this application provides a file interactive processing method, which specifically includes:
  • the first channel identifier is used to indicate the secure file transfer protocol SFTP server corresponding to the first file recipient Download the first file from the file transfer protocol FPS server according to the first file identifier of the first file and the first hash value of the first file, and transfer the first file according to the first channel identifier
  • the file is stored in the SFTP server corresponding to the first channel identifier.
  • the downloading the first file from the file transfer protocol FPS server according to the first file identifier of the first file and the first hash value of the first file includes: obtaining The second hash value of the first file in the FPS server, when the first hash value is equal to the second hash value, download the file transfer protocol FPS server according to the first file identifier The first file.
  • a push completion message is also fed back to the first file sender The push completion message is used to notify the first file sender that the first file has been stored to the SFTP server corresponding to the first channel identifier.
  • this application provides a file interactive processing system, which specifically includes:
  • the data warehouse is used to obtain data, process the data, package the processed data into a first file, and send the first file to the FPS server;
  • the FPS server is configured to store the acquired first file, assign a first file identifier to the first file, and generate a first hash value of the first file; and send to the data warehouse The first file identifier and the first hash value;
  • the data warehouse is used to obtain the first file identifier and the first hash value, determine the first channel identifier of the first file recipient, and send the first channel identifier to the batch file interaction system CAP, The first file identifier and the first hash value;
  • the CAP system is used to obtain the first channel identifier, the first file identifier, and the first hash value; the first channel identifier is used to indicate the SFTP server corresponding to the first file recipient; Download the first file from the FPS server according to the first file identifier and the first hash value; store the first file in the SFTP corresponding to the first channel identifier according to the first channel identifier server;
  • the SFTP server is used to store the first file.
  • this application provides a file interactive processing system, which specifically includes:
  • the batch file interaction system CAP is used to obtain a second channel identifier; the second channel identifier is used to indicate the SFTP server corresponding to the second file sender; and the second file is obtained from the SFTP server according to the second channel identifier ; Send the second file to the FPS server;
  • the FPS server is configured to store the acquired second file, assign a second file identifier to the second file, and generate a third hash value of the second file; send to the CAP system The second file identifier and the third hash value;
  • the CAP system is configured to transfer the second file identifier and the third hash value to a message communication queue port;
  • the receiving file system is used to monitor the message communication queue port, obtain the second file identifier and the third hash value from the message communication queue port; according to the second file identifier and the third hash value hopefully download the second file from the FPS server.
  • this application provides a file interactive processing device, which specifically includes:
  • the obtaining unit is used to obtain the first channel identifier, the first file identifier of the first file, and the first hash value of the first file; the first channel identifier is used to indicate the security corresponding to the first file recipient File transfer protocol SFTP server;
  • a processing unit configured to download the first file from a file transfer protocol FPS server according to the first file identifier of the first file and the first hash value of the first file;
  • the first file is stored in the SFTP server corresponding to the first channel identifier.
  • the processing unit is further configured to: obtain a second hash value of the first file in the FPS server, when the first hash value is equal to the second hash value , Downloading the first file from a file transfer protocol FPS server according to the first file identifier.
  • a push completion message is fed back to the first file sender; the push completion message is used to notify the first file sender that the first file sender has completed
  • the file is stored in the SFTP server corresponding to the first channel identifier.
  • the present application provides a computer device including a program or instruction, and when the program or instruction is executed, the computer executes any of the above-mentioned possible design methods.
  • the present application provides a storage medium including a program or instruction, and when the program or instruction is executed, the computer executes any of the above-mentioned possible design methods.
  • Utilizing the file interactive processing method, device and system provided in this application has the following beneficial effects: by mapping environmental information to channel identifiers, file developers no longer need to pay attention to specific environmental information, and can realize the separation of configuration and business , Which can reduce the difficulty of development and reduce the complexity of actual use.
  • FIG. 1 is a schematic diagram of the technical architecture of a file interactive processing method in the prior art
  • FIG. 2 is a schematic diagram of the technical architecture of file push in a file interactive processing method provided by an embodiment of the application;
  • FIG. 3 is a schematic diagram of a file push process in a file interactive processing method provided by an embodiment of the application
  • FIG. 4 is a schematic diagram of the technical architecture of file pulling in a file interactive processing method provided by an embodiment of the application;
  • FIG. 5 is a schematic diagram of a file pulling process in a file interactive processing method provided by an embodiment of the application
  • FIG. 6 is a schematic flowchart of a file push replacement method in a file interactive processing method provided by an embodiment of the application
  • FIG. 7 is a schematic structural diagram of a file interactive processing apparatus provided by an embodiment of the application.
  • FIG. 8 is a schematic structural diagram of a computer device provided by an embodiment of this application.
  • Figure 1 is a schematic diagram of a technical architecture of a file interactive processing method in the prior art.
  • the sender A and the receiver B can communicate and align the file format first, and then the sender A packs the files and provides the MD5 file And the summary file, then the sender A uploads the file to the SFTP server, and the receiver B retrieves the file from the SFTP server through the SFTP protocol.
  • this file interactive processing method requires the development of a complete file packaging and transmission module, and the development of upload and download functions for protocols such as FTP, and even a complete file monitoring function.
  • this file interactive processing method does not have sufficient control capabilities for file content, and it is difficult to implement flexible configuration of file data and shielding of sensitive data.
  • this file interactive processing method cannot realize the separation of configuration and business, which leads to mixed environment information and application business, which increases the complexity of actual use.
  • the embodiments of the present application provide a file interaction processing method, which can simplify the development process of file interaction and reduce the complexity of actual use.
  • the specific technical solutions are as follows.
  • FIG. 2 is a schematic diagram of the technical architecture of file push in a file interactive processing method provided by an embodiment of the application.
  • the technical architecture of file push shown in Figure 2 includes application system 201, application 202, distributed database (Tencent Distributed MySQL, TDSQL) 203, big data warehouse 204, data warehouse 205, data file 206, file interactive system 207, batch File interaction system (CAP) 208, file storage system (FPS) 209, SFTP server group 210, SFTP server 1 211, and SFTP server 2 212.
  • the application system 201 includes an application 202 and a distributed database 203.
  • the application 202 may be connected to the distributed database 203 for storing data to be transmitted in the application 202 in the distributed database 203.
  • the distributed database 203 can be connected to the application 202 and the data warehouse 205 respectively, and is used to push the data to be transmitted in the application 202 to the data warehouse 205 through the data extraction, transformation and loading (extract, transformation and loading, ETL) process. Generate data tables.
  • the big data warehouse 204 includes a data warehouse 205 and a data file 206, and the big data warehouse 204 can be connected to a file interactive system 207. More specifically, it can be connected to a batch file interactive system 208 and a file storage system 209.
  • the data warehouse 205 can be connected to the distributed database 203, the data file 206, and the file interaction system 207, and is used to process the data of the generated data table according to the business level requirements.
  • the data table is packaged to generate a data file 206.
  • the data file 206 is sent to the file storage system 209, and the file identifier and hash value corresponding to the data file 206 returned by the file storage system 209 are received.
  • the channel identifier of the specific server to be transmitted to the SFTP server group 210 is added, and the information is sent to the batch file interaction system 208 together.
  • the channel identification includes information such as the partner's SFTP address, account number, and password.
  • the data file 206 can be connected to the data warehouse 205 for generating a package file in the subsequent process.
  • the file interactive system 207 includes a batch file interactive system 208 and a file storage system 209.
  • the file interactive system 207 can be connected to the big data warehouse 204.
  • the batch file interaction system 208 can be connected with the big data warehouse 204, the file storage system 209, and the SFTP server group 210, and is used to receive the processed data fields sent by the data warehouse 205 in the big data warehouse 204, and according to the field list configured by itself, It is fed back to the data warehouse 205, and the data warehouse 205 filters the fields of the processed data according to the field list, and packages the data table corresponding to the filtered fields to generate a data file 206.
  • the file identifier, the hash value and the channel identifier of the specific server in the SFTP server group 210 corresponding to the data file 206 sent by the data warehouse 205 are received.
  • the data file is downloaded from the file storage system 209 according to the file identifier and hash value.
  • the server after downloading the data file, read the specific information in the channel identifier, determine the specific SFTP server in the SFTP server group 210 according to the specific information, and then push the data file to the server.
  • a push completion message is fed back to the application system 201.
  • the file storage system 209 may be connected to the big data warehouse 204 and the batch file interaction system 208, and is used to receive and store the data files 206 in the big data warehouse 204, and then send the file identification and hash value corresponding to the data files 206.
  • the file identification and hash value sent by the batch file interaction system 208 are received.
  • the SFTP server group 210 includes one or more SFTP servers, such as SFTP server 1 211, SFTP server 2 212, and so on.
  • the SFTP server group 210 may be connected to the batch file interaction system 208 to receive the data file 206 pushed by the batch file interaction system 208 and store it in the corresponding specific SFTP server.
  • FIG. 3 is a schematic diagram of a file push process in a file interactive processing method provided by an embodiment of the application. As shown in FIG. 3, the method includes:
  • Step 301 The data warehouse acquires data, and processes the data.
  • the data of the first file is generally stored in the distributed database of the application system.
  • the table is pushed to the data warehouse, and the data table is processed in the data warehouse according to business-level requirements.
  • the data warehouse sends the processed data fields to the batch file interactive system, and the batch file interactive system returns the list of fields configured by itself to the data warehouse.
  • the data warehouse then filters the processed data fields according to the field list and generates a data table corresponding to the filtered fields.
  • the batch file interaction system here can save fields for each channel and each business, and through these field information, the list of fields that need to be included in the file packaging process can be controlled.
  • the data table structure to be transmitted and sent out of the data warehouse has five fields, namely:
  • ID refers to the serial number field in the data table structure
  • NAME refers to the name field in the data table structure
  • ADDRESS refers to the address field in the data table structure
  • ID_NO refers to the ID number field in the data table structure
  • LAST_MODIFIED_DATETIME refers to the last modified time field in the data table structure.
  • the batch file interaction system can implement functions such as adjustment of data fields and screening of sensitive fields in file interaction processing in this flexibly configurable manner, thereby ensuring the controllability of data.
  • Step 302 Pack the processed data into a first file, and send the first file to the FPS server.
  • the data warehouse packages the data table corresponding to the filtered fields into the first file, and sends the first file to the FPS server.
  • Step 303 The FPS server stores the acquired first file, assigns a first file identifier to the first file, and generates a first hash value of the first file; sending to the data warehouse The first file identifier and the first hash value.
  • the FPS server receives and stores the first file, assigns a first file identifier to the first file, and generates a first hash value of the first file. After that, the FPS server can send the first file identifier and the first hash value to the data warehouse.
  • the FPS server here has two functions, including:
  • the first file identifier is a 64-bit string, which is unique.
  • the first hash value is a 32-bit string that records the first hash value of the first file. Even if the first file has a small change, such as a 1-bit change, it will cause the first hash value of the first file to change, so the first hash value of the first file can be used to identify whether the first file is damaged.
  • Step 304 The data warehouse obtains the first file identifier and the first hash value, determines the first channel identifier of the first file recipient, and sends the first channel identifier to the batch file interaction system CAP, The first file identifier and the first hash value.
  • the data warehouse determines the first channel of the specific server in the SFTP server group corresponding to the receiver according to the transmission requirement of the first file Identification, sending the first channel identification, the first file identification, and the first hash value to the batch file interaction system CAP.
  • Step 305 The CAP system obtains the first channel identifier, the first file identifier, and the first hash value.
  • the first channel identifier is used to indicate the SFTP server corresponding to the first file recipient. In this way, after downloading the first file from the FPS server according to the first file identifier and the first hash value, the first file can be stored in the first file according to the first channel identifier.
  • the SFTP server corresponding to the channel ID is used to indicate the SFTP server corresponding to the channel ID.
  • the CAP system receives the first channel identifier, the first file identifier, and the first hash value, and downloads the first file from the FPS server according to the first file identifier and the first hash value; and obtains the first file according to the first channel identifier
  • the SFTP server corresponding to the first file receiver thereby storing the first file in the SFTP server corresponding to the first channel identifier.
  • the file developer no longer needs to pay attention to the specific environmental information (that is, the situation of the recipient who transmits the first file). Coupling the problem of mixing application systems and environmental information; at the same time, it can also realize the unified management of environmental information, and can make timely changes when environmental information changes.
  • the detailed content of the first file is downloaded from the FPS server according to the first file identifier and the first hash value in step 305, which may specifically be:
  • Step 306 The SFTP server is used to store the first file.
  • the SFTP server receives and stores the first file, and waits for the receiver to take it out.
  • Step 307 Feed back a push completion message to the first file sender; the push completion message is used to notify the first file sender that it has completed storing the first file in the channel corresponding to the first channel identifier.
  • SFTP server Feed back a push completion message to the first file sender; the push completion message is used to notify the first file sender that it has completed storing the first file in the channel corresponding to the first channel identifier.
  • the push completion message may also be fed back to the first file sender.
  • the push completion message here is used to notify the sender of the first file that the first file has been stored in the SFTP server corresponding to the first channel identifier, so that the sender can learn the processing status of the first file, which is helpful for monitoring the first file.
  • the above content describes the transfer of files from the internal to the external system, and the following is explained from the perspective of obtaining external files for use by the internal system.
  • FIG. 4 is a schematic diagram of the technical architecture of file pulling in a file interactive processing method provided by an embodiment of the application.
  • the technical architecture of file pull may include a scheduling system 401, a file interaction system 207, a batch file interaction system (CAP) 208, a file storage system (FPS) 209, an SFTP server group 210, and an SFTP server 211, SFTP server 212 and receiving file system 402.
  • CAP batch file interaction system
  • FPS file storage system
  • the scheduling system 401 can be connected to the batch file interaction system 208 for sending the channel identifier of the sender to the batch file interaction system 208 within a specified configuration time.
  • a pull success message fed back by the batch file interaction system 208 is received.
  • the file interactive system 207 includes a batch file interactive system 208 and a file storage system 209.
  • the batch file interaction system 208 can be connected to the dispatch system 401, the file storage system 209, the SFTP server group 210, and the receiving file system 402, and is used to receive the sender’s channel identifier sent by the dispatch system 401, and after reading the specific information therein, Determine the location in the SFTP server group 210 where the file is located, and obtain the file uploaded by the sender from it.
  • the file package can be decompressed according to the corresponding format to obtain the file.
  • a pull success message is fed back to the scheduling system 401.
  • the file storage system 209 may be connected to the batch file interaction system 208 and the receiving file system 402 to receive and store the files uploaded by the batch file interaction system 208, and then send the file identification and hash value to the batch file interaction system 208.
  • the SFTP server group 210 includes SFTP server 1 211, SFTP server 2 212, etc., and can be connected to the batch file interaction system 208 to receive searches of the SFTP server group 210 by the batch file interaction system 208, and then obtain files uploaded by the sender.
  • the receiving file system 402 can be connected with the batch file interaction system 208 and the file storage system 209 to monitor the file identification and hash value in the message communication queue port configured by the batch file interaction system. After receiving the file identification and hash value , Invoke the Software Development Kit (SDK) of the file storage system to download files.
  • SDK Software Development Kit
  • FIG. 5 is a schematic diagram of a file pull process in a file interactive processing method provided by an embodiment of the application. As shown in FIG. 5, the method includes:
  • Step 501 The batch file interaction system CAP obtains a second channel identifier, obtains a second file from the SFTP server according to the second channel identifier, and sends the second file to the FPS server.
  • the second channel identifier is used to indicate the SFTP server corresponding to the second file sender.
  • the sender may upload the second file to the SFTP server.
  • the developer configures the pull time and pull frequency of the second file uploaded by the sender in the scheduling platform.
  • the scheduling platform can run the pull script to send the second channel identifier of the sender to the CAP system.
  • the CAP system can determine the SFTP server corresponding to the second file sender according to the second channel identifier, and can obtain the second file uploaded by the sender from the corresponding SFTP server.
  • the CAP system can be configured to unpack the second file package according to the corresponding format to obtain the second file. The CAP system can then upload the second file to the FPS server.
  • the internal file management mechanism can be uniformly stored in the FPS server, and then the receiving file system downloads the corresponding file from the file storage system according to the file identification and hash value as required.
  • the next description is how the receiving file system obtains the second file from the FPS server. The detailed description is as follows.
  • Step 502 The FPS server stores the acquired second file, assigns a second file identifier to the second file, and generates a third hash value of the second file, and then sends all the files to the CAP system.
  • the second file identifier and the third hash value are the first and second hash value.
  • the FPS server receives and stores the second file, assigns a second file identifier to the second file, and generates a third hash value of the second file, and then returns the second file identifier and the third hash value to the CAP system .
  • Step 503 The CAP system transmits the second file identifier and the third hash value to the message communication queue port.
  • Step 504 The receiving file system monitors the message communication queue port, obtains the second file identifier and the third hash value from the message communication queue port, and then according to the second file identifier and the third The hash value downloads the second file from the FPS server.
  • the process of downloading the second file may be: obtaining a fourth hash value of the second file in the FPS server, and when the third hash value is equal to the fourth hash value, Downloading the second file from a file transfer protocol FPS server according to the second file identifier.
  • the fourth hash value of the second file in the FPS server is acquired, and the second file is downloaded from the file transfer protocol FPS server according to the second file identifier.
  • the third hash value When it is equal to the fourth hash value, it is confirmed that the second file is intact. Otherwise, it means that problems such as network conditions during the downloading process cause the file to be damaged, and the second file needs to be downloaded again.
  • the CAP system may feed back a pull success message to the scheduling system to form closed-loop management.
  • FIG 6 is a schematic flow diagram of the replacement method of file push in another file interactive processing method.
  • java SDK can be used to replace the ETL process to push data, that is, the first file does not need to be passed through
  • the ETL process is pushed to the data warehouse, but by introducing the third-party java SDK package of the CAP system, the data of the first file of the sender and the first channel identifier of the first file receiver are transferred to the SDK, and the subsequent process and diagrams
  • the schematic diagram of the file push process in 3 is the same. In this way, the push to the data warehouse through the ETL process in Figure 3 can be simplified.
  • FIG. 7 is a schematic structural diagram of a file interactive processing device provided by an embodiment of the application. As shown in FIG. 7, the device includes:
  • the communication unit 701 is configured to obtain a first channel identifier, a first file identifier of a first file, and a first hash value of the first file; the first channel identifier is used to indicate the corresponding to the first file recipient Secure file transfer protocol SFTP server;
  • the processing unit 702 is configured to download the first file from a file transfer protocol FPS server according to the first file identifier of the first file and the first hash value of the first file; according to the first channel identifier Storing the first file in the SFTP server corresponding to the first channel identifier.
  • processing unit 702 is further configured to:
  • the communication unit 701 is further configured to:
  • the push completion message is fed back to the first file sender; the push completion message is used to notify the first file sender that the first file has been stored in the SFTP server corresponding to the first channel identifier.
  • an embodiment of the present invention provides a computer device. As shown in FIG. 8, it includes at least one processor 801 and a memory 802 connected to the at least one processor.
  • the embodiment of the present invention does not limit the processor
  • the connection between the processor 801 and the memory 802 in FIG. 8 is taken as an example.
  • the bus can be divided into address bus, data bus, control bus, etc.
  • the memory 802 stores instructions that can be executed by at least one processor 801, and the at least one processor 801 can execute the steps included in the aforementioned file interaction processing method by executing the instructions stored in the memory 802.
  • the processor 801 is the control center of the computer equipment, which can use various interfaces and lines to connect to various parts of the computer equipment, and realize data by running or executing instructions stored in the memory 802 and calling data stored in the memory 802. deal with.
  • the processor 801 may include one or more processing units, and the processor 801 may integrate an application processor and a modem processor.
  • the application processor mainly processes the operating system, user interface, and application programs.
  • the adjustment processor mainly handles issuing instructions. It can be understood that the foregoing modem processor may not be integrated into the processor 801.
  • the processor 801 and the memory 802 may be implemented on the same chip, and in some embodiments, they may also be implemented on separate chips.
  • the processor 801 may be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an application specific integrated circuit (ASIC), a field programmable gate array or other programmable logic devices, discrete gates or transistors Logic devices and discrete hardware components can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present invention.
  • the general-purpose processor may be a microprocessor or any conventional processor.
  • the steps of the method disclosed in the embodiment of file interactive processing may be directly embodied as being executed and completed by a hardware processor, or executed and completed by a combination of hardware and software modules in the processor.
  • the memory 802 can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules.
  • the memory 802 may include at least one type of storage medium, such as flash memory, hard disk, multimedia card, card-type memory, random access memory (Random Access Memory, RAM), static random access memory (Static Random Access Memory, SRAM), Programmable Read Only Memory (PROM), Read Only Memory (ROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), magnetic memory, disk , CD, etc.
  • the memory 802 is any other medium that can be used to carry or store desired program codes in the form of instructions or data structures and that can be accessed by a computer, but is not limited thereto.
  • the memory 802 in the embodiment of the present invention may also be a circuit or any other device capable of realizing a storage function for storing program instructions and/or data.
  • an embodiment of the present application also provides a storage medium including a program or instruction, and when the computer reads and executes the program or instruction, the computer executes the method described in any one of FIGS. 2 to 6.
  • the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • a computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing functions specified in a flow or multiple flows in the flowchart and/or a block or multiple blocks in the block diagram.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种文件交互处理方法、装置及系统,涉及金融科技(Fintech)领域,用以解决现有技术中文件交互方式在实际使用时复杂的问题。其中方法包括:获取第一渠道标识、第一文件标识以及第一文件的第一哈希值,第一渠道标识用于指示第一文件接收方对应的安全文件传输协议SFTP服务器;根据第一文件标识以及第一文件的第一哈希值从文件传输协议FPS服务器中下载第一文件,根据第一渠道标识将第一文件存储至第一渠道标识对应的SFTP服务器。通过将环境信息映射为渠道标识,使得文件的开发方可以不再需要关注具体的环境信息,即可实现配置与业务分离,从而能够降低实际使用的复杂度。

Description

一种文件交互处理方法、装置及系统
相关申请的交叉引用
本申请要求在2019年06月17日提交中国专利局、申请号为201910520528.4、申请名称为“一种文件交互处理方法、装置及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及一种文件交互处理方法、装置及系统。
背景技术
随着计算机技术的发展,越来越多的技术(例如大数据技术、分布式技术、区块链(Blockchain)技术、人工智能技术等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变。目前,金融科技领域中,随着信息处理的愈发频繁,对各种文件的交叉分析和综合应用也日益增多,文件之间的交互处理显得越来越重要。
现有技术中,文件交互的双方系统先沟通对齐双方的文件格式,然后由发送方对文件进行打包,并提供文件摘要、消息摘要算法(Message-Digest Algorithm,MD5)等校验信息,再通过文件传输协议(File Transfer Protocol,FTP),或者安全文件传输协议(Secure File Transfer Protocol,SFTP),或者超文本传输协议(Hypertext Transfer Protocol,HTTP)等协议,将文件上传至SFTP服务器中,如此,接收方能够通过SFTP协议将文件从SFTP服务器中取出。
现有技术的这种交互方式需要开发一套完整的文件打包和传输模块,且即使开发了这些模块,也无法实现配置与业务分离。可知,现有技术中的文件交互方式存在较大的开发难度,且实际使用起来也较为复杂。
发明内容
本申请提供一种文件交互处理方法、装置及系统,用以解决现有技术中文件交互方式的开发难度大、实际使用复杂的技术问题。
第一方面,本申请提供一种文件交互处理方法,具体包括:
获取第一渠道标识、第一文件的第一文件标识以及所述第一文件的第一 哈希值;所述第一渠道标识用于指示第一文件接收方所对应的安全文件传输协议SFTP服务器;根据所述第一文件的第一文件标识以及所述第一文件的第一哈希值从文件传输协议FPS服务器中下载所述第一文件,根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
一种可能的实现方式,所述根据所述第一文件的第一文件标识以及所述第一文件的第一哈希值从文件传输协议FPS服务器中下载所述第一文件,包括:获取所述FPS服务器中的第一文件的第二哈希值,当所述第一哈希值等于所述第二哈希值时,根据所述第一文件标识从文件传输协议FPS服务器中下载所述第一文件。
一种可能的实现方式,所述根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器之后,还将推送完成消息反馈给所述第一文件发送方;所述推送完成消息用于通知所述第一文件发送方已完成将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
第二方面,本申请提供一种文件交互处理系统,具体包括:
数据仓库,用于获取数据,对所述数据进行处理,将处理后的数据打包为第一文件,并将所述第一文件发送至FPS服务器;
所述FPS服务器,用于存储获取到的所述第一文件,并为所述第一文件分配第一文件标识,以及生成所述第一文件的第一哈希值;向所述数据仓库发送所述第一文件标识以及所述第一哈希值;
所述数据仓库,用于获取所述第一文件标识以及所述第一哈希值,确定第一文件接收方的第一渠道标识,并向批量文件交互系统CAP发送所述第一渠道标识、所述第一文件标识以及所述第一哈希值;
CAP系统,用于获取所述第一渠道标识、所述第一文件标识以及所述第一哈希值;所述第一渠道标识用于指示所述第一文件接收方所对应的SFTP服务器;根据所述第一文件标识以及所述第一哈希值从FPS服务器中下载所述第一文件;根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器;
所述SFTP服务器,用于存储所述第一文件。
第三方面,本申请提供一种文件交互处理系统,具体包括:
批量文件交互系统CAP,用于获取第二渠道标识;所述第二渠道标识用于指示第二文件发送方所对应的SFTP服务器;根据所述第二渠道标识从所述SFTP服务器获取第二文件;将所述第二文件发送至FPS服务器;
所述FPS服务器,用于存储获取到的所述第二文件,并为所述第二文件 分配第二文件标识,以及生成所述第二文件的第三哈希值;向所述CAP系统发送所述第二文件标识以及所述第三哈希值;
所述CAP系统,用于将所述第二文件标识以及所述第三哈希值传递给消息通信队列端口;
接收文件系统,用于监听所述消息通信队列端口,从所述消息通信队列端口获取所述第二文件标识以及所述第三哈希值;根据所述第二文件标识以及所述第三哈希值从FPS服务器中下载所述第二文件。
第四方面,本申请提供一种文件交互处理装置,具体包括:
获取单元,用于获取第一渠道标识、第一文件的第一文件标识以及所述第一文件的第一哈希值;所述第一渠道标识用于指示第一文件接收方所对应的安全文件传输协议SFTP服务器;
处理单元,用于根据所述第一文件的第一文件标识以及所述第一文件的第一哈希值从文件传输协议FPS服务器中下载所述第一文件;根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
一种可能的实现方式,所述处理单元,还用于:获取所述FPS服务器中的第一文件的第二哈希值,当所述第一哈希值等于所述第二哈希值时,根据所述第一文件标识从文件传输协议FPS服务器中下载所述第一文件。
一种可能的实现方式,所述处理单元之后,还将推送完成消息反馈给所述第一文件发送方;所述推送完成消息用于通知所述第一文件发送方已完成将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
第五方面,本申请提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,使得计算机执行上述任一种可能的设计中的方法。
第六方面,本申请提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,使得计算机执行上述任一种可能的设计中的方法。
利用本申请提供的文件交互处理方法、装置及系统,具有以下有益效果:通过将环境信息映射为渠道标识,使得文件的开发方可以不再需要关注具体的环境信息,即可实现配置与业务分离,从而可以降低开发难度,降低实际使用的复杂度。
附图说明
图1为现有技术的文件交互处理方法的技术架构示意图;
图2为本申请实施例提供的一种文件交互处理方法中的文件推送的技术架构示意图;
图3为本申请实施例提供的一种文件交互处理方法中的文件推送的流程示意图;
图4为本申请实施例提供的一种文件交互处理方法中的文件拉取的技术架构示意图;
图5为本申请实施例提供的一种文件交互处理方法中的文件拉取的流程示意图;
图6为本申请实施例提供的一种文件交互处理方法中的文件推送的替换方法的流程示意图;
图7为本申请实施例提供的一种文件交互处理装置的结构示意图;
图8为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了更好的理解上述技术方案,下面将结合说明书附图及具体的实施方式对上述技术方案进行详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互结合。
随着计算机技术的发展,越来越多的技术(例如大数据技术、分布式技术、区块链(Blockchain)技术、人工智能技术等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变。现有技术中,在金融机构(例如银行机构、保险机构或证券机构)在进行业务(如银行的贷款业务、存款业务等)开发过程中,文件交互的开发流程主要利用程序打包文件提供文件摘要、MD5等校验信息,并通过FTP/SFTP/HTTP等协议进行文件传输的过程。
图1为现有技术中文件交互处理方法的一种技术架构示意图。如图1所示,在发送方A存在向接收方B传输文件的需求的情况下,发送方A和接收方B可以先沟通对齐文件格式,再由发送方A对文件进行打包,提供MD5文件与摘要文件,之后发送方A将文件上传至SFTP服务器,由接收方B通过SFTP协议将文件从SFTP服务器中取出。
然而,这种文件交互处理方法需要开发一套完整的文件打包、传输模块,并需要开发FTP等协议的上传、下载功能,甚至需要提供完整的文件监控功能。且,这种文件交互处理方法对文件内容的控制能力也不够,较难实现文件数据的灵活配置以及敏感数据的屏蔽功能。此外,这种文件交互处理方法也无法实现配置与业务分离,导致环境信息与应用业务会混杂在一起,从而 增加了实际使用的复杂度。
面对愈来愈重要的文件交互流程,本申请实施例提供了一种文件交互处理方法,能够简化文件交互的开发流程,同时降低实际使用的复杂度,具体的技术方案如下。
图2为本申请实施例提供的一种文件交互处理方法中的文件推送的技术架构示意图。图2中所示的文件推送的技术架构包括应用系统201、应用202、分布式数据库(Tencent Distributed MySQL,TDSQL)203、大数据仓库204、数据仓库205、数据文件206、文件交互系统207、批量文件交互系统(CAP)208、文件存储系统(FPS)209、SFTP服务器群210、SFTP服务器1 211和SFTP服务器2 212。
其中,应用系统201包含应用202和分布式数据库203。应用202可以与分布式数据库203连接,用于将应用202中需传输的数据存储至分布式数据库203中。
分布式数据库203可以分别与应用202和数据仓库205连接,用于将应用202中需传输的数据通过数据抽取、转换和装载(extract、transformation and loading,ETL)进程推送至数据仓库205中,以生成数据表。
大数据仓库204包含数据仓库205和数据文件206,大数据仓库204可以与文件交互系统207连接。更具体的,可以与批量文件交互系统208和文件存储系统209连接。
数据仓库205可以与分布式数据库203、数据文件206和文件交互系统207连接,用于对已生成的数据表按照业务层面需求进行数据的加工处理。
可选的,发送已加工数据的字段给批量文件交互系统208,并接收批量文件交互系统208根据自身配置的字段列表,根据字段列表对已加工数据的字段进行筛选,并将筛选后的字段对应的数据表打包生成数据文件206。
可选的,将数据文件206发送至文件存储系统209,并接收文件存储系统209返回的数据文件206对应的文件标识和哈希值。
可选的,在数据文件206对应的文件标识和哈希值的基础上,加上要传输至SFTP服务器群210中的具体服务器的渠道标识,将这些信息一起发送给批量文件交互系统208。其中,渠道标识包括合作方的SFTP地址、账号、密码等信息。
数据文件206可以与数据仓库205连接,用于在之后流程中生成打包文件。
文件交互系统207包含批量文件交互系统208和文件存储系统209,文件 交互系统207可以与大数据仓库204连接。
批量文件交互系统208可以与大数据仓库204、文件存储系统209、SFTP服务器群210连接,用于接收大数据仓库204中的数据仓库205发送的已加工数据的字段,根据自身配置的字段列表,反馈给数据仓库205,数据仓库205根据字段列表对已加工数据的字段进行筛选,并将筛选后的字段对应的数据表打包生成数据文件206。
可选的,接收数据仓库205发送的数据文件206对应的文件标识、哈希值和SFTP服务器群210中的具体服务器的渠道标识。
可选的,根据文件标识和哈希值从文件存储系统209中下载数据文件。
可选的,下载数据文件后,读取渠道标识中的具体信息,按照具体信息确定SFTP服务器群210中的具体SFTP服务器,再将数据文件推送至该服务器。
可选的,在将数据文件推送至SFTP服务器群210后,将推送完成消息反馈给应用系统201。
文件存储系统209可以与大数据仓库204、批量文件交互系统208连接,用于接收大数据仓库204中的数据文件206并存储,再发送数据文件206对应的文件标识和哈希值。
可选的,接收批量文件交互系统208发送的文件标识和哈希值。
SFTP服务器群210包含一个或多个SFTP服务器,例如SFTP服务器1 211、SFTP服务器2 212等。SFTP服务器群210可以与批量文件交互系统208连接,用于接收批量文件交互系统208推送的数据文件206,并存储至对应的具体SFTP服务器。
当有内部文件要传输至外部时,具体的推送过程,下面将详细描述。
图3为本申请实施例提供的一种文件交互处理方法中的文件推送的流程示意图,如图3所示,该方法包括:
步骤301:数据仓库获取数据,对所述数据进行处理。
具体的,第一文件的数据一般存储在应用系统的分布式数据库中,当需要传输第一文件时,先确定分布式数据库中第一文件的数据所在的数据表接口,再通过ETL进程将数据表推送至数据仓库中,在数据仓库中对数据表按照业务层面需求进行加工处理。
之后,数据仓库发送已加工处理后的数据字段给批量文件交互系统,由批量文件交互系统将自身配置的字段列表返回给数据仓库。数据仓库再根据字段列表对已加工处理后的数据字段进行筛选,并生成筛选后的字段对应的 数据表。
其中,这里的批量文件交互系统可以保存有每个渠道、每个业务的字段,通过这些字段信息,可控制文件打包过程中需要包含的字段列表。举例来说,待传输发送出数据仓库的数据表结构具有五个字段,分别为:
ID:是指数据表结构中的序号字段;
NAME:是指数据表结构中的姓名字段;
ADDRESS:是指数据表结构中的地址字段;
ID_NO:是指数据表结构中的身份证号码字段;
LAST_MODIFIED_DATETIME:是指数据表结构中的最后修改的时间字段。
在文件传输过程中,若文件交互流程仅需要ID、NAME以及LAST_MODIFIED_DATETIME,则这时就可以在批量文件交互系统中配置ID、NAME以及LAST_MODIFIED_DATETIME作为筛选的字段列表,再返回给数据仓库。
本申请实施例中,批量文件交互系统可以以这种可灵活配置的方式在文件交互处理中实现对数据字段的调整、敏感字段的筛选等功能,从而能够保证数据的可控性。
步骤302:将处理后的数据打包为第一文件,并将所述第一文件发送至FPS服务器。
具体的,数据仓库将筛选后的字段对应的数据表打包为第一文件,并将第一文件发送至FPS服务器。
由于内部文件的管理机制是统一存储在FPS服务器,之后再上传至SFTP服务器中,接下来阐述的内容即为如何将第一文件从FPS服务器中获取到再上传至SFTP服务器中。详细描述如下。
步骤303:所述FPS服务器存储获取到的所述第一文件,并为所述第一文件分配第一文件标识,以及生成所述第一文件的第一哈希值;向所述数据仓库发送所述第一文件标识以及所述第一哈希值。
具体的,FPS服务器接收第一文件并存储,并为第一文件分配第一文件标识,以及生成第一文件的第一哈希值。之后,FPS服务器可以发送第一文件标识以及第一哈希值给数据仓库。
其中,这里的FPS服务器有两个功能,包括:
1、接收并存储第一文件;
2、返回第一文件标识以及第一哈希值。
在第2点功能中,第一文件标识是一个64位的字符串,具有唯一性。第一哈希值是一个32位的字符串,记录着第一文件的第一哈希值。即使第一文件存在很小的改动,例如1比特的变动,都会引起第一文件的第一哈希值改变,因此第一文件的第一哈希值能够用于识别第一文件是否损坏。
步骤304:所述数据仓库获取所述第一文件标识以及所述第一哈希值,确定第一文件接收方的第一渠道标识,并向批量文件交互系统CAP发送所述第一渠道标识、所述第一文件标识以及所述第一哈希值。
具体的,数据仓库在接收到FPS服务器发送的第一文件标识和第一哈希值的基础上,根据第一文件的传输需求确定接收方所对应的SFTP服务器群中的具体服务器的第一渠道标识,将第一渠道标识、第一文件标识以及第一哈希值一起发送给批量文件交互系统CAP。
步骤305:CAP系统获取所述第一渠道标识、所述第一文件标识以及所述第一哈希值。
本申请实施例中,第一渠道标识用于指示所述第一文件接收方所对应的SFTP服务器。如此,根据所述第一文件标识以及所述第一哈希值,从FPS服务器中下载所述第一文件后,能够根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器中。
具体的,CAP系统接收到第一渠道标识、第一文件标识以及第一哈希值,根据第一文件标识以及第一哈希值从FPS服务器中下载第一文件;根据第一渠道标识获取到第一文件接收方所对应的SFTP服务器,从而将第一文件存储至第一渠道标识对应的SFTP服务器。
在这种方式中,通过将传统文件交互流程中的环境信息映射为渠道标识,使得文件的开发方可以不再需要关注具体的环境信息(即传输第一文件的接收方情况),就能够解耦应用系统与环境信息混合的问题;同时也能够实现对环境信息的统一管理,当有环境信息发生变化时,能够做到及时更改。
示例性地,步骤305中根据所述第一文件标识以及所述第一哈希值从FPS服务器中下载所述第一文件的详细内容,具体可以为:
获取所述FPS服务器中的第一文件的第二哈希值,当所述第一哈希值等于所述第二哈希值时,根据所述第一文件标识从文件传输协议FPS服务器中下载所述第一文件。或者,
获取所述FPS服务器中的第一文件的第二哈希值,根据所述第一文件标识从文件传输协议FPS服务器中下载所述第一文件,当所述第一哈希值等于所述第二哈希值时,确认第一文件完好,否则说明下载过程中出现网络状况 等问题导致文件有损坏,需要重新下载第一文件。
步骤306:所述SFTP服务器,用于存储所述第一文件。
具体的,SFTP服务器接收并存储第一文件,等待接收方从中取出。
步骤307:将推送完成消息反馈给所述第一文件发送方;所述推送完成消息用于通知所述第一文件发送方已完成将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
示例性地,步骤306完成后,还可以将推送完成消息反馈给第一文件发送方。这里的推送完成消息用于通知第一文件发送方已完成将第一文件存储至第一渠道标识对应的SFTP服务器中,从而使发送方能够获知到第一文件的处理状态,有助于监控第一文件,提高对交互流程的闭环管理。
上述内容描述的是从内部传输文件给外部系统,下面再从获取外部文件供内部系统使用的角度来阐述。
图4为本申请实施例提供的一种文件交互处理方法中的文件拉取的技术架构示意图。如图4所示,文件拉取的技术架构可以包括调度系统401、文件交互系统207、批量文件交互系统(CAP)208、文件存储系统(FPS)209、SFTP服务器群210、SFTP服务器1 211、SFTP服务器2 212和接收文件系统402。
其中,调度系统401可以与批量文件交互系统208连接,用于在指定的配置时间内,将发送方的渠道标识发送给批量文件交互系统208。
可选的,在成功拉取文件后,接收批量文件交互系统208反馈的拉取成功消息。
文件交互系统207包含批量文件交互系统208和文件存储系统209。
批量文件交互系统208可以与调度系统401、文件存储系统209、SFTP服务器群210和接收文件系统402连接,用于接收调度系统401发送的发送方的渠道标识,并读取其中的具体信息后,确定文件所在的SFTP服务器群210中的位置,从中获取发送方上传的文件。
可选的,当文件以压缩包形式传输时,通过配置,能够按照对应的格式将文件包解压缩,得到文件。
可选的,将文件上传至文件存储系统209,并接收文件存储系统209返回的文件标识和哈希值。
可选的,将文件标识和哈希值传递给配置在拉取渠道管理中的消息通信队列端口。
可选的,在成功拉取文件后,将拉取成功消息反馈给调度系统401。
文件存储系统209可以与批量文件交互系统208、接收文件系统402连接,用于接收批量文件交互系统208上传的文件并存储,再发送文件标识和哈希值给批量文件交互系统208。
SFTP服务器群210包含SFTP服务器1 211、SFTP服务器2 212等,可以与批量文件交互系统208连接,用于接收批量文件交互系统208对SFTP服务器群210的搜索,再从中获取发送方上传的文件。
接收文件系统402可以与批量文件交互系统208、文件存储系统209连接,用于监听批量文件交互系统配置的消息通信队列端口中的文件标识和哈希值,在收到文件标识和哈希值后,调用文件存储系统的软件开发工具包(Software Development Kit,SDK)下载文件。
当需要获取外部文件供内部系统使用时,具体的拉取过程,下面将详细描述。
图5为本申请实施例提供的一种文件交互处理方法中的文件拉取的流程示意图,如图5所示,该方法包括:
步骤501:批量文件交互系统CAP获取第二渠道标识,根据所述第二渠道标识从所述SFTP服务器获取第二文件,将所述第二文件发送至FPS服务器。其中,所述第二渠道标识用于指示第二文件发送方所对应的SFTP服务器。
具体的,在步骤501之前,发送方可以将第二文件上传至SFTP服务器,相应地,开发人员将发送方上传的第二文件的拉取时间、拉取频率配置在调度平台中。如此,在配置的拉取时间内,调度平台可以运行拉取脚本,将上述发送方的第二渠道标识发送给CAP系统。
示例性地,CAP系统在获取第二渠道标识后,可以根据第二渠道标识确定第二文件发送方所对应的SFTP服务器,并可以从对应的SFTP服务器中获取到发送方上传的第二文件。在文件是以压缩包形式传输的情况下,CAP系统通过配置,能够按照对应格式将第二文件包解开,得到第二文件。之后CAP系统可以将第二文件上传至FPS服务器。
本申请实施例中,内部文件的管理机制可以统一存储在FPS服务器中,之后再由接收文件系统按需求根据文件标识和哈希值从文件存储系统中下载对应文件。接下来阐述的内容即为接收文件系统如何从FPS服务器中获取到第二文件。详细描述如下。
步骤502:FPS服务器存储获取到的所述第二文件,并为所述第二文件分配第二文件标识,以及生成所述第二文件的第三哈希值,进而向所述CAP系统发送所述第二文件标识以及所述第三哈希值。
具体的,FPS服务器接收第二文件并存储,为第二文件分配第二文件标识,以及生成第二文件的第三哈希值,再将第二文件标识和第三哈希值返回给CAP系统。
步骤503:CAP系统将所述第二文件标识以及所述第三哈希值传递给消息通信队列端口。
步骤504:接收文件系统监听所述消息通信队列端口,从所述消息通信队列端口获取所述第二文件标识以及所述第三哈希值,进而根据所述第二文件标识以及所述第三哈希值从FPS服务器中下载所述第二文件。
示例性地,下载所述第二文件的过程可以为:获取所述FPS服务器中的第二文件的第四哈希值,当所述第三哈希值等于所述第四哈希值时,根据所述第二文件标识从文件传输协议FPS服务器中下载所述第二文件。
示例性地,获取所述FPS服务器中的第二文件的第四哈希值,根据所述第二文件标识从文件传输协议FPS服务器中下载所述第二文件,当所述第三哈希值等于所述第四哈希值时,确认第二文件完好,否则说明下载过程中出现网络状况等问题导致文件有损坏,需要重新下载第二文件。
示例性地,在步骤504之后,CAP系统可以将拉取成功消息反馈给调度系统,以形成闭环管理。
图6是另一种文件交互处理方法中的文件推送的替换方法的流程示意图,如图6所示,在替换方案中,可以利用java SDK代替ETL进程推送数据,即不需要将第一文件通过ETL进程推送到数据仓库中,而是通过引入CAP系统的第三方java SDK包,将发送方的第一文件的数据和第一文件接收方的第一渠道标识传入SDK,之后的过程和图3中文件推送的流程示意图是相同的。通过这种方式,可以简化图3中通过ETL进程推送到数据仓库的环节。
图7为本申请实施例提供的一种文件交互处理装置的结构示意图,如图7所示,该装置包括:
通信单元701,用于获取第一渠道标识、第一文件的第一文件标识以及所述第一文件的第一哈希值;所述第一渠道标识用于指示第一文件接收方所对应的安全文件传输协议SFTP服务器;
处理单元702,用于根据所述第一文件的第一文件标识以及所述第一文件的第一哈希值从文件传输协议FPS服务器中下载所述第一文件;根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
在一种可选地实施方式中,所述处理单元702还用于:
获取所述FPS服务器中的第一文件的第二哈希值;
当所述第一哈希值等于所述第二哈希值时,根据所述第一文件标识从文件传输协议FPS服务器中下载所述第一文件。
在一种可选地实施方式中,所述通信单元701还用于:
将推送完成消息反馈给所述第一文件发送方;所述推送完成消息用于通知所述第一文件发送方已完成将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
基于相同的技术构思,本发明实施例提供了一种计算机设备,如图8所示,包括至少一个处理器801,以及与至少一个处理器连接的存储器802,本发明实施例中不限定处理器801与存储器802之间的具体连接介质,图8中处理器801和存储器802之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本发明实施例中,存储器802存储有可被至少一个处理器801执行的指令,至少一个处理器801通过执行存储器802存储的指令,可以执行前述的文件交互处理方法中所包括的步骤。
其中,处理器801是计算机设备的控制中心,可以利用各种接口和线路连接计算机设备的各个部分,通过运行或执行存储在存储器802内的指令以及调用存储在存储器802内的数据,从而实现数据处理。可选的,处理器801可包括一个或多个处理单元,处理器801可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理下发指令。可以理解的是,上述调制解调处理器也可以不集成到处理器801中。在一些实施例中,处理器801和存储器802可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器801可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合文件交互处理实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器802作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器802可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random Access Memory,RAM)、静态随机访问存储器(Static  Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器802是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本发明实施例中的存储器802还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于同一发明构思,本申请实施例还提供一种存储介质,包括程序或指令,当计算机读取并执行所述程序或指令时,使得计算机执行图2至图6任一项所述的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

  1. 一种文件交互处理方法,其特征在于,包括:
    获取第一渠道标识、第一文件的第一文件标识以及所述第一文件的第一哈希值;所述第一渠道标识用于指示第一文件接收方所对应的安全文件传输协议SFTP服务器;
    根据所述第一文件的第一文件标识以及所述第一文件的第一哈希值从文件传输协议FPS服务器中下载所述第一文件;
    根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
  2. 如权利要求1所述的方法,其特征在于,所述根据所述第一文件的第一文件标识以及所述第一文件的第一哈希值从文件传输协议FPS服务器中下载所述第一文件,包括:
    获取所述FPS服务器中的第一文件的第二哈希值;
    当所述第一哈希值等于所述第二哈希值时,根据所述第一文件标识从文件传输协议FPS服务器中下载所述第一文件。
  3. 如权利要求1所述的方法,其特征在于,所述根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器之后,还包括:
    将推送完成消息反馈给所述第一文件发送方;所述推送完成消息用于通知所述第一文件发送方已完成将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
  4. 一种文件交互处理系统,其特征在于,包括:
    数据仓库,用于获取数据,对所述数据进行处理,将处理后的数据打包为第一文件,并将所述第一文件发送至FPS服务器;
    所述FPS服务器,用于存储获取到的所述第一文件,并为所述第一文件分配第一文件标识,以及生成所述第一文件的第一哈希值;向所述数据仓库发送所述第一文件标识以及所述第一哈希值;
    所述数据仓库,用于获取所述第一文件标识以及所述第一哈希值,确定第一文件接收方的第一渠道标识,并向批量文件交互系统CAP发送所述第一渠道标识、所述第一文件标识以及所述第一哈希值;
    CAP系统,用于获取所述第一渠道标识、所述第一文件标识以及所述第一哈希值;所述第一渠道标识用于指示所述第一文件接收方所对应的SFTP服务器;根据所述第一文件标识以及所述第一哈希值从FPS服务器中下载所述 第一文件;根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器;
    所述SFTP服务器,用于存储所述第一文件。
  5. 一种文件交互处理系统,其特征在于,包括:
    批量文件交互系统CAP,用于获取第二渠道标识;所述第二渠道标识用于指示第二文件发送方所对应的SFTP服务器;根据所述第二渠道标识从所述SFTP服务器获取第二文件;将所述第二文件发送至FPS服务器;
    所述FPS服务器,用于存储获取到的所述第二文件,并为所述第二文件分配第二文件标识,以及生成所述第二文件的第三哈希值;向所述CAP系统发送所述第二文件标识以及所述第三哈希值;
    所述CAP系统,用于将所述第二文件标识以及所述第三哈希值传递给消息通信队列端口;
    接收文件系统,用于监听所述消息通信队列端口,从所述消息通信队列端口获取所述第二文件标识以及所述第三哈希值;根据所述第二文件标识以及所述第三哈希值从FPS服务器中下载所述第二文件。
  6. 一种文件交互处理装置,其特征在于,包括:
    通信单元,用于获取第一渠道标识、第一文件的第一文件标识以及所述第一文件的第一哈希值;所述第一渠道标识用于指示第一文件接收方所对应的安全文件传输协议SFTP服务器;
    处理单元,用于根据所述第一文件的第一文件标识以及所述第一文件的第一哈希值从文件传输协议FPS服务器中下载所述第一文件;根据所述第一渠道标识将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
  7. 如权利要求6所述的装置,其特征在于,所述处理单元还用于:
    获取所述FPS服务器中的第一文件的第二哈希值;
    当所述第一哈希值等于所述第二哈希值时,根据所述第一文件标识从文件传输协议FPS服务器中下载所述第一文件。
  8. 如权利要求6所述的装置,其特征在于,所述通信单元还用于:
    将推送完成消息反馈给所述第一文件发送方;所述推送完成消息用于通知所述第一文件发送方已完成将所述第一文件存储至所述第一渠道标识对应的SFTP服务器。
  9. 一种计算机设备,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至3中任意一项所述的方法被执行。
  10. 一种存储介质,其特征在于,包括程序或指令,当所述程序或指令 被执行时,如权利要求1至3中任意一项所述的方法被执行。
PCT/CN2020/091929 2019-06-17 2020-05-22 一种文件交互处理方法、装置及系统 Ceased WO2020253465A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910520528.4A CN110177154B (zh) 2019-06-17 2019-06-17 一种文件交互处理方法、装置及系统
CN201910520528.4 2019-06-17

Publications (1)

Publication Number Publication Date
WO2020253465A1 true WO2020253465A1 (zh) 2020-12-24

Family

ID=67698352

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/091929 Ceased WO2020253465A1 (zh) 2019-06-17 2020-05-22 一种文件交互处理方法、装置及系统

Country Status (2)

Country Link
CN (1) CN110177154B (zh)
WO (1) WO2020253465A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112843674A (zh) * 2021-01-19 2021-05-28 杭州电魂网络科技股份有限公司 游戏出包方法和系统
CN113343312A (zh) * 2021-06-25 2021-09-03 工银科技有限公司 基于前端埋点技术的页面防篡改方法及系统
CN114945020A (zh) * 2022-05-17 2022-08-26 宝信软件(武汉)有限公司 一种基于云平台的云边协同数据接入方法以及系统
CN115442358A (zh) * 2022-04-28 2022-12-06 北京罗克维尔斯科技有限公司 数据处理方法、装置、设备及计算机存储介质

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110177154B (zh) * 2019-06-17 2021-07-02 深圳前海微众银行股份有限公司 一种文件交互处理方法、装置及系统
CN110597764B (zh) * 2019-10-10 2024-05-07 深圳前海微众银行股份有限公司 一种文件下载、版本管理方法及装置
CN113726830B (zh) * 2020-05-25 2023-09-12 网联清算有限公司 一种报文标识生成方法及装置
CN112653757B (zh) * 2020-12-21 2024-08-20 深圳前海微众银行股份有限公司 文件管理系统、方法及设备
CN113037710A (zh) * 2021-02-03 2021-06-25 南京物通物语科技有限公司 一种工业物联网用对大数据传输的处理方法
CN116668115B (zh) * 2023-05-30 2026-01-30 中国工商银行股份有限公司 信息处理方法及装置、电子设备和计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104184740A (zh) * 2014-09-04 2014-12-03 中电长城网际系统应用有限公司 可信传输方法、可信第三方和可信传输系统
US9419801B2 (en) * 2009-05-12 2016-08-16 Infrascale Inc. System and method for transmitting needed portions of a data file between networked computers
CN108984560A (zh) * 2017-06-01 2018-12-11 杭州海康威视数字技术股份有限公司 文件存储方法及装置
CN109639819A (zh) * 2018-12-28 2019-04-16 腾讯科技(深圳)有限公司 文件传输方法、客户端、服务器及系统
CN110177154A (zh) * 2019-06-17 2019-08-27 深圳前海微众银行股份有限公司 一种文件交互处理方法、装置及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231742B (zh) * 2011-06-27 2014-10-29 中国建设银行股份有限公司 基于sftp协议的文件上传与下载方法、系统及相关设备
CN105025082A (zh) * 2011-12-09 2015-11-04 丁雪强 一种金融网点柜面上安全传输u盘文件的方法
US10069817B2 (en) * 2015-09-28 2018-09-04 Mastercard International Incorporated Secure file transfer with secure SSH key authentication
CN106162212B (zh) * 2016-07-01 2019-10-15 江苏省广播电视集团有限公司 一种基于云计算实现的新闻内容现场生产系统
CN109240726B (zh) * 2018-09-30 2022-04-22 湖北华联博远科技有限公司 一种软件更新方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9419801B2 (en) * 2009-05-12 2016-08-16 Infrascale Inc. System and method for transmitting needed portions of a data file between networked computers
CN104184740A (zh) * 2014-09-04 2014-12-03 中电长城网际系统应用有限公司 可信传输方法、可信第三方和可信传输系统
CN108984560A (zh) * 2017-06-01 2018-12-11 杭州海康威视数字技术股份有限公司 文件存储方法及装置
CN109639819A (zh) * 2018-12-28 2019-04-16 腾讯科技(深圳)有限公司 文件传输方法、客户端、服务器及系统
CN110177154A (zh) * 2019-06-17 2019-08-27 深圳前海微众银行股份有限公司 一种文件交互处理方法、装置及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112843674A (zh) * 2021-01-19 2021-05-28 杭州电魂网络科技股份有限公司 游戏出包方法和系统
CN113343312A (zh) * 2021-06-25 2021-09-03 工银科技有限公司 基于前端埋点技术的页面防篡改方法及系统
CN115442358A (zh) * 2022-04-28 2022-12-06 北京罗克维尔斯科技有限公司 数据处理方法、装置、设备及计算机存储介质
CN114945020A (zh) * 2022-05-17 2022-08-26 宝信软件(武汉)有限公司 一种基于云平台的云边协同数据接入方法以及系统
CN114945020B (zh) * 2022-05-17 2023-08-08 宝信软件(武汉)有限公司 一种基于云平台的云边协同数据接入方法以及系统

Also Published As

Publication number Publication date
CN110177154B (zh) 2021-07-02
CN110177154A (zh) 2019-08-27

Similar Documents

Publication Publication Date Title
WO2020253465A1 (zh) 一种文件交互处理方法、装置及系统
US10776107B2 (en) Microservice-based data processing apparatus, method, and program
US20210109799A1 (en) Synchronous ingestion pipeline for data processing
US10460123B1 (en) System and method for automatically securing sensitive data in public cloud using a serverless architecture
CN111163129A (zh) 一种基于跨链网络的资源处理方法及装置
US20240012781A1 (en) Article, device, and techniques for serverless streaming message processing
CN106375437B (zh) 数据审核方法及装置
US20160299918A1 (en) Device Control Using a Secure Decentralized Transactional Ledger
MX2008012378A (es) Estructura de agregacion de mensaje basado en politica.
CN105389120B (zh) 支持通过活动消息的rma api
US10860220B2 (en) Method and system for transferring data between storage systems
CN112882846B (zh) 消息队列的数据处理方法、装置、计算机设备和存储介质
CN105871966A (zh) 消息分发的方法、装置及系统
CN119105887B (zh) 消息处理方法、装置、电子设备及存储介质
CN114020689A (zh) 数据处理方法、数据处理装置、电子设备及存储介质
CN103646015B (zh) 发送、接收以及传输xml报文的方法和系统
US9659041B2 (en) Model for capturing audit trail data with reduced probability of loss of critical data
CN117131211A (zh) 数据处理方法、装置及设备
US10133759B1 (en) System for determining storage or output of data objects
WO2023142535A1 (zh) 一种ic卡应用的硬件调用方法、装置及智能ic卡
CN108833500B (zh) 服务调用方法、服务提供方法、数据传递方法和服务器
CN120358269A (zh) 模型服务跨框架请求转换方法、装置、设备及介质
CN113626222B (zh) 消息处理方法、装置、计算机设备和存储介质
CN114003603B (zh) 基于大数据平台的数据导出方法、系统及存储介质
CN116684241A (zh) 容器管理调度平台消息传输方法、装置及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20825812

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20825812

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 31/03/2022)

122 Ep: pct application non-entry in european phase

Ref document number: 20825812

Country of ref document: EP

Kind code of ref document: A1