Abstract:
Disclosed are a method and apparatus for reading data in a distributed file system in which a client and a server are separated. In the method and apparatus, a prefetching operation is performed to provide a continuous read function with high performance even in the distributed file system so that an optimum continuous read function of a local file system within the client may be effectively supported when an application program of the client requests continuous reading on a file (or chunk).
Abstract:
A method for managing file changes is provided. A file editor is able to view if the file he is submitting for review, is already under review with any reviewer. A reviewer would be informed that another editor has edited the same file and has submitted his changes for review. Editors would be informed of all reviewer comments if there are multiple reviewers on one file.
Abstract:
A client device accesses a shared data system and begins moving data from one location to another. The client device generates a tombstone object that indicates that includes metadata indicating that the data has been moved. When another client accesses the data at the old location, it encounters the tombstone and begins accessing the data at the new location. If the data has not already been completely moved to the new location, the second client to access the data assists in transferring the data to the new location.
Abstract:
The present invention provides a method for constructing an NVRAM-based efficient file system, including the following steps: S1. determining a file operation type of the file system, where the file operation type includes a file read operation, a non-persistent file write operation, and a persistent file write operation; and S2. if the file operation type is a non-persistent file write operation, writing, by the file system, content of the non-persistent file write operation to a dynamic random access memory DRAM, updating a corresponding DRAM cache block index, and flushing, at a preset time point, the content of the non-persistent file write operation back to a non-volatile random access memory NVRAM asynchronously, or otherwise, copying, by the file system, related data directly between the NVRAM/DRAM and the user buffer. The method of the present invention can not only avoid additional copies and overheads of conventional software layers, but also improve write performance of the NVRAM file system by fully utilizing a characteristic of high write performance of the DRAM, thereby improving overall performance of the system.
Abstract:
Example methods and apparatus to manage object locks are disclosed. A disclosed example method includes intercepting a processor request to apply the lock on the object, identifying a performance history of the object based on a number of instances of contention, reducing computing resources of the processor by, when the number of instances is below a threshold value, generating a lock bypass for the object to cause speculative execution of target code within the object, and preventing speculative execution by applying the lock on the object when the number of instances is above the threshold value.
Abstract:
A method for managing file changes is provided. A file editor is able to view if the file he is submitting for review, is already under review with any reviewer. A reviewer would be informed that another editor has edited the same file and has submitted his changes for review. Editors would be informed of all reviewer comments if there are multiple reviewers on one file.
Abstract:
Limiting the number of concurrent requests in a database system. Arranging requests to be handled by the database system in at least one queue. Defining a maximum value (SS) of concurrent requests corresponding to the at least one queue. Monitoring at least one queue utilization parameter corresponding to the at least one queue and calculating a performance value based on the at least one queue utilization parameter. Adapting the maximum value (SS) of concurrent requests of the at least one queue dynamically based on the performance value (PF) in order to improve system performance. Limiting the number of concurrent requests of the at least one queue dynamically based on the dynamically adapted maximum value (SS).
Abstract:
Limiting the number of concurrent requests in a database system. Arranging requests to be handled by the database system in at least one queue. Defining a maximum value (SS) of concurrent requests corresponding to the at least one queue. Monitoring at least one queue utilization parameter corresponding to the at least one queue and calculating a performance value based on the at least one queue utilization parameter. Adapting the maximum value (SS) of concurrent requests of the at least one queue dynamically based on the performance value (PF) in order to improve system performance. Limiting the number of concurrent requests of the at least one queue dynamically based on the dynamically adapted maximum value (SS).
Abstract:
A method of searching shared files stored on a shared storage includes providing a search functionality in the shared storage having a set of search indexes to perform a search based on a search term; providing an event stream of update events associated with the shared files in the shared storage; processing the event stream to generate a processed event stream; and responding to update events in the processed event stream by indexing files referenced in the update events in the processed event stream where the indexing is performed to maintain a predetermined level of quality of service at the shared storage.
Abstract:
Embodiments provide methods and systems for encoding and decoding variable-length data, which may include methods for encoding and decoding search engine posting lists. Embodiments may include different encoding formats including group unary, packed unary, and/or packed binary formats. Some embodiments may utilize single instruction multiple data (SIMD) instructions that may perform a parallel shuffle operation on encoded data as part of the decoding processes. Some embodiments may utilize lookup tables to determine shuffle sequences and/or masks and/or shifts to be utilized in the decoding processes. Some embodiments may utilize hybrid formats.