?>Array ( [id] => 71 ) Verwaltung großer Datenmengen aus IoT-Sensoren mit einer globalen Caslib und Unterverzeichnissen - WeAreCAS
table addCaslib

Verwaltung großer Datenmengen aus IoT-Sensoren mit einer globalen Caslib und Unterverzeichnissen

Scénario de test & Cas d'usage

Contexte Métier

Ein Fertigungsunternehmen sammelt riesige Mengen an Sensordaten von seinen Produktionslinien. Die Daten werden täglich in Unterverzeichnissen organisiert (z.B. `/tmp/iot_data/2025-11-25/`). Ein zentrales, persistentes Caslib ist erforderlich, damit das Data-Science-Team auf alle historischen und neuen Daten für Modelle zur vorausschauenden Wartung zugreifen kann.
Préparation des Données

Simuliert eine Verzeichnisstruktur für IoT-Daten, die über mehrere Tage gesammelt wurden, und erstellt in jedem Unterverzeichnis eine CSV-Datei.

Copié !
1DATA _null_;
2 rc = fileexist('/tmp/iot_data/day1'); IF rc=0 THEN rc=mkdir('/tmp/iot_data/day1');
3 rc = fileexist('/tmp/iot_data/day2'); IF rc=0 THEN rc=mkdir('/tmp/iot_data/day2');
4RUN;
5filename s1 temp '/tmp/iot_data/day1/sensors_day1.csv';
6DATA _null_;
7 file s1 dsd dlm=',';
8 put 'SensorID,Zeitstempel,Temperatur,Druck';
9 DO i=1 to 50; put 'A' || i ',' datetime() ',' 80+ranuni(0) ',' 15+ranuni(0); END;
10RUN;
11filename s2 temp '/tmp/iot_data/day2/sensors_day2.csv';
12DATA _null_;
13 file s2 dsd dlm=',';
14 put 'SensorID,Zeitstempel,Temperatur,Druck';
15 DO i=1 to 50; put 'B' || i ',' datetime() ',' 82+ranuni(0) ',' 14+ranuni(0); END;
16RUN;

Étapes de réalisation

1
Erstellung einer globalen Caslib (`session=false`), die auf das Hauptverzeichnis der IoT-Daten verweist. `subDirectories=true` ist entscheidend, um den Zugriff auf die tagesbasierten Unterverzeichnisse zu ermöglichen.
Copié !
1PROC CAS;
2 TABLE.addCaslib /
3 name='IoTSensorenGlobal',
4 path='/tmp/iot_data',
5 dataSource={srcType='PATH'},
6 SESSION=false,
7 subDirectories=true,
8 description='Globale Caslib für IoT-Sensordaten';
9RUN;
2
Überprüfung, ob die Caslib `IoTSensorenGlobal` als globale Caslib erstellt wurde.
Copié !
1PROC CAS;
2 TABLE.caslibInfo / caslib='IoTSensorenGlobal';
3RUN;
3
Auflisten der Dateien innerhalb der Caslib, um zu bestätigen, dass die Dateien aus den Unterverzeichnissen (`day1` und `day2`) sichtbar und zugänglich sind.
Copié !
1PROC CAS;
2 TABLE.fileInfo / caslib='IoTSensorenGlobal';
3RUN;
4QUIT;

Résultat Attendu


Eine globale, persistente Caslib `IoTSensorenGlobal` wird erstellt. Sie bietet Zugriff auf alle Dateien im Hauptpfad `/tmp/iot_data` und allen seinen Unterverzeichnissen. Datenwissenschaftler aus verschiedenen Sitzungen können auf diese Caslib zugreifen, um den gesamten Sensordatenbestand zu analysieren.