Questo articolo fornisce una panoramica del supporto per Alteryx Server con SQL gestito dall'utente come livello di persistenza e informazioni sulla migrazione da MongoDB a SQL.
Sono ufficialmente supportate le versioni 2019 e 2022 di MSSQL Server e Amazon RDS per SQL Server.
Sì. Amazon RDS per SQL Server è supportato.
L'utente con accesso al database SQL deve inizialmente disporre dei privilegi di amministratore per creare e utilizzare qualsiasi database richiesto da Alteryx Server. Una volta completata l'installazione di SQL e ogni eventuale migrazione da MongoDB a SQL (se applicabile), è possibile limitare questi privilegi. L'utente, tuttavia, avrà ancora bisogno delle autorizzazioni di lettura, scrittura, eliminazione record e creazione o eliminazione tabelle, ma non saranno più necessari i diritti completi per la creazione di database.
No, al momento offriamo MSSQL solo come opzione di database per database gestiti dall'utente.
Sì.
Sì.
Sì.
Sì. Con il nuovo DB SQL sono state apportate leggere modifiche allo schema. Se Mongo veniva interrogato direttamente, occorre controllare le query ed eventualmente aggiornarle. Per ulteriori informazioni, vai alla pagina SQL DB Schema Reference della guida.
No, questi database possono condividere la stessa posizione.
Sì.
Sì.
Sì, è possibile eseguire un'istanza di SQL Server insieme ad altre istanze del database.
Nella maggior parte dei casi, le prestazioni di SQL e Mongo dovrebbero essere le stesse. Prestazioni significativamente più lente si verificano solamente per i flussi di lavoro la cui esecuzione richiede 5 secondi o meno. Consulta la tabella riportata di seguito per un confronto dei tempi. Per i flussi di lavoro la cui esecuzione richiede più di 5 secondi, le differenze di prestazioni sono trascurabili.
Nel caso più estremo, se un utente eseguisse 60 flussi di lavoro al minuto che richiedono 1 secondo ciascuno, la differenza nel tempo di completamento passerebbe da 1 minuto in Mongo a 1 minuto e 15 secondi in SQL.
In definitiva, la differenza di prestazioni dipende dai flussi di lavoro in esecuzione, ma poiché un rallentamento si verifica solo con flussi di lavoro ad esecuzione rapida, la differenza di 0,25 secondi non dovrebbe determinare un divario significativo nelle prestazioni.
Tempo di esecuzione dei flussi di lavoro in Mongo | Tempo di esecuzione dei flussi di lavoro in SQL |
---|---|
5 secondi | 5,25 secondi |
1 secondo | 1,25 secondi |
Per le istruzioni complete sulla migrazione da MongoDB a SQL, consulta la MongoDB to SQL Migration Guide. Consigliamo di leggere le istruzioni complete sulla migrazione poiché questa domanda frequente risponde solo ai dubbi principali.
Server 2022.1+. Se utilizzi una versione precedente alla 2022.1, ti consigliamo di eseguire l'aggiornamento alla versione 2022.1 - 2023.2 prima di eseguire l'aggiornamento alla versione 2024.1.
Sì.
No, la migrazione SQL viene eseguita tramite un flusso di lavoro che è possibile eseguire dopo l'aggiornamento alla versione 2024.1. Ciò consente di eseguire l'aggiornamento alla versione 2024.1 ed eseguire i test iniziali prima di eseguire la migrazione a SQL.
No. La migrazione è facoltativa e se non desideri eseguirla nella versione 2024.1, potrai eseguire la migrazione a SQL in una versione futura.
Consigliamo di raddoppiare le dimensioni del DB SQL rispetto al DB Mongo esistente. Questo perché Mongo comprime le dimensioni del database mentre in MSSQL la compressione non viene eseguita.
Per i test, è possibile eseguire lo strumento di migrazione quando il servizio è in esecuzione. Una volta completati i test, elimina tutti i record (non le tabelle) dal database SQL prima di eseguire la migrazione effettiva. Arresta completamente il servizio per la migrazione effettiva e al termine tutti i record verranno spostati.
Sì. Se lo strumento di migrazione viene interrotto o arrestato prima di aver completato la migrazione, continuerà a trasferire i record riprendendo dal punto in cui era stato interrotto. Ciò accade solo se il servizio resta disattivato e il database non viene modificato durante il periodo di arresto.
Se si interrompe la migrazione e il DB Mongo viene modificato, quando il servizio viene avviato dovrà essere cancellato, il contenuto della tabella SQL ma non le tabelle stesse prima di eseguire nuovamente lo strumento di migrazione.
Nella finestra dei risultati vengono visualizzati 0 errori e i log mostrano tutti i record trasferiti da MongoDB a MSSQL.
bcp_batch
Esempio di messaggio di errore:
MongoToSQL_Migration_Macro (829): Migrator (22): Record #17: BatchTransferProcess (574): Record #1: Tool #9: Unable to find address for bcp_batch”
Quando si verifica questo errore? Durante la migrazione; l'errore viene visualizzato nella finestra dei risultati.
Soluzione: assicurati che sia installato e configurato il driver SQL corretto (driver ODBC 17 per SQL).
Avvio del servizio non riuscito dopo la migrazione
Esempio di messaggio di errore (nei log di servizio):
ERROR,1,AlteryxServerMigrator,migrationLogger,ExecuteServerSqlDbMigrations,Server SQL database migrations have failed: Exception has been thrown by the target of an invocation.
Quando si verifica questo errore?
Dopo la migrazione; l'errore viene visualizzato in \Alteryx\Service\alteryx-migration.csv.
Questo errore può verificarsi se non specifichi correttamente un driver come parte della stringa di connessione dell'interfaccia utente di Server.
Soluzione:
PRIMA della migrazione dei dati a MSSQL, AlteryxService deve essere avviato almeno una volta con MongoDB come backend. In questo modo lo schema MongoDB viene aggiornato correttamente.
Rivedi le stringhe di connessione. In particolare, assicurati di non specificare un driver nella stringa di connessione della persistenza dell'interfaccia utente di Server. Per ulteriori informazioni, accedi a stringhe di connessione avanzate di DB SQL.
Errore di conversione da stringa a numero
Esempio di messaggio di errore:
Error: MongoToSQL_Migration_Macro (829): Migrator (22): Record #54: BatchTransferProcess (574): Record #1: Tool #2: Error SQLFetch: [Simba][Support] (50090) Conversion from string to number failed with value ''[Simba][Support] (50090) Conversion from string to number failed with value ''[Simba][Support] (50090) Conversion from string to number failed with value ''
Quando si verifica questo errore? Durante la migrazione; l'errore viene visualizzato nella finestra dei risultati.
Soluzione: AlteryxService deve essere avviato almeno una volta con MongoDB come back-end PRIMA di migrare i dati a MSSQL. In questo modo lo schema MongoDB viene aggiornato correttamente.
AlteryxGallery.alteryx_server.Table_Name
Esempio di messaggio di errore:
Error: MongoToSQL_Migration_Macro (829): Tool #46: Error opening "SELECT COUNT(DISTINCT Primary_Key) AS Count_distinct FROM AlteryxGallery.alteryx_server.Table_Name": No Columns Returned.
Quando si verifica questo errore? Durante la migrazione; l'errore viene visualizzato nella finestra dei risultati.
Soluzione:
Assicurati che lo schema MongoDB sia PUBBLICATO in MongoDB durante la configurazione del driver Simba.
Assicurati di definire l'origine dell'autenticazione appropriata durante la creazione delle credenziali DCM per ogni connessione. Per accedere alla casella di testo Origine dell'autenticazione, durante la creazione delle credenziali espandi la sezione Parametri avanzati sotto le voci Nome utente e Password.
Se utilizzi la versione integrata di MongoDB, sono necessarie due credenziali separate per l'origine dell'autenticazione: una mediante il database AlteryxService e l'altra mediante il database AlteryxGallery. Per ulteriori informazioni, consulta la Guida alla migrazione da Mongo a SQL.
Comando non autorizzato durante l'installazione dello schema MongoDB
Esempio di messaggio di errore:
[Simba][MongoDBODBC] (110) Error from MongoDB Client: not authorized on test to execute command { insert: "DatabaseMetadata_SchemaMap", ordered: true, $db: "test", lsid: { id: UUID("9819f76d-486b-4722-a4f1-f8398cd9a4ae") } } (Error Code: 13)
Quando si verifica questo errore? Durante il tentativo di pubblicare lo schema MongoDB durante l'installazione del driver Simba.
Soluzione: assicurati che il database di autenticazione sia impostato sul database di destinazione. Quindi, quando viene creata la voce DSN per AlteryxGallery, imposta il database di autenticazione su AlteryxGallery invece che su admin.
Se la migrazione non riesce, il flusso di lavoro genera degli errori. In tal caso, segnala l'errore riportato nella finestra Risultati e invia al team di supporto eventuali screenshot e i file di log creati durante l'esecuzione.
Se la migrazione non riesce, puoi avviare nuovamente AlteryxService e continuare a utilizzare MongoDB. A questo punto, Mongo è ancora connesso e funzionante, quindi non è necessario fare altro per continuare a utilizzare Mongo se la migrazione non viene portata a termine.
Se è stato eseguito un backup del file RuntimeSettings.xml prima della migrazione, puoi sostituirlo con il file RuntimeSettings.xml corrente (può essere utile eseguire il backup di questi due file). Tuttavia, le modifiche apportate a Server durante la connessione a SQL non compariranno dopo essere tornati a MongoDB.
No. I dati restano invariati. Tuttavia, viene creata una raccolta per salvare lo schema per il driver ODBC Simba per MongoDB.
La migrazione da MongoDB a SQL non è attualmente supportata per gli ambienti FIPS. Tuttavia, è possibile configurare NUOVI ambienti FIPS utilizzando MSSQL gestito dall'utente.