Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
This repository was archived by the owner on Dec 1, 2024. It is now read-only.
/rocksdbPublic archive

Discontinued. Pure C++ Node.js RocksDB binding. An abstract-leveldown compliant store.

License

NotificationsYou must be signed in to change notification settings

Level/rocksdb

Repository files navigation

This package has been discontinued. Please seeFrequently Asked Questions.

Table of Contents

Click to expand

Introduction

This module closely followsleveldown and implements the same API. The difference is thatleveldown is a binding forLevelDB whilerocksdb is a binding forRocksDB, Facebook's fork of LevelDB.

It isstrongly recommended that you uselevelup in preference torocksdb unless you have measurable performance reasons to do so.levelup is optimized for usability and safety. Although we are working to improve the safety of therocksdb interface it is still easy to crash your Node process if you don't do things in just the right way.

If you are upgrading: please seeUPGRADING.md.

Supported Platforms

We aim to supportat least Active LTS and Current Node.js releases, Electron 5.0.0, as well as any future Node.js and Electron releases thanks toN-API. The minimum node version forrocksdb is10.12.0.

Therocksdb npm package ships with prebuilt binaries for popular 64-bit platforms and is known to work on:

  • Linux (including ARM platforms such as Raspberry Pi and Kindle)
  • Mac OS
  • Solaris (SmartOS & Nodejitsu)
  • FreeBSD
  • Windows

When installingrocksdb,node-gyp-build will check if a compatible binary exists and fallback to a compile step if it doesn't. In that case you'll need avalidnode-gyp installation.

If you don't want to use the prebuilt binary for the platform you are installing on, specify the--build-from-source flag when you install. If you are working onrocksdb itself and want to re-compile the C++ code it's enough to donpm install.

API

Please refer toleveldown for API documentation. Thedb.open(options, callback) method ofrocksdb has a few additional options:

  • readOnly (boolean, defaultfalse): open database in read-only mode.
  • infoLogLevel (string, defaultnull): verbosity of info log. One of'debug','info','warn','error','fatal','header' ornull (disable).

Contributing

Level/rocksdb is anOPEN Open Source Project. This means that:

Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.

See theContribution Guide for more details.

Git Submodules

This project uses Git Submodules. This means that you should clone it recursively if you're planning on working on it:

$ git clone --recurse-submodules https://github.com/Level/rocksdb.git

Alternatively, you can initialize submodules after cloning:

$ git submodule update --init --recursive

Publishing

  1. Increment the version:npm version ..
  2. Push to GitHub:git push --follow-tags
  3. Wait for CI to complete
  4. Download prebuilds into./prebuilds:npm run download-prebuilds
  5. Optionally verify loading a prebuild:npm run test-prebuild
  6. Optionally verify which files npm will include:canadian-pub
  7. Finally:npm publish

Donate

Support us with a monthly donation onOpen Collective and help us continue our work.

License

MIT

rocksdb builds on the excellent work of the LevelDB and Snappy teams from Google and additional contributors to the LevelDB fork by Facebook. LevelDB and Snappy are both issued under theNew BSD License. A large portion ofrocksdb Windows support comes from theWindows LevelDB port (archived) byKrzysztof Kowalczyk (@kjk). If you're usingrocksdb on Windows, you should give him your thanks!


[8]ページ先頭

©2009-2025 Movatter.jp