Tip #3: Store banner creatives appropriately
In the OpenX ad server, if you are not serving an HTML, text or 3rd party banner1, then you will be serving a banner that has a creative file of some kind2.
OpenX calls these image banners, and provides you with three different image banner options. Each of of these three image banner types stores the associated creative file in a different way. The three different options are:
- Local banner (SQL);
- Local banner (webserver); and
- External banner.
The OpenX administrator can even control which of these banner types are able to be used. The question is, which storage type, or types, are appropriate for your OpenX installation?
Local banners (SQL)
The local banner (SQL) type (re-named to the sql banner type in OpenX 2.7-beta), as the name suggests, is the image banner type in OpenX where the creative file is stored in the OpenX database.
As a matter of personal opinion, The Guru isn’t a fan of this banner type, because databases are generally not the ideal storage solution for large amounts of binary data. However, for most small to mid-sized OpenX users, this is often the image banner type that is used, and it provides a number of benefits:
- Simple management of banner creative files: As all the creative files are stored in the database, you only need to worry about backup of the OpenX database and OpenX code.
- Nothing to do on upgrade: As the creative files are in the database, when it’s time to upgrade OpenX, there’s nothing else to worry about with regards to the files.
- Makes life easy when growing: With creative files stored in the database, there’s no issue with adding another server to your OpenX installation, as any server that can talk to the database can serve banners.
However, there are also a couple of downsides:
- Large database size: The more creative files you store in the database, the larger your database will be, which can be a concern for smaller OpenX users, especially if shared hosting is used, as there are often associated database size limitations.
- No direct file access: It’s impossible to directly access the creative files on disk, if you should ever want (or need) to do so.
- Limited scaling: While it will be possible to add more servers to your OpenX installation, and have them serve banners, the level of scaling possible with this setup will be limited as, eventually, the database will become a bottleneck.
Local banners (webserver)
The local banner (webserver) type (re-named to the web banner type in OpenX 2.7-beta) is also exactly what you would expect; here, creative files are stored directly on the server filesystem. As before, this banner type has its advantages:
- Direct creative file access is possible: The creative files are stored on your server’s hard drive, so you can access them like normal files.
- Scales well: As the creative files are not in the database, you can replicate the files out to as many servers as you need, so scaling to huge volumes is no problem.
Of course, this is balanced by the disadvantages:
- Additional backup effort: Creative files have to be backed up in addition to the OpenX database and OpenX code.
- File replication required in multi-server setups: As the creative files need to be on the local server filesystem for delivery of banners to work, this means all creative files will need to be replicated to the local filesystem of all delivery servers if there is more than one.
- Upgrade management: It may be necessary to deal with creative files on upgrade. (This can, however, be avoided, by using an appropriate storage location for your creative files.)
External banners
The final image banner type in OpenX is the external banner type (re-named to the url banner type in OpenX 2.7-beta). As the name suggests, this is for the (normally rare) case where you will not actually be uploading the creative file for a banner into OpenX. Instead, you simply provide the URL to the creative.
As a general rule, you won’t need to use the external banner type unless:
- You are serving a 3rd party banner, but the 3rd party doesn’t provide you with an HTML tag; instead, they just give you a URL to the banner to serve; or
- You run your own creative management system externally to OpenX, and you simply want to take advantage of OpenX’s banner serving and tracking features without having to re-upload all of your creative files into OpenX, as this would essentially be a duplication of work. In these situations, use of the OpenX API from your creative management system may be appropriate, to reduce duplication of work even further!
Which to use?
Which is the right banner type to use? Apart from the external banner type, which has two very specific reasons for use, the choice is very much yours to make, based on the pros and cons of each type. However, if you’re new to OpenX, then The Guru would recommend that you start out with the local banner (SQL) type, until you gain experience with OpenX. After a while, you can consider moving to the local banner (webserver) type as your site, and ad serving requirements grow.
- A 3rd party banner is a banner one that is served externally to your OpenX installation, usually via some kind of invocation tag code from that 3rd party. For example, banners from Google AdSense, Yahoo! Publisher Network, or from any one of the many. many ad networks out there are all 3rd party banners. [↩]
- A creative file might be a .JPG, .GIF or .PNG image file, or a Flash file, etc. [↩]
I can tell that this is not the first time at all that you write about the topic. Why have you decided to write about it again?
Not sure what you mean – this is the first time The Guru has written about different banner storage options!
Hey, cool tips. I’ll buy a bottle of beer to that person from that chat who told me to visit your blog