Softfocus BTree/ISAM v3.1
Price: single-user $115 US, multi-user $175 US
Reviewer: Edmund P. Morgan
Developers, have you ever needed a way to store data without the overhead of a RDBMS (relational database management system)? You are now in luck, because Softfocus offers a low-cost solution (with source code) for your data management needs.
The documentation is supplied in the form of a 171-page manual, which is brief yet packed with a wealth of knowledge and information. It provides a table of contents, index and appendix. The manual starts with a explanation of the BTree and ISAM (indexed sequential access method) concepts. The next section links the concepts with instructions on implementing applications under this product. Most of the manual is reserved for explaining the API (application programming interface).
The manual provides you with the following information:
Function parameter list
Function return code
Message text of the return code
What the error implies
Multi-user (multi-tasking OS) information about this function
Location of the file pointer after a function call
Other information and descriptions of the function
Any changes from the last version
The manual also provides plenty of examples to guide you through the process of building your application.
Installing this product is a snap—you just copy the files to your hard disk. All of the source code, the Makefile, the configuration file and other files are available to make compilation easy. The product supports a variety of C compilers and environments, and assumes you are familiar with C. I have used this product in various environments (i.e., DOS, Linux, Windows 95, Windows NT, HP-UX, DEC UNIX, SGI Irix, Solaris and Dynix/PTX).
The software distribution is comprised of over 120 files, including over 15,000 lines of source code. This product can support the following:
Database file size limited by disk space
Record size up to 65KB
Virtually unlimited database files open at the same time (depending on OS)
Keys (string, integer, binary, long integer, floating point, user defined)
One index or multiple indices
Duplicate or non duplicate key values
Ascending and descending index
The software via the API allows easy database application development, and only one include file gives you access to the APIs. The APIs are divided into three sections. The first is the high level ISAM APIs. The database layout is based on C structures that you provide when building your application. These APIs give you the ability to write programs without knowing the low level details of database management. These APIs begin with the prefix “bt3” for the function names. This scheme gives you quick access to information only associated with these high level APIs. These APIs are appropriately named so as not to divert your attention from your application. The API function names include names such as create, open, add, close and delete. These functions perform the following tasks:
create: create a database.
open: open a database.
add: add a new record to a database.
delete: remove a record from a database.
close: close a database.
Many other ISAM APIs can help you search through the database, allocate memory, lock and unlock a database or record, flush a record to the database, etc. This product includes the variable length and low level BTree APIs. The variable length API manages data with varying lengths. The low level BTree API handles all of the database management details. When you use the ISAM APIs, they call the BTree APIs. Since I have used only the ISAM APIs directly, I cannot comment much on the use of the other APIs. Each API gives you access to the following information:
Function return code
Message text of the return code
If the examples in the manual are not enough, the distribution comes with plenty of demos and test programs to investigate. The distribution also includes a utility to fix most problems associated with database indexing and corruption. Typically, I call this utility once before manipulating an existing database.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- My +1 Sword of Productivity
- Returning Values from Bash Functions
- Tech Tip: Really Simple HTTP Server with Python
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Managing Linux Using Puppet
- Non-Linux FOSS: Caffeine!
- Doing for User Space What We Did for Kernel Space
- Parsing an RSS News Feed with a Bash Script
- Rogue Wave Software's Zend Server
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide