By: Craig Stuntz
Abstract: The theme of this year's conference was "Implementing E-Business." But the theme for InterBase was tight integration with other Borland tools. By Craig Stuntz.
The theme of this year's Borland conference, officially, was "Implementing E-Business."
But the theme for InterBase was tight integration with other Borland tools. David Robinson,
who has been to many more conferences than I, said that he felt this year was the first
time that InterBase was presented as a member of the Borland family and a real product in
and of itself, rather than a freebie add-on to other tools.
Rob Schieck gave two tutorials totaling 8 hours on Sunday. I didn't see most of
this, but Jeff Overcash (TeamB) and I dropped by toward the end to harass him.
Attendance seemed to be pretty good, perhaps around 50 people. The planners of
the IB track had wanted to park an M1 tank (which runs IB internally) in the
conference center lobby with a "Powered by InterBase" bumper sticker slapped on the
front, but were disappointed to learn that it would be too heavy for the floor to support.
The first IB-related presentation of the regular conference was InterBase R&D chief Charlie Caro's
"Extending SQL Functionality in InterBase." I showed up at 8 a.m. on Monday morning expecting
to be one of about three people in attendance. After all, it was early, the lecture was marked
"advanced," the topic was somewhat obscure, and it was up against the "Delphi Product Address"
presentation, which is always very popular. I was pleasantly surprised to see 36 people in attendance.
The presentation itself was perhaps slightly misnamed, as, in addition to the titular topic, Charlie
gave a somewhat in-depth discussion of how InterBase takes
a SQL statement and turns it into compiled BLR, including tips on which source files to look into for
further understanding of important sections. After this overview, which took about half of the
presentation, a sufficient background had been given to discuss the pluses and minuses of two different
approaches to adding new SQL keywords to the IB engine: Extending BLR and using System Defined Functions.
Without going too far into the details, SDFs are a proposed feature for future versions of IB which
would essentially make it very easy to take a C UDF and compile it directly into the engine. This
has some speed advantages, as well as removing the need to separately declare UDFs for each database
they're used in. It's also a great way for open source developers to get used to working with IB.
Next up came two workshops which I skipped, as they're outside of my areas of interest: Nick Gorham's
(EasySoft) "InterBase Connectivity Overview" and Bill
Todd's "InterBase for Desktop Database Users."
I rejoined the InterBase track for the "InterBase Product Address," presented by Jon Arthur
(director of InterBase) and Charlie Caro. I'll cover this session in more detail since the future
direction of IB was extensively discussed.
The presentation was divided into several sections: What's been happening at the IB division for
the past year or so, the plans for open-source IB, the technical roadmap for the next few releases,
a discussion of the showcase application from the BorCon opening session (an online e-business system
using IB as the database back end) and a Q&A period.
Turning the discussion toward open source, Jon said that the immediate need to ensure a consistent
revenue stream to keep the IB division afloat has taken attention away from working out a good system
for community contributions to the IB code, but as the division's internal structure improves we will
see more announcements on this subject. The plan is to focus on "key ideas" such as SDFs (see above)
which would allow many developers to be involved and could more easily be QAed.
Part of the initiative will be to reward open source contributors. IB will be opening a Web site to
give publicity to third-party products, consultants, committers, and collaborators. "Key" collaborators
could be paid. Borland will ask for electronic signatures and/or waivers from open-source contributor to
assure them that you are the author of the code you are submitting and that it's OK with you if the
code goes into the certified editions as well as the open edition. Borland must not be opened up to
legal action due to accepting open source code.
The InterBase Open Edition will continue to be updated with all bug fixes from the certified
edition. New features will be added on a case-by-case basis. Jon re-emphasized that IB does need to
make money and that, as Borland has consistently stated, there will be many features in the certified
editions which will not be in the Open Edition.
[Also, Borland's new BugCentral project was not discussed at this meeting but is very relevant to
open source. See below.]
The technical support for InterBase has also been reorganized. In addition to available 24*7 support,
Borland will be offering InterBase certification, training programs, and on-site consulting. Tech
support is available in the US, UK, and abroad, and account managers have been working with existing
customers to improve service.
Jon listed some major IB customers today, and then turned the floor over to Charlie Caro and Sriram
Balasubramanian to cover the future development of IB from a technical point of view.
Charlie started the presentation by outlining seven general areas where improvements are slated for
releases of IB in the immediate future, and then discussed a few ideas from the drawing board.
IB 6.5 and 7 will see improvements in functionality, performance, scalability, manageability, security,
reliability, and planning.
Functional enhancements may include new SQL keywords such as CASE, more "built-in" UDFs, and
tighter integration with Borland tools. They are also looking at non-SQL-standard enhancements and
industry-standard frameworks such as OLE-DB.
In the performance category, the goal is to improve query response time and transaction throughput.
Some algorithms optimized for classic server can be improved for a SuperServer environment. Data loading
will be enhanced, and then there's the "never-ending quest to improve the optimizer," which is difficult
since it requires intense QA.
Scalability starts with better utilization of machine and disk resources, such as full
support of symmetric multiprocessing (SMP). Expect to see inter- and intra-query parallelization
and more support for hardware-specific features. The engine needs to support wildly varying loads
(as with a Web site) and more nested data structures (common with SQL/3 and XML). IB won't be a
"native XML" database but it might have features to emit XML from relational structures.
The IB division recognizes the need for better command and control of the IB server.
Although IB is largely self-maintaining, there is a strong need for better reporting on database
and user activity (plus the ability to kill queries and connections which have gotten out of hand),
and tools to analyze and optimize disk activity and individual queries.
Security includes both database stability (protecting it from corruption) and data secrecy
(encryption). Part of database stability is making the metadata read-only or invisible to non-SYSDBA
users. Encryption is important both for sending data over the wire and for laptop users who might
lose secrets if their physical machine is stolen.
Reliability will be enhanced by some kind of ongoing defect repair process, and the planning
aspect seems to mostly involve a closer relationship with IB customers so as to better anticipate their requirements.
Ideas from the drawing board include parallelized index creation, sorts, and queries, better XML
data interchange and storage, SQL/3 object-relational model support, multi-DB interoperability, and 64-bit
processing. Charlie and Sriram noted that databases in general (unlike many other apps) can really benefit
from 64-bit processing, and that a lot of work on 64-bit IB has already been done. About 10 years ago, the
Navy was interested in a version of IB for True-64 (Digital) Unix. It will take a lot of additional work
to make this run on Itanium, however.
Sriram presented the InterBase side of the Movi-E-Tailer showcase application, a demonstration e-Business
system which essentially combines every Borland tool into a single Internet/wireless commerce application.
The application (well, it's really a suite of applications) uses IB on both Windows and Unix server
platforms, using IB-Replicator to keep the databases in sync and Borland AppServer for load-balancing.
I won't attempt to reproduce the entire Q&A session in this article, but here are a few of the highlights:
A SOAP spec for the system will be published, so if you don't like Borland's client for BugCentral
you can make your own!
Eric Whipple presented the first of two sessions on using dbExpress and dataCLX, a cross-platform
architecture for accessing multiple DBs, including InterBase. Think of the BDE on
Jon Arthur and Sriram Balasubramanian collaborated on "InterBase Open Source Community, Development,
and Building the Source." The title is a handful, but essentially it was further discussion of the
topics from the Product Address, plus a demonstration of how to download the source code from
CVS/SourceForge and build it on a Linux machine.
Finally, Aaron Ruddick demonstrated the TCS system in "InterBase 6 Certification and Multi-Platform
Test Automation." Besides the fact that it started at 9 p.m., being up against the "Meet the Delphi
Team" presentation didn't do wonders for the attendance at this workshop. But TCS is scarcely documented,
so any information in this area is valuable.
Tuesday got rolling with Bill Todd's "Building InterBase Applications with ClientDataSet and InterBase
Express." Bill began by mentioning why you might want to do this in the first place and then gave
an overview as to how to do it.
David Robinson (of http://ibinstall.defined.net) followed
with "InterBase Installation and Deployment Options," which I missed but heard good things about.
In the afternoon, Bill Todd presented "InterBase Stored Procedures and Triggers" and Rob Schieck
followed with "Building a Database-driven, Dynamic Web Site Using JBuilder and InterBase." Ironically,
Rob's site was the victim of a power outage the day before the presentation, and he got it back up just
in time for the presentation!
The afternoon ended with my first presentation, an updated version of Greg Deatz's talk on User
Defined Functions. My thanks go out to Greg for allowing me to adapt and expand his talk. I debuted
what is, to my knowledge, the first UDF available to take the derivative of an integer.
Jason Wharton gave a Birds of a Feather session on IBO at 7 a.m.
The morning included a performance-tuning workshop for InterBase Applications in Delphi
and BCB presented by Rob Schieck, a vendor showcase by BravoSoft, who make an accounting
product which supports InterBase, among other DBs, and a presentation on "Using the IBX
Administration Components" by Bill Todd. Meanwhile, Jeroen Pluimers was giving his second
presentation on "Administering and Configuring Linux for Kylix."
After lunch, Jeff Overcash gave a "Tips and Tricks" talk about the rest of IBX.
Jeff explained how to choose appropriate components for your application, and detailed plans
for the new memory model which will add speed and features to the components. For someone
who seemed to be nervous going into the presentation, I found it very difficult to get Jeff
to end his presentation when it was time for me to begin the next session!
In the "Third-party Tools Overview," I showed screen shots of most of the tools
which support IB which are presently being actively maintained, although audience members
brought up a few which I haven't tried yet. I also announced that Borland and I are working
on producing an InterBase companion disk, featuring all of the free tools and demos of the
commercial tools, which will be distributed with the certified editions of IB and also
made available for free (except for shipping charges) to users of InterBase Open Edition.
The IB companion CD will ship with InterBase 6.5, later this year. Finally, I announced
a free tool which I am developing, IB PLANalyzer, which graphically analyzes InterBase's
PLAN statements, makes it easy to get accurate index and read statistics, and is generally
designed to allow developers to create optimized SQL, quickly.
In the BorCon closing address, the Movi-E-Tailer system was explained in more
detail, and Sriram represented InterBase by giving a mini-tutorial on DDL. The address
was already running long, so DavidI tried to no avail to get Sriram to get to the
"impressive" part -- prompting laughter from the crowd as he said, "just a minute."
When he did demonstrate replication between a Unix and a Windows IB server, however,
the audience applauded.
Copyright 2001 by Craig Stuntz. Permission is granted to reproduce this article, provided
that it is distributed for free and the article is presented in its entirety, including this
notice. The original article can be found at http://delphi.weblogs.com/stories/storyReader$82
Free Developer Edition!
Click here to download a free non-expiring Developer Edition or 30-day trial >
More InterBase Info
InterBase XE3 Product Info
Free Developer Edition download
InterBase on Google+
Follow @InterBase on Twitter
Server Response from: ETNASC03