Server SQL DBに関するお客様からのよくある質問
この記事では、ユーザー管理SQLを永続レイヤーとして使用するAlteryx Serverのサポートの概要と、MongoDBからSQLへの移行について説明します。
SQLに関するFAQ
1. サポートされているSQLのバージョンは何ですか?
MSSQL Server 2019と2022を正式にサポートしています。
2. クラウドSQLのバージョンはサポートされていますか?
公式にサポートしているバージョンは、MSSQL Server 2019と2022のみです。一部のクラウドSQLバージョンは動作する可能性がありますが、Alteryxではサポートの対象外です。
3. SQLのセットアップに必要な権限レベルは何ですか?
SQLデータベースアクセスユーザーは、Alteryx Serverが必要とするデータベースを作成および使用するために、管理者権限を最初に持っている必要があります。SQLのセットアップが完了し、MongoDBからSQLへの移行(該当する場合)が実行されると、これらの権限を減らすことができます。ユーザーは、レコードの読み込み、書き込み、削除、テーブルの作成、削除を行うためには権限が必要ですが、完全なデータベースを作成するための権限は不要になります。
4. 組み込みデータベースのオプションとしてSQLのオプションはありますか?
いいえ。現時点では、MSSQLはユーザー管理型データベースのデータベースオプションとしてのみ提供されています。
5. SQL DBはSSL/TLS接続をサポートしていますか?
はい。
6. Kerberos SQL認証をサポートしていますか?
はい。
7. WinAuth SQL認証をサポートしていますか?
はい。
8. MongoとSQLの間でスキーマに変更はありましたか?
はい。新しいSQL DBではスキーマが若干変更されました。Mongoに直接クエリを実行していた場合は、クエリを確認してください。更新の必要がある場合があります。詳細については、SQL DBスキーマリファレンスのヘルプページを参照してください。
9. Alteryx ServiceのDBとAlteryx GalleryのDBは別個のDBである必要がありますか?
いいえ、これらのDBは同じ場所に配置できます。
10. 2024.1でSQLを使用して新しいFIPS環境を設定できますか?
はい。
11. Alteryx SQL DBを既存のSQLデプロイに追加できますか?
はい。SQL Serverインスタンスは、他のデータベースインスタンスと同時に実行できます。
12. MongoとSQLのパフォーマンスに違いはありますか?
ほとんどの場合、SQLとMongoのパフォーマンスは同等となるはずです。大幅にパフォーマンスが低下するのは、実行に要する時間が5秒以下のワークフローのみになります。時間の比較については、以下の表を参照してください。実行時間が5秒を超えるワークフローの場合は、パフォーマンスの違いはほとんどありません。
最も極端な例では、ユーザーが1分間に60のワークフローを実行し、それぞれが1秒を要する場合、Mongoでは1分で完了するところ、SQLでは1分15秒かかるという違いがでます。
パフォーマンスの違いは最終的にはどのようなワークフローを実行しているかによりますが、速度低下は高速で実行されるワークフローでのみ発生するため、この0.25秒の違いがパフォーマンスに大きな違いをもたらすことはありません。
Mongoワークフローの実行時間 | SQLワークフローの実行時間 |
---|---|
5秒 | 5.25秒 |
1秒 | 1.25秒 |
MongoDBからMSSQLへの移行に関するFAQ
MongoDBからSQLに移行するための詳細な手順を確認するには、MongoDBからSQLへの移行ガイドを参照してください。このFAQでは主な質問にのみ回答しているため、移行ガイドで詳しい移行手順をご確認ください。
1. 完全移行(MongoからSQL)をサポートするために2024.1にアップグレードできるServerのバージョンは何ですか?
Server 2022.1以降になります。2022.1より古いバージョンを使用している場合は、2024.1にアップグレードする前に、バージョン2022.1 - 2023.2にアップグレードすることをお勧めします。
2. MongoDBからMSSQLへの移行ツールは、組み込みMongoデータベースおよびユーザー管理Mongo (EnterpriseまたはAtlas)データベースで動作しますか?
はい。
3. SQLの移行は2024.1アップグレードに含まれていますか?
いいえ。SQLの移行は、2024.1へアップグレードした後に実行できるワークフローを介して行われます。これにより、2024.1にアップグレードして初期テストを実行してから、SQLに移行できます。
4. SQL移行ワークフローはどこでダウンロードできますか?
Alteryxダウンロードポータルからできます。
5. 2024.1ではSQLに移行しなければいけませんか?
いいえ。これはオプションの移行であり、2024.1でSQLへの移行を希望しない場合は、今後のリリースで移行できます。
6. 移行時にSQLに推奨されるデータベースのサイズはどれくらいですか?
SQL DBのサイズは、既存のMongoDBの2倍にすることをお勧めします。その理由は、Mongoがデータベースサイズを圧縮するのに対し、MSSQLでは同様の圧縮が行われないためです。
7. 移行を実行するためにサービスをオフにする必要がありますか?
テストでは、サービスの実行中に移行ツールを実行できます。テスト後、SQL DBからすべてのレコード(テーブルではなく)を削除して、その後、最終移行を実行します。最終的な移行のためにサービスを完全にシャットダウンすると、すべてのレコードが移動されます。
8. 移行が完了する前に移行ツールを停止することはできますか? 移行が中断された場合はどうなりますか?
はい。完了前に移行ツールが中断または停止された場合は、移行ツールは終了した場所から開始し、レコードの転送を続行します。ただし、これが可能なのは、サービスがオフのままで、停止中にデータベースに変更がない場合に限ります。
移行を停止した後にサービスが開始され、MongoDBに変更が加えられた場合は、移行ツールを再実行する前に、SQLテーブルの内容(テーブル自体ではなく)を削除する必要があります。
9. 移行が正常に完了したことを確認するにはどうすればよいですか?
結果ウィンドウに0個のエラーが表示され、ログにはMongoDBからMSSQLに転送されたすべてのレコードが表示されます。
10. 移行の実行中に発生する可能性のある一般的なエラーは何ですか?
bcp_batch
エラーメッセージの例:
MongoToSQL_Migration_Macro (829): Migrator (22): Record #17: BatchTransferProcess (574): Record #1: Tool #9: Unable to find address for bcp_batch”
このエラーが発生するのはいつですか? 移行中に、結果ウィンドウにこのエラーが表示されます。
解決策: 正しいSQLドライバーがインストールされ、設定されていることを確認します(ODBC SQLドライバー17)。
移行後にサービスが開始しない
エラーメッセージの例(サービスログ内):
ERROR,1,AlteryxServerMigrator,migrationLogger,ExecuteServerSqlDbMigrations,Server SQL database migrations have failed: Exception has been thrown by the target of an invocation.
このエラーが発生するのはいつですか?
移行後に、\Alteryx\Service\alteryx-migration.csvにこのエラーが表示されます。
Server UI接続文字列の一部としてドライバーを誤って指定した場合、このエラーが発生することがあります。
解決策:
データをMSSQLに移行する前に、MongoDBをバックエンドとしてAlteryxServiceを少なくとも1回起動する必要があります。これにより、MongoDBスキーマが正しく更新されます。
接続文字列を確認します。特に、Server UIの永続性接続文字列でドライバーを指定していないことを確認してください。詳細については、「SQL DBの高度な接続文字列」を参照してください。
文字列から番号への変換に失敗しました
エラーメッセージの例:
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 ''
このエラーはいつ発生しますか?: 移行中に、結果ウィンドウにこのエラーが表示されます。
解決策: データをMSSQLに移行する前に、MongoDBをバックエンドとしてAlteryxServiceを少なくとも1回起動する必要があります。これにより、MongoDBスキーマが正しく更新されます。
AlteryxGallery.alteryx_server.Table_Name
エラーメッセージの例:
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.
このエラーが発生するのはいつですか? 移行中に、結果ウィンドウにこのエラーが表示されます。
解決策:
Simbaドライバーのセットアップ中にMongoDBスキーマがMongoDBに公開されていることを確認してください。
各接続のDCM資格情報を作成するときは、適切な認証ソースを定義してください。[認証ソース]テキストボックスにアクセスするには、資格情報を作成するときに、ユーザー名とパスワードのエントリの下にある[詳細パラメーター]セクションを展開します。
組み込みのMongoDBを使用する場合は、認証ソースを取得する際にAlteryxServiceデータベースを使用する資格情報と、AlteryxGalleryデータベースを使用する資格情報の2つが必要になります。詳細については、MongoからSQLへの移行ガイドを参照してください。
MongoDBスキーマセットアップ中の不正なコマンド
エラーメッセージの例:
[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)
このエラーが発生するのはいつですか? Simbaドライバーのセットアップ中にMongoDBスキーマを公開しようとする際に発生します。
解決策: 認証データベースがターゲットデータベースに設定されていることを確認してください。したがって、AlteryxGalleryのDSNエントリを作成するときは、認証データベースを管理者ではなくAlteryxGalleryに設定します。
11. 移行が失敗した場合はどうすればよいですか?また、どのように通知されますか?
ワークフローは、障害発生時にエラーを生成します。その場合、結果ウィンドウからエラーを報告し、実行中に作成されたスクリーンショットとログファイルをサポートチームに送信してください。
移行が失敗した場合は、AlteryxServiceを再度起動してMongoDBを引き続き使用できます。この時点で、Mongoはまだ完全に接続され機能しているため、移行が失敗した場合でも、Mongoを引き続き使用するために追加の操作を行う必要はありません。
12. 移行後に、MongoDBの使用に戻したい場合はどうなりますか?
移行前にRuntimeSettings.xmlファイルのバックアップを作成した場合は、現在のRuntimeSettings.xmlファイルと切り替えることができます(これら2つのファイルのバックアップを作成すると便利です)。ただし、SQLに接続している間にServerに加えられた変更は、MongoDBに切り替えた後は反映されません。
13. SQLの移行で移行元のMongoDBに変更は加えられますか?
いいえ。データは変更されません。ただし、コレクションが1つ作成され、Simba MongoDB ODBCのスキーマが格納されます。
14. FIPSバージョンのServerからSQLに移行できますか?
MongoDBからSQLへの移行は、現在FIPS環境ではサポートされていません。ただし、新しいFIPS環境は、ユーザー管理のMSSQLを使用してセットアップできます。