nucliadb
This module contains most of the Python components for NucliaDB:
- ingest
- reader
- writer
- search
- train
NucliaDB Migrations
This module is used to manage NucliaDB Migrations.
All migrations will be provided in the migrations folder and have a filename
that follows the structure: [sequence]_[migration name].py.
Where sequence is the order the migration should be run in with zero padding.
Example: 0001_migrate_data.py.
Each migration should have the following:
from nucliadb.migrator.context import ExecutionContext
async def migrate(context: ExecutionContext) -> None:
"""
Non-kb type of migration. Migrate global data.
"""
async def migrate_kb(context: ExecutionContext, kbid: str) -> None:
"""
Migrate kb.
Must have both types of migrations.
"""
How migrations are managed
-
All migrations utilize a distributed lock to prevent simulateously running jobs
-
Global migration state:
- current version
- target version
- KBs to migrate
-
KB Migration State:
- current version
-
Migrations are currently run with a deployment and will be continuously retried on failure.
-
Running migrations in a deployment is to make sure a migration does not prevent code deployment.
Metadata
Release files for nucliadb 2.32.0.post893
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nucliadb-2.32.0.post893-py3-none-any.whl | Python 3 | none | any | Details |
Release files / nucliadb-2.32.0.post893-py3-none-any.whl
| Download URL | nucliadb-2.32.0.post893-py3-none-any.whl |
|---|---|
| Size | 638.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a5f0e10cd7d5111b88d9554d3fce92702d9a7b8a03a69becfae0b78f1021ee85
|
|
BLAKE2b-256 checksum How to use checksums |
690ade396a9e0a29bf8bfd894abe9601e6b07f55f6e1d864a1899c3f91cfaee6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.6
|