Documentation ¶
Index ¶
- Constants
- Variables
- type Batch
- type Database
- type LDBDatabase
- func (db *LDBDatabase) Close()
- func (db *LDBDatabase) Delete(key []byte) error
- func (db *LDBDatabase) Get(key []byte) ([]byte, error)
- func (db *LDBDatabase) Get_s(key []byte) ([]byte, error)
- func (db *LDBDatabase) Has(key []byte) (bool, error)
- func (db *LDBDatabase) LDB() *leveldb.DB
- func (db *LDBDatabase) NewBatch() Batch
- func (db *LDBDatabase) NewIterator() iterator.Iterator
- func (db *LDBDatabase) Path() string
- func (db *LDBDatabase) Put(key []byte, value []byte) error
- func (db *LDBDatabase) Put_s(key []byte, value []byte) error
- type MemDatabase
- func (db *MemDatabase) Close()
- func (db *MemDatabase) Delete(key []byte) error
- func (db *MemDatabase) Get(key []byte) ([]byte, error)
- func (db *MemDatabase) Get_s(key []byte) ([]byte, error)
- func (db *MemDatabase) Has(key []byte) (bool, error)
- func (db *MemDatabase) Keys() [][]byte
- func (db *MemDatabase) NewBatch() Batch
- func (db *MemDatabase) Put(key []byte, value []byte) error
- func (db *MemDatabase) Put_s(key []byte, value []byte) error
- type Putter
Constants ¶
View Source
const IdealBatchSize = 100 * 1024
Code using batches should try to add this much data to the batch. The value was determined empirically.
Variables ¶
View Source
var ( I int Size int )
Get returns the given key if it's present.
Functions ¶
This section is empty.
Types ¶
type Batch ¶
type Batch interface { Putter ValueSize() int // amount of data in the batch Write() error Write_s() error }
Batch is a write-only database that commits changes to its host database when Write is called. Batch cannot be used concurrently. 实现类型为ldbBatch
func NewTableBatch ¶
NewTableBatch returns a Batch object which prefixes all keys with a given string.
type Database ¶
type Database interface { Putter //Put_s(key []byte) ([]byte, error) Get(key []byte) ([]byte, error) Get_s(key []byte) ([]byte, error) Has(key []byte) (bool, error) Delete(key []byte) error Close() NewBatch() Batch }
Database wraps all database operations. All methods are safe for concurrent use. 实现类型为LDBDatabase
type LDBDatabase ¶
type LDBDatabase struct {
// contains filtered or unexported fields
}
func NewLDBDatabase ¶
func NewLDBDatabase(file string, cache int, handles int) (*LDBDatabase, error)
func NewLDBDatabase2 ¶
func NewLDBDatabase2(file string, cache int, handles int) (*LDBDatabase, error)
func (*LDBDatabase) Close ¶
func (db *LDBDatabase) Close()
func (*LDBDatabase) Delete ¶
func (db *LDBDatabase) Delete(key []byte) error
Delete deletes the key from the queue and database
func (*LDBDatabase) LDB ¶
func (db *LDBDatabase) LDB() *leveldb.DB
func (*LDBDatabase) NewBatch ¶
func (db *LDBDatabase) NewBatch() Batch
func (*LDBDatabase) NewIterator ¶
func (db *LDBDatabase) NewIterator() iterator.Iterator
func (*LDBDatabase) Path ¶
func (db *LDBDatabase) Path() string
type MemDatabase ¶ added in v1.0.2
type MemDatabase struct {
// contains filtered or unexported fields
}
* This is a test memory database. Do not use for any production it does not get persisted
func NewMemDatabase ¶ added in v1.0.2
func NewMemDatabase() (*MemDatabase, error)
func (*MemDatabase) Close ¶ added in v1.0.2
func (db *MemDatabase) Close()
func (*MemDatabase) Delete ¶ added in v1.0.2
func (db *MemDatabase) Delete(key []byte) error
func (*MemDatabase) Get_s ¶ added in v1.0.2
func (db *MemDatabase) Get_s(key []byte) ([]byte, error)
func (*MemDatabase) Keys ¶ added in v1.0.2
func (db *MemDatabase) Keys() [][]byte
func (*MemDatabase) NewBatch ¶ added in v1.0.2
func (db *MemDatabase) NewBatch() Batch
Click to show internal directories.
Click to hide internal directories.