問題タブ [azure-elastic-sharding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Azure Elastic DB - 各シャードでスキーマを変更する
私は Azure の Elastic DB 機能を初めて使用しましたが、本当に素晴らしいと思います。しかし、私が見つけられなかったのは、すべてのシャードのスキーマを更新する方法です。したがって、複数のシャードがあり、列、テーブルを追加/削除するか、ストアド プロシージャを追加/削除したい場合。
すべてのシャードは、1 つずつアクセスして変更できるデータベースですが、一度に複数のシャードにスキーマの変更を公開する方法はありませんか?
azure-sql-database - Microsoft.Azure.SqlDatabase.ElasticScale.ShardManagement での Azure SQL AccessToken 認証の使用
OpenConnectionForKey() を実行するときに AccessToken を使用するようにログイン方法を変更できる場所がわかりません。また、SqlConnection でトークンを使用するように creds を指定した後、ログイン方法を変更できません。
c# - ShardMapManager および ShardMap オブジェクトは、シングルトンとしてグローバルにキャッシュする必要がありますか?
キーによって分割された複数の Azure SQL データベースを含むアプリケーションがあります。シャード データベース接続を開くたびに、ShardMapManager と ListShardMap を取得します。
次に、シャード キーを に渡して接続を開きますOpenConnectionForKey()
。
すべてのシャードに対して 1 つのシャード マップと 1 つのリスト マップのみを使用するので、私の質問は、これらのオブジェクトをグローバル変数にキャッシュできますか? それらはスレッドセーフになるように設計されていますか?それはパフォーマンスに役立ちますか?
アップデート
私はここでhttps://docs.microsoft.com/en-us/azure/sql-database/sql-database-elastic-scale-shard-map-management#constructing-a-shardmapmanagerをShardMapManager
実際に一度作成する必要があることを見つけましたグローバル変数に格納されます。
しかし、どうListShardMap
ですか?1 つしかない場合、それもグローバル変数に格納できますか?