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 3.1.0.post506

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 3.1.0.post506
File Interpreter ABI Platform
nucliadb-3.1.0.post506-py3-none-any.whl Python 3 none any Details

Release files / nucliadb-3.1.0.post506-py3-none-any.whl

Download URL nucliadb-3.1.0.post506-py3-none-any.whl
Size 763.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
03f61805c17c0b44059a77dd446d4d4b8168e139cfbe337efccd29e0875a5844
BLAKE2b-256 checksum
How to use checksums
fdea10fb7e13ede59d3991d8319a2bada4a72f0b40635d257061f806f2ed90dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.11.9

Release history Release notifications | RSS feed

6.2.1

1 release file

This release

3.1.0.post506 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