blob: 432d606b3a84c5caf91e32c326c9403f10f11711 [file] [log] [blame]
:mod:`airflow.providers.google.leveldb.operators.leveldb`
=========================================================
.. py:module:: airflow.providers.google.leveldb.operators.leveldb
Module Contents
---------------
.. py:class:: LevelDBOperator(*, command: str, key: bytes, value: bytes = None, keys: List[bytes] = None, values: List[bytes] = None, leveldb_conn_id: str = 'leveldb_default', name: str = '/tmp/testdb/', create_if_missing: bool = True, create_db_extra_options: Optional[Dict[str, Any]] = None, **kwargs)
Bases: :class:`airflow.models.BaseOperator`
Execute command in LevelDB
.. seealso::
For more information on how to use this operator, take a look at the guide:
:ref:`howto/operator:LevelDBOperator`
:param command: command of plyvel(python wrap for leveldb) for DB object e.g.
``"put"``, ``"get"``, ``"delete"``, ``"write_batch"``.
:type command: str
:param key: key for command(put,get,delete) execution(, e.g. ``b'key'``, ``b'another-key'``)
:type key: bytes
:param value: value for command(put) execution(bytes, e.g. ``b'value'``, ``b'another-value'``)
:type value: bytes
:param keys: keys for command(write_batch) execution(List[bytes], e.g. ``[b'key', b'another-key'])``
:type keys: List[bytes]
:param values: values for command(write_batch) execution e.g. ``[b'value'``, ``b'another-value']``
:type values: List[bytes]
:param leveldb_conn_id:
:type leveldb_conn_id: str
:param create_if_missing: whether a new database should be created if needed
:type create_if_missing: bool
:param create_db_extra_options: extra options of creation LevelDBOperator. See more in the link below
`Plyvel DB <https://plyvel.readthedocs.io/en/latest/api.html#DB>`__
:type create_db_extra_options: Optional[Dict[str, Any]]
.. method:: execute(self, context)
Execute command in LevelDB
:returns: value from get(str, not bytes, to prevent error in json.dumps in serialize_value in xcom.py)
or None(Optional[str])
:rtype: Optional[str]