Bulk queries

class yadm.bulk.Bulk(db, document_class, ordered=False, raise_on_errors=True)

Bulk object

Parameters:
  • db (Database) – Database instance
  • document_class (MetaDocument) – document class for collection
  • ordered (bool) – create ordered bulk (default False)
  • raise_on_errors (bool) – raise BulkWriteError exception if write errors (default True)

Context manager example:

with db.bulk(Doc) as bulk:
bulk.insert(doc_1) bulk.insert(doc_2)
execute()

Execute the bulk query

Returns:BulkResult instance
insert(document)

Add insert document to bulk

Parameters:document (Document) – document for insert

Warning

This unlike Database.insert! Currently, it is not bind objects to database and set id.

class yadm.bulk.BulkResult(bulk, raw)

Object who provide result of Bulk.execute()

n_inserted

Provide nInserted from raw result

n_modified

Provide nModified from raw result

n_removed

Provide nRemoved from raw result

n_upserted

Provide nUpserted from raw result

write_errors

Provide writeErrors from raw result