Klarety

Trabajar con tablas

Explore y filtre filas, edítelas a mano, describa columnas, agregue verificaciones de datos y lea el historial de una tabla.

Cada de tiene una página con sus filas, sus columnas y cada cambio que se le hizo.

Antes de empezar

  • Usted ve las tablas a las que tiene acceso. Propietarios y administradores las ven todas.
  • Editar filas requiere acceso para cambiar los datos de la tabla. Si una acción se rechaza, pida acceso a un propietario o administrador. Vea Acceso a datos.
  • Algunas tablas las administra Klarety. Su página dice Klarety administra esta tabla, por lo que no se puede modificar.

Encontrar una tabla

Vaya a Datos y abra Nexus Lakehouse. La lista muestra el Nombre, el y el número de Columnas de cada tabla; escriba en Buscar una tabla para acotarla. La página de una tabla tiene tres pestañas: Datos, Columnas e Historial.

El menú junto a una tabla también ofrece Consultar en el editor SQL o copiar su nombre.

find_tables.py
from klarety import Nexus

with Nexus.connect() as nx:
    for table in nx.tables.list("default", search="order"):
        print(table)

    about = nx.tables.describe("orders", schema="default")
    print(about)

tables.list() lee todas las páginas de resultados. made_by="org" deja las tablas creadas fuera de cualquier proyecto, y made_by="system" las que administra Klarety.

Explorar y filtrar filas

La pestaña Datos muestra las filas. Una tabla grande muestra solo sus primeras filas y lo indica.

Seleccione Filtrar filas, elija una Columna, una Condición y un Valor, y luego Aplicar. Las condiciones son es, no es, contiene, mayor que, menor que, está vacío y no está vacío. Cada filtro es una etiqueta que puede quitar; Borrar los quita todos.

tables.rows() lee todas las filas, una página a la vez. Cada filtro se escribe column:op:value:

read_rows.py
from klarety import Nexus

with Nexus.connect() as nx:
    for row in nx.tables.rows(
        "orders",
        where=["country:eq:CO"],
        order_by="ordered_at",
        descending=True,
    ):
        print(row)

Para traer muchas filas por clave en una sola lectura, use in: where=["order_id:in:1,2,3"].

Editar filas a mano

Para muchas filas, cargue un archivo con Actualizar filas por clave (vea Agregar datos).

Cambie lo que necesite

En la pestaña Datos, edite una celda, seleccione Agregar una fila, o seleccione filas y elija Eliminar.

Revise los cambios

La barra inferior cuenta sus cambios pendientes. Seleccione Descartar para dejarlos.

Guarde

Seleccione Guardar. Todos los cambios se guardan juntos como una nueva versión.

La página de una tabla con las pestañas Datos, Columnas e Historial
edit_rows.py
from klarety import Nexus
from klarety.errors import ConflictError

with Nexus.connect() as nx:
    try:
        nx.tables.edit_rows(
            "orders",
            updated=[{"row": {"order_id": 3}, "values": {"amount": "75.00"}}],
            added=[{"order_id": 9, "customer": "Lucía", "country": "CO", "amount": "40.00"}],
            deleted=[{"order_id": 7}],
        )
    except ConflictError as changed:
        print("Someone changed these rows first:", changed)

Los valores se dan como texto. Una llamada acepta hasta 500 cambios, guardados juntos. Cada valor en row debe seguir igual a lo guardado; si no, no se guarda nada y ConflictError nombra cada fila cambiada: lea de nuevo y reintente. Tras un tiempo de espera agotado, reenvíe con el mismo write_id; nunca se aplica dos veces.

Describir columnas

La pestaña Columnas lista cada columna con su tipo. Una columna que identifica una fila lleva la marca clave, y Tablas vinculadas muestra qué columnas coinciden con columnas de otras tablas. Agregar descripción escribe una línea sobre una columna, visible para quien lea la tabla.

La pestaña Columnas de una tabla, con una columna clave, Tablas vinculadas y una descripción
nx.tables.set_column_doc("orders", "amount", "Order total in Colombian pesos, tax included")

Una descripción vacía la borra.

Agregar verificaciones de datos

Una verificación de datos es una regla que debe cumplir cada fila cargada. Las filas que fallan se apartan y el resto se carga, así una exportación mala no llena la tabla de filas rotas.

Regla en la apprule en códigoEjemplo
nunca está vacíonot_nullcustomer nunca está vacío
está entrerangeamount está entre 0 y 10000000
coincide con el patrónpatterncountry coincide con el patrón ^[A-Z]{2}$
es uno deone_ofstatus es uno de paid, refunded

Abra las verificaciones

En la página de la tabla, abra Más y elija Verificaciones de datos.

Agregue una verificación

Elija una Columna y una Regla, complete los valores y seleccione Agregar verificación.

Lea los resultados

El panel muestra cuántas filas escribieron y apartaron las cargas recientes. Quitar elimina una verificación.

El panel Verificaciones de datos

tables.expect() reemplaza las verificaciones de la tabla por la lista que envía. Una lista vacía las quita todas.

data_checks.py
from klarety import Nexus

with Nexus.connect() as nx:
    nx.tables.expect(
        "orders",
        [
            {"column": "customer", "rule": "not_null"},
            {"column": "amount", "rule": "range", "minimum": 0},
            {"column": "status", "rule": "one_of", "values": ["paid", "refunded"]},
        ],
    )
    print(nx.tables.quality("orders"))

Una escritura que rompe una regla lanza TableRuleError, que nombra la regla. Corrija los datos en vez de reenviarlos igual.

Ver el historial

La pestaña Historial lista cada versión, de la más reciente a la más antigua: cuántas filas se agregaron o si se actualizaron, el total de filas, quién hizo el cambio (Usted, Un compañero de equipo, Studio o Una clave de API) y cómo llegó (mediante SDK, mediante un agente, desde un Studio o importación automática). Seleccione Ver anteriores para ir más atrás.

La pestaña Historial de una tabla, con las versiones, quién y cómo llegó cada cambio

Para deshacer, seleccione Volver a esta versión.

Se deshace cada cambio posterior a esa versión, también los de otras personas. Para deshacer solo los cambios de una fuente, use Restaurar en Deshacer y restaurar.

history = nx.tables.snapshots("orders")
authors = nx.tables.authors("orders", days=7)

snapshots() lista las versiones de la tabla; authors() muestra quién agregó y cambió filas, día a día.

Eliminar una tabla

Abra Más y elija Eliminar tabla. Podrá restaurarla durante un tiempo.

nx.tables.delete("orders_old")
print(nx.tables.deleted())
nx.tables.restore("orders_old")

Una tabla eliminada se puede restaurar mientras su plan conserve los elementos eliminados.

Siguientes pasos

En esta página