table

loadTable

Descripción

Carga una tabla desde el origen de datos de una caslib a la memoria del servidor CAS. Esta acción es fundamental para hacer que los datos almacenados en ficheros externos (como CSV, Parquet, SASHDAT, etc.) estén disponibles como una tabla en memoria para el procesamiento y análisis en paralelo. Es una de las formas más comunes de ingestar datos en SAS Viya.

table.loadTable / caslib="nombre-de-caslib", path="nombre-del-fichero-o-ruta", casOut={name="nombre-tabla-salida", promote=true|false, replace=true|false}, importOptions={fileType="CSV" | "PARQUET" | ... , ...}, dataSourceOptions={...}, where="expresión-where";
Parámetros
ParámetroDescripción
pathEl nombre del fichero o la ruta relativa dentro de la caslib que se va a cargar. Este es el parámetro principal para identificar el origen de los datos.
caslibEspecifica la caslib donde se encuentra el fichero de origen. Si se omite, se utiliza la caslib activa de la sesión actual.
casOutUn objeto que define las propiedades de la tabla en memoria resultante. Incluye el nombre de la tabla ('name'), si debe reemplazar una tabla existente ('replace'), y si debe ser promocionada a un alcance global ('promote').
importOptionsPermite especificar opciones de importación detalladas según el tipo de fichero. Por ejemplo, para un CSV, se puede definir el delimitador, el número de la fila de cabecera, o la codificación del fichero.
dataSourceOptionsOpciones específicas para orígenes de datos más complejos, como bases de datos. Permite pasar credenciales, propiedades de conexión, etc.
promoteSi se establece en 'true', la tabla cargada en memoria será visible y accesible por todas las sesiones de CAS, no solo la actual. Esta operación suele requerir privilegios de administrador, ya que afecta al estado global del servidor.
whereUna expresión de filtrado que permite cargar solo un subconjunto de filas del fichero de origen que cumplan con la condición especificada.
varsPermite seleccionar, renombrar, formatear o cambiar el tipo de las columnas durante el proceso de carga, ofreciendo un control granular sobre el esquema de la tabla en memoria.
Creación de un Fichero CSV de Ejemplo

El siguiente código SAS crea un fichero CSV llamado 'cars_data.csv' en una ubicación accesible por la caslib. Este fichero servirá como fuente de datos para los ejemplos de carga en CAS. Asume que la macro-variable _SASPROGRAMFILE apunta a un directorio donde se puede escribir.

¡Copiado!
1 
2DATA WORK.CARS_SAMPLE;
3SET sashelp.cars;
4where Make in ('Audi', 'BMW', 'Acura');
5 
6RUN;
7 
8PROC EXPORT
9DATA=WORK.CARS_SAMPLE outfile="%sysfunc(pathname(work))/cars_data.csv" dbms=csv replace;
10 
11RUN;
12 

Ejemplos

Este ejemplo muestra cómo cargar el fichero 'cars_data.csv' (previamente creado) desde la caslib 'CASUSER' a una tabla en memoria llamada 'CARS_CAS'. La opción 'replace=true' asegura que si la tabla ya existe, será sobrescrita.

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1 
2PROC CAS;
3TABLE.loadTable / caslib='CASUSER' path='cars_data.csv' casOut={name='CARS_CAS', replace=true};
4 
5RUN;
6 
Resultado :
La acción carga con éxito los datos del CSV en la tabla en memoria 'CARS_CAS'. Un mensaje en el log de SAS confirmará la creación de la tabla y la caslib donde se ha cargado ('CASUSER').

Este ejemplo carga el mismo fichero CSV pero realiza varias operaciones avanzadas: 1) Selecciona solo las columnas 'Make', 'Model' y 'MSRP'. 2) Renombra 'MSRP' a 'Precio' y le aplica un formato de dólar. 3) Carga los datos en una tabla global llamada 'CARS_GLOBAL' para que sea accesible en otras sesiones (requiere privilegios de administrador).

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1 
2PROC CAS;
3TABLE.loadTable / caslib='CASUSER' path='cars_data.csv' casOut={name='CARS_GLOBAL', promote=true, replace=true, label='Coches de Lujo Globales'} importOptions={fileType='CSV'} vars=[{name='Make', label='Fabricante'}, {name='Model'}, {name='MSRP', rename='Precio', FORMAT='DOLLAR12.2', label='Precio Minorista'}];
4 
5RUN;
6 
Resultado :
La acción carga una tabla promocionada (global) llamada 'CARS_GLOBAL'. Esta tabla contendrá únicamente las tres columnas especificadas, con la columna 'MSRP' renombrada a 'Precio' y con el formato de moneda aplicado. El log indicará que la tabla ha sido promocionada para acceso global.

FAQ

¿Cuál es el propósito de la acción 'loadTable'?
¿Qué parámetro es obligatorio para usar 'loadTable'?
¿Cómo se puede especificar el tipo de archivo al cargar datos con 'loadTable'?
¿Qué sucede si ya existe una tabla en memoria con el mismo nombre que la tabla de salida?
¿Cómo puedo hacer que una tabla cargada sea accesible para otras sesiones de CAS?