Tuning Linux For Big Firebird Database: 693GB AND 1000+ USERS
Tuning Linux For Big Firebird Database: 693GB AND 1000+ USERS
FIREBIRD DATABASE:
693GB AND 1000+ USERS
Alexey Kovyazin
www.ib-aid.com
Firebird Conference 2019
Berlin, 17-19 October
Customer: http://klinikabudzdorov.ru
• BudZdorov
• Medical centers and
hospitals in Moscow,
Saint-Petersburg and
major cities in Russia
• 17 departments
• 365 days per year, from 8-
00 to 21-00
ERP with Firebird in BudZdrorov
Central server Department’s server
Department’s
DB
Central
17 departments
Database Replica dept server
Department’s
DB
Standby for central server
Replica of
Central
Database
Central database in 2017
• Size = 453 Gb
• Daily users = from 700 to 1800 (peak)
• Hardware server
• OS = Linux CentOS 6.7
• Firebird 2.5 Classic + HQbird
• Client-server, connected through optic
with departments
• With async replica on the separate server
…and in 2019
• Size = 665 Gb
• Daily users = from 900-1100 (normal day)
to 1800 (peak)
• Hardware server
• OS = Linux CentOS 7.6.1810
• Firebird 3.0 HQbird
Users: normal day 1000-1100
Database growth: 691Gb, +0,5Gb/day
Hardware
• HP ProLiant DL380p Gen8
• 320Gb RAM
• Gen8 2x Xeon(R) CPU E5v2 @ 2.60GHz
• 24 logical cores with HT
• 4 network card
Disks
• sda (745Gb),
• 2 fibre-channel connection to SAN
(FCoE):
• sdb 1.8Tb
• sdc 1,8ТБ
Disk test
• https://ib-aid.com/dbtest
• SQL script to INSERT/UPDATE/DELETE
of 1 mln records in 1 thread
Hardware is not the best
# memory defragmentation
vm.min_free_kbytes=1048576
LockHashSlots = 40099
LockMemSize = 50M
The most important settings for database
# 16K pages, 220 GB
DefaultDbCachePages = 14080K
www.ib-aid.com
Thank you!
• [email protected]
Linux core details