table

index

Descripción

Crea índices en una o más variables de tabla. Para obtener más información sobre los parámetros, consulte la documentación original.

table.index <result=results> <status=rc> / casout={ caslib="string", compress=TRUE | FALSE, indexVars={"variable-name-1" <, "variable-name-2", ...>}, label="string", lifetime=64-bit-integer, maxMemSize=64-bit-integer, memoryFormat="DVR" | "INHERIT" | "STANDARD", name="table-name", promote=TRUE | FALSE, replace=TRUE | FALSE, replication=integer, tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE", threadBlockSize=64-bit-integer, timeStamp="string" }, table={ caslib="string", computedOnDemand=TRUE | FALSE, computedVars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, {...}}, computedVarsProgram="string", dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>}, groupBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, {...}}, groupByMode="NOSORT" | "REDISTRIBUTE", importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}, name="table-name", orderBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, {...}}, singlePass=TRUE | FALSE, vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, {...}}, where="where-expression", whereTable={ casLib="string", dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | greenplum-parameters | hadoop-parameters | hana-parameters | hdfs-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | netezza-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}, importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}, name="table-name", vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, {...}}, where="where-expression" } } ;
Parámetros
ParámetroDescripción
casoutEspecifica la configuración para una tabla de salida. El alias es 'outTable'.
casout.caslibEspecifica el nombre de la caslib para la tabla de salida.
casout.compressCuando se establece en True, aplica compresión de datos a la tabla. Por defecto es FALSE.
casout.indexVarsEspecifica la lista de variables para las que se crearán índices en los datos de salida.
casout.labelEspecifica la etiqueta descriptiva para asociar con la tabla.
casout.lifetimeEspecifica el número de segundos que la tabla permanecerá en memoria después de su último acceso. La tabla se elimina si no se accede a ella durante el número de segundos especificado. El valor mínimo es 0, por defecto es 0.
casout.maxMemSizeEspecifica la cantidad máxima de memoria, en bytes, que cada hilo debe asignar para bloques en memoria antes de convertir a un archivo mapeado en memoria. Los archivos se escriben en los directorios especificados en la variable de entorno CAS_DISK_CACHE. Sugerencia: Puede encerrar el valor entre comillas y especificar B, K, M, G o T como sufijo para indicar las unidades. Por ejemplo, "8M" especifica ocho megabytes.
casout.memoryFormatEspecifica el formato de memoria para la tabla de salida. Los valores posibles son 'DVR', 'INHERIT', 'STANDARD'. Por defecto es 'INHERIT'.
casout.memoryFormat.DVRUtiliza el formato de memoria de reducción de valores duplicados. Este formato puede reducir el consumo de memoria y el tamaño del archivo cuando los datos de entrada contienen valores duplicados.
casout.memoryFormat.INHERITUtiliza el formato de memoria predeterminado configurado para el servidor. Por defecto, el servidor utiliza el formato de memoria estándar. Si un administrador establece la variable de entorno CAS_DEFAULT_MEMORY_FORMAT en DVR, el formato de memoria DVR se establece como predeterminado para el servidor.
casout.memoryFormat.STANDARDUtiliza el formato de memoria estándar.
casout.nameEspecifica el nombre para la tabla de salida.
casout.promoteCuando se establece en True, añade la tabla de salida con un alcance global. Esto permite que otras sesiones accedan a la tabla, sujeto a los controles de acceso. La caslib de destino también debe tener un alcance global. Por defecto es FALSE.
casout.replaceCuando se establece en True, sobrescribe una tabla existente que tenga el mismo nombre. Por defecto es FALSE.
casout.replicationEspecifica el número de copias de la tabla a realizar para la tolerancia a fallos. Valores mayores resultan en un rendimiento más lento y usan más memoria, pero proporcionan alta disponibilidad para los datos en caso de fallo de un nodo. La redundancia de datos se aplica solo a servidores distribuidos. El valor mínimo es 0, por defecto es 1.
casout.tableRedistUpPolicyEspecifica la política de redistribución de la tabla cuando el número de pods de trabajo aumenta en un servidor CAS en ejecución.
casout.tableRedistUpPolicy.DEFERRetrasar la selección de la política de redistribución a una entidad de nivel superior.
casout.tableRedistUpPolicy.NOREDISTNo redistribuir los datos de la tabla cuando el número de pods de trabajo cambia en un servidor CAS en ejecución.
casout.tableRedistUpPolicy.REBALANCEReequilibrar los datos de la tabla cuando el número de pods de trabajo cambia en un servidor CAS en ejecución.
casout.threadBlockSizeEspecifica el número de bytes a usar para los bloques en la tabla de salida. Los bloques son leídos por los hilos. Aumente gradualmente este valor cuando tenga una tabla grande con millones o miles de millones de filas y esté optimizando el rendimiento. Valores más grandes pueden aumentar el rendimiento con tablas indexadas. Sin embargo, si el valor es demasiado grande, puede causar inanición de hilos debido a que hay muy pocos bloques para que los hilos trabajen. El alias es 'blockSize'. El valor mínimo es 0, por defecto es 1048576. Sugerencia: Puede encerrar el valor entre comillas y especificar B, K, M, G o T como sufijo para indicar las unidades. Por ejemplo, "8M" especifica ocho megabytes.
casout.timeStampEspecifica que se añada una columna de marca de tiempo a la tabla. El soporte para timeStamp es específico de la acción. Especifique el valor en el formato apropiado para su configuración regional de sesión.
tableEspecifica la tabla para la que se creará el índice. Es un parámetro requerido. Para más información sobre cómo especificar el parámetro de tabla, consulte el parámetro común castable.
table.caslibEspecifica la caslib de la tabla.
table.computedOnDemandEspecifica si las columnas calculadas en la tabla se calculan bajo demanda.
table.computedVarsEspecifica una lista de variables calculadas para la tabla. Se requieren los subparámetros 'name'.
table.computedVars.formatEspecifica el formato de la variable calculada.
table.computedVars.formattedLengthEspecifica la longitud formateada de la variable calculada.
table.computedVars.labelEspecifica la etiqueta de la variable calculada.
table.computedVars.nameEspecifica el nombre de la variable calculada. Es un subparámetro requerido.
table.computedVars.nfdEspecifica el número de decimales para la variable calculada.
table.computedVars.nflEspecifica la longitud de la variable calculada.
table.computedVarsProgramEspecifica un programa para calcular variables. Este programa se ejecuta en el servidor CAS para cada fila de la tabla.
table.dataSourceOptionsEspecifica opciones específicas de la fuente de datos para la tabla.
table.groupByEspecifica las variables por las que se agrupará la tabla. Se requieren los subparámetros 'name'.
table.groupBy.formatEspecifica el formato de la variable de agrupación.
table.groupBy.formattedLengthEspecifica la longitud formateada de la variable de agrupación.
table.groupBy.labelEspecifica la etiqueta de la variable de agrupación.
table.groupBy.nameEspecifica el nombre de la variable de agrupación. Es un subparámetro requerido.
table.groupBy.nfdEspecifica el número de decimales para la variable de agrupación.
table.groupBy.nflEspecifica la longitud de la variable de agrupación.
table.groupByModeEspecifica el modo de agrupación. Los valores posibles son 'NOSORT' y 'REDISTRIBUTE'.
table.importOptionsEspecifica opciones para importar datos a la tabla.
table.nameEspecifica el nombre de la tabla. Es un parámetro requerido.
table.orderByEspecifica las variables por las que se ordenará la tabla. Se requieren los subparámetros 'name'.
table.orderBy.formatEspecifica el formato de la variable de ordenación.
table.orderBy.formattedLengthEspecifica la longitud formateada de la variable de ordenación.
table.orderBy.labelEspecifica la etiqueta de la variable de ordenación.
table.orderBy.nameEspecifica el nombre de la variable de ordenación. Es un subparámetro requerido.
table.orderBy.nfdEspecifica el número de decimales para la variable de ordenación.
table.orderBy.nflEspecifica la longitud de la variable de ordenación.
table.singlePassEspecifica si la tabla se procesa en una sola pasada.
table.varsEspecifica las variables a incluir en la tabla. Se requieren los subparámetros 'name'.
table.vars.formatEspecifica el formato de la variable.
table.vars.formattedLengthEspecifica la longitud formateada de la variable.
table.vars.labelEspecifica la etiqueta de la variable.
table.vars.nameEspecifica el nombre de la variable. Es un subparámetro requerido.
table.vars.nfdEspecifica el número de decimales para la variable.
table.vars.nflEspecifica la longitud de la variable.
table.whereEspecifica una expresión WHERE para filtrar las filas de la tabla.
table.whereTableEspecifica una tabla WHERE para filtrar las filas de la tabla.
table.whereTable.casLibEspecifica la caslib de la tabla WHERE.
table.whereTable.dataSourceOptionsEspecifica opciones específicas de la fuente de datos para la tabla WHERE.
table.whereTable.importOptionsEspecifica opciones para importar datos a la tabla WHERE.
table.whereTable.nameEspecifica el nombre de la tabla WHERE. Es un subparámetro requerido.
table.whereTable.varsEspecifica las variables a incluir en la tabla WHERE. Se requieren los subparámetros 'name'.
table.whereTable.vars.formatEspecifica el formato de la variable.
table.whereTable.vars.formattedLengthEspecifica la longitud formateada de la variable.
table.whereTable.vars.labelEspecifica la etiqueta de la variable.
table.whereTable.vars.nameEspecifica el nombre de la variable. Es un subparámetro requerido.
table.whereTable.vars.nfdEspecifica el número de decimales para la variable.
table.whereTable.vars.nflEspecifica la longitud de la variable.
table.whereTable.whereEspecifica una expresión WHERE para filtrar las filas de la tabla WHERE.
Creación de datos para ejemplos

Los siguientes programas de DATA step crean las tablas en memoria que se utilizan en los ejemplos. También puede ejecutar los ejemplos si las tablas ya existen en su caslib de sesión.

¡Copiado!
1DATA casuser.iris;
2 SET sashelp.iris;
3RUN;
4 
5DATA casuser.cars;
6 SET sashelp.cars;
7RUN;

Ejemplos

Este ejemplo muestra cómo crear índices en columnas de una tabla CAS existente.

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1cas.TABLE.index(s, TABLE='iris', casout=list(name='iris', caslib='casuser', indexVars=list('Species', 'SepalLength')))
Resultado :
Se crean índices en las columnas 'Species' y 'SepalLength' de la tabla 'iris'.

Este ejemplo muestra cómo crear índices en un archivo SASHDAT existente. Primero, se carga el archivo SASHDAT en memoria.

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1cas.TABLE.loadtable(s, path='cars.sashdat', caslib='public', promote=TRUE)
2cas.TABLE.index(s, TABLE='cars', casout=list(name='cars', caslib='casuser', indexVars=list('Origin', 'DriveTrain')))
Resultado :
Se carga el archivo 'cars.sashdat' en la caslib 'public' y se crean índices en las columnas 'Origin' y 'DriveTrain' de la tabla 'cars'.

FAQ

¿Cuál es el propósito de la acción "index"?
¿Dónde puedo encontrar más información sobre la indexación de tablas?
¿Cómo puedo indexar columnas en una tabla?
¿Cómo puedo indexar un archivo SASHDAT existente?
¿Qué especifica el parámetro "casout" en la acción "index"?
¿Qué especifica el subparámetro "caslib" dentro de "casout"?
¿Qué hace el subparámetro "compress" dentro de "casout"?
¿Qué especifica el subparámetro "indexVars" dentro de "casout"?
¿Qué especifica el subparámetro "label" dentro de "casout"?
¿Qué especifica el subparámetro "lifetime" dentro de "casout"?
¿Qué especifica el subparámetro "maxMemSize" dentro de "casout"?
¿Qué especifica el subparámetro "memoryFormat" dentro de "casout"?
¿Qué especifica el subparámetro "name" dentro de "casout"?
¿Qué hace el subparámetro "promote" dentro de "casout"?
¿Qué hace el subparámetro "replace" dentro de "casout"?
¿Qué especifica el subparámetro "replication" dentro de "casout"?
¿Qué especifica el subparámetro "tableRedistUpPolicy" dentro de "casout"?
¿Qué especifica el subparámetro "threadBlockSize" dentro de "casout"?
¿Qué especifica el subparámetro "timeStamp" dentro de "casout"?
¿Qué especifica el parámetro "table" en la acción "index"?