Skip to main content

RocksDB - Delete data

Trong RocksDB, Delete được sử dụng để xóa một key và giá trị tương ứng khỏi RocksDB. Dưới đây là các ví dụ về cách sử dụng Delete trong RocksDB bằng Java và C++.

Java:

import org.rocksdb.*;

public class RocksDBDeleteExample {
    public static void main(String[] args) {
        RocksDB.loadLibrary();
        try (final Options options = new Options().setCreateIfMissing(true);
             final RocksDB db = RocksDB.open(options, "/path/to/database")) {
            byte[] key = "myKey".getBytes();
            db.delete(key);
        } catch (RocksDBException e) {
            // Xử lý lỗi khi xóa key không thành công
        }
    }
}

C++:

#include "rocksdb/db.h"

int main() {
    rocksdb::DB* db;
    rocksdb::Options options;
    options.create_if_missing = true;
    rocksdb::Status status = rocksdb::DB::Open(options, "/path/to/database", &db);
    if (status.ok()) {
        rocksdb::WriteOptions writeOptions;
        rocksdb::Slice key = "myKey";
        rocksdb::Status delete_status = db->Delete(writeOptions, key);
        if (!delete_status.ok()) {
            // Xử lý lỗi khi xóa key không thành công
        }
    } else {
        // Xử lý lỗi khi mở database không thành công
    }
    delete db;
    return 0;
}

Trong cả hai ví dụ trên, chúng ta tạo một RocksDB database và sau đó sử dụng Delete để xóa một key và giá trị tương ứng khỏi database. Đường dẫn đến database và giá trị key có thể được tùy chỉnh theo nhu cầu của bạn.

Lưu ý rằng Delete là một thao tác ghi đồng bộ trong RocksDB. Điều này có nghĩa là thao tác Delete sẽ chờ cho đến khi dữ liệu xóa thực sự được ghi vào ổ đĩa trước khi trả về.

Đó là một số thông tin cơ bản về cách sử dụng Delete trong RocksDB. Bạn có thể tìm hiểu thêm về các tùy chọn và tính năng khác của RocksDB trong tài liệu chi tiết của nó.