/* Méthode standard - ne permet pas l'optimisation DVR directe */
proc casutil;
load data=maTableWork casout="maTableCAS";
quit;
1
/* Méthode standard - ne permet pas l'optimisation DVR directe */
2
PROC CASUTIL;
3
load DATA=maTableWork casout="maTableCAS";
4
QUIT;
The problem is that the LOAD DATA statement of PROC CASUTIL does not offer a native option to define the deafaultmemoryFormat. Therefore, the table is loaded with the default format, consuming more memory than necessary.
The False Good Idea: Two-Step Loading
Faced with this limitation, a commonly attempted workaround consists of:
Loading the table normally (standard format).
Using the table.copyTable action to create a compressed copy in DVR.
Deleting the original table.
While functional, this method is inefficient ("clunky"). It temporarily doubles memory usage and unnecessarily increases I/O.
The Optimal Solution: The UPLOAD Statement in PROC CAS
The varcharConversion option is an ideal complement to DVR. While DVR compresses repeated values, switching to the VARCHAR type reduces the space allocated to variable-length character strings, thus maximizing storage efficiency.
Los códigos y ejemplos proporcionados en WeAreCAS.eu son con fines educativos. Es imperativo no copiarlos y pegarlos ciegamente en sus entornos de producción. El mejor enfoque es comprender la lógica antes de aplicarla. Recomendamos encarecidamente probar estos scripts en un entorno de prueba (Sandbox/Dev). WeAreCAS no acepta ninguna responsabilidad por cualquier impacto o pérdida de datos en sus sistemas.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.