SlideShare una empresa de Scribd logo
1 de 36
Firebird’s big databases Dmitry Kuzmenko, kdv@ib-aid.com IBSurgeon
Agenda What is a big Firebird database? 1 Terabyte (1024Gb) database test Real-world examples Our statistics for databases sizes growth Peculiarities of big databases maintenance Backup/restore approach Health checks for indices and data Automated maintenance with FBDataGuard Licensing changes in IBSurgeon No more “Personal” Focus on preventing corruptions, not fixing
What is a big Firebird database?
What is a big Firebird database? Pre-history 2005  IBSurgeon found 37 gigabytes per table limit in Firebird 1.0-1.5 and all InterBase version 2006 Firebird 2.0 fixes that limit, and introduces nbackup AVARDA (ERP) shows working with the 100gb database 2009 – IBSurgeon created 1 TB Firebird database http://www.ib-aid.com/articles/item104
What is a big Firebird database? Examples from our customers BAS-X, Australia, warehouse & ERP 200-450 GB, no BLOBs Watermark, UK, scanned documents and full-text search 300+ GBs, BLOBs Profitmed, Russia, medical distribution company 50 GB, no BLOBs  Avarda, Russia, ERP 100Gb, no BLOBs Megafon, Russian cell operator 50 GB, cell information storage, no BLOBs
Sizes of Firebird databases (IBSurgeon’s customers statistics)
Peculiarities of big databases maintenance
Usually Firebird database draws simply Firebird because it is believed as something simple.
Zero maintenance? Self-tuned in 90% cases Default firebird.conf is good enough Default database parameters: sweep, buffers, etc are good enough Page size 4096 is Ok Maintenance is simple Just make backup/restore Not true for big databases.
Big databases are hard to maintain Backup/restore cycle can take hours Depends on data density and HDD performance – numeric data are restored slowly Bad example - 1 hour to restore 3.6 GB database Good example – 12 hours to backup 450 Gb database Sweep takes from 30 minutes to 4 hours For 50Gb database gfix of the 37 GB database takes 1-2 hours Restore of 50 GB database takes 4 hours
Big database has high business requirements Profitmed ~450 concurrent users 50 gigabyte database with very intensive load, +1Gb/month 12 hours x 7 days work mode high availability requirements "warn us at least 5 minutes before crush“ Losses in case of 1 day stop ~$50000  Firebird 1.5 Classic 64 bit 64-bit CentOS Linux, 64Gb RAM, SCSI  ,[object Object]
Multi-user backup takes 2 hours
Restore takes 4 hours
nbackup is not available in Firebird 1.5, plain copy is used (with shutdown)
Sweep
only manual
from 30 minutes to 1 hour
2 times per day,[object Object]
Firebird detailsFiles structure delta - Main database file 0-level - Volume files Database file - delta (nbackup) andincremental backups Volume 1 Volume N - External tables
Firebird detailsInternal structure Metadata Data in tables Indices BLOBs
Key difference between small and big databases Small database – backup/restore and relax Just make backup/restore – it creates database from scratch and removes all problems Transaction issues and other problems does have time to grow between backup/restore cycles Big database – need to check and maintain in several steps…
Big database requires individual maintenance plan  Maintenance plan depends on size of database and work mode (8x5, 24x7) Backups scheme is not simple Perform test restores separately To be checked Errors – in firebird.log and run error checking quries on live database Metadata – check integrity  Metadata limits Data & BLOBs – walk through data, check segmentation Indices – check indices health Transactions – any gaps, garbage growth, other problems
Everyday minimal (!) maintenance plan for big database
Example of backup plan for big Firebird database Maintenance server Main server Firebird database Nbackup copy Checking restore Gbak-b And each step should be confirmed and reported.
What to monitor-1 Server and database errors Server and database availability Check all changes in firebird.log Check metadata Transactions Transaction markers monitoring (garbage problems) Limit (2 billions between backup/restore) Users Min/max/avg users
What to monitor-2 Database files Single volume and multi-volume Paths – where to stored (not at the same drive with temp files and backups!) Sizes and growth limits Delta-files (nbackup) Life-time and sizes Backup files Existence, sizes and growth limits
What to monitor-3 Temp files Firebird Overall size and quantity Number of formats per table No more than 255 Less formats in production Non-activated and deactivated indices Deactivated – explicitly deactivated (why deactivated?) Non-activated – indicates problems during restore
What to monitor-4 Periodical statistics (gstat) Firebird server version Latest patches are recommended Firebird installation size Firebird logs size and paths
Maintenance-1 Backups Revolver (days, week, month copies) backups Backup depth Checking restore (need to check results) Growth prognosis (if not enough space, backup should be canceled) Control backup time (too long backup indicates problems)
Maintenance-2 Indices Recalculate indices statistics Selected or excluded Check index status – active/in-active/non-activated Check physical index health
Maintenance-3 Validate database with gfix Don’t forget to shutdown database Analysis (includingfirebird.log) Metadata validation Check important system tables Firebird.log maintenance When log becomes very big, copy it to backup log files And some more things….
Your administrator definitely does all these steps…
…especially in remote offices.
And this is not enough! Business wants to have warranty  - even if hardware fails data should be recovered!
That’s why we created FBDATAguard
FBDataGuarddoes all above things… Watches database files, volumes, deltas, performs and checks backups in the right way Verifies metadata, data and indices Watches for errors, limits and wrong versions Sends alerts and recommendations

Más contenido relacionado

La actualidad más candente

Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Spark Summit
 
MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016
Wagner Bianchi
 
MySQL Server Settings Tuning
MySQL Server Settings TuningMySQL Server Settings Tuning
MySQL Server Settings Tuning
guest5ca94b
 

La actualidad más candente (20)

Cost-Based Optimizer in Apache Spark 2.2
Cost-Based Optimizer in Apache Spark 2.2 Cost-Based Optimizer in Apache Spark 2.2
Cost-Based Optimizer in Apache Spark 2.2
 
Analyzing SQL Server wait stats, hands-on!
Analyzing SQL Server wait stats, hands-on!Analyzing SQL Server wait stats, hands-on!
Analyzing SQL Server wait stats, hands-on!
 
SparkSQL: A Compiler from Queries to RDDs
SparkSQL: A Compiler from Queries to RDDsSparkSQL: A Compiler from Queries to RDDs
SparkSQL: A Compiler from Queries to RDDs
 
[❤PDF❤] Oracle 19c Database Administration Oracle Simplified
[❤PDF❤] Oracle 19c Database Administration Oracle Simplified [❤PDF❤] Oracle 19c Database Administration Oracle Simplified
[❤PDF❤] Oracle 19c Database Administration Oracle Simplified
 
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
 
Flink Forward Berlin 2017: Piotr Nowojski - "Hit me, baby, just one time" - B...
Flink Forward Berlin 2017: Piotr Nowojski - "Hit me, baby, just one time" - B...Flink Forward Berlin 2017: Piotr Nowojski - "Hit me, baby, just one time" - B...
Flink Forward Berlin 2017: Piotr Nowojski - "Hit me, baby, just one time" - B...
 
PostgreSQL - Haute disponibilité avec Patroni
PostgreSQL - Haute disponibilité avec PatroniPostgreSQL - Haute disponibilité avec Patroni
PostgreSQL - Haute disponibilité avec Patroni
 
Spark performance tuning - Maksud Ibrahimov
Spark performance tuning - Maksud IbrahimovSpark performance tuning - Maksud Ibrahimov
Spark performance tuning - Maksud Ibrahimov
 
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentalsDB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
 
Parallelizing with Apache Spark in Unexpected Ways
Parallelizing with Apache Spark in Unexpected WaysParallelizing with Apache Spark in Unexpected Ways
Parallelizing with Apache Spark in Unexpected Ways
 
The Current State of Table API in 2022
The Current State of Table API in 2022The Current State of Table API in 2022
The Current State of Table API in 2022
 
MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016
 
MySQL Server Settings Tuning
MySQL Server Settings TuningMySQL Server Settings Tuning
MySQL Server Settings Tuning
 
Dimensional Modeling Basic Concept with Example
Dimensional Modeling Basic Concept with ExampleDimensional Modeling Basic Concept with Example
Dimensional Modeling Basic Concept with Example
 
TFA Collector - what can one do with it
TFA Collector - what can one do with it TFA Collector - what can one do with it
TFA Collector - what can one do with it
 
Cloud-Native Apache Spark Scheduling with YuniKorn Scheduler
Cloud-Native Apache Spark Scheduling with YuniKorn SchedulerCloud-Native Apache Spark Scheduling with YuniKorn Scheduler
Cloud-Native Apache Spark Scheduling with YuniKorn Scheduler
 
InfluxDB IOx Tech Talks: Intro to the InfluxDB IOx Read Buffer - A Read-Optim...
InfluxDB IOx Tech Talks: Intro to the InfluxDB IOx Read Buffer - A Read-Optim...InfluxDB IOx Tech Talks: Intro to the InfluxDB IOx Read Buffer - A Read-Optim...
InfluxDB IOx Tech Talks: Intro to the InfluxDB IOx Read Buffer - A Read-Optim...
 
PostgreSQL High_Performance_Cheatsheet
PostgreSQL High_Performance_CheatsheetPostgreSQL High_Performance_Cheatsheet
PostgreSQL High_Performance_Cheatsheet
 
Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...
 
Koalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache SparkKoalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache Spark
 

Destacado (6)

Firebird recovery tools and techniques by IBSurgeon
Firebird recovery tools and techniques by IBSurgeonFirebird recovery tools and techniques by IBSurgeon
Firebird recovery tools and techniques by IBSurgeon
 
Firebird grupo3
Firebird grupo3Firebird grupo3
Firebird grupo3
 
Mer modelo entidad relación
Mer   modelo entidad relaciónMer   modelo entidad relación
Mer modelo entidad relación
 
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpringオープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
 
Firebird v2.1.4.installation guide
Firebird v2.1.4.installation guideFirebird v2.1.4.installation guide
Firebird v2.1.4.installation guide
 
Understandung Firebird optimizer, by Dmitry Yemanov (in English)
Understandung Firebird optimizer, by Dmitry Yemanov (in English)Understandung Firebird optimizer, by Dmitry Yemanov (in English)
Understandung Firebird optimizer, by Dmitry Yemanov (in English)
 

Similar a Firebird's Big Databases (in English)

Firebird Anti-Corruption Approach
Firebird Anti-Corruption ApproachFirebird Anti-Corruption Approach
Firebird Anti-Corruption Approach
Alexey Kovyazin
 
MySQL enterprise backup overview
MySQL enterprise backup overviewMySQL enterprise backup overview
MySQL enterprise backup overview
郁萍 王
 
Oracle apps dba training dba technologies
Oracle apps dba training   dba technologiesOracle apps dba training   dba technologies
Oracle apps dba training dba technologies
sanind88
 

Similar a Firebird's Big Databases (in English) (20)

Firebird Anti-Corruption Approach
Firebird Anti-Corruption ApproachFirebird Anti-Corruption Approach
Firebird Anti-Corruption Approach
 
Firebird database recovery and protection for enterprises and ISV
Firebird database recovery and protection for enterprises and ISVFirebird database recovery and protection for enterprises and ISV
Firebird database recovery and protection for enterprises and ISV
 
Dba tuning
Dba tuningDba tuning
Dba tuning
 
Health Check Your DB2 UDB For Z/OS System
Health Check Your DB2 UDB For Z/OS SystemHealth Check Your DB2 UDB For Z/OS System
Health Check Your DB2 UDB For Z/OS System
 
Geek Sync | Guide to Understanding and Monitoring Tempdb
Geek Sync | Guide to Understanding and Monitoring TempdbGeek Sync | Guide to Understanding and Monitoring Tempdb
Geek Sync | Guide to Understanding and Monitoring Tempdb
 
Presentation backup and recovery best practices for very large databases (v...
Presentation   backup and recovery best practices for very large databases (v...Presentation   backup and recovery best practices for very large databases (v...
Presentation backup and recovery best practices for very large databases (v...
 
Exchange Server 2013 Database and Store Changes
Exchange Server 2013 Database and Store ChangesExchange Server 2013 Database and Store Changes
Exchange Server 2013 Database and Store Changes
 
Firebird migration: from Firebird 1.5 to Firebird 2.5
Firebird migration: from Firebird 1.5 to Firebird 2.5Firebird migration: from Firebird 1.5 to Firebird 2.5
Firebird migration: from Firebird 1.5 to Firebird 2.5
 
Hoodie: Incremental processing on hadoop
Hoodie: Incremental processing on hadoopHoodie: Incremental processing on hadoop
Hoodie: Incremental processing on hadoop
 
Galaxy Big Data with MariaDB
Galaxy Big Data with MariaDBGalaxy Big Data with MariaDB
Galaxy Big Data with MariaDB
 
Best Practices for Becoming an Exceptional Postgres DBA
Best Practices for Becoming an Exceptional Postgres DBA Best Practices for Becoming an Exceptional Postgres DBA
Best Practices for Becoming an Exceptional Postgres DBA
 
Top 10 database optimization tips
Top 10 database optimization tipsTop 10 database optimization tips
Top 10 database optimization tips
 
MySQL enterprise backup overview
MySQL enterprise backup overviewMySQL enterprise backup overview
MySQL enterprise backup overview
 
5 backuprecoveryw imp
5 backuprecoveryw imp5 backuprecoveryw imp
5 backuprecoveryw imp
 
BACKUP & RECOVERY IN DBMS
BACKUP & RECOVERY IN DBMSBACKUP & RECOVERY IN DBMS
BACKUP & RECOVERY IN DBMS
 
Oracle apps dba training dba technologies
Oracle apps dba training   dba technologiesOracle apps dba training   dba technologies
Oracle apps dba training dba technologies
 
Database Dumps and Backups
Database Dumps and BackupsDatabase Dumps and Backups
Database Dumps and Backups
 
Espc17 make your share point fly by tuning and optimising sql server
Espc17 make your share point  fly by tuning and optimising sql serverEspc17 make your share point  fly by tuning and optimising sql server
Espc17 make your share point fly by tuning and optimising sql server
 
Make your SharePoint fly by tuning and optimizing SQL Server
Make your SharePoint  fly by tuning and optimizing SQL ServerMake your SharePoint  fly by tuning and optimizing SQL Server
Make your SharePoint fly by tuning and optimizing SQL Server
 
VLDB Administration Strategies
VLDB Administration StrategiesVLDB Administration Strategies
VLDB Administration Strategies
 

Más de Alexey Kovyazin

Más de Alexey Kovyazin (20)

High-load performance testing: Firebird 2.5, 3.0, 4.0
High-load performance testing:  Firebird 2.5, 3.0, 4.0High-load performance testing:  Firebird 2.5, 3.0, 4.0
High-load performance testing: Firebird 2.5, 3.0, 4.0
 
Fail-Safe Cluster for FirebirdSQL and something more
Fail-Safe Cluster for FirebirdSQL and something moreFail-Safe Cluster for FirebirdSQL and something more
Fail-Safe Cluster for FirebirdSQL and something more
 
Новые возможности языка SQL в Firebird 3.0
Новые возможности языка SQL в Firebird 3.0Новые возможности языка SQL в Firebird 3.0
Новые возможности языка SQL в Firebird 3.0
 
How Firebird transactions work
How Firebird transactions workHow Firebird transactions work
How Firebird transactions work
 
Professional tools for Firebird optimization and maintenance from IBSurgeon
Professional tools for Firebird optimization and maintenance from IBSurgeonProfessional tools for Firebird optimization and maintenance from IBSurgeon
Professional tools for Firebird optimization and maintenance from IBSurgeon
 
Firebird migration: from Firebird 1.5 to Firebird 2.5
Firebird migration: from Firebird 1.5 to Firebird 2.5Firebird migration: from Firebird 1.5 to Firebird 2.5
Firebird migration: from Firebird 1.5 to Firebird 2.5
 
Firebird Dataguard (Russian)
Firebird Dataguard (Russian)Firebird Dataguard (Russian)
Firebird Dataguard (Russian)
 
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
 
Firebird DataGuard - Еще раз об уверенности в завтрашнем дне
Firebird DataGuard -  Еще раз об уверенности в завтрашнем днеFirebird DataGuard -  Еще раз об уверенности в завтрашнем дне
Firebird DataGuard - Еще раз об уверенности в завтрашнем дне
 
Firebird usage promo draft
Firebird usage promo draftFirebird usage promo draft
Firebird usage promo draft
 
FBScanner: IBSurgeon's tool to solve all types of performance problems with F...
FBScanner: IBSurgeon's tool to solve all types of performance problems with F...FBScanner: IBSurgeon's tool to solve all types of performance problems with F...
FBScanner: IBSurgeon's tool to solve all types of performance problems with F...
 
Firebird 2.5 - вектор дальнейшего развития, Dmitry Yemanov, (in Russian)
Firebird 2.5 - вектор дальнейшего развития, Dmitry Yemanov, (in Russian)Firebird 2.5 - вектор дальнейшего развития, Dmitry Yemanov, (in Russian)
Firebird 2.5 - вектор дальнейшего развития, Dmitry Yemanov, (in Russian)
 
Firebird: cost-based optimization and statistics, by Dmitry Yemanov (in English)
Firebird: cost-based optimization and statistics, by Dmitry Yemanov (in English)Firebird: cost-based optimization and statistics, by Dmitry Yemanov (in English)
Firebird: cost-based optimization and statistics, by Dmitry Yemanov (in English)
 
СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)
СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)
СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)
 
Open Source: взгляд изнутри, Дмитрий Еманов (The Firebird Project) (in Russian)
Open Source: взгляд изнутри, Дмитрий Еманов (The Firebird Project) (in Russian)Open Source: взгляд изнутри, Дмитрий Еманов (The Firebird Project) (in Russian)
Open Source: взгляд изнутри, Дмитрий Еманов (The Firebird Project) (in Russian)
 
Firebird Scalability, by Dmitry Yemanov (in English)
Firebird Scalability, by Dmitry Yemanov (in English)Firebird Scalability, by Dmitry Yemanov (in English)
Firebird Scalability, by Dmitry Yemanov (in English)
 
Firebird 2.1 What's New by Vladislav Khorsun (English)
Firebird 2.1 What's New by Vladislav Khorsun (English)Firebird 2.1 What's New by Vladislav Khorsun (English)
Firebird 2.1 What's New by Vladislav Khorsun (English)
 
Firebird: Универсальная СУБД. Краткая презентация на Интероп 2008, Дмитрий Ем...
Firebird: Универсальная СУБД. Краткая презентация на Интероп 2008, Дмитрий Ем...Firebird: Универсальная СУБД. Краткая презентация на Интероп 2008, Дмитрий Ем...
Firebird: Универсальная СУБД. Краткая презентация на Интероп 2008, Дмитрий Ем...
 
Firebird Roadmap-2006 Текущее состояние разработки и перспективы развития (in...
Firebird Roadmap-2006 Текущее состояние разработки и перспективы развития (in...Firebird Roadmap-2006 Текущее состояние разработки и перспективы развития (in...
Firebird Roadmap-2006 Текущее состояние разработки и перспективы развития (in...
 
Firebird в 2008: новые возможности и планы по дальнейшему развитию, by Дмитри...
Firebird в 2008: новые возможности и планы по дальнейшему развитию, by Дмитри...Firebird в 2008: новые возможности и планы по дальнейшему развитию, by Дмитри...
Firebird в 2008: новые возможности и планы по дальнейшему развитию, by Дмитри...
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Firebird's Big Databases (in English)

  • 1. Firebird’s big databases Dmitry Kuzmenko, kdv@ib-aid.com IBSurgeon
  • 2. Agenda What is a big Firebird database? 1 Terabyte (1024Gb) database test Real-world examples Our statistics for databases sizes growth Peculiarities of big databases maintenance Backup/restore approach Health checks for indices and data Automated maintenance with FBDataGuard Licensing changes in IBSurgeon No more “Personal” Focus on preventing corruptions, not fixing
  • 3. What is a big Firebird database?
  • 4. What is a big Firebird database? Pre-history 2005 IBSurgeon found 37 gigabytes per table limit in Firebird 1.0-1.5 and all InterBase version 2006 Firebird 2.0 fixes that limit, and introduces nbackup AVARDA (ERP) shows working with the 100gb database 2009 – IBSurgeon created 1 TB Firebird database http://www.ib-aid.com/articles/item104
  • 5. What is a big Firebird database? Examples from our customers BAS-X, Australia, warehouse & ERP 200-450 GB, no BLOBs Watermark, UK, scanned documents and full-text search 300+ GBs, BLOBs Profitmed, Russia, medical distribution company 50 GB, no BLOBs Avarda, Russia, ERP 100Gb, no BLOBs Megafon, Russian cell operator 50 GB, cell information storage, no BLOBs
  • 6. Sizes of Firebird databases (IBSurgeon’s customers statistics)
  • 7. Peculiarities of big databases maintenance
  • 8. Usually Firebird database draws simply Firebird because it is believed as something simple.
  • 9. Zero maintenance? Self-tuned in 90% cases Default firebird.conf is good enough Default database parameters: sweep, buffers, etc are good enough Page size 4096 is Ok Maintenance is simple Just make backup/restore Not true for big databases.
  • 10. Big databases are hard to maintain Backup/restore cycle can take hours Depends on data density and HDD performance – numeric data are restored slowly Bad example - 1 hour to restore 3.6 GB database Good example – 12 hours to backup 450 Gb database Sweep takes from 30 minutes to 4 hours For 50Gb database gfix of the 37 GB database takes 1-2 hours Restore of 50 GB database takes 4 hours
  • 11.
  • 14. nbackup is not available in Firebird 1.5, plain copy is used (with shutdown)
  • 15. Sweep
  • 17. from 30 minutes to 1 hour
  • 18.
  • 19. Firebird detailsFiles structure delta - Main database file 0-level - Volume files Database file - delta (nbackup) andincremental backups Volume 1 Volume N - External tables
  • 20. Firebird detailsInternal structure Metadata Data in tables Indices BLOBs
  • 21. Key difference between small and big databases Small database – backup/restore and relax Just make backup/restore – it creates database from scratch and removes all problems Transaction issues and other problems does have time to grow between backup/restore cycles Big database – need to check and maintain in several steps…
  • 22. Big database requires individual maintenance plan Maintenance plan depends on size of database and work mode (8x5, 24x7) Backups scheme is not simple Perform test restores separately To be checked Errors – in firebird.log and run error checking quries on live database Metadata – check integrity Metadata limits Data & BLOBs – walk through data, check segmentation Indices – check indices health Transactions – any gaps, garbage growth, other problems
  • 23. Everyday minimal (!) maintenance plan for big database
  • 24. Example of backup plan for big Firebird database Maintenance server Main server Firebird database Nbackup copy Checking restore Gbak-b And each step should be confirmed and reported.
  • 25. What to monitor-1 Server and database errors Server and database availability Check all changes in firebird.log Check metadata Transactions Transaction markers monitoring (garbage problems) Limit (2 billions between backup/restore) Users Min/max/avg users
  • 26. What to monitor-2 Database files Single volume and multi-volume Paths – where to stored (not at the same drive with temp files and backups!) Sizes and growth limits Delta-files (nbackup) Life-time and sizes Backup files Existence, sizes and growth limits
  • 27. What to monitor-3 Temp files Firebird Overall size and quantity Number of formats per table No more than 255 Less formats in production Non-activated and deactivated indices Deactivated – explicitly deactivated (why deactivated?) Non-activated – indicates problems during restore
  • 28. What to monitor-4 Periodical statistics (gstat) Firebird server version Latest patches are recommended Firebird installation size Firebird logs size and paths
  • 29. Maintenance-1 Backups Revolver (days, week, month copies) backups Backup depth Checking restore (need to check results) Growth prognosis (if not enough space, backup should be canceled) Control backup time (too long backup indicates problems)
  • 30. Maintenance-2 Indices Recalculate indices statistics Selected or excluded Check index status – active/in-active/non-activated Check physical index health
  • 31. Maintenance-3 Validate database with gfix Don’t forget to shutdown database Analysis (includingfirebird.log) Metadata validation Check important system tables Firebird.log maintenance When log becomes very big, copy it to backup log files And some more things….
  • 32. Your administrator definitely does all these steps…
  • 33. …especially in remote offices.
  • 34. And this is not enough! Business wants to have warranty - even if hardware fails data should be recovered!
  • 35. That’s why we created FBDATAguard
  • 36. FBDataGuarddoes all above things… Watches database files, volumes, deltas, performs and checks backups in the right way Verifies metadata, data and indices Watches for errors, limits and wrong versions Sends alerts and recommendations
  • 37. And even more – protects from hardware failures FBDataGuard Extractor extracts data from corrupted database and inserts to the new Metadata repository New БД Tables data BLOBs
  • 38. Firebird DataGuard Watch for 26 important database and server parameters Alerts for potential and real problem by email Proper automation of database maintenance Windows, Linux, MacOS, Firebird 1.5-2.1 Special licensing for ISV (Independent Software Vendors) Firebird developers
  • 40. Why to change? Prevent corruptions instead of fixing It’s time to fight reasons, not consequences Wwronglicense understanding No more Personal Software-As-A-Service offer – 1 month and 1 instance
  • 41. Upgrade paths Pack Support 4.0 FirstAID Tech Support 3.0 Cancelled
  • 42. Only at FDD 2010