System and method for maintaining data integrity during write operations in a computing environment

The system generates backups before write operations and automatically restores corrupted files to maintain data integrity, addressing inefficiencies in existing methods and minimizing downtime.

WO2026105143A1PCT designated stage Publication Date: 2026-05-21JIO PLATFORMS LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
JIO PLATFORMS LTD
Filing Date
2025-11-11
Publication Date
2026-05-21

AI Technical Summary

Technical Problem

Existing methods for maintaining data integrity during write operations in computing environments are inefficient, particularly in systems with limited resources, and fail to automatically handle file corruption due to system failures, leading to potential data loss and system downtime.

Method used

A system and method that generates a backup of data files before write operations, monitors for interruptions, and automatically restores corrupted files from the backup to ensure data integrity and minimize downtime.

Benefits of technology

Ensures rapid recovery from file corruption by automatically restoring data from backups, reducing downtime and maintaining file consistency without manual intervention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IN2025051769_21052026_PF_FP_ABST
    Figure IN2025051769_21052026_PF_FP_ABST
Patent Text Reader

Abstract

A system (100) and a method (400) for maintaining data integrity during write operations in a computing environment (001) is disclosed. The method (400) involves detection of a request from a computing resource to perform a write operation on a data file of an application. Prior to execution of the write operation, a backup of the data file containing application data is generated and stored in a backup memory (210). Further, the execution of the write operation is monitored concurrently to detect any interruptions or abnormal terminations. Based on the monitoring, a determination is performed to check whether the data file is corrupted or intact. When the corruption of the data file is detected, the data file is restored from the backup memory (210), and the write operation is resumed using the restored data file.
Need to check novelty before this filing date? Find Prior Art

Description

SYSTEM AND METHOD FOR MAINTAINING DATA INTEGRITY DURING WRITE OPERATIONS IN A COMPUTING ENVIRONMENTTECHNICAL FIELD

[0001] The embodiments of the present disclosure generally relate to the field of communication system and networks. More particularly, the present disclosure relates to a system and method for maintaining data integrity during write operations in a computing environment.BACKGROUND OF THE INVENTION

[0002] The subject matter disclosed in the background section should not be assumed or construed to be prior art merely because of its mention in the background section. Similarly, any problem statement mentioned in the background section or its association with the subject matter of the background section should not be assumed or construed to have been previously recognized in the prior art.

[0003] Operations performed by computer applications typically involve data to be frequently accessed, read, and / or modified. Write operations, especially associated with critical system data (e.g., data related to the initial boot up of the application) are crucial for the working of the application. There is a risk of file corruption due to a system crash or failure before the write operation completes successfully. This results in incomplete or corrupted files leading to system malfunction or data loss.

[0004] Existing methods to prevent file corruption during the write operations include hardware-level solutions such as a Redundant Array of Independent Discs (RAID) configuration or a journaling file system, which track changes in the data before its storage. Another existing solution towards backup is Distributed File System (DFS) which enables data files to be stored at different servers as copies so that they can be used if corruption happens at one server. While these methods are effective, such solutions require hosting through a wireless server. Therefore, the performance of such systems is dependent on efficiency of a communication network coupling these systems with the wireless server and the performance of thewireless server. Some systems utilize data backup services such as a File Replication Service (FRS) which automatically replicates files and folders across different servers / partitions, enabling continuous access to updated data. The FRS service replicates the entire data of the system (as backup) and therefore utilizes the storage resources (at hardware or server level) exhaustively. Accessing the wireless server can increase the overheads which can introduce significant complexities and latency, hence they become unsuitable to store critical data for the computer application being hosted on systems with limited resources.

[0005] Moreover, systems relying on such backup options fail in case of a power failure, and thus the data associated with initiation of the computer application gets corrupted. Additionally, some systems rely on manual intervention after an initiation crash to replace corrupted files and backups. This process can be cumbersome and prone to errors, especially in large-scale systems.

[0006] In view of the above-mentioned challenges, there is a requirement of a technical solution that can address the broader problem and can automatically handle file integrity issues during write operations in a computing environment. The technical solution would ensure that the system can return to normal operation quickly and reliably, minimizing downtime and maintaining file consistency.SUMMARY

[0007] The following embodiments present a simplified summary in order to provide a basic understanding of some aspects of the disclosed invention. This summary is not an extensive overview, and it is not intended to identify key / critical elements or to delineate the scope thereof. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.

[0008] In an embodiment, a method for maintaining data integrity during write operations in a computing environment is disclosed. The method includes detecting a request from a computing resource to perform a write operation on a data file associated with an application. The method further includes generating and storinga backup of the data file including application data in a backup memory prior to performing the write operation. Furthermore, the method includes monitoring an execution of the write operation to detect an interruption or abnormal termination during the execution of the write operation. Thereafter, the method includes determining whether the data file is corrupted or intact based on the detection of the interruption or the abnormal termination. Thereafter, the method includes restoring the data file from the backup memory based on the determination that the data file is corrupted, and resuming the write operation of the application using the restored the data file.

[0009] In some aspects of the present disclosure, the method further includes retrying based on the determination that the data file is intact, the write operation after restoring the backup of the data file from the backup memory.

[0010] In some aspects of the present disclosure, the generation of the backup is performed periodically or prior to modification of the data file.

[0011] In some aspects of the present disclosure, the method further includes determining a completion of the write operation on the data file and generating a completion notification indicating the completion of the write operation on the data file.

[0012] In some aspects of the present disclosure, the method further includes generating, based on the completion notification, an initiation trigger for the computing resource. The initiation trigger enables the computing resource to host the application.

[0013] In another embodiment, a system for maintaining data integrity during write operations in a computing environment is disclosed. The system includes a backup memory, and a data processing circuitry coupled to the backup memory. The data processing circuitry further includes a detection module, a data management module, a monitoring module, and a processing module. The detection module is configured to detect a request from a computing resource to perform a write operation on a data file associated with an application. The data managementmodule is configured to generate and store a backup of the data file including application data in the backup memory prior to performing the write operation. The monitoring module is configured to monitor execution of the write operation to detect an interruption or abnormal termination during the execution of the write operation. The processing module is configured to determine, based on the detection of the interruption or the abnormal termination, whether the data file is corrupted or intact. Based on the determination that the data file is corrupted, the data file from the backup memory is restored and operation of the application using the restored data file is resumed.

[0014] In yet another embodiment, a computer program product for maintaining data integrity during write operations in a computing environment is disclosed. The computer program product comprises computer-executable instructions that are stored on a non-transitory computer-readable medium and that, when executed by at least one processor performs operations comprising detecting a request from a computing resource to perform a write operation on a data file associated with an application. Further, the operations comprises generating and storing a backup of the data file including application data in a backup memory prior to performing the write operation. Furthermore, the operations comprising monitoring an execution of the write operation to detect an interruption or abnormal termination during the execution of the write operation. Thereafter, the operations comprising determining, based on the detection of the interruption or the abnormal termination, whether the data file is corrupted or intact. Further, based on the determination that the data file is corrupted, the operations comprising restoring the data file from the backup memory, and resuming operation of the application using the restored the data file.BRIEF DESCRIPTION OF DRAWINGS

[0015] Various embodiments disclosed herein will become better understood from the following detailed description when read with the accompanying drawings. The accompanying drawings constitute a part of the present disclosure and illustrate certain non-limiting embodiments of inventive concepts disclosed herein. Further, components and elements shown in the drawings are not necessarily to scale,emphasis instead being placed upon clearly illustrating the principles of the present disclosure. For the purpose of consistency and ease of understanding, similar components and elements are annotated by reference numerals in the exemplary drawings.

[0016] FIG. 1 illustrates a block diagram depicting an operational environment of a system for maintaining data integrity during write operations on an application of a computing resource, in accordance with an exemplary embodiment of the present disclosure.

[0017] FIG. 2 is a block diagram that illustrates the system to execute the write operation(s) on the application of the computing resource, in accordance with an exemplary embodiment of the present disclosure.

[0018] FIG. 3 is a block diagram that illustrates exemplary components of a subsystem for maintaining the data integrity during the write operations, in accordance with an embodiment of the present disclosure.

[0019] FIG. 4 illustrates a brief process flow diagram depicting a method for maintaining the data integrity during the write operations on the application of the computing resource, in accordance with an embodiment of the present invention.

[0020] FIG. 5 illustrates a detailed process flow diagram depicting the method for maintaining the data integrity during the write operations on the application of the computing resource, in accordance with an embodiment of the present invention.

[0021] FIG. 6 illustrates an exemplary computer system in which or with which embodiments of the present disclosure may be implemented, in accordance with an embodiment of the present invention.DETAILED DESCRIPTION OF THE INVENTION

[0022] Aspects of the present disclosure will now be described in further detail with reference to the accompanying drawings, which illustrate one or more example embodiments. The embodiments are presented by way of example only and are not intended to limit the scope of the present disclosure. Rather, these descriptions areprovided to ensure a clear and consistent understanding of the disclosed subject matter by those skilled in the art. It should be understood that the various embodiments described herein may be modified, combined, or adapted without departing from the overall scope and intent of the invention.

[0023] The following description presents various embodiments of the present disclosure. The embodiments disclosed herein are presented as teaching examples and are not to be construed as limiting the scope of the present disclosure. The present disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the exemplary design and implementation illustrated and described herein, but may be modified, omitted, or expanded upon without departing from the scope of the present disclosure.

[0024] The following description contains specific information pertaining to embodiments in the present disclosure. The detailed description uses the phrases “in some embodiments” which may each refer to one or more or all of the same or different embodiments. The term “some” as used herein is defined as “one, or more than one, or all.” Accordingly, the terms “one,” “more than one,” “more than one, but not all” or “all” would all fall under the definition of “some.” In view of the same, the terms, for example, “in an embodiment” refers to one embodiment and the term, for example, “in one or more embodiments” refers to “at least one embodiment, or more than one embodiment, or all embodiments.”

[0025] The term “comprising,” when utilized, means “including, but not necessarily limited to;” it specifically indicates open-ended inclusion in the so-described one or more listed features, elements in a combination, unless otherwise stated with limiting language. Furthermore, to the extent that the terms “includes,” “has,” “have,” “contains,” and other similar words are used in either the detailed description, such terms are intended to be inclusive in a manner similar to the term “comprising.”

[0026] In the following description, for the purposes of explanation, various specific details are set forth to provide a thorough understanding of embodiments ofthe present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter can each be used independently of one another or with any combination of other features.

[0027] The description provided herein discloses exemplary embodiments only and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the foregoing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing any of the exemplary embodiments. Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it may be understood by one of the ordinary skilled in the art that the embodiments disclosed herein may be practiced without these specific details.

[0028] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein the description, the singular forms "a", "an", and "the" include plural forms unless the context of the invention indicates otherwise.

[0029] The terminology and structure employed herein are for describing, teaching, and illuminating some embodiments and their specific features and elements and do not limit, restrict, or reduce the scope of the present disclosure. Accordingly, unless otherwise defined, all terms, and especially any technical and / or scientific terms, used herein may be taken to have the same meaning as commonly understood by one having ordinary skill in the art.

[0030] Aspects of the present disclosure provide a system and a method for maintaining data integrity during write operations on an application (i.e., computer implemented software application) executing on a user device in a local computing environment, such as a personal computer, mobile device, or embedded system. The system operates within a local file system and assumes an operating system process model, where applications perform file I / O operations directly on a local storage. In some aspects of the present disclosure, the system stores backup data correspondingto the write operations on the computer application, which may be critical for initial execution (such as a bootup) of the application or recovery. In some other aspects of the present disclosure, the system produces and maintain backup data at an application level to enable recovery in case of system failure such as data corruption due to power cut. Further, the scope of the present disclosure does not extend to server-level, networked, or distributed file systems unless explicitly stated.

[0031] In yet other aspects of the present disclosure, the system using the method provides an automated solution for on device backup of critical data of the computer application (i.e., without a requirement of any manual intervention). Particularly, the system, when detects a request to perform write operation(s) on the computer application, identifies data files including data associated with the computer application and generates a backup of the data file. The generated data file is stored locally by the system. In a situation, when the system identifies that the write operation is interrupted, the system determines whether a file executing the write operation is corrupted by the interruption of the write request. When, the system identifies that the file is corrupted, the system retrieves the backup of the critical data and utilizes the backup for executing the write operation(s).

[0032] In the disclosure, various embodiments are described using terms used in some computer communication standards and cloud related technologies, but these are merely examples for description. Various embodiments of the disclosure may also be easily modified and applied to other communication systems.

[0033] In order to facilitate an understanding of the disclosed invention, a number of terms are defined below.

[0034] As used herein, the term “computing resource” refers to an application server or host environment configured to execute, manage, or host one or more applications that access and modify data during runtime. The computing resource may include, for example but not limited to, a physical or virtualized server, a cloudbased compute instance, a containerized microservice node, or any other processing environment capable of performing read and write operations on data filesassociated with hosted applications. In certain embodiments, the computing resource may operate under control of an orchestration framework (such as a cloud management platform, virtual machine monitor, or container orchestration engine) that allocates processor, memory, and storage resources for executing the hosted applications. The computing resource may communicate with a shared or dedicated storage subsystem to perform file input / output (I / O) operations, including the write operations monitored by the present system.

[0035] The term “data file” refers to an application-specific file or data object associated with an application intended to be hosted or executed on the application server (i.e., the computing resource). The data file may contain, for example but not limited to, application configuration parameters, operational datasets, executable components, state information, or persistent runtime data required for launching or operating the hosted application. The data file may reside in local storage of the application server, in a Network Attached Storage (NAS) volume, in a distributed file system, or in a cloud-based object store.

[0036] The write operation may refer to an action or task that modifies persistent data associated with an application or data file, including but not limited to systemlevel write calls, buffered file writes, transactional commits, or block-level write requests. For instance, a write operation may comprise a sequence of actions beginning when a write operation is requested by the computing resource and terminating when the write is acknowledged as complete.

[0037] The term “backup” as used herein, refer to a persistent copy or redundant representation of a data file and the application data that is created and stored to allow recovery in the event of a failure, interruption, or corruption. The backup may be implemented as a full copy, an incremental copy, a snapshot, or a journal entry and may be stored locally (for example, on a protected storage partition, local nonvolatile memory, or a snapshot store) or remotely (for example, in a backup service or separate storage device). The backup helps the system as a reliable recovery source to restore correct application state when required.

[0038] An “interruption” or “abnormal termination” refers to an unexpected cessation or premature end of an executing write operation or of the process performing the write, such that the normal completion sequence defined by the storage and operating environment is not reached. Examples of interruption or abnormal termination include process crashes, out-of-memory failures, kernel panics, power failures, I / O subsystem errors, device resets, or receipt of signals that forcibly terminate the process. Abnormal termination is understood in the context of system programming and operating system behavior as a termination that occurs other than by the normal, orderly completion of the operation or process.

[0039] The term “corrupted” for a data file describes a state in which the stored contents of the data file have been altered, damaged, or rendered inconsistent such that continued use of the file would result in incorrect application behavior, data loss, or violation of data integrity guarantees. The corruption of the data file may be caused by partial writes, tom writes, storage media errors, interrupted transactions, or software faults.

[0040] Embodiments of the present disclosure will be described below in detail with reference to the accompanying drawings. FIG. 1 through FIG. 6, discussed below, and the one or more embodiments used to describe the principles of the present disclosure are by way of illustration only and should not be constmed in any way to limit the scope of the present disclosure. Those skilled in the art will understand that the principles of the present disclosure may be implemented in any suitably arranged system or device.

[0041] FIG. 1 illustrates a block diagram depicting an operational environment 001 of a system 100 for maintaining data integrity during write operations on the application of a computing resource 010, in accordance with an exemplary embodiment of the present disclosure. The operational environment 001 includes the system 100 and an external computing resource 010 (for example, hereinafter referred to as an “application server 010”) communicatively coupled to each other by way of a network 020.

[0042] The system 100 may be configured to facilitate a user to input data, receive data, and / or transmit data within the environment 001. Preferably, the system 100 may be configured to generate and store backup of data file including application data corresponding to the write operation(s) on the application. Specifically, the application may be installed on the system 100 and may be hosted by the application server 010. In some aspects of the present disclosure, the system 100 may be a user device. Examples of the user devices that can be used in the operational environment 001 as the system 100 may include, but are not limited to, a desktop, a notebook, a laptop, a handheld computer, a touch sensitive device, a computing device, a smartphone, and / or a smart watch. It will be apparent to a person of ordinary skill in the art that the system 100 may include any device / apparatus that is capable of manipulation by the user.

[0043] The application server 010 may be a network of computers, a software framework, or a combination thereof, that may provide a generalized approach to create the server implementation that is responsible for hosting the application over which the system 100 performs write operations. Examples of the application server 010 may include, but are not limited to, personal computers, laptops, minicomputers, mainframe computers, any non-transient and tangible machine that can execute a machine-readable code, cloud-based servers, distributed server networks, or a network of computer systems. The application server 010 may be realized through various web-based technologies such as, but not limited to, a Java webframework, a .NET framework, a personal home page (PHP) framework, or any web-application framework. The application server 010 may be maintained by a storage facility management authority or a third-party entity that facilitates service enablement and resource allocation operations of the system 100.

[0044] The network 020 may include suitable logic, circuitry, and interfaces that may be configured to provide several network ports and several communication channels for transmission and reception of data related to operations of various entities of the system 100 (as presented later in FIG. 2). Each network port may correspond to a virtual address (or a physical machine address) for transmission andreception of the communication data. For example, the virtual address may be an Internet Protocol Version 4 (IPV4) (or an IPV6 address) and the physical address may be a Media Access Control (MAC) address. The network 020 may be associated with an application layer for implementation of communication protocols based on communication requests from the various entities of the system 100. The communication data may be transmitted or received via the communication protocols. Examples of the communication protocols may include, but are not limited to, Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), Simple Mail Transfer Protocol (SMTP), Domain Network System (DNS) protocol, Common Management Interface Protocol (CMIP), Transmission Control Protocol and Internet Protocol (TCP / IP), User Datagram Protocol (UDP), Long Term Evolution (LTE) communication protocols, or any combination thereof. In some aspects of the present disclosure, the communication data may be transmitted or received via at least one communication channel of several communication channels in the network 020. The communication channels may include, but are not limited to, a wireless channel, a wired channel, a combination of wireless and wired channel thereof. The wireless or wired channel may be associated with a data standard which may be defined by one of a Local Area Network (LAN), a Personal Area Network (PAN), a Wireless Local Area Network (WLAN), a Wireless Sensor Network (WSN), Wireless Area Network (WAN), Wireless Wide Area Network (WWAN), a metropolitan area network (MAN), a satellite network, the Internet, an optical fiber network, a coaxial cable network, an infrared (IR) network, a radio frequency (RF) network, and a combination thereof. Aspects of the present disclosure are intended to include or otherwise cover any type of communication channel, including known, related art, and / or later developed technologies.

[0045] Although FIG. 1 illustrates one example of the operational environment 001, various changes may be made to FIG. 1. For example, the operational environment 001 may include any number of systems and / or user devices (similar to the system 100) in any suitable arrangement, without deviating from the scope of the present disclosure. Further, various components in FIG. 1 may be combined, furthersubdivided, or omitted and additional components may be added according to particular needs.

[0046] FIG. l is a block diagram that illustrates the system 100 to execute the write operation(s) on the application of the computing resource, in accordance with an exemplary embodiment of the present disclosure.

[0047] The system 100 may include a user interface 202, a network interface 204, a processing circuitry 206, an application console 208, and a backup memory 210. The user interface 202 may include an input interface for receiving inputs from the user. Examples of the input interface of the user interface 202 may include, but are not limited to, a touch interface, a mouse, a keyboard, a motion recognition unit, a gesture recognition unit, a voice recognition unit, or the like. Aspects of the present disclosure are intended to include or otherwise cover any type of the input interface including known, related art, and / or later developed technologies. The user interface 202 may further include an output interface for displaying (or presenting) an output to the user. Examples of the output interface of the user interface 202 may include, but are not limited to, a digital display, an analog display, a touch screen display, a graphical user interface, a website, a webpage, a keyboard, a mouse, a light pen, an appearance of a desktop, and / or illuminated characters. Aspects of the present disclosure are intended to include or otherwise cover any type of the output interface including known, related art, and / or later developed technologies.

[0048] The network interface 204 may be configured to enable the system 100 to communicate with the application server 010 through the network 020. Examples of the network interface 204 may include, but are not limited to, a modem, a network interface such as an Ethernet card, a communication port, and / or a Personal Computer Memory Card International Association (PCMCIA) slot and card, an antenna, a radio frequency (RF) transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a coder-decoder (CODEC) chipset, a subscriber identity module (SIM) card, and a local buffer circuit. It will be apparent to a person of ordinary skill in the art that the network interface 204 may includeany device and / or apparatus capable of providing wireless or wired communications between the system 100 and the application server 010 via the network 020.

[0049] The processing circuitry 206 may include suitable logic, instructions, circuitry, interfaces, and / or codes for executing various operations, such as the operations associated with the system 100, or the like. In some aspects of the present disclosure, the processing circuitry 206 may utilize one or more processors such as Arduino or raspberry pi or the like. Further, the processing circuitry 206 may be configured to control one or more operations executed by the system 100 in response to the input received at the user interface 202 from the user. Furthermore, the user interface 202, the network interface 204, the application console 208, and the backup memory 210 may be communicatively coupled to each other via the processing circuitry 206. Examples of the processing circuitry 206 may include, but are not limited to, an application-specific integrated circuit (ASIC) processor, a Reduced Instruction Set Computing (RISC) processor, a Complex Instruction Set Computing (CISC) processor, a field-programmable gate array (FPGA), a Programmable Logic Control unit (PLC), and the like. Some aspects of the present disclosure are intended to include or otherwise cover any type of the processing circuitry 206 including known, related art, and / or later developed processing units.

[0050] The application console 208 may be configured as the application, to be executed by the processing circuitry 206. The application console 208 may include suitable logic, instructions, and / or codes for executing various operations and may be controlled by the application server 010. In some aspects of the present disclosure, the application may also be stored in the backup memory 210. Examples of the computer application may include, but are not limited to, an audio application, a video application, a social media application, a navigation application, or the like.

[0051] The backup memory 210 may be configured to store critical data corresponding to execution of write operation(s) on the computer application. In some aspects of the present disclosure, the backup memory may further store logic, instructions, circuitry, interfaces, the generated backup, and / or codes of the processing circuitry 206, and data associated with the system 100. In some aspectsof the present disclosure, the backup memory 210 may be an integral part of the system 100 such as a dedicated permanent cache memory. In some other aspects of the present disclosure, the backup memory 210 may be an external memory removably attachable with the system 100, such as a data storage disk. Aspects of the present disclosure are intended to include or otherwise cover any type of the backup memory 210 including known, related art, and / or later developed memories that may be configured to store backup of the critical data of the computer application and can be integrated operationally to the system 100.

[0052] The memory unit 212 may be configured to store data, instructions, logic, codes for various operations performed by the user interface 202, the network interface 204, the processing circuitry 206, and the application console 208. Particularly, the memory unit 212 may be configured to store data associated with the computer application that enables the computer application to run on the system 100 through the application console 208. It will be apparent to a person of ordinary skill in the art that the critical data of the computer application may be a part or a portion (e.g., a subset) of the data associated with the computer application stored in the memory unit 212. Examples of the memory unit 212 may further include, but are not limited to, a Read-Only Memory (ROM), a Random-Access Memory (RAM), a flash memory, a removable storage drive, a Hard Disk Drive (HDD), a solid-state memory, a magnetic storage drive, a Programmable Read Only Memory (PROM), an Erasable PROM (EPROM), and / or an Electrically EPROM (EEPROM).

[0053] Although FIG. 2 illustrates one example of the system 100, various changes may be made to FIG. 2. For example, the system 100 may be embedded as an integral component into a user device (not shown) or may be an external attachment supporting the user device. Similarly, the backup memory 210 may be an integral repository of an internal memory of the user device or may be an external hardware such as a disc that can be removably coupled with the internal memory of the user device. Further, the system 100 may include any number of components in addition to those shown in FIG. 2, without deviating from the scope of the present disclosure.Further, various components in FIG. 2 may be combined, further subdivided, or omitted and additional components may be added according to particular needs.

[0054] In operation, the data processing circuitry 206 may be configured to detect a request from the application server 010 to perform the write operation on the data file associated with the application installed on the system 100 and executed through the application console 208. The data processing circuitry 206 may further configured to identify application data when the request is detected. In some aspects of the present disclosure, the application data may be associated with an initialization of the computer application. Furthermore, the data processing circuitry 206 may be configured to generate a backup data corresponding to the application data. Furthermore, the data processing circuitry 206 may be configured to store the backup data in the backup memory 210. Furthermore, the data processing circuitry 206 may be configured to determine, based on the detected request, whether the write operation on the application is interrupted. Interruption of the write operation on the application may be caused due to a variety of factors such as power failure at source, overburdened data processing circuitry 206, etc. Furthermore, the data processing circuitry 206 may be configured to determine, based on the determination that the write application is interrupted, whether the data file including the application data is corrupted. Furthermore, the data processing circuitry 206 may be configured to retrieve, when the critical data is corrupted, the backup data from the backup memory 210 to resume the write operation on the application.

[0055] In one exemplary scenario, the data processing circuitry 206 may further be configured to retry, post the determination that the write operation is interrupted, the write operation on the application based on the determination that the critical data is intact. The write operation on the application is retried after restoring the backup of the data file from the backup memory 210.

[0056] In another exemplary scenario, the data processing circuitry 206 may further be configured to determine a completion of the write operation on the data file of the application. Moreover, the data processing circuitry 206 may be configured togenerate a completion notification that indicates the completion of the write operation on the data file.

[0057] In some aspects of the present disclosure, the data processing circuitry 206 may further be configured to generate, based on the completion notification, an initiation trigger for the application server 010. The initiation trigger enables the application server 010 to host the application.

[0058] FIG. 3 is a block diagram that illustrates exemplary components of a subsystem 300 to for maintaining the data integrity during the write operation(s), in accordance with an embodiment of the present disclosure. The subsystem 300 includes the data processing circuitry, the backup memory 210, and the memory unit 212 coupled to each other by a first communication bus 314.

[0059] According to the exemplary embodiment, the data processing circuitry 206 includes a detection module 302, a data management module 304, a monitoring module 306, a backup module 308, a processing module 310, and a notification generation module 312. The processing module 310 includes a data write module 310-1, a comparator module 310-2, and an application trigger module 310-3. Various modules in the data processing circuitry 206 may be coupled to each other by way of a second communication bus 316.

[0060] The detection module 302 is configured to observe and intercept requests issued by the computing resource 010 (i.e., the application server 010) for data related operations and to initiate protective handling prior to execution of the data related operations. In various embodiments the detection module 302 is implemented as an agent or service that listens to operating system call interfaces, file system hooks, hypervisor or container runtime events, or the APIs used by the application to request write operations, and generates an internal signal or event upon detection of a write request to enable subsequent backup and monitoring actions. The detection module 302 may be implemented as a distributed or centralized service and may be executed at an application host, an orchestration node, or within an I / O interception layer.

[0061] Particularly, the detection module 302 may be configured to detect a write request from the application server 010. The write request corresponds to execution of the write operation on the application. The detection module 302 may further be configured to transfer the write request to the data management module 304.

[0062] The data management module 304 may be configured to enable exchange of data between the data processing circuitry 206 and the backup memory 210. Moreover, the data management module 304 may be configured to enable exchange of data between the data processing circuitry 206 and the memory unit 212. The data management module 304 may further be configured to enable exchange of data and / or instructions between various other modules of the data processing circuitry 206. Furthermore, the data management module 304 may be configured to enable exchange of data between various modules of the data processing circuitry 206 and the application server 010 via the network 020.

[0063] The data management module 304 may be configured to access application data from the memory unit 212. Moreover, the data management module 304 may be configured to identify critical data from the application data corresponding to the write operation on the computer application. In some aspects of the present disclosure, the critical data may be associated with the initialization of the computer application. Specifically, the critical data may be associated with a bootup of the computer application that enables the system 100 to connect with the application server 010 to perform an application specific task(s).

[0064] In an embodiment, the data management module 304 is configured to generate a backup of the data file including application data, and store, using the backup module 308, the generated data file in the backup memory 210 prior to performing the write operation. The data management module 304 may generate the backup of data file periodically or prior to a modification of the data file. In a nonlimiting example, when the application initiates a write request to add new content to a file such as the data file, the detection module 302 identifies the request and signals the data management module 304 indicating the detection of the write request. Then, the data management module 304 accesses the current version of thedata file from the memory unit 212 and identifies critical data relevant to the application's operation, for example, user preferences or session history. Before executing the write operation, the data management module 304, in coordination with the backup module 308, creates a copy of the data file and stores the copy of the data file in the backup memory 210 as a backup data file.

[0065] The monitoring module 306 is configured to monitor the execution of the write operation in real time and detect abnormal events that may indicate the interruption, failure, or the abnormal termination of the write operation. For instance, the monitoring module 306 may be configured to monitor low-level I / O completion events, storage subsystem responses, process or thread status, exception signals, or container / hypervisor lifecycle events.

[0066] Upon the storage of the data file as the backup in the backup memory 210, the processing module 310 may be configured to execute, using the data write module 310-1, the write operation on the application based on the request. Meanwhile, the comparator module 310-2 of the processing module 310 may be configured to evaluate an execution of the write operation. The comparator module 310-2, based on the evaluation of the execution of the write operation, may be configured to determine whether the write operation is interrupted. In a non-limiting example, the comparator module 310-2 may check whether the write operation on the application is disrupted due to conditions such as a power failure at the source, an overburdened data processing circuitry 206, or similar system-level anomalies. This determination may be made by monitoring system signals, error logs, or execution flags that indicate incomplete or failed write transactions. For instance, the comparator module 310-2 may analyze the absence of a completion acknowledgment from the file system, detect abrupt termination of the application process, or identify inconsistencies in the write buffers or the transaction logs.

[0067] For a scenario, when the comparator module 310-2 determines that the write operation is interrupted, the comparator module 310-2 may be configured to determine whether the critical data is corrupted or intact. Based on the determination that the critical data is corrupted, the comparator module 310-2 may be configuredto restore the backup of the data file from the backup memory 210 via the data management module 304. The comparator module 310-2 may further be configured to generate a re-initiation trigger for the data write module 310-1. The re-initiation trigger enables the data write module 310-1 to resume the write operation using the restored backup of the data file. The backup of the data file may be fetched from the backup memory 210 via the data management module 304 and the write operation is resumed utilizing the data file fetched from the backup memory 210 in the event of an interruption or abnormal termination during the write operation. Thus, the processing module 310 restores the original data file and resume the write operation without data loss or corruption.

[0068] The comparator module 310-2 may further be configured to determine a completion of the write operation on the application. Moreover, the comparator module 310-2 may be configured to generate a completion trigger for the notification generation module 312 upon the determination of the completion of the write operation on the application.

[0069] Based on the completion trigger, the notification generation module 312 may be configured to generate the completion notification for the application trigger module 310-3. The completion notification indicates the completion of the write operation on the application. In receipt of the completion notification, the application trigger module 310-3 may be configured generate to an initiation trigger for the application server 010, that enables the application server 010 to host the application. In a non-limiting example, the initiation trigger may be control signal sent by the application trigger module 310-3 to the notification generation module 312 to generate the completion notification indicating the completion of the write operation.

[0070] In one or more embodiments, the backup mechanism is applicable in singlethreaded, multi -threaded, and multi-process environments, where concurrent write operations are managed through synchronization techniques to maintain the data integrity.

[0071] Accordingly, in one or more embodiments, the data processing circuitry 206 is configured to handle simultaneous write operations in the single threaded, multithreaded, or the multi-process environments. Further, the data processing circuitry 206 is configured to manage backup of the data files for handling the simultaneous write operations and to restore the write operations across concurrent write requests to multiple application files. For instance, the processing module 310 of the data processing circuitry 206 ensures that each write operation is independently monitored and backed up to prevent race conditions and ensure the data integrity. In particular, the processing module 310 may utilize the synchronization techniques, such as file-level locking or transactional write buffers, to avoid data corruption during concurrent access of the data files. The examples of the synchronization techniques are merely exemplary and are not intended to limit the scope of the present disclosure.

[0072] Various modules of the data processing circuitry 206 are presented to illustrate the functionality driven by the system 100. It will be apparent to a person having ordinary skill in the art that various modules in the data processing circuitry 206 are for illustrative purposes and not limited to any specific combination of hardware circuitry and / or software.

[0073] The backup memory 210 may be configured to store the backup data of the computer application (i.e., a backup of the critical data of the computer application required by the application console 208 to initialize the computer application). In some aspects of the present disclosure, the backup memory 210 may store the backup data in the form of critical data object(s) in critical data repository 318. The memory unit 212 may be configured to store the data associated with the system 100 (including the application data associated with the computer application). The memory unit 212 may further be configured to store instruction(s) for various tasks performed by the various components of the system 100. In some aspects of the present disclosure, the memory unit 212 may be configured to store the instructions as instruction object(s) in instruction object repository 320 and the data of the system 100 in the form of data objects in the data object repository 322.

[0074] Although FIG. 3 illustrates one example of the subsystem 300 that includes critical components of the system for executing the write operation(s) on the computer application, various changes may be made to FIG. 3, without deviating from the scope of the present disclosure. Further, the subsystem 300 may include any number of components in addition to those shown in FIG.3 without deviating from the scope of the present disclosure. Further, various components in FIG. 3 may be combined, further subdivided, or omitted and additional components may be added according to particular needs.

[0075] FIG. 4 illustrates a brief process flow diagram depicting a method 400 for maintaining the data integrity during the write operations on the application of the computing resource 010, in accordance with an embodiment of the present invention. Although method 400 shows example blocks 402 to 414, in some embodiments, the method 400 may include additional steps, fewer steps or steps in different order than those depicted in FIG. 4.

[0076] At block 402, the data processing circuitry 206 detects the request from the application server 010 to perform the write operation the data file associated with the application. The request enables the processing module 310 of the data processing circuitry 206 to execute the write operation on the application installed at the application console 208.

[0077] At block 404, prior to allowing the write operation to proceed to completion the data management module 304, the data management module generates and stores a backup of target data file (i.e., application data) in the backup memory 210. The backup of the data file may be a full copy, incremental snapshot, or journal entry created such that a guaranteed recovery point exists. The backup of the data file is stored in a format at a location within the backup memory 210 that enables subsequent restore operations with optimal source for recovering the application state.

[0078] At block 406, the write operation is permitted for execution, the processing module executes the write operation. Meanwhile, the monitoring module 306concurrently monitors the execution of the write operation to detect interruptions, I / O errors, or abnormal termination events. The monitoring module 306 captures relevant telemetry including write completion acknowledgements, I / O error codes, process exit codes, and storage subsystem status.

[0079] At block 408, if the monitoring module 306 detects or determines that an interruption or abnormal termination such as, but not limited to, a process crash, a power failure, a device error, or any failure has occurred that is preventing the write operation from completion, the monitoring module 306 generates an interruption indication to the processing module 310 and the flow of the method 400 proceed to block 410. At this point, the system 100 transitions from a normal write operation state into a write operation recovery decision state.

[0080] At the block 410, based on the interruption indication, the processing module 310 determines whether the data file is corrupted or intact. Here, the term “intact” data file, as determined by the processing module (310), denotes a state where contents of the data file conform to expected data integrity checks. If the processing module 310 determines that the data file is corrupted (i.e., result of the determination is yes), the processing module 310 restores the data file from the backup memory 210 created at the block 404 using a data restoration method. A non-limiting example of such a restoration method may involve replacing the corrupted file with a previously stored backup version. The processing module 310 may first verify an integrity of the backup data file using checksum validation or the metadata comparison to ensure reliability of the backup data file. Based on the validation, the corrupted file in the memory unit 212 may be overwritten, deleted, or replaced with the help of backup copy stored in the backup memory 210. In some implementations, the restoration method may include transactional recovery steps, wherein the processing module 310 may roll back to a known stable state recorded prior to the execution of the write operation. Such restoration method may involve restoring associated metadata, file pointers, or application-specific state information to ensure data consistency.

[0081] Further, in a non-limiting example embodiment, to perform the determination at block 410, the comparator module 310-2 of the processing module 310 may analyze the file’s checksum and compare the file’s checksum against a previously stored reference value to detect any discrepancies. Additionally, the comparator module 310-2 may verify a consistency of metadata associated with the data file, such as timestamps, file size, and access flags, to identify anomalies indicative of incomplete or erroneous write operation. Additionally, the comparator module 310-2 may also apply application-specific constraints or data invariants, such as structural rules or validations defined by the application, to assess logical integrity of the contents of the data file. These checks performed by the comparator module 310-2 collectively helps in enabling the system 100 to ascertain whether the data file conforms to expected standards and can be safely used without recovery.

[0082] Furthermore, if the file is intact, the processing module 310 may retry the write operation after restoring the backup of the data file from the backup memory 210. Further, in an example embodiment, if the retry of the write operation using the backup of the data file is failed or not completed, and the file remains intact even after utilizing the backup of the data file for performing the write operation, then in such case the notification generation module 312 may send an alert to the application console 208 to alert the user regarding any persistent error or may provide indication to restart the system 100.

[0083] Further, upon restoration of the data file, the processing module 310 resumes the write operation of the application data (at block 412). Furthermore, the monitoring module 306 concurrently monitors the write operation for successful completion and again the write operation is checked for completion at block 408, until a result of the determination of the block 408 becomes No. when it is determined that no interruption or intact has occurred, a completion notification (at block 412). Based on the completion, an initiation trigger is generated for the computing resource (i.e., the application server) at block 414 to enable or resume hosting of the application using the restored and verified backup of the data file.

[0084] Although FIG. 4 illustrates one example of the method 400, various changes may be made to FIG. 4. Further, the method 400 may be implemented through any number of structural components in addition to those shown in FIGS. 2 and 3, without deviating from the scope of the present disclosure. Furthermore, various components involved in the operations as presented through in FIG. 4 may be combined, further subdivided, or omitted and additional components may be added according to particular needs.

[0085] FIG. 5 illustrates a detailed process flow diagram depicting a method 500 for maintaining the data integrity during the write operations on the application of the computing resource, in accordance with an embodiment of the present invention. Although the method 500 shows example blocks 502 to 518, in some embodiments, the method 500 may include additional steps, fewer steps or steps in different order than those depicted in FIG. 5. The flow of the method starts at block 502.

[0086] At the block 502, the detection module 302 detects the request from the application server 010 to perform the write operation the data file associated with the application.

[0087] At block 504, the data management module 304 identifies, based on the write request, the application data associated with the initialization of the application (i.e., system data or files, which are essential for the initial boot up of the application and are crucial for its working) and generates the backup data corresponding to the application data.

[0088] At block 506, the data management module 304 stores the generated backup data in the backup memory 210.

[0089] At block 508, the processing module 310 initializes and execute the write operation on the application using the application data.

[0090] At block 510, the monitoring module 306 currently evaluates and monitor the execution of the write operation on the application when the write operation is executed by the processing module 310.

[0091] At block 512, the processing module 310 may determine whether the write operation is interrupted or completed successfully based a result of the evaluation of the write operation performed by the monitoring module 306. When the processing module 310 determines that the write operation is interrupted (i.e., result of determination is yes), the method 500 proceeds to block 514. Else, when the processing module determines that the write operation is completed, the method 500 proceeds to block 518.

[0092] At block 514, the processing module 310 determines whether the critical data is corrupted or intact after the interruption. When the processing module 310 determines that the application data is corrupted, the method 500 proceeds to block 516. Else, when the processing module 310 determines that the application data is intact, the method 500 falls back to block 508.

[0093] At block 516, the processing module 310 retrieves the backup data from the backup memory 210 to re-initiate the write operation on the application. Moreover, upon re-initiation of the write operation, the method 500 falls back to block 508 to perform the steps presented hereinabove in the iterative manner, unless the write operation on the computer application is completed.

[0094] At block 518, the processing module 310 may determine the completion of the write operation on the application. In some aspects of the present disclosure, the processing module 310 may generate the completion notification that indicates the completion of the write operation on the application. Furthermore, the processing module 310 generates, based on the completion notification, the initiation trigger for the application server 010 to enable the application server 010 to host the computer application.

[0095] FIG.6 illustrates an exemplary computer system 600 in which or with which embodiments of the present disclosure may be implemented. As shown in FIG. 6, the computer system 600 may include a bus 610, a processing unit 620, a main memory 630, a Read Only Memory (ROM) 640, a storage device 650, an input device 660, an output device 670, and a communication interface 680. The bus 610T1may include a path that permits communication among the other components of the computer system 600.

[0096] The processing unit 620 may include one or more processors or microprocessors which may interpret and execute stored instructions associated with one or more processes, or processing logic that implements the one or more processes. For example, the processing unit 620 may include, but is not limited to, programmable logic such as Field Programmable Gate Arrays (FPGAs) or accelerators. The processing unit 620 may include software, hardware, or a combination of software and hardware for executing the processes described herein.

[0097] The main memory 630 may include a random-access memory (RAM) or another type of dynamic storage device that may store information and, in some implementations, instructions for execution by the processing unit 620. The ROM 640 may include a ROM device or another type of static storage device (e.g., Electrically Erasable Programmable ROM (EEPROM)) that may store static information and, in some implementations, instructions for use by the processing unit 620.

[0098] The storage device 650 may include a magnetic, an optical, and / or a solid state (e.g., flash drive) recording medium and its corresponding drive. The main memory 630, the ROM 640 and the storage device 650 may each be referred to herein as a “non-transitory computer-readable medium” or a “non-transitory storage medium.” The process / methods set forth herein can be implemented as instructions that are stored in the main memory 630, the ROM 640 and / or the storage device 650 for execution by the processing unit 620.

[0099] The input device 660 may include one or more devices that permit an operator to input information to the computer system 600, such as, for example, a keypad or a keyboard, a display with a touch sensitive panel, voice recognition and / or biometric mechanisms etc. The output device 670 may include one or more devices that output information to the operator, including a display, a speaker, etc. The input device 660 and the output device 670 may, in some implementations, beimplemented as a user interface (UI) that displays UI information and which receives user input via the UI. The communication interface 680 may include one or more transceivers that enable the computer system 600 to communicate with other devices and / or systems. For example, the communication interface 680 may include one or more wired or wireless transceivers for communicating via the network.

[0100] The computer system 600 may perform certain operations or processes, as may be described herein. The computer system 600 may perform these operations in response to the processing unit 620 executing software instructions contained in a computer-readable medium, such as the memory 630 (also referred to as “main memory 600”). The “computer-readable medium” may be defined as a physical or logical memory device. The logical memory device may include memory space within a single physical memory device or spread across multiple physical memory devices. The software instructions may be read into the main memory 630 from another computer-readable medium, such as the storage device 650, or from another device via the communication interface 680. The software instructions contained in the main memory 630 may cause the processing unit 620 to perform the operations or processes, as described herein. Alternatively, hardwired circuitry (e.g., logic hardware) may be used in place of, or in combination with, software instructions to implement the operations or processes, as described herein. Thus, exemplary implementations are not limited to any specific combination of hardware circuitry and software.

[0101] The configuration of components of the computer system 600 illustrated in FIG. 6 is for illustrative purposes only. Other configurations may be implemented. Therefore, the computer system 600 may include additional, fewer and / or different components, arranged in a different configuration, than depicted in FIG. 6.

[0102] The configuration of components of the computer system 600 illustrated in FIG. 6 is for illustrative purposes only. Other configurations may be implemented. Therefore, the computer system 600 may include additional, fewer and / or different components, arranged in a different configuration, than depicted in FIG. 6.

[0103] Now, referring to the technical abilities and advantageous effect of the present disclosure, the application when experiences an execution failure can be restored to normal configuration without any manual intervention. Another advantageous effect of the present disclosure is the reduction of extra space used since the backup created for the file is at application level and not at Operating System (OS) or Firmware level.

[0104] Typically, the execution of the computer application requires an immediate backup of the critical data to boot up, which is not possible if the backup is present on a distant server. High latency in data acquisition from the distant server (or data center) results in a crash of computer application that may affect a productivity and throughput of various operations associated with the computer application.

[0105] The system 100 by way of the method 400 and 500 provides a feasible solution for the abovementioned problem by identifying critical data for write operations on the computer application and storing the critical data locally, that can be accessed by the system in case of a failure. The local storage of the backup data corresponding to the critical data of the computer application enables an automated re-initiation of the write operation and significantly reduces the latency for initiating the computer application.

[0106] Those skilled in the art will appreciate that the methodology described herein in the present disclosure may be carried out in other specific ways than those set forth herein in the above disclosed embodiments without departing from essential characteristics and features of the present invention. The above-described embodiments are therefore to be construed in all aspects as illustrative and not restrictive.

[0107] The drawings and the forgoing description give examples of embodiments. Those skilled in the art will appreciate that one or more of the described elements may well be combined into a single functional element. Alternatively, certain elements may be split into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, orders ofprocesses described herein may be changed and are not limited to the manner described herein. Any combination of the above features and functionalities may be used in accordance with one or more embodiments.

[0108] In the present disclosure, each of the embodiments has been described with reference to numerous specific details which may vary from embodiment to embodiment. The foregoing description of the specific embodiments disclosed herein may reveal the general nature of the embodiments herein that others may, by applying current knowledge, readily modify and / or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications are intended to be comprehended within the meaning of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and is not limited in scope.LIST OF REFERENCE NUMERALS

[0109] The following list is provided for convenience and in support of the drawing figures and as part of the text of the specification, which describe innovations by reference to multiple items. Items not listed here may nonetheless be part of a given embodiment. For better legibility of the text, a given reference number is recited near some, but not all, recitations of the referenced item in the text. The same reference number may be used with reference to different examples or different instances of a given item. The list of reference numerals is:001 - Operational or computing environment of system100 - System020 - Network010 - Computing resource202 - User interface204 - Network interface206 - Data processing circuitry208 - Application console210 - Backup memory212 - Memory unit302 - Detection module304 - Data management module306 - Monitoring module308 - Backup module310 - Processing module310-1 - Data write module310-2 - Comparator module310-3 - Application trigger module312 - Notification generation Module314 - First communication bus316 - Second communication bus318 - Critical data repository320 - Instruction objects repository322 - Data objects repository400 - Process flow diagram depicting a method for maintaining data integrity during write operations in a computing environment500 - Detailed process flow diagram of a method for maintaining data integrity during write operations in a computing environment600 - Computer system610 - Bus620 - Processing unit630 - Main memory640 - ROM650 - Storage device660 - Input device670 - Output device680 - Communication interface

Claims

CLAIMSWhat is claimed is:

1. A method (400, 500) for maintaining data integrity during write operations in a computing environment (001), the method (400, 500) comprising:detecting, by a detection module (302), a request from a computing resource (010) to perform a write operation on a data file associated with an application; generating and storing, by a data management module (304), a backup of the data file including application data in a backup memory (210) prior to performing the write operation;monitoring, by a monitoring module (306), an execution of the write operation to detect an interruption or abnormal termination during the execution of the write operation;determining, by a processing module (310) based on the detection of the interruption or the abnormal termination, whether the data file is corrupted or intact;restoring, by the processing module (310) based on the determination that the data file is corrupted, the data file from the backup memory (210); and resuming, by the processing module (310), the write operation of the application using the restored the data file.

2. The method (400, 500) as claimed in claim 1, comprising retrying, by the processing module (310) based on the determination that the data file is intact, the write operation after restoring the backup of the data file from the backup memory (210).

3. The method (400, 500) as claimed in claim 1, wherein the generation of the backup is performed periodically or prior to modification of the data file.

4. The method (400, 500) as claimed in claim 3, comprising:determining, by the processing module (310), a completion of the write operation on the data file; andgenerating, by a notification generation module (312), a completion notification indicating the completion of the write operation on the data file.

5. The method (400, 500) as claimed in claim 4, comprising generating, by the processing module (310) based on the completion notification, an initiation trigger for the computing resource (010), wherein the initiation trigger enables the computing resource (010) to host the application.

6. A system (100) for maintaining data integrity during write operations in a computing environment, the system (100) comprising:a backup memory (210); anddata processing circuitry (206) coupled to the backup memory (210), wherein the data processing circuitry (206) comprising:a detection module (302) configured to detect a request from a computing resource (010) to perform a write operation on a data file associated with an application;a data management module (304) configured to generate and store a backup of the data file including application data in the backup memory (210) prior to performing the write operation;a monitoring module (306) configured to monitor execution of the write operation to detect an interruption or abnormal termination during the execution of the write operation; anda processing module (310) configured to:determine, based on the detection of the interruption or the abnormal termination, whether the data file is corrupted or intact;restore, based on the determination that the data file is corrupted, the data file from the backup memory (210); and resume operation of the application using the restored data file.

7. The system (100) as claimed in claim 6, wherein the processing module (310) is further configured to automatically retry, based on the determination that the data file is intact, the write operation after restoring the backup of the data file from the backup memory (210).

8. The system (100) as claimed in claim 6, wherein the generation of the backup is performed periodically or prior to modification of the data file.

9. The system (100) as claimed in claim 8, whereinthe processing module (310) is further configured to determine a completion of the write operation on the data file, andthe system (100) further comprises a notification generation module (312) configured to generate a completion notification indicating the completion of the write operation on the data file.

10. The system (100) as claimed in claim 9, wherein the processing module (310) is further configured to generate, based on the completion notification, an initiation trigger for the computing resource, wherein the initiation trigger enables the computing resource (010) to host the application.

11. A computer program product (600) for maintaining data integrity during write operations in a computing environment (001), the computer program product (600) comprising computer-executable instructions that are stored on a non-transitory computer-readable medium and that, when executed by at least one processor performs operations comprising:detecting a request from a computing resource to perform a write operation on a data file associated with an application;generating and storing a backup of the data file including application data in a backup memory (210) prior to performing the write operation;monitoring an execution of the write operation to detect an interruption or abnormal termination during the execution of the write operation;determining, based on the detection of the interruption or the abnormal termination, whether the data file is corrupted or intact;restoring, based on the determination that the data file is corrupted, the data file from the backup memory (210); andresuming operation of the application using the restored the data file.