Flight service en cuadernos de R

Puedes utilizar Flight service y el protocolo Flight de Apache Arrow para leer y escribir datos en los activos de datos de un proyecto o espacio. Estos recursos de datos pueden ser archivos almacenados en el espacio de almacenamiento asociado a tu proyecto o espacio actual, o datos a los que se accede a través de una conexión a una base de datos.

Carga de datos con código generado mediante Flight service

Cuando se cargan datos de un recurso del proyecto a un cuaderno, el código generado utiliza pyarrow para invocar a Flight service; sin embargo, las llamadas a no pyarrow son visibles porque están envueltas en funciones de nivel superior proporcionadas por otra biblioteca llamada itc_utils.

Esta itc_utils biblioteca viene preinstalada en todos los entornos de ejecución de cuadernos que ofrece IBM con el fin de reducir el tamaño del código y mejorar su legibilidad. Para alcanzar este objetivo, la itc_utils biblioteca aprovecha la información del entorno de ejecución y de ibm_watson_studio_lib la biblioteca.

Otra ventaja importante del código generado es que la solicitud de datos tiene propiedades especiales, concretamente «connection_name», «connected_data_name» o «data_name», dependiendo del tipo de activo para el que se genere el código. itc_utils convierte estas propiedades en un asset_id, además de un project_id o space_idun, antes de crear un descriptor de vuelo.

Ejemplo del código que se genera para cargar datos:

library("reticulate")
library("arrow")

itcfs <- import("itc_utils.flight_service")

readClient <- itcfs$get_flight_client()

nb_data_request = dict(
    "connection_name" = "MyConnection",
    "interaction_properties" = dict(
         "row_limit" = 500,
        "schema_name" = "<schema>",
        "table_name" = "<table>"
    )
)

flightInfo <- itcfs$get_flight_info(readClient, nb_data_request=nb_data_request)

tables <- itcfs$read_tables(readClient, flightInfo, timeout=240)
data_df_1 <- as.data.frame(tables[[1]])
head(data_df_1)

Puedes utilizar las funciones que ofrece itc_utils para ampliar el código que utiliza la pyarrow biblioteca. Dado que itc_utils se basa en pyarrow, puedes seleccionar funciones específicas de itc_utils y combinarlas con tu pyarrow código.

Nota:

La itc_utils biblioteca ofrece funciones auxiliares que puedes utilizar para que tus programas sean más fáciles de leer. IBM puede eliminar esta biblioteca en cualquier momento, si lo considera necesario, y las funciones pueden modificarse sin previo aviso.

Para ver una lista de las itc_utils funciones que pueden simplificar considerablemente el desarrollo de tu código, consulta la sección «Uso itc_utils con tu propio código ». Ten en cuenta que la sintaxis de los descriptores y las solicitudes, así como todas las llamadas a funciones de los ejemplos, están escritas en notación de « Python », por lo que deberás modificarlas adecuadamente para R.

Si se producen errores de tiempo de espera, consulta la sección «Consejos y sugerencias sobre los tiempos de espera ». En este caso también, todas las llamadas a funciones de los ejemplos están escritas en notación de « Python », por lo que tendrás que modificarlas adecuadamente para R.

Más información