Backup di ThingWorx
I backup correlati a ThingWorx possono essere eseguiti sia a livello di archivio dati sia a livello di applicazione ThingWorx. Il backup a livello di archivio dati deve essere eseguito regolarmente, anche se gli archivi di dati vengono installati in una configurazione a disponibilità elevata con ridondanza dei dati. Questa opzione è applicabile a tutti gli archivi di dati utilizzati dai provider di modelli e di dati.
Le informazioni contenute in questo argomento si riferiscono solo alle funzionalità fornite da ThingWorx Platform per i backup a livello di applicazione, ad eccezione del database H2.
* 
L'unica eccezione a questa regola è il database H2 poiché viene eseguito in modalità incorporata. In questo caso, ThingWorx fornisce la funzionalità predefinita per programmare i backup automatici in una directory specificata dal parametro di configurazione "ThingworxBackupStorage" nel file platform-settings.json. Tuttavia, a causa della sua natura incorporata, non è una soluzione a disponibilità elevata e pertanto non dispone di alcuna funzionalità di failover.
Fare riferimento alla guida ThingWorx Backup and Recovery Planning per informazioni di carattere generale e consultare la documentazione originale del produttore per informazioni dettagliate, come quelle indicati di seguito.
H2 - Creazione di archivi della cartella data in ThingworxStorage
Modello ThingWorx
La funzionalità più flessibile di un'applicazione ThingWorx è la possibilità di modificare il modello ThingWorx direttamente in fase di esecuzione manualmente tramite Composer o a livello di programmazione tramite l'API REST, gli script o le estensioni. Si consiglia di tenere traccia delle modifiche apportate al modello per correggere una modifica involontaria in produzione. A tal fine è sufficiente esportare periodicamente le istantanee delle entità del modello.
Questi backup istantanei possono essere eseguiti anche utilizzando uno scheduler per richiamare automaticamente le opzioni indicate di seguito.
API REST di esportazione standard.
API REST Esporta entità di controllo di origine. Questa utilizza un sistema di controllo delle versioni, ad esempio git o Subversion.
La differenza tra le due opzioni precedenti consiste nel fatto che l'opzione Esporta entità di controllo di origine genera singoli file XML nelle cartelle per tipo di entità per rendere l'esportazione leggibile, mentre il formato binario ".twx" è compresso e comparativamente efficiente per l'importazione.
* 
PTC non garantisce che i formati di esportazione siano conformi a uno standard specifico e possano cambiare senza preavviso tra versioni diverse di ThingWorx. Non si consiglia quindi di creare applicazioni esterne che utilizzano file esportati.
Dati di runtime
Analogamente alle esportazioni del modello è disponibile un'API REST standard per esportare anche i dati di runtime. Poiché i dati di runtime possono crescere in modo significativo nel tempo, il processo di esportazione è parallelo e i file di esportazione vengono suddivisi in più file di piccole dimensioni che sono più facili da gestire. A causa delle grandi dimensioni dei dati, si consiglia di esportare i dati in modo incrementale a livello di applicazione anziché eseguire backup completi. Inoltre, per evitare esportazioni con tempi lunghi di esecuzione, è consigliabile esportare in base alle entità, laddove possibile. Come best practice si consideri l'esecuzione di backup a livello di archivio dati per conservare i dati di runtime. Le esportazioni dei dati vengono salvate nella directory ThingworxStorage/exports. Le esportazioni sono contenute in file binari con estensione .twx, in cartelle per tipo di entità, secondo la data corrente, e nella directory del repository. I dati vengono suddivisi in più file in base alle dimensioni del file di esportazione e alle dimensioni del pool di thread di elaborazione impostate nel sottosistema di esportazione/importazione.
Questa funzionalità è in genere utilizzata per migrare i dati da un sistema a un altro anziché per l'esecuzione di backup regolari. Mentre le esportazioni periodiche non sovrapposte (ovvero che usano le date di inizio e di fine per le esportazioni di dati) possono essere utilizzate per archiviare i dati periodicamente, un'opzione più efficiente consiste nell'utilizzare i backup a livello di archivio dati per conservare i dati di runtime.
Repository di file
Il repository di file in ThingWorx è una directory del file system che si trova in genere in un'unità locale o condivisa (nel caso di un'installazione di ThingWorx a disponibilità elevata). Si tratta di una normale directory del file system definita dalla variabile di ambiente ThingworxFileStorage in un'impostazione personalizzata o in ThingworxStorage/repository per default. È possibile utilizzare qualsiasi soluzione di backup dei file fornita dal sistema operativo in uso per eseguire il backup di questa directory regolarmente (ad esempio, rsync in Linux).
Estensioni
Una volta importate in ThingWorx, le estensioni vengono memorizzate nella cache del file system e salvate anche nell'archivio dati in configurazioni a disponibilità elevata. Come best practice si consiglia in questo caso di conservare i package delle estensioni originali anziché eseguire il backup delle versioni memorizzate nella cache in quanto le estensioni in PTC Marketplace vengono aggiornate periodicamente e potrebbe non essere possibile scaricare nuovamente la versione utilizzata in fase di sviluppo. La cache del file system si trova nella directory ThingworxStorage/exports.
Altri elementi basati su file
Gli altri elementi basati su file di cui è possibile eseguire il backup utilizzando gli strumenti di backup dei file correlati a ThingWorx e disponibili nel sistema operativo (ad esempio, rsync in Linux) sono indicati di seguito.
File di configurazione nella directory ThingworxPlatform
File di log nella directory ThingworxStorage/logs
Report che possono essere stati generati nella directory ThingworxStorage/reports