Years ago I worked as the IT manager for an architectural firm. One of the project managers literally used thousands of pieces of paper and hundreds of files folders to keep track of “shop drawings” needed in the construction process. To simplify his life, I built an uncomplicated database to capture all the data and generate reports indicating due dates and drawing locations. The project manager was ecstatic because I saved him hundreds of tedious labor hours with this relatively unsophisticated tool.
Does your business keep track of your customers? Do you manage large amounts of information about your company’s business or financial records? If you do, than you’re either currently using a database or you should be. Most businesses regardless of their size probably have a database lurking around someplace in their IT infrastructure. In this first article in a series on databases for small businesses, we will introduce basic database concepts and functions.
Let’s get started with the first and most obvious question; what is a database and what is it used for? On the surface, databases seem exceedingly complex, with lots of jargon, screens and reports. Under the hood however, databases are fundamentally tools to allow people to organize and manipulate large amounts of data using the power of the computer to quickly translate and deliver that information in a humanly readable format. There are three main components to any database application:
- A method for entering or editing data — usually data entry screens or import functions
- A data storage mechanism — a way of storing the data on the computer
- A report generator to extract and interpret information from the stored data
Data vs. Information
The first basic concept to understand about databases is the difference between data and information. What we call data is a really collection of binary bits (literally ones and zeros) stored on a computer somehow. Data by itself is meaningless. Information is data organized in a way so that it becomes meaningful. The database is the computer application that simply translates data into information. Therefore, essentially a database is nothing more than a tool to organize and access large amounts of data so that people can turn it into useful information.
For example, 12231997:AMEX:123400005678:23:45 as a piece of data is completely meaningless to the average human being. However, in a database record, if you knew that a colon separated each piece of data (or field) and that the left-most data was a date, followed by a credit card type, followed by a credit card number and, lastly, a dollar amount than you would have a useful piece of information. Of course without that knowledge or interpretation, the record could mean something entirely different. The leftmost field might be a random key, followed by a warehouse location, then SKU (Stock Keeping Unit) information and finally the item size. The point being, however you assign meaning to a given string of data is very important to the structure and use of a given database.
Schemas, Records and Fields
Databases fundamentally organize the data into hierarchies (setting aside the relational database concept for a moment). The building blocks for creating databases starting from the top level are the data structure or schema. Each data structure is made up of a series of records, and each record has a set of predefined fields. No matter if you are building you own database from scratch or buying a $100,000 ERP system, functionally they are all the same. They all have a data structure, records and fields.
What They’re Used For
Now that you have a basic understanding of how databases work, it is easy to see what a powerful tool they can be for a wide variety of information manipulation applications. Databases come in all shapes and sizes, from large applications that have millions of credit card transaction records to simple expense reports or customer lists based on Microsoft Access for a SOHO consulting business. Obviously for a small business, the “mainframe applications” are vast overkill, but there are large numbers of COTS (commercial off the shelf) or free database platforms like Access, MySQL or SQL Server
For most small businesses, unless you have a very good reason to develop your own specialized database applications, there is probably some software vendor who is already selling something that will take care of 80 percent of your required functionality. On the other side of the spectrum, watch out for vendors who want to sell you something that is much beyond the scope for your business requirements. It might seem like a good investment at the time, but the higher maintenance overheads and extra complexity can result in unnecessary long-term costs.
One trap that many small companies fall into is that they are tempted to build a highly customized application that theoretically meets all their perceived requirements. I would think really hard before committing to developing any database in-house. For example, recently I worked with a company that was using an SQL server for a variety of inventory tracking tasks. Most of them were appropriately customized to the company’s business processes, but someone had written an IT ticket tracking system instead of purchasing one of the many commercially available systems. They had probably spent 10 times the cost of the commercial system on development, and their application had a fraction of the functionality. Another problem to watch for is a quick and dirty throwaway application that you built in your spare time is frequently still an indispensable and un-maintainable part of your business five years later.
As you can see in this quick introduction, databases can be very powerful tools for any sized business. More than likely you are already using several. Next month we will dig into some details about how database size considerations, the number of records, complexity and data sharing requirements will affect your choice of systems. In later articles we will cover the data entry, workflow and report generation mechanisms in more detail. Until next time, happy databasing.
- Introduction to Relational Databases – Part 1: Theoretical Foundation — A nice overview of databases.
- An Introduction to Database Systems, Eighth Edition by C.J. Date — An introduction of database theory for the more serious student.
Beth Cohen is president of Luth Computer Specialists, Inc., a consulting practice specializing in IT infrastructure for smaller companies. She has been in the trenches supporting company IT infrastructure for over 20 years in a number of different fields including architecture, construction, engineering, software, telecommunications, and research. She is currently consulting to the small business community, teaching college IT courses, and writing a book about IT for the small enterprise.
|Do you have a comment or question about this article or other small business topics in general? Speak out in the SmallBusinessComputing.com Forums. Join the discussion today!|