Cassandra vs SQLite: What are the differences?
Developers describe Cassandra as "A partitioned row store. Rows are organized into tables with a required primary key". Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL. On the other hand, SQLite is detailed as "A software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine". SQLite is an embedded SQL database engine. Unlike most other SQL databases, SQLite does not have a separate server process. SQLite reads and writes directly to ordinary disk files. A complete SQL database with multiple tables, indices, triggers, and views, is contained in a single disk file.
Cassandra and SQLite can be categorized as "Databases" tools.
"Distributed", "High performance" and "High availability" are the key factors why developers consider Cassandra; whereas "Lightweight", "Portable" and "Simple" are the primary reasons why SQLite is favored.
Cassandra is an open source tool with 5.27K GitHub stars and 2.35K GitHub forks. Here's a link to Cassandra's open source repository on GitHub.
Intuit, Coderus, and Infoshare are some of the popular companies that use SQLite, whereas Cassandra is used by Uber Technologies, Facebook, and Spotify. SQLite has a broader approval, being mentioned in 314 company stacks & 477 developers stacks; compared to Cassandra, which is listed in 342 company stacks and 239 developer stacks.
What is Cassandra?
What is SQLite?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using Cassandra?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
SQLite is a tricky beast. It's great if you're working single-threaded, but a Terrible Idea if you've got more than one concurrent connection. You use it because it's easy to setup, light, and portable (it's just a file).
In Paperless, we've built a self-hosted web application, so it makes sense to standardise on something small & light, and as we don't have to worry about multiple connections (it's just you using the app), it's a perfect fit.
For users wanting to scale Paperless up to a multi-user environment though, we do provide the hooks to switch to PostgreSQL .
Stitch is a wrapper around a Cassandra database. It has a web application that provides read-access to the counts through an HTTP API. The counts are written to Cassandra in two distinct ways, and it's possible to use either or both of them:
Real-time: For real-time updates, Stitch has a processor application that handles a stream of events coming from a broker and increments the appropriate counts in Cassandra.
Batch: The batch part is a MapReduce job running on Hadoop that reads event logs, calculates the overall totals, and bulk loads this into Cassandra.
Used during the "build process" of Coolfront Mobile's Flat rate search engine database. Flat rate data that resides in Salesforce is transformed using SQLite into a format that is usable for our mobile Flat rate search engine (AKA: Charlie).
RDBTools is a self-hosted application, and it is important that the installation process is simple. With SQLite, we create a new database file for every analysis. Once the analysis is done, the SQLite file can be thrown away easily.
Cassandra is our data management workhorse. It handles all our key-value services, supports time-series data storage and retrieval, securely stores all our audit trails, and backs our Datomic database.
All the dynamic data (i.e.: jobs) is stored in a simple SQLite database.
Все динамические данные (вакансии) хранятся в простой SQLite БД.
While we experimented with Cassandra in the past, we are no longer using it. It is, however, open for consideration in future projects.
We are using Cassandra in a few of our apps. One of them is as a count service application to track the number of shares, clicks.. etc
There's really no call for something heavier for this site. SQLite is simple, easy to use and quite reliable given its age.