Elastic database. Split-merge a tool when splitting an existing shard

We recently switched to Azure Elastic Scale Database. Therefore, when we need to create another shard, our DBA splits the existing shard manually. Therefore, I was tasked with automating this process so that we can easily split

create a shard or merge

several skulls into one. I am studying and following the Tutorial on Recycling Split-Merge Using Elastic Base . Another tutorial here says the following in the Requirements and Limitations section :

Currently, shards must exist and be registered on the shard map before a split-fusion operation can be performed on these shards.

So I still need to create a new shard manually and register it in the shard map, for which I might have to use a different tool. A similar schema for all referenced and referenced tables must exist on the target shard prior to any split / merge / move operation.

So is this split / merge feature not automated yet or am I looking at the wrong place?

I want all these operations to be automated. Can you name me some complete software or tutorial for this?

+3


source to share


2 answers


Cbattlegear is correct - the process has not yet been integrated into one tool. Currently, Split / Merge only handles data movement operations. However, there is a PowerShell example to organize the whole process - including providing the target databases, adding it to the shard map, and invoking split / merge operations. You can find it in the Split / Combine testing section of the tutorial .

Some customers simplify this process by maintaining an empty gold copy database containing all of the schema objects required for shards. Then, when a new shard is required, they issue the CREATE DATABASE AS COPY command to quickly create a new database from the master copy. This step can also be scripted.



Finally, besides Powershell, there is a .Net API for Split-Merge that allows you to integrate tool tools with other steps or APIs inside a C # executable. The API is included in the Split / Merge Nuget package and documented here .

+4


source


The shortest answer to this question is not everything in one tool.



This is mainly because each delineated database is unique in how it is configured and what the individual shard schema is. Because of this, you must manually create the shard and register it so that you can transfer data to it.

+2


source







All Articles