* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download 1188 Development of InterBase since year 2000
Tandem Computers wikipedia , lookup
Microsoft Access wikipedia , lookup
Oracle Database wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Ingres (database) wikipedia , lookup
Concurrency control wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Database model wikipedia , lookup
Relational model wikipedia , lookup
Open Database Connectivity wikipedia , lookup
1188 New developments in InterBase since Year 2000 Sriram Balasubramanian Staff Engineer Borland Software Corporation Agenda • • • • • Introduction and Release history Core Requirements Development options Deployment flexibility Conclusion Release history • 20th Century - InterBase 5.6 and before • Year 2000 - InterBase 6.0 and OpenSource • • • • Year 2001 - InterBase 6.5 Year 2002 - InterBase 7.0 Year 2003 - InterBase 7.1 Year 2004 - InterBase 7.5 (expected Q4’2004) Core Requirements • • • • Scalability and Performance Monitoring Stability Security Core Requirements • Scalability and Performance – SMP support (including hyperthreading) – Garbage collector [IB6,7] – Configuration parameters customization [IB7] • SWEEP_QUANTUM, USER_QUANTUM, MAX_THREADS, ENABLE_HYPERTHREADING – Query execution • multi-segment index selection [IB7] • Duplicate index key storage and traversal [IB7] • NULL index key optimizations New in 7.5! Core Requirements • Scalability and Performance (contd..) – Transaction optimization for OIT/OAT • READ COMMITTED optimization [IB7] – Database pagesize and cachesize • 16KB database pagesize New in 7.5! • 128K cache pages New in 7.5! Core Requirements • Monitoring – Performance and Usage Monitoring support via Temporary tables and SQL [IB7] – InterBase Performance Monitor GUI tool integrated into IBConsole [IB7] Core Requirements • Monitoring Tables Table name TMP$ATTACHMENTS One row for each connection to a database TMP$DATABASE One row for each database you are attached to TMP$POOL_BLOCKS One row for each block of memory in each pool TMP$POOLS One row for each current memory pool TMP$PROCEDURES One row for each procedure executed since the current connection began TMP$RELATIONS One row for each relation referenced since the current connection began TMP$STATEMENTS One row for each statement currently executing for any current connection TMP$TRANSACTIONS One row for each transaction that is active or in limbo TMP$TRIGGERS One row for each trigger executed since the current connection began Core Requirements • Stability – Server stability #1 priority – Attachment shutdown via Performance Monitoring Temp tables [IB7] – Cancellation of Long Running queries via Performance Monitoring tables [IB7] – Client API for programmable Query (statement) cancellation [IB6.5] – better error reporting of problem applications in interbase.log [IB7] Core Requirements • Security – System schema security (different levels) [IB6.5] – Embedded User Authentication (EUA). (a.k.a. database-level security) New in 7.5! Development options • • • • Connectivity SQL enhancements Usability Tight integration with other Borland Solutions Development options • Connectivity – vigorously developed InterBase Express (IBX) components for Borland RAD tools – Borland Data Provider for ADO.NET [IB7] – Extensive 3rd party support via other drivers such as OleDB, Perl DBI for InterBase, etc. – All of the above use underlying InterBase API library (unified interface) – type-4 JDBC driver for JAVA applications [IB7] – New INTL character set support [IB7] Development options • SQL enhancements – ROLE based SQL security [IB6] – Exact Numerics [IB6] – CASE, COALESCE, NULLIF New in 7.5! – subset selection from resultset using SQL ROWS (similar to TOP/LIMIT in other DBs) [IB6.5] – Global Temporary Tables New in 7.5! – Embedded User Authentication commands for Local Database security (extension) New in 7.5! – Larger metadata names [IB7] Development options • ROWS clause InterBase now supports a ROWS clause for SQL SELECT, UPDATE and DELETE statements. It has a general syntax of ROWS <lower_value> [TO <upper_value>] [BY <step_value>] [PERCENT] [WITH TIES]. The ROWS clause can be used in isolation or (most often) in conjunction with the SQL ORDER BY clause. The WITH TIES clause must be used in conjunction with ORDER BY. The ROWS clause introduces three new InterBase SQL keywords: ROWS, TIES, and PERCENT. Development options • Usability – out-of-the-box IBConsole [IB6] – Management of multiple databases on multiple servers from single GUI instance – Windows GUI to Windows/Linux/Solaris servers – SQL statement execution – User management – License management – Database backup and analysis via InterBase Services API Development options • Usability (contd..) – integrated Performance Monitor for each database [IB7] – 3rd party tools available for Data Migration and general use Development options • Tight integration with other Borland Solutions – InterBase Developer Edition comes *free* with RAD tools including Delphi, C++Builder, CBuilderX, JBuilder, C#Builder. – Connectivity providers for development and deployment including BDP (ADO.NET), IBX, dbExpress, JDBC – CTS 2.0 compliant JDBC driver for development with Borland Enterprise Server Deployment flexibility • Low Total Cost of Ownership • Ease of Deployment EMBED. DEPLOY. RELAX Deployment flexibility • Low Total Cost of Ownership – Licensing • new licensing packs unlimited-users license per CPU [IB7] buy only as many SMP licenses as you need [IB7] 50-user license [IB7] Development Edition (only with Borland RAD tools) [IB7] • VAR discounts Resellers get good discounts for more deployment Activation file provided to circumvent registration Deployment flexibility • Low Total Cost of Ownership – Licensing costs • Borland shopping site at http://shop.borland.com • Craig Stuntz’s DB price chart and comparison with other databases are available at http://blogs.teamb.com/craigstuntz/articles/412.aspx Deployment flexibility • Low Total Cost of Ownership (contd..) – Trial Editions • 90-day Trial versions Server Editions [IB7] • Custom timeout licenses for Trial applications, if you are VAR [IB7] – Multi-platform support • • • • Windows (NT, 2000, 2003, XP) Linux (kernel 2.2 and 2.4) Solaris (7, 8, 9) 64-bit file size support [IB6.5] Deployment flexibility • Low Total Cost of Ownership (contd..) – worldwide support • Newsgroups support (TeamB and IB enthusiasts) • Borland paid support (many levels) • Community bug submission and voting (QC) Deployment flexibility • Low Total Cost of Ownership (contd..) – API for embedded deployments • Install API (for embedded silent installs) [IB6] • License API (license administration) [IB6] • Services API (server-side) [IB6] Deployment flexibility • Low Total Cost of Ownership (contd..) – Media transparency • Read-Only databases on RO media [IB6] – Database location and server transparency • Server-side database aliases New in 7.5! • Automatic server re-routing New in 7.5! Deployment flexibility • Low Total Cost of Ownership (contd..) – Deployment Scenarios • single-user application (Desktop Edition) • departmental multi-user application server (Server Edition, 1-n user license, 1-n CPU license) • web application tier (Server Edition, 1-n user license, 1-n CPU license, any supported platform) • scenarios scalable from 1 to hundreds of simultaneous connections to database server • Any mix of native, .NET, JDBC applications to ONE server Questions? Thank You Session# 1188 New developments in InterBase since Year 2000 Please fill out the speaker evaluation You can contact me further at … [email protected]