You‘ve probably heard of search engine optimisation (SEO) but do you know how it works?Read More
Why isn’t Kognitio open source?
A lot of the alternative offerings in this area are open source, and occasionally we are asked why Kognitio’s software is not open source. To understand that, it is worth looking at the benefits of open source in general, and seeing which apply here:
Free or cheap
As mentioned above, Kognitio’s software is free to use. There are no limits on scalability or functionality – it is enterprise-level software that is free-to-use at any scale without restriction. There is no separate enterprise version that people need to pay for. Monetization is via paid support contracts, which is true of a lot of open source software as well. Note that there is free community support via a forum. So making Kognitio software open source would not provide any benefit in this area.
Kognitio runs on your existing Hadoop cluster. By its nature, it has to fit in with the other components in the Hadoop ecosystem, so users will store data in Hadoop using e.g. ORC/Parquet formats, then use the Kognitio software to query that data.
You can easily use a number of other SQL on Hadoop products to do the same thing, so if you’re using Kognitio, it doesn’t mean you’re locked in. You can also use different SQL on Hadoop products for different tasks on your Hadoop platform, giving more flexibility and less lock-in. Some clients worry what happens if a proprietary vendor goes out of business, but Kognitio have escrow arrangements in place on demand for such an eventuality.
Ability to modify for your own requirements
This is a benefit of open source, but for a tiny minority of companies. The reality is that most companies are never going to modify e.g. Apache Hive, to fix a problem. Rather, they are going to report their problem to their Hadoop distributor, then wait for a fix. If they are using Kognitio software, they would report their problem to Kognitio in exactly the same way.
We only have one product, and have been developing it for over 20 years. The product is still being actively developed, so new functionality and performance improvements are being added continually. Open source does have the potential to grow a significant community of developers for a project, but this is more true for new projects rather than software that has already had a vast number of man hours poured into it. In addition, project direction can be driven more by developer ideas than customer demand, particularly with developers who are not paid to work on the project.
- Make the project less responsive to customer requests if they are viewed unfavourably by developers. For example, if the developers believe the customer should change their client code rather than the product be changed to work with that client code.
- Make it harder to find people to perform tasks required for enterprise software. For example, backporting fixes to stable versions of the software, and performing comprehensive testing, rather than forcing customers to move to the latest version.
- With an existing complex product there are also benefits to having all developers in the same time zone, and often the same location, for communication purposes. This does reduce the talent pool available for developers, but that is why Kognitio have a strong focus on developer retention, enabling us to keep the best developers we find. If developers are interested in working on a product like Kognitio’s, we are always interested in recruiting – see our careers page for more information.
Having a thriving community is essential for successful open source projects. A new project developed as open source from day one may well be able to build such a community. However, many open source projects aren’t able to do this for a number of reasons, including:
- the software is a legacy product made open source at the end of its commercial life
- the software is open source, but the vast majority of developers are actually in a single company
In such cases, the company open-sourcing the software has to put significant effort into the process, and the software (and its users) could have been better served by putting that effort into in-house development instead. At Kognitio, we are choosing the latter path, of putting effort into in-house development rather than into building a community for an existing, very complex software product.
A lot of competing open source products in Kognitio’s space are also relatively young. Kognitio does have the advantage of mature software (as Joel Spolsky notes, good software takes ten years), which means fewer issues. We also have an experienced enterprise-level support infrastructure to assist with any issues customers do find. Remember, this support team is focused on one product, rather than catering for a vast number of products in e.g. a Hadoop distribution.