InfinityDB is an all-Java embedded NoSQL DBMS, with many thousands of deployments. It is in current use by these large companies and more:
has been shipping InfinityDB for years in their successful Fisheye repository browser as the foundation for a fast web server, where it gathers and presents repository structure. Atlassian is a $4.3B Australia-based company that produces collaboration software for developers.
is a $21B international company that uses InfinityDB in Kuwait in a time-series database for collecting real-time signals from distributed nodes for wellhead health and productivity monitoring. Their system keeps up with a very fast stream of input from hundreds of sensors over radio links, and archives the data for critical later analysis.
is a $9B Canadian text processing software company that ships InfinityDB in multiple text applications to thousands of customers.
is a well-established Australian company that uses InfinityDB in its ‘ripple-down-rules’ medical data expert system software products.
These companies and more have relied on InfinityDB for years for critical data storage of their successful commercial products. These projects require extreme speed, zero maintenance, and unique data structuring capabilities that solve problems relational systems and key-value stores cannot.
InfinityDB adds relation-like capabilities to a hierarchical, key-value store.
No-one needs to develop and bake-in a complex permanent tabular or other data model that makes countless assumptions about the possible future uses of the data, because InfinityDB is incrementally extensible at runtime with forwards and backwards data structure version compatibility. Schema extensions happen automatically at the instant the newly-structured data arrives, and revert when that data is deleted. Each ‘Item’ inserted into the database has self-describing ‘metadata’ components that logically define necessary new structure immediately. Each new data source can add data of a new structure without alteration of a global static data model.
InfinityDB is incrementally extensible at run time
A wide range of utilities are provided to help build incrementally extensible structures including mixtures of key/value associations, graphs, blobs, huge sparse arrays, texts, text indexes, inverted Entity-Attribute-Value triples, nestable relations, sets, nestable multi-maps, and application-specific structures. The API has only 10 basic methods, but infinite expressibility and flexibility.
InfinityDB provides unbeatable speed. It has built-in reliability, with instant recovery on external failure without logs. InfinityDB has compression, transactions, patent-pending multi-core concurrency, and strong typing. The simple but powerful InfinityDB ‘ItemSpace’ data model can be wrapped by an adapter to present an extended Java ConcurrentNavigableMap view for instant familiarity if desired. A database is a single file, and its basic format has remained unchanged for over a decade. No expensive DBA needs to manage the deployed systems.
Get instant developer productivity and creativity!
Learn More about InfinityDB.
- InfinityDB Free Trial in the Shop
- InfinityDB Trial License
- For commercial licensing, email email@example.com
The New InfinityDB Client/Server System
The latest improvement of InfinityDB in version 5 is a client/server system that organizes a set of embedded InfinityDB files into a secure remotely accessible sharable database. This is in alpha testing now. You can see the backend access_web app now if you are adventurous. The guest user is ‘testUser’ and password ‘db’. We appreciate your experimentation and exploration of it. To get a flavor of the system, select ‘Access Databases’ on the home page. You will see a table of the available InfinityDB database files for users in the guest role, one called demo/demo which contains read-only data and one called demo/experiment that contains data you can modify. You can select ‘edit’ on demo/demo to see the main browsing page with a list of the ‘EntityClasses’, which are like tables. Choose any of them, such as ‘Pictures’, ‘Samples’, ‘Aircraft’ or ‘Documentation’ to see the main tabular browsing page. You can try the tabular, JSON, or ItemSpace views. If you want, you can add and modify your own data in demo/experiment for others to see, and then please comment to us. We will create you a free personal trial database if you contact us, and provide the secure Python REST driver. The ‘ItemSpace’ data model is explained in the download of the regular version 4 embedded InfinityDB which is free for trial use in the store, and that is an important starting point to fully grasp the browser before you begin. The most important new concept: Every Item has a URL. Here is the URL for the JSON of the Items describing the Boeing “747” jet in the demo database: Aircraft “747” username ‘testUser’ password ‘db’. Here is a URL for the Items for a picture: Apollo-Soyuz
Every InfinityDB Item has a URL
The AirConcurrentMap ConcurrentNavigableMap
A separate product, the fast com.infinitydb.map.AirConcurrentMap API is identical to the Standard Java Maps – in fact it is a java.util.concurrent.ConcurrentNavigableMap, optimized for more than about 1K Entries. You can use our time-limited trial version to compare the performance with that of the Standard Java Maps. Memory efficiency is higher than any JDK Map as well. Our extensions provide extreme performance for parallel operations even beyond streams.