ISAM is ideal for high-velocity processing of complex data in real time
Speed and flexibility are top reasons why companies use the FairCom database engine. The ISAM API is a key factor to speed and flexibility. ISAM stands for Indexed Sequential Access Method. It allows a customer to control every detail of finding, navigating, locking and transacting records. This level of control allows a developer to do exactly what is needed and no more.
ISAM Origins
Originally created by IBM, ISAM is a record-oriented database architecture that permits fast indexed access to records in a data file. Separate index files store keys that identify each record, along with offsets that locate the corresponding record in the data file. Data can be accessed in the order records are stored in the data file or in sorted index order.
A key differentiator between ISAM and other navigational models is that ISAM navigates records using indexes and foreign keys. This makes ISAM fully compatible with the relational data model and SQL. Hierarchical and Network Navigational Models are not relational because they use pointers or hierarchies to connect data.
FairCom and ISAM
During the past 40 years, most database vendors replaced ISAM with SQL. During this time, FairCom added SQL and continued to enhance ISAM with more than 200 new features, such as:
● Nested transactions
● Complete control over which records are included in a transaction
● Complete control over which records are locked
● Filtered batch inserts/update/deletes/queries
● Multiple tables per file
● Full-Text Search
● Unicode
● Relational schemas
● Embedding extensive user-defined metadata in data files
● Instantly saving and restoring current record positions
● Etc.
These extensions are used today by Fortune 100 organizations around the globe for mission-critical, high-velocity, real-time applications, such as stock market trades, credit card transactions, package sorting, mobile call switching, etc.
FairCom has indirectly enhanced ISAM by improving the underlying relational database engine. This engine has the major features found in other enterprise databases, such as ANSI SQL, ACID compliance, multi-threaded parallel processing, encryption, conditional indexes, triggers, partitioned tables, etc. It also has optional features found in NoSQL databases, such as JSON, optional transaction processing, eventually consistent data, eventually consistent indexes, etc.
SQL and ISAM
ISAM is fundamentally different from SQL in that it allows applications to control every aspect of data processing. It allows a developer to create new application-specific algorithms to find, navigate and process data; whereas SQL databases implement a handful of generic algorithms that are good for the most common use cases. These application-specific algorithms allow an application to achieve new levels of data processing performance and efficiency that can’t be attained at the SQL level. New algorithms redefine how data is processed. And, thus, can achieve new levels of performance and can make the most complex use cases easy.
ISAM is faster and more efficient than SQL because the application directly controls how each record is found, processed, locked and included in transactions. In other words, ISAM allows an application to do the least amount of work necessary to process data; whereas SQL databases must assume the worst case and create additional locks and transactions, which slow down the entire database.
Unlike SQL databases, ISAM allows you to take efficient and complex data structures in your application and store them directly in the database. FairCom easily and automatically indexes any part of any complex binary structure using any filtering criteria. This allows you to query complex binary data using SQL, ISAM or FairCom’s Object-oriented Navigational API.
FairCom’s modernized ISAM also allows an application to save the position of all open records. Thus, it is easy to find multiple records, save their positions, move to other records, and instantly return to the original records — even when interrupted by other processes. Imagine an online web store being able to instantly restore all customer data each time the customer returns. The database can instantly reload the data into the application — all without a single index lookup. This works even when the data is complex and extensive, such as instantly reloading the customer’s identity, profile, shopping cart, preferences, the last 50 products the customer searched for, the last ad displayed and so forth.
ISAM and the Bottom Line
FairCom’s enhanced ISAM has unsurpassed efficiency. It is common for applications to achieve hundreds of thousands of transactions per second on a single server. FairCom has many customers running mission critical, high-velocity, real-time applications with more than 350,000 transactions per second on a single server. FairCom customers do not need scores of clustered database servers to achieve this level of performance.
FairCom’s advanced ISAM is extremely reliable. It is common for applications to run without downtime for years at a time. One customer recently reported they shut down the FairCom ISAM database every 10 years to replace the hardware. FairCom has multiple customers running mission-critical, high velocity, real-time applications that simply do not experience unplanned downtime .
A detailed look at FairCom’s ISAM capabilities is available at FairCom.com/products/faircom-db/nosql/isam. You can also explore the FairCom family of products at FairCom.com/products/. The FairCom family of products includes the FairCom DB multimodel database, the FairCom EDGE solution for IoT and Industry 4.0 and c-treeRTG for COBOL and Btrieve systems.