Skip to main content

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 5.0.0.post809

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for nucliadb 5.0.0.post809
File Interpreter ABI Platform
nucliadb-5.0.0.post809-py3-none-any.whl Python 3 none any Details

Release files / nucliadb-5.0.0.post809-py3-none-any.whl

Download URL nucliadb-5.0.0.post809-py3-none-any.whl
Size 530.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bb204d28d6150d63b88bcb2f359054e19452d435e3d4ce10ecd5c4040bddb2db
BLAKE2b-256 checksum
How to use checksums
caa3b5919b2f4309e8871a5e176c26dbbb91d2423c27e835046debb2a3d9d379
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release history Release notifications | RSS feed

6.2.1

1 release file

This release

5.0.0.post809 This release

1 release file

2.2.5

1 release file

2.2.4

1 release file

2.2.3

1 release file

2.2.2

1 release file

2.2.1

1 release file

2.2.0

1 release file

2.1.0

1 release file

2.0.15

1 release file

2.0.14

1 release file

2.0.13

1 release file

2.0.12

1 release file

2.0.11

1 release file

2.0.10

1 release file

2.0.9

1 release file

2.0.8

1 release file

2.0.7

1 release file

2.0.6

1 release file

2.0.5

1 release file

2.0.4

1 release file

2.0.3

1 release file

2.0.2

1 release file

2.0.1

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page