Skip to content
Snippets Groups Projects
Commit b417a564 authored by hofmockel's avatar hofmockel
Browse files

A little bit more text on the tutorial

parent 47da4653
No related branches found
No related tags found
No related merge requests found
...@@ -165,8 +165,13 @@ MergeOperator ...@@ -165,8 +165,13 @@ MergeOperator
============= =============
Merge operators are useful for efficient read-modify-write operations. Merge operators are useful for efficient read-modify-write operations.
For more details see `Merge Operator <https://github.com/facebook/rocksdb/wiki/Merge-Operator>`_
The simple Associative merge :: A python merge operator must either implement the
:py:class:`rocksdb.interfaces.AssociativeMergeOperator` or
:py:class:`rocksdb.interfaces.MergeOperator` interface.
The following example python merge operator implements a counter ::
class AssocCounter(rocksdb.interfaces.AssociativeMergeOperator): class AssocCounter(rocksdb.interfaces.AssociativeMergeOperator):
def merge(self, key, existing_value, value): def merge(self, key, existing_value, value):
...@@ -195,8 +200,10 @@ PrefixExtractor ...@@ -195,8 +200,10 @@ PrefixExtractor
According to `Prefix API <https://github.com/facebook/rocksdb/wiki/Proposal-for-prefix-API>`_ According to `Prefix API <https://github.com/facebook/rocksdb/wiki/Proposal-for-prefix-API>`_
a prefix_extractor can reduce IO for scans within a prefix range. a prefix_extractor can reduce IO for scans within a prefix range.
The following example presents a prefix extractor of a static size. So always A python prefix extractor must implement the :py:class:`rocksdb.interfaces.SliceTransform` interface.
the first 5 bytes are used as the prefix ::
The following example presents a prefix extractor of a static size.
So always the first 5 bytes are used as the prefix ::
class StaticPrefix(rocksdb.interfaces.SliceTransform): class StaticPrefix(rocksdb.interfaces.SliceTransform):
def name(self): def name(self):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment