We developed and support a large scale telephone call logging and
analysis system for a major client of ours. The system collects ~1 GB
of call data per day from over 1,200,000 monitored phone numbers.
~424 GB has been processed so far (over 6,200,000,000 calls). Data is
processed and loaded into Oracle using DBI and DBD::Oracle. The
database holds rolling data for around 20 million calls. The system
generates over 44,000 PostScript very high quality reports per month
(~five pages with eleven color graphs and five tables) generated by
using Perl to manipulate FrameMaker templates. [Values correct as of
July 1999, and rising steadily.]
The whole system runs on three dual processor Sun SPARC Ultra 2
machines -- one for data acquisition and processing, one for
Oracle and the third does most of the report production (which is
also distributed across the other two machines). Almost the entire
system is implemented in Perl.
There is only one non-Perl program and that's only because it
existed already and isn't specific to this system. The other
non-Perl code is a few small libraries linked into Perl using the XS
interface.
A quote from a project summary by a senior manager: "Less than
a year later the service went live. This was subsequently celebrated
as one of the fastest projects of its size and complexity to go from
conception to launch."
Designed, developed, implemented, installed, and supported by the
Paul Ingram Group, who received a "Rising to the
Challenge" award for their part in the project. Without Perl,
the system could not have been developed fast enough to meet the
demanding go-live date. And without Perl, the system could not be so
easily maintained or so quickly extended to meet changing
requirements.
--Tim Bunce, Paul Ingram Group
In 1997 I built a system for NASA's Langley Research Center in
Virginia that puts a searchable web front end on a database of about
100,000 NASA-owned equipment items. I used Apache, DBI, Informix,
WDB, and mod_perl on a Sparc 20. Ran like a charm. They liked it so
much they used it to give demos at meetings on reorganizing the wind
tunnels! Thing was, every time they showed it to people, I ended up
extending the system to add something new, like tracking equipment
that was in for repairs, or displaying GIFs of technical equipment so
when they lost the spec sheet, they could look it up online. When it
works, success feeds on itself.
--Jeff Rowe
I'm working on a system implemented using Perl, DBI, Apache
(mod_perl), hosted using RedHat Linux 5.1 and using a lightweight SQL
RDBMS called MySQL. The system is for a major multinational holding
company, which owns approximately 50 other companies. They have
30,000 employees world-wide who needed a secure system for getting to
web-based resources. This first iteration of the Intranet is
specified to handle up to forty requests for web objects per second
(approximately 200 concurrent users), and runs on a single processor
Intel Pentium-Pro with 512 megs of RAM. We develop in Perl using
Object-Oriented techniques everywhere. Over the past couple years, we
have developed a large reusable library of Perl code. One of our most
useful modules builds an Object-Relational wrapper around DBI to
allow our application developers to talk to the database using O-O
methods to access or change properties of the record. We have saved
countless hours and dollars by building on Perl instead of a more
proprietary system.
--Jesse Erlbam
Motorola Commercial Government and Industrial Systems is using Perl
with DBI and DBD-Oracle as part of web-based reporting for
significant portions of the manufacturing and distribution
organizations. The use of DBI/DBD-Oracle is part of a movement away
from Oracle Forms based reporting to a pure web-based reporting
platform. Several moderate-sized applications based on DBI are in
use, ranging from simple notification distribution applications,
dynamic routing of approvals, and significant business applications.
While you need a bit more "patience" to develop the
web-based applications, to develop user interfaces that look
"good", my experience has been that the time to implement
DBI-based applications is somewhat shorter than the alternatives. The
time to "repair" the DBI/DBD based programs also seems to
be shorter. The software quality of the DBI/DBD approach has been
better, but that may be due to differences in software development
methodology.
--Garth Kennedy, Motorola