摘要 |
In one embodiment, a system for implementing a distributed, transactional key-value store is provided. The system includes a set of nodes, where each node is communicatively coupled with one or more storage devices storing a set of data log files, and where each data log file including key-value pairs for a key namespace. Each node is configured to execute, using a transaction log file specific to the node, transactions for modifying or retrieving key-value pairs in the set of data log files, where the transaction log file includes state information for the transactions. The transactions are executed in a manner that ensures the atomicity and durability of each transaction. |
主权项 |
1. A method performed by a node in a set of nodes, the set of nodes implementing a distributed key-value store, the method comprising:
receiving, by the node, a search request from a user, the search request including a search expression and a target key namespace; selecting, by the node, one or more data log files from a plurality of data log files in response to the search request, wherein each data log file in the plurality of data log files stores key-value pairs for a key namespace of the distributed key-value store, and wherein the selected one or more data log files store key-value pairs for the target key namespace; searching, by the node, the selected one or more data log files for keys or key-value pairs that satisfy the search expression; and returning, by the node, the keys or key-value pairs to the user. |