TweetFollow Us on Twitter

Jun 00 Online

Volume Number: 16 (2000)
Issue Number: 6
Column Tag: MacTech Online

Relational Databases for Mac OS X Server

by Jeff Clites <online@mactech.com>

Earlier this year we covered WebObjects, but we didn't go into detail about the database solutions available to use with it. This month we are going to cover relational databases which run under Mac OS X Server. I should mention up front, though, that it's perfectly possible, and quite common, to run your application server and database on different machines, under different platforms. There can be convenience and speed advantages to running everything on one machine, but as your website scales up to higher capacities, you're certain to reach a point where you need to run multiple copies of your application server, on multiple machines, and modern databases are designed with the expectation that they will be accessed simultaneously from multiple locations. Of course, backing a WebObjects application is only one use for a database, and you may have other reasons for wanting a solution that you can run locally.

Database Adaptors

I should also explain a little bit about the way that WebObjects interfaces with databases. They communicate through an EOAdaptor, which usually takes the form of a shared library. The adaptor and the rest of the Enterprise Objects Framework (EOF) take care of most of the details of this communication, so that the developer doesn't have to worry about differences between the databases or between the dialects of SQL that they support. (It's even possible to develop adaptors to interface to non-relational databases, and Apple supplies an example Flat File Adaptor which lets you access formatted text files as though they were database tables.) Apple supplies EOAdaptors for Oracle, Sybase, Informix, and ODBC, although not for all platforms on which WebObjects runs. There are third-party adaptors available for many others—all of the databases we'll cover below have adaptors available. Note that there is currently no ODBC EOAdaptor available for Mac OS X Server, because the ODBC libraries aren't available for the platform, and neither are drivers for any of the databases you may wish to access by ODBC. (ODBC, or Open Database Connectivity, is a technology invented by Microsoft, and attempts to allow you to access different databases via a common API, with support for different databases being supplied by ODBC drivers. Its goal is analogous to that of the EOF, although it is functionally quite different.) Third parties have announced that they plan to bring ODBC support to Mac OS X, but it hasn't arrived yet.

SQL-based Databases

You have three main choices if you do want an SQL-based database which runs on Mac OS X Server itself: FrontBase, OpenBase, and MySQL. Each has its advantages and disadvantages, and the best choice will depend on your situation.

OpenBase has had a long history on the OpenStep platform, and was written specifically to run there. It comes with graphical administration tools, and has a few features, such as the ability to notify applications when data changes and integration with REALbasic, which are not commonly found in other databases. Mac OS X Server ships with OpenBase Lite, a free version which allows you to work with the included sample databases, but this version lacks administration tools and isn't really appropriate for development work. There is also a fully functional, time-limited demonstration version which you can download from the OpenBase website. This gives you ample opportunity to try out OpenBase for yourself, but for actual development or deployment you need to obtain a commercial license. Also note that OpenBase is available for Windows NT and Solaris, in addition to Mac OS X Server, so it is a good match for heterogeneous environments in which multiple operating systems are used, or migration from one to another is likely.

FrontBase, produced by Frontline Software of Denmark, is a cross-platform database written in C. It runs on a variety of platforms, including Mac OS X Server, Windows NT, Solaris, and Linux. Like OpenBase, it includes graphical administration tools, allowing you to create and manage databases easily. (Of course, you can also do this using SQL directly.) One key attraction of FrontBase is its flexible licensing terms. There are a number of different levels, based on different degrees of support and different features, such as bulk import tools and the ability to lock tables in memory. The lowest level is free, and is fully functional but lacks security features. This basic version is more than adequate for development work, and can even be used for deployment if you keep it safely behind a firewall.

The third choice is the open source database MySQL. (It's open source, but there is a fee for some types of commercial usage.) MySQL is very popular in the Linux community, and Anjo Krank has created a set of patches which allows it to run under Mac OS X Server. Actually, recent versions of MySQL will compile and run without patching, although you need a pthreads compatibility library which he provides. (He has also developed an EOAdaptor for MySQL, and a Perl DBI driver for FrontBase.) MySQL's claim to fame, other than being open source, is that it is extremely fast. The reason for its speed is, in part, that it lacks certain key database features, such as transactionality and rollback. These are major capabilities to do without, and in fact technically disqualify it from being a relational database, but if you can live with its limitations then it can be an excellent choice for many applications. Due to its heritage, you'll have to survive without built-in graphical management tools, but in the database arena it is often convenient to manage your database directly via SQL, because it allows you to easily save and reuse scripts for common tasks.

Oracle

As I mentioned before, you can certainly run your database on another platform, even if you are developing for Mac OS X Server. One setup you may want to consider is running Oracle8i under Linux. (This would unfortunately mean running it on an Intel box—Oracle runs neither on Mac OS X Server, nor on LinuxPPC. Given that Larry Ellison sits on Apple's board of directors, there is some hope that this situation may improve in the future. A Darwin version could do amazing things for the platform.) Neither Oracle nor Linux is trivial to administer, but I've heard it argued pretty convincingly that you should use Oracle from the beginning, even if you thing it's more database than you need. The argument goes that if you are running a database-backed website, you will eventually need Oracle, and your life will be easier if you don't have to deal with migrating to, and learning to administer, a new database just when your business is taking off and you're exceeding your capacity. (It's also true that both Linux and Oracle experience looks good on a resume these days.) Oracle is by far the most widely used database on the planet, and it has an excellent reputation for performance and reliability, although it's almost impossible to get hard numbers to quantify this. Personal experience has led me to believe that commercial databases all perform similarly when it comes to raw retrieval speed, although Oracle's unique approach to concurrency control and locking should give it an advantage when many processes are writing to the database at the same time. (In a nutshell, readers and writers rarely interfere with one another.) Oracle also has a very well thought out approach to backup management, and if your database fails you can often recover all the way up to the very last transaction committed. While making your decision, you should be aware that Oracle is extremely expensive, and although its licensing scheme is difficult to decipher, it does appear to be free for development use. If you plan on running a business which will depend on your database, you should give Oracle serious consideration. For extremely high-capacity deployments you will probably want to run Oracle on Solaris, and migrating from Linux to Solaris will be much easier than migrating from a different database architecture. (Oracle has been very good about making its database operate almost identically on all supported platforms.)

Once you've committed to a database, check out the MacTech Online web pages at <www.mactech.com/online/>.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Logic Pro X 10.1.1 - Music creation and...
Apple Logic Pro X is the most advanced version of Logic ever. Sophisticated new tools for professional songwriting, editing, and mixing are built around a modern interface that's designed to get... Read more
VLC Media Player 2.2.0 - Popular multime...
VLC Media Player is a highly portable multimedia player for various audio and video formats (MPEG-1, MPEG-2, MPEG-4, DivX, MP3, OGG, ...) as well as DVDs, VCDs, and various streaming protocols. It... Read more
Sound Studio 4.7.8 - Robust audio record...
Sound Studio lets you easily record and professionally edit audio on your Mac. Easily rip vinyls and digitize cassette tapes, or record lectures and voice memos. Prepare for live shows with live... Read more
LibreOffice 4.4.1.2 - Free, open-source...
LibreOffice is an office suite (word processor, spreadsheet, presentations, drawing tool) compatible with other major office suites. The Document Foundation is coordinating development and... Read more
Freeway Pro 7.0.3 - Drag-and-drop Web de...
Freeway Pro lets you build websites with speed and precision... without writing a line of code! With its user-oriented drag-and-drop interface, Freeway Pro helps you piece together the website of... Read more
Cloud 3.3.0 - File sharing from your men...
Cloud is simple file sharing for the Mac. Drag a file from your Mac to the CloudApp icon in the menubar and we take care of the rest. A link to the file will automatically be copied to your clipboard... Read more
Cyberduck 4.6.5 - FTP and SFTP browser....
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more
Firefox 36.0 - Fast, safe Web browser. (...
Firefox for Mac offers a fast, safe Web browsing experience. Browse quickly, securely, and effortlessly. With its industry-leading features, Firefox is the choice of Web development professionals and... Read more
Thunderbird 31.5.0 - Email client from M...
As of July 2012, Thunderbird has transitioned to a new governance model, with new features being developed by the broader free software and open source community, and security fixes and improvements... Read more
VOX 2.4 - Music player that supports man...
VoxIt just sounds better! The beauty is in its simplicity, yet behind the minimal exterior lies a powerful music player with a ton of features & support for all audio formats you should ever need... Read more

Get The Whole Story – Lone Wolf Complete...
Get The Whole Story – Lone Wolf Complete is Now Available and On Sale Posted by Jessica Fisher on February 27th, 2015 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Who Wore it Best? The Counting Dead vs....
Like it or not, the “clicker” genre, popularized by cute distractions like Candy Box and Cookie Clicker, seems like it’s here to stay. So Who Wore it Best? takes a look at two recent examples: The Counting Dead and AdVenture Capitalist. | Read more »
Card Crawl, the Mini Deck Building Game,...
Card Crawl, the Mini Deck Building Game, is Coming Soon Posted by Jessica Fisher on February 27th, 2015 [ permalink ] Tinytouchtales and Mexer have announced their new game, | Read more »
Witness an all new puzzle mechanic in Bl...
Well, BlastBall MAX is not one of those games and is bucking trends such as timers, elements of randomness, and tacked-on mechanics in favor of pure puzzle gameplay. When you first boot up the game you’ll see a grid made up of squares that are each... | Read more »
This Princess Has a Dragon and She isn’t...
This Princess Has a Dragon and She isn’t Afraid to Useit. | Read more »
Mecha Showdown Review
Mecha Showdown Review By Lee Hamlet on February 27th, 2015 Our Rating: :: IN A SPINUniversal App - Designed for iPhone and iPad Mecha Showdown replaces traditional buttons with a slot machine mechanic in this robot fighting game,... | Read more »
Reliance Games and Dreamworks Unveil Rea...
Reliance Games and Dreamworks Unveil Real Steel Champions Posted by Ellis Spice on February 27th, 2015 [ permalink ] Reliance Games and Dreamworks have announced that a third game in | Read more »
Sum Idea Review
Sum Idea Review By Jennifer Allen on February 27th, 2015 Our Rating: :: TAXING NUMBERSUniversal App - Designed for iPhone and iPad Sum Idea is a fairly charming but taxing puzzle game.   | Read more »
A New Badland Update Brings Daydream Lev...
A New Badland Update Brings Daydream Levels to Co-Op Posted by Ellis Spice on February 27th, 2015 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Slashing Demons Review
Slashing Demons Review By Lee Hamlet on February 27th, 2015 Our Rating: :: IT'S A LONG WAY TO THE TOPUniversal App - Designed for iPhone and iPad Slashing Demons lacks the depth or scope to take it beyond the point of being just... | Read more »

Price Scanner via MacPrices.net

Apple CEO Tim Cook to Deliver 2015 George Was...
Apple CEO Tim Cook will deliver the George Washington University’s Commencement address to GWU grads on May 17, at which time he will also be awarded an honorary doctorate of public service from the... Read more
Apple restocks refurbished Mac minis for up t...
The Apple Store has restocked Apple Certified Refurbished 2014 Mac minis, with models available starting at $419. Apple’s one-year warranty is included with each mini, and shipping is free: - 1.4GHz... Read more
Save up to $50 on iPad Air 2s, NY tax only, f...
 B&H Photo has iPad Air 2s on sale for $50 off MSRP including free shipping plus NY sales tax only: - 16GB iPad Air 2 WiFi: $469.99 $30 off - 64GB iPad Air 2 WiFi: $549 $50 off - 128GB iPad Air 2... Read more
16GB iPad Air 2 on sale for $447, save $52
Walmart has the 16GB iPad Air 2 WiFi on sale for $446.99 on their online store for a limited time. Choose free shipping or free local store pickup (if available). Sale price for online orders only,... Read more
iMacs on sale for up to $205 off MSRP
B&H Photo has 21″ and 27″ iMacs on sale for up to $205 off MSRP including free shipping plus NY sales tax only: - 21″ 1.4GHz iMac: $1029 $70 off - 21″ 2.7GHz iMac: $1199 $100 off - 21″ 2.9GHz... Read more
Apple Takes 89 Percent Share of Global Smartp...
According to the latest research from Strategy Analytics, global smartphone operating profit reached US$21 billion in Q4 2014. The Android operating system captured a record-low 11 percent global... Read more
New Travel Health App “My Travel Health” iOS...
Rochester, Minnesota based Travel Health and Wellness LLC has announced that its new iOS app help safeguard the user’s health when traveling abroad — “My Travel Health” is now available on the Apple... Read more
Sale! MacBook Airs for up to $115 off MSRP
B&H Photo has MacBook Airs on sale for up to $100 off MSRP. Shipping is free, and B&H charges NY sales tax only: - 11″ 128GB MacBook Air: $799 100 off MSRP - 11″ 256GB MacBook Air: $999 $100... Read more
15-inch 2.0GHz Retina MacBook Pro (refurbishe...
The Apple Store has Apple Certified Refurbished previous-generation 15″ 2.0GHz Retina MacBook Pros available for $1489 including free shipping plus Apple’s standard one-year warranty. Their price is... Read more
Wither The iPad mini? End Of The Road Imminen...
AppleDailyReport’s Dennis Sellers predicts that the iPad mini is going to be left to wither on the vine, as it were, and then just allowed to fade away — a casualty of the IPhone 6 Plus and other... Read more

Jobs Board

Sr. Technical Services Consultant, *Apple*...
**Job Summary** Apple Professional Services (APS) has an opening for a senior technical position that contributes to Apple 's efforts for strategic and transactional Read more
Event Director, *Apple* Retail Marketing -...
…This senior level position is responsible for leading and imagining the Apple Retail Team's global engagement strategy and team. Delivering an overarching brand Read more
*Apple* Pay - Site Reliability Engineer - Ap...
**Job Summary** Imagine what you could do here. At Apple , great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring Read more
*Apple* Solutions Consultant - Retail Sales...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
*Apple* Solutions Consultant - Retail Sales...
**Job Summary** As an Apple Solutions Consultant (ASC) you are the link between our customers and our products. Your role is to drive the Apple business in a retail Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.