Fastore

Fastore is a high-speed columnar-based data storage device developed by the Alphora team at Database Consulting Group LLC to meet the substantial storage needs of businesses everywhere. Through its unique architecture and implementation, Fastore is able to store, sort, and retrieve large amounts of data quickly and efficiently. It features rapid sorting, in-memory storage, ACID transaction support, optimistic and pessimistic concurrency, consistent disk model for backup and recovery, and much more. The product currently supports both Windows and Linux OSs and utilizes the C, C++, Java, and .NET(C#) APIs.

TECHNICAL OVERVIEW

  • Since Fastore uses columnar storage, no indexes are needed, the join cost is even across columns and tables, and there is a high potential for analytic queries.
  • Fastore is able to store data in-memory as it utilizes memory-optimized structures; this enables durable logging and check-pointing and support for joins using random access.
  • Transactions can satisfy the ACID properties, with isolation via revisions and true durability with torn-page handling. Fastore uses a consistency model to facilitate backup and recovery.
  • Fastore supports optimistic concurrency - the application server handles the bulk of the transaction processing, conflicts result in retry, and snapshot isolation and early conflict detection can prevent data inconsistencies or failure. Pessimistic concurrency is also used in explicit locking for high contention points.
  • Fastore's ability to replicate its network topology across several servers allows for multi-site distribution, and thus prevents the need to scale-up. This also means there will be no single point of contention or failure, so clients can coordinate the transactions.
  • No latch overhead and maximized cache locality make Fastore optimal for NUMA memory architecture and disk throughput.

HIGHLIGHTS

  • Even and predictable performance
  • Eliminates most index redundancy
  • Ultra-high speed overall
  • Linear scale-out for reads
  • Good for analytics and transactions
  • Minimizes denormalization cases
  • Familiar SQL and API interfaces