Live data from Hacker News

Show HN: Mongita is to MongoDB as SQLite is to SQL

github.com

11–20 of 95 posts

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#11
post #8

> Mongita is to MongoDB as SQLite is to SQL it really isn't if it's written in python

I don't think it is whatever it's written in, because I can't imagine what it would mean? Unless there's a DBMS implementation called simply 'SQL' that I'm not aware of? (Or if Mongo calls its query language 'MongoDB'?) Seems like '.. to (My|Postgre)SQL' would be a better fit?

I guess the idea relates to "a SQL database" - might be technically incorrect, but with Mongo it's sort of embedded in NoSQL - that also originally meant "no SQL [language]", but has turned to mean "no SQL and not a classical RDBMS with databases, tables and columns, rows, views, procedures..."

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#12
post #10

So, by their own benchmarks, unless you are doing totally random lookups of documents by identifier--and mostly reads, with very few writes--you should absolutely use SQLite with JSON values, which absolutely destroy this project in performance?...

The project isn't about performance, it's about providing an embedded version of MongoDB - it clearly states that if you grow too large, then you can easily migrate to the full MongoDB. It also clearly states not to use it if you want a relational database.

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#13

> Mongita is to MongoDB as SQLite is to SQL it really isn't if it's written in python

Yeah, but, at least, with python, devs can prototype and verify, early and fast. Imagine implementing this in C/C++ or even Rust. You get extra layers of problems to handle in your brain.

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#14
post #13

> Mongita is to MongoDB as SQLite is to SQL it really isn't if it's written in python

Yeah, but, at least, with python, devs can prototype and verify, early and fast. Imagine implementing this in C/C++ or even Rust. You get extra layers of problems to handle in your brain.

Isn't it easy to prototype with MongoDB?

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#16
post #10

So, by their own benchmarks, unless you are doing totally random lookups of documents by identifier--and mostly reads, with very few writes--you should absolutely use SQLite with JSON values, which absolutely destroy this project in performance?...

The project isn't about performance, it's about providing an embedded version of MongoDB - it clearly states that if you grow too large, then you can easily migrate to the full MongoDB. It also clearly states not to use it if you want a relational database.

Then the comparison with SQLite is totally wrong.

SQLite is a production-grade DBMS: though it has fewer features compared to e.g. PostgreSQL, if those feature suffice, you can throw very sizable workloads at it.

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#18
post #13

Earlier quoted context omitted.

Yeah, but, at least, with python, devs can prototype and verify, early and fast. Imagine implementing this in C/C++ or even Rust. You get extra layers of problems to handle in your brain.

Isn't it easy to prototype with MongoDB?

The point is not using MongoDB here, and that means the database logic has to be reimplemented, likely in a different way because of different requirements. Using python does hurt embedding and performance, but at least one can easily get how such library should be designed, which is, in my opinion, the hard part.

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#19
post #10

So, by their own benchmarks, unless you are doing totally random lookups of documents by identifier--and mostly reads, with very few writes--you should absolutely use SQLite with JSON values, which absolutely destroy this project in performance?...

The project isn't about performance, it's about providing an embedded version of MongoDB - it clearly states that if you grow too large, then you can easily migrate to the full MongoDB. It also clearly states not to use it if you want a relational database.

Author here. That's exactly it.

I think it would be very difficult to completely beat SQLite with a Python library. My goal wasn't to beat it but to have performance that's within an order of magnitude which I think I've achieved.

In my opinion, the MongoDB interface has a lot of advantages over SQL that make sense in a lot of use cases. Certainly, there are times when a traditional relational database is the right choice. But I do think Mongita fills a niche.

Separately, the JSON1 extension, which the top-level comment refers to, is nice technically but has a challenging interface IMHO https://www.sqlite.org/json1.html

Re: Show HN: Mongita is to MongoDB as SQLite is to SQL

#20
post #8

> Mongita is to MongoDB as SQLite is to SQL it really isn't if it's written in python

I don't think it is whatever it's written in, because I can't imagine what it would mean? Unless there's a DBMS implementation called simply 'SQL' that I'm not aware of? (Or if Mongo calls its query language 'MongoDB'?) Seems like '.. to (My|Postgre)SQL' would be a better fit?

SQLite is a portable DBMS library that exposes a SQL language interface that is built and runs under every OS and language under the sun, for the most part. It is probably the single-most distributed library on the planet (in aggregate). And likely one of the most used libraries (top 10) on just about every given OS and platform/language.

Mongita is only useful for Python developers.

Post reply on HN