📜 ⬆️ ⬇️

Future couchdb

Note. This blog post by Damien Katz, creator of CouchDB, has caused a wide resonance. At the end of this topic is published the answer of one of the many opponents of Katz, whose opinion is radically opposite to the author.

What is the future of CouchDB? This is Couchbase.

Surprised? Ask how Apache CouchDB ? Well, this is a great project. I founded it, wrote the first versions almost completely independently, spent a huge amount of nerves, sweat and blood on it. I am very proud of him and the influence that he had. And now I and the Couchbase team are ready to move on. Of course, CouchDB is a great system, but we make it a successor: Couchbase Server. Product and project with similar capabilities and tasks, but faster, more scalable, more suitable for users and developers. And definitely not part of Apache.

In the case of Apache CouchDB, the focus is primarily on achieving consensus, consensus, on creating a developer community that manages the project and its development. Apache has done a good job in this regard, and continues to do. But for us this is not enough. I created CouchDB with the idea that an easy-to-use, peer-to-peer replication repository of documents would be useful to the world. And CouchDB has proven that many ideas are truly possible and useful, and it has become more successful than I could have imagined. But if I started again, then a lot would have done differently.
')
It looks like I think Apache’s activity is wrong, it’s not. Apache has become an important component of CouchDB success; without it, CouchDB would not become popular so quickly. But I believe that the project has reached the point where development by consensus limits its competitiveness. Nothing personal, this is business.

And now, it turns out, I have a chance to do it all again, without having to start from scratch. Based on the previous Apache CouchDB and Membase project, throwing out inefficient parts and leveraging efficient ones, develop these excellent technologies into something developer-friendly, with high performance, designed for use in critical applications and mobile integration - this project can evolve faster and be more responsive to user and customer needs than a community project.

Apache CouchDB, as a project and community, is in good shape. And many of us in Couchbase still commit commits there. But the future that I am promoting is behind Couchbase Server.

What is my role in developing Couchbase? Right now I am preparing Couchbase 2.0 for serious production use. I am an engineer and programmer again, back to the trenches, design and write code, analyze the designs and designs, help other engineers and solve complex problems. And I'm going to make the most simple, fast and reliable NoSQL database jokingly. Easy for developers to use, easy to install, reliable on individual machines and large clusters, and fast as fire. We create a system that you can put on the most critical tasks, business applications for working with users, and not feel like you are doing a dirty hack.

Soon, in order to work more closely with the team (and get rid of these terrible trips between work and Oakland), I will move my family to Mountain View. Shit just got real!

I really look forward to the work that we have scheduled. We gradually translate more and more of the kernel into C / C ++, while using in design many of the principles of reliability and interoperability tested in Erlang code. And Erlang is still part of the product, especially in cluster management, but most of the pieces that are important for performance will be rewritten in C. Erlang is still a great language, but if you need maximum performance and control at a low level, then you can hardly compare with C.

In any case, there is still a lot to be told, too much for one blog post. One of my New Year's decisions was to write to the blog more often, and I have a lot of interesting things to talk about. Tests in building a startup and programmer culture. What are the problems (and benefits) of Erlang. UnQL promotion. TouchDB for mobile. And yes, we are still compatible with Apache CouchDB and Memcached. But the future is Couchbase.

Let's go with us.

Addition

As Chris Anderson noted in the comments, Couchbase is completely open and the code is published under the Apache license.

All parts of Couchbase are completely open, we have two pages on github, on which activity rages:
https://github.com/couchbaselabs
https://github.com/couchbase
Probably the most interesting thing to start with analyzing the code: http://review.couchbase.org/

Let's be clear, if you like Apache CouchDB, stay with it. I think what I’m working on will like you a lot more. If not, there is still Apache CouchDB.

PS The future of CouchDB is Apache CouchDB . Answer to Damien Katsu from BigCouch developers, translated by Zelgadis .

Cloudant over the past 3 years created and improved BigCouch. BigCouch is a fault tolerant, horizontally scalable cluster framework created for CouchDB. Today we announce our intention to merge our work with the community. Working with the ASF and CouchDB community, we hope to integrate the basic features of BigCouch into Apache CouchDB. We hope this puts an end to the annoying (and false) memory - “CouchDB does not scale.” BigCouch forms the foundation for a globally distributed and sophisticated technology stack that we have used in large-scale production for over two years.

Those of you who have created applications with CouchDB know that its performance improves not by days but by hours. We achieved this through low-level implementation of critical procedures and refactoring of the Erlang codebase, but we did not damage the robust and stable REST API that CouchDB was used to expect. A growing community of active committers includes passionate stellar developers. Every day, more and more people use CouchDB for projects large and small.

We, along with many other companies, strongly support the community for the development of CouchDB, and we are not going to stop. We are very fortunate in our ability to attract outstanding engineers, investors and customers. We intend to continue allocating resources to Apache CouchDB and offer our assistance in any way that the community wishes. The future of CouchDB is CouchDB.

Damien Katz was a great founder and manager of CouchDB. It was an honor to work with him, and we wish him success in his new place and mission.

Source: https://habr.com/ru/post/135801/


All Articles