3. IS scale option?
Scale Up – increases servers
characteristics, such as memory,
number of cores, drive speed and etc.
Scale Out – designs database nodes
cluster by the way of the addition of
new nodes and load balancing
Increase of IS* load
The number of users grows
Intensive growth of IS
Prerequisites of IS scale out
Variants of IS scale out
What to do?
*-here is and after “IS” means “information system”
4. IS Scaling options
Scale Up
Simplicity, scale out speed;
Early or later the scale out achieves the technical limit in terms of cores numbers,
memory, disks subsystem and then does NOT give a valid performance growth.
Scale Out
Valid effect of load balancing. The number of nodes in cluster is not limited;
Setting and adaptation difficulties for a particular application. As a rule, a change
in IS architecture and application code are required . That is complex and non-
trivial task with significant many-sided expenses: finances, time and technology,
including the application support services.
6. Variant #1. Common model of IT- system with DBMS cluster
Common Case
Users are working with data base through
single server MS SQL IS;
Systems of Back-Up, mirroring, replicating
are realized for the security purpose;
Failover Cluster is created to provide fault
tolerance.
NEEDS
To effectively distribute IS load through existing
hardware;
To increase combined IS performance by prompt
server scale out;
To optimally leverage back-ups and fault
tolerance.
Users
Terminal Servers
Servers Applications
Cluster DBMS controller
DATA BASE
Node #1 Node #2
Switching option in case of dropout
7. Variant #2. AlwaysOn technology in SQL Server cluster
What did change?
Actual copy DB is kept on each
additional node, replicating with
main node;
It is possible promptly to
transfer a work to another
DBMS sever in case of dropout.
What is worth to work on?
To use all the hardware resources
Cluster DBMS controller Cluster work
control panel
DATA BASE #1
Node #1 Node #2
Switching option in case of dropout
DATA BASE #2Data replication
Fact
Only master-node is working
while others are «off-line».
9. To balance load between cluster master –node and secondary-nodes;
To increase IS fault tolerance in case of software/hardware dropout or overload on
cluster node without any decrease in IS performance;
To provide constant 24x7 availability of database for prompt users work, as well as
for overloaded by-the-book procedure with distribution between DB severs in
DBMS cluster;
To increase data processing rate.
MAIN TASKS OF DATA CLUSTER SOLUTION:
DATA CLUSTER
10. DATA CLUSTER ARCHITECTURE
AlwaysOn was added,
allowing to make analysis of
DB requests and distribute
them between cluster nodes
in depends on their load
USERS USERSAPPLICATION/WEB APPLICATION
ASYNCHRONOUS DATA BASE
EXCHANGE (ALWAYSON)
ASYNCHRONOUS DATA BASE
EXCHANGE (ALWAYSON)
FILE STORE BD1FILE STORE BD1FILE STORE BD1
MS SQL 2012/2014
NODE 1 (MASTER)
MS SQL 2012/2014
NODE 2 (SLAVE)
MS SQL 2012/2014
NODE 3 (SLAVE)
DATA CLUSTER DATA CLUSTER DATA CLUSTER
CONSOLE
11. DATA CLUSTER ARCHITECTURE
It analyses current load of hardware and makes decision regarding request
balancing on data reading between master- and secondary-nodes;
It is tracking DB servers unsynchronization time and making decision regarding
requests balancing on data reading between master- and secondary-servers cluster;
It directs all the queries only on master-node DB;
In case of IS dropout it promptly switches to secondary-node and it becomes
master-node.
PRINCIPLES OF WORK PERFORMANCE
Can be adapted on any application on MS SQL base, without any changes in the
application code;
It is easy to learn («coach hints» goes from application code depends on server
choice for query performance) to increase the data processing effectivity.
ARCHITECTURE PRINCIPLES
14. DATA CLUSTER. LOAD TESTING
IN MICROSOFT TECHNOLOGY CENTER
IS: 1С 8.2.16
DB: > 1 TB
Testing scenario:
~90% - data reading
~10% - data changes
Queries SQL Intensity:
-to 25000 requests/second
Testing scenario:
For 125 sessions
For 250 sessions
For 250 sessions with increased
intensity
LOAD SERVERS
Virtual data base servers
Load server #1 Load server #3
License
server 1C
Application Server 1C
GYSTELL 1 coordinator
D
B
S
E
R
V
E
R
SHELVES OF
DB SYSTEM
GYSTELL
coordinator 1
GYSTELL
coordinator 2
GYSTELL
coordinator 3
Main Server
SQL
Additional Server
SQL
Additional Server
SQL
15. DATA CLUSTER. LOAD TESTING
IN MICROSOFT TECHNOLOGY CENTER
Facts:
Real performance growth, in case of one or two
additional nodes, composes 90-95% and 180-185%,
correspondingly. While the balanced load
distribution occurs between physical servers/cluster
nodes and lineal time performance decrease of the
main operations (proportionally to the number of
additional nodes in cluster).
High Effective Load balance
according to analytical operations between server nodes
in cluster, flexible system of setting up of load
distribution rules
IS fault tolerance
in peak moments with load distribution
IS reliability
with reserve base data in servers cluster,
having minimum deviation from main database
Average operation performance time
(in comparison with testing data on one node)
more than 250 users250 users150 users
1 node 2 node (AlwaysOn + SPDC) 3 node (AlwaysOn + SPDC)
16. DATA CLUSTER. Implementation in “Enter - Sviaznoy”
Business description:
- It stays in the TOP 10 of e-commercecompanies;
- It has more than 100 branches.
Information systemdescription:
- More than 1000 information system users;
- Data Base server MS SQL 2012 with AlwaysOn technology ;
- Data Base capacity is more than 1 TB;
- Transactionsnumber to 40-50 per second;
- Number of servers DBMS cluster nodes – 3 (1 – main, 2 – secondary).
Effect of DATA CLUSTERimplementation – high IS availabilityin the seasonal sales period:
- More 50% of the composedload is redirectedto the additional server DBMS cluster;
- In the moments of overloads (pre-holiday days and retail discounts) system performance quality
and response were improved in several times;
- The possibility of cluster SDC command usage is provided in the application code, so the client got
the possibility to make an additional increase of cluster performanceindependently.