aStore check

Manejo de Errores por Transmisión Corrupta de Modelos IoT

Scénario de test & Cas d'usage

Contexto empresarial

En un entorno de mantenimiento predictivo industrial, los modelos se transmiten a servidores centrales desde dispositivos con conexiones inestables. A veces, los archivos llegan truncados o contienen texto plano en lugar de binario. El sistema debe ser capaz de detectar estos archivos inválidos mediante 'check' y rechazar el modelo de manera controlada en lugar de intentar desplegarlo y causar un fallo en producción.
Preparación de datos

Creación de un archivo 'falso' que contiene texto plano en lugar de un binario ONNX válido para simular corrupción.

¡Copiado!
1DATA _null_;
2 file '/tmp/sensor_motor_corrupto.onnx';
3 put 'ERROR: DOWNLOAD INCOMPLETE 404';
4RUN;

Étapes de réalisation

1
Intento de carga y validación de un archivo corrupto/inválido.
¡Copiado!
1PROC CAS;
2 LOADACTIONSET 'astore';
3 /* Cargar el archivo de texto como si fuera binario */
4 file myBadFile;
5 myBadFile = file('/tmp/sensor_motor_corrupto.onnx', 'READ', 'RECFM=N');
6 string bad_blob;
7 read(myBadFile, bad_blob);
8 close(myBadFile);
9
10 /* Intentar validar el BLOB que sabemos que es incorrecto */
11 /* Capturar el error potencial */
12 PRINT "Iniciando validación de archivo sospechoso...";
13 astore.check RESULT=r STATUS=s onnx=bad_blob;
14
15 PRINT "Estado de la ejecución: " || s.severity;
16 PRINT r;
17RUN;

Resultado esperado


La acción 'astore.check' debe identificar que el BLOB no corresponde a una estructura ONNX válida. Se espera que devuelva un código de severidad de error o una tabla de resultados indicando explícitamente la invalidez del modelo. El escenario se considera exitoso si el sistema detecta el error correctamente sin terminar la sesión CAS abruptamente.