|Dmitry Yemanov, Firebird Architect
Session 1: Firebird development in 2012: What's New
This session describes the development activities performed by the core team during 2012. The major part of the topic is dedicated to the Firebird v3.0 development and describes the features implemented this year and intended to be included into Alpha 1. A small showcase with Firebird 3.0 Alpha 1 will be presented. Also, the development plans for the Beta release and beyond will be unveiled. Finally, recently published maintenance releases will be briefly described.
Session 2: Optimizer: spotting issues and finding solutions
This session outlines the historical optimizer problems existed since the beginning and what has been changed with Firebird 2.x. Then the problems that still persist will be discussed, as well as possible workarounds. Then the discussion focus moves to the engine development area, showing the optimizer improvement plans targeted at Firebird v3.0, presenting what has already be attempted and can be tested right now and what's still in the pipeline.
|Vlad Khorsun, Lead Firebird developer
Session 1: Trace API: how it works and, internal implemenation and custom plugins
Trace API is one of the most powerful features which allows to track SQL connections, queries, transactions, and build advanced performance tracking and audit solutions. This presentation is devoted to the internal mechanism of TraceAPI and abilities to enhance it with custom plugins.
Session 2: Special SQL features
Firebird SQL has a lot of rarely used, but very powerful abilities. This presentation is devoted to most powerful, elegant and effective Firebird SQL practices, with examples and explanation. If your goal is to improve your Firebird SQL queries skills, this is the obligatory talk for you!
|Mark Rotteveel, JayBird (Java driver) Firebird developer
JayBird: Java and Firebird
The talk will give an overview of Jaybird and JDBC, new features in Jaybird 2.2 and the plans for the future.
- A short introduction to JDBC
- What is new in Jaybird 2.2
- Retrieving generated keys
- Improved JDBC 4.x support
- Improved OpenOffice / LibreOffice support
- Other changes
- Jaybird on Maven
- Upcoming changes in Jaybird 2.3 and later
|Jiri Cincura, Firebird.NET (Visual Studio) Firebird developer
Session 1: What's new in ADO.NET provider for Firebird
Firebird .NET provider is actively developing last years, and there were a lot of new functions added. This session will describe new features, consider examples and draw the future of Firebird .NET provider.
Session 2: Getting started with Firebird from .NET with ADO.NET provider for Firebird
- Different connection string parameters; using parameters in query; preparing query; IDataReader processing for high speed; batching operations; reading blobs;
- comparing mappers like Entity Framework, LLBLGen Pro and native; proper memory usage for FirebirdClient lifetime, transactions management with Visual Studio, default transaction isolation levels.
|Alexey Kovyazin, IBSurgeon
Recovery and data protection with IBSurgeon tools
This presentation is devoted to the new generation of recovery and data protection tools from IBSurgeon
It's important to avoid corruptions and failures, and watch for critical Firebird database which work 24/7 or contain important business data. In this presentation we'll show how to recover databases, and discover the main options how to decrease outage time.
|Dmitry Kuzmenko, IBSurgeon
Backup and Nbackup: best practices
- Backup and restore physics. How to measure backup and restore time.
- Prediction of how many time will it take in case of any crush
- NBackup — many know, few use
- NBackup speed
- Practical usage of nbackup levels
- NBackup problems (including Firebird bugs)
- How to split your database
|Lucas Franzen, FRRED SOFTWARE GMBH
The beauty and magic of stored procedures in Firebird
I'm talking about stored procedures in general, how to write, debug them, when to use them.
SP as black boxes, as a mean of enhanced access rights to tables/objects, SPs for doing heavy work on server side and just returning a neat result set, SPs invoking other SPs, recursive SPs.
I do show examples for often occuring problems by using a small sample app and a database, showing problems with
- incorrect defined field lengths
- recursion depth
And use a small app on a real life database showing a freight calculation basded on calling a stored procedure with the freight parameters returning the calculations which will be done within lots of procedures that call themselves.
|Paul Reeves, IBPhoenix
Administering large Firebird Databases
What changes when a database is very large? By very large, we mean one that is too big to fit in memory and causes problems when being copied or backed up to disc by virtue of its size.
In this talk we look at the problems of managing such a database. In particular we will study:
- Does transaction throughput deteriorate as a database grows in size?
- What changes when a database is too large for the available RAM?
- Does page size have an influence on performance of a large database?
- How do we manage a database that is physically too large for the disc subsystem?
- How can we backup or restore a large database within a reasonable time frame?
- What is the impact of running sweep on an active large db?
- How long will it take?
- Will sweep kill performance for other users?
- How long will it take to run gfix to validate and mend a database? ie, how much downtime can we expect if the database shows signs of corruption?
- What is the trade off when choosing between a conventional RAID or an SSD for the disc subsystem.
The general focus of the talk is on Windows, with some references to Linux where possible. It is suitable for all levels of users.