Informix is an embedded relational database offering from IBM.
N/A
PostgreSQL
Score 8.3 out of 10
N/A
PostgreSQL (alternately Postgres) is a free and open source object-relational database system boasting over 30 years of active development, reliability, feature robustness, and performance. It supports SQL and is designed to support various workloads flexibly.
Informix is very well suited for either OLTP and OLAP transaction processing. This means that it has the best technology, concentrating both business requirements: transactional and analytical processing at the same time, as well as being able to store and process structured and unstructured data at the same time as well, and able to scale up and out if needed or required. This is why Informix is able to adapt to almost any sort of environment and satisfy almost any sort of requirement, even if the requirement is to be embedded in hardware! This last is possible because it it requires zero support and maintenance, as it can be self tuned and self healed. One of the main scenarios which is nowadays getting promoted for is the IoT one. Starting from mid 90's Informix incorporated the extensibility concept through the datablades it had brought from Illustra. This is why it is pioneer in the TimeSeries and GeoSpatial (tracking moving objects) technology, with the fastest and best storing TimeSeries techniques and GeoSpatial functionalities. The Wire Listener is one of the best features Informix has introduced to its suit of functionalities, can work in three different scenarios API types: MQTT, REST and MONGO, supporting IoT, MongoDB (an application using MongoDB can be redirected as it is to Informix-Mongo without changes) and able to understand HTTP functions (POST, GET, PUT, etc).
PostgreSQL is ideal for handling databases that contain large volumes of information due to its efficiency, speed and above all because of the good management it makes of our resources, it also behaves very well in distributed environments of high demand, if you want a database of stable data and excellent performance PostgreSQL is one of the best.
Informix since its conception has a distinct multi-threading architecture no other engine has, it is unique of its kind. This is precisely how the engine is able to scale up like no other, with the lowest footprint, without killing the host and profiting each bit of the hardware. The threads are sub-proceses like any other one, but the difference is that they are are not controlled by the OS process dispatcher. This is why you will never be able to see these threads running at OS level. Informix is an OS itself, on top of the OS.
Informix has the best replication techniques. Not many ppl know that MongoDB (the NoSQL engine) scales out because of its data sharding replication technology, and Informix is able to store Mongo BSON documents using the same data partitioning as MongoDB does. This way Informix extends the SQL or structured data with the unstructured data natively, together within the same data repository. This means that it is not only able to store JSON/BSON documents, but the engine is able to behave as it would be the MongoDB engine itself. Any application using MongoDB can be redirected to the Informix Mongo wire listener transparently. What´s more, it also improves the NoSQL (BASE) characteristic, making it ACID by allowing transactions to the CRUD operations. This last is something MongoDB is working on, promised to be delivered next year.
As described previously, MongoDB's sharding concept relies on data partitioning, this is how it scales out, and as I also described previously Informix scales up given the described multithreading unique architecture! It implements the data sharding with one of its best replication technologies called Enterprise Replication. This is an Active-Active replication technology that allows replicating even between different platforms. This is actually how I managed to migrate the whole Informix platform from Solaris to Linux, with just a DNS change. There was almost ZERO downtime nor application change - this was really amazing!.
The performance of PostgreSQL has been enhanced through the years, but always is better to have as much performance as we can.
The replication services could be done directly within the database, and more easily.
The Object Orientation of the Database could be extended, and albeit it manages inheritance of tables, and accepts XML and JSON as primary types, it would be wonderful if one could attach methods more easily to tables (to make them more like classes), and instances (rows for example).
Postgresql is the best tool out there for relational data so I have to give it a high rating when it comes to analytics, data availability and consistency, so on and so forth. SQL is also a relatively consistent language so when it comes to building new tables and loading data in from the OLTP database, there are enough tools where we can perform ETL on a scalable basis.
The data queries are relatively quick for a small to medium sized table. With complex joins, and a wide and deep table however, the performance of the query has room for improvement.
AWS, Heroku, and Digital Ocean all provide Postgres-as-a-service, where you pretty much never need to administrate it yourself but they do it for you. The Postgres community also has developed awesome and reasonably priced extensions, such as Citus DB and CockroachDB in case you need additional support for running it. If you need documentation, Postgres's docs are super thorough and their official forms are active.
The online training is request based. Had there been recorded videos available online for potential users to benefit from, I could have rated it higher. The online documentation however is very helpful. The online documentation PDF is downloadable and allows users to pace their own learning. With examples and code snippets, the documentation is great starting point.
IBM Informix unlike the tools above creates effective solutions for big data extraction and data transportation functionalities across the entire Cloud services and the Automation ability is the best. The security that IBM Informix provides for all our business data and other project information and contacts is effective and the reports are very clean and easy to understand.
In this case, Postgres is preferred because it handles large data sets and requires fewer hardware resources than its competitor, MySQL. Compared to PostgreSQL, Microsoft products are excellent, but the installation process for MS SQL is lengthy. PostgreSQL has an advantage over its competitors in that it can adapt or configure third-party programs, applications, or settings.
Although I do not own nor have visibility on my company's figures:
Informix generates consistent savings on DBA staffing, no need for many DBAs as other DBMS require.
The replication architecture allowed consistent savings in the infrastructure as well as developments and maintenance, the job is already done, no need to develop complex and costly solutions, it's just a matter of configuring it.
The advantages of hybrid development (i.e mixing SQL and NoSQL in the same database) is not just a marketing hype: it allowed us to solve with a brilliant solution, in one afternoon of coding, a functional problem we have been having for more than 10 years!
The biggest drawback is that IBM pricing may be constraining, it has too important gaps between the mid range and highrange in terms of pricing
Easy to administer so our DevOps team has only ever used minimal time to setup, tune, and maintain.
Easy to interface with so our Engineering team has only ever used minimal time to query or modify the database. Getting the data is straightforward, what we do with it is the bigger concern.