SlideShare ist ein Scribd-Unternehmen logo
1 von 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

Weitere ähnliche Inhalte

Was ist angesagt?

The InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQLThe InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQL
Morgan Tocker
 
Presentation on Crystal Reports and Business Objects Enterprise Features
Presentation on Crystal Reports and Business Objects Enterprise FeaturesPresentation on Crystal Reports and Business Objects Enterprise Features
Presentation on Crystal Reports and Business Objects Enterprise Features
InfoDev
 

Was ist angesagt? (20)

Comparing Apache Cassandra 4.0, 3.0, and ScyllaDB
Comparing Apache Cassandra 4.0, 3.0, and ScyllaDBComparing Apache Cassandra 4.0, 3.0, and ScyllaDB
Comparing Apache Cassandra 4.0, 3.0, and ScyllaDB
 
Building Streaming Data Applications Using Apache Kafka
Building Streaming Data Applications Using Apache KafkaBuilding Streaming Data Applications Using Apache Kafka
Building Streaming Data Applications Using Apache Kafka
 
codecentric AG: CQRS and Event Sourcing Applications with Cassandra
codecentric AG: CQRS and Event Sourcing Applications with Cassandracodecentric AG: CQRS and Event Sourcing Applications with Cassandra
codecentric AG: CQRS and Event Sourcing Applications with Cassandra
 
Zeus: Uber’s Highly Scalable and Distributed Shuffle as a Service
Zeus: Uber’s Highly Scalable and Distributed Shuffle as a ServiceZeus: Uber’s Highly Scalable and Distributed Shuffle as a Service
Zeus: Uber’s Highly Scalable and Distributed Shuffle as a Service
 
Spark and S3 with Ryan Blue
Spark and S3 with Ryan BlueSpark and S3 with Ryan Blue
Spark and S3 with Ryan Blue
 
Backup and Disaster Recovery in Hadoop
Backup and Disaster Recovery in Hadoop Backup and Disaster Recovery in Hadoop
Backup and Disaster Recovery in Hadoop
 
Ruby Microservices with RabbitMQ
Ruby Microservices with RabbitMQRuby Microservices with RabbitMQ
Ruby Microservices with RabbitMQ
 
The InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQLThe InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQL
 
MariaDB MaxScale: an Intelligent Database Proxy
MariaDB MaxScale: an Intelligent Database ProxyMariaDB MaxScale: an Intelligent Database Proxy
MariaDB MaxScale: an Intelligent Database Proxy
 
What Every Developer Should Know About Database Scalability
What Every Developer Should Know About Database ScalabilityWhat Every Developer Should Know About Database Scalability
What Every Developer Should Know About Database Scalability
 
PySpark Best Practices
PySpark Best PracticesPySpark Best Practices
PySpark Best Practices
 
Evolution of MongoDB Replicaset and Its Best Practices
Evolution of MongoDB Replicaset and Its Best PracticesEvolution of MongoDB Replicaset and Its Best Practices
Evolution of MongoDB Replicaset and Its Best Practices
 
Building a Replicated Logging System with Apache Kafka
Building a Replicated Logging System with Apache KafkaBuilding a Replicated Logging System with Apache Kafka
Building a Replicated Logging System with Apache Kafka
 
High performance queues with Cassandra
High performance queues with CassandraHigh performance queues with Cassandra
High performance queues with Cassandra
 
Presentation on Crystal Reports and Business Objects Enterprise Features
Presentation on Crystal Reports and Business Objects Enterprise FeaturesPresentation on Crystal Reports and Business Objects Enterprise Features
Presentation on Crystal Reports and Business Objects Enterprise Features
 
M|18 Deep Dive: InnoDB Transactions and Write Paths
M|18 Deep Dive: InnoDB Transactions and Write PathsM|18 Deep Dive: InnoDB Transactions and Write Paths
M|18 Deep Dive: InnoDB Transactions and Write Paths
 
InfluxDB + Telegraf Operator: Easy Kubernetes Monitoring
InfluxDB + Telegraf Operator: Easy Kubernetes MonitoringInfluxDB + Telegraf Operator: Easy Kubernetes Monitoring
InfluxDB + Telegraf Operator: Easy Kubernetes Monitoring
 
第22回-第1部「この価格でここまでできる!驚愕のエントリー・ストレージ活用方法」-IBM Storwize V3700-(2012/11/29 on し...
第22回-第1部「この価格でここまでできる!驚愕のエントリー・ストレージ活用方法」-IBM Storwize V3700-(2012/11/29 on し...第22回-第1部「この価格でここまでできる!驚愕のエントリー・ストレージ活用方法」-IBM Storwize V3700-(2012/11/29 on し...
第22回-第1部「この価格でここまでできる!驚愕のエントリー・ストレージ活用方法」-IBM Storwize V3700-(2012/11/29 on し...
 
Improving fault tolerance and scaling out in Kafka Streams with Bill Bejeck |...
Improving fault tolerance and scaling out in Kafka Streams with Bill Bejeck |...Improving fault tolerance and scaling out in Kafka Streams with Bill Bejeck |...
Improving fault tolerance and scaling out in Kafka Streams with Bill Bejeck |...
 
Experiences Migrating Hive Workload to SparkSQL with Jie Xiong and Zhan Zhang
Experiences Migrating Hive Workload to SparkSQL with Jie Xiong and Zhan ZhangExperiences Migrating Hive Workload to SparkSQL with Jie Xiong and Zhan Zhang
Experiences Migrating Hive Workload to SparkSQL with Jie Xiong and Zhan Zhang
 

Andere mochten auch (7)

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)
 
Resolving Firebird performance problems
Resolving Firebird performance problemsResolving Firebird performance problems
Resolving Firebird performance problems
 

Ähnlich wie 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
 

Ähnlich wie 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
 
Life with big Firebird databases
Life with big Firebird databasesLife with big Firebird databases
Life with big Firebird databases
 
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
 

Mehr von Alexey Kovyazin

Mehr von Alexey Kovyazin (20)

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 Дмитри...
 
Firebird в 2008 году: эволюция или революция? (in Russian, by Dmitry Kuzmenko)
Firebird в 2008 году: эволюция или революция? (in Russian, by Dmitry Kuzmenko)Firebird в 2008 году: эволюция или революция? (in Russian, by Dmitry Kuzmenko)
Firebird в 2008 году: эволюция или революция? (in Russian, by Dmitry Kuzmenko)
 

Kürzlich hochgeladen

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.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...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

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