Google Cloud Datastore is a NoSQL "schemaless" database as a service, supporting diverse data types. The database is managed; Google manages sharding and replication and prices according to storage and activity.
N/A
Pricing
Apache Cassandra
Google Cloud Datastore
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Cassandra
Google Cloud Datastore
Free Trial
No
No
Free/Freemium Version
No
No
Premium Consulting/Integration Services
No
No
Entry-level Setup Fee
No setup fee
No setup fee
Additional Details
—
—
More Pricing Information
Community Pulse
Apache Cassandra
Google Cloud Datastore
Considered Both Products
Cassandra
No answer on this topic
Google Cloud Datastore
Verified User
Engineer
Chose Google Cloud Datastore
If deploying an application in Google Cloud Platform, using Google Cloud Datastore is a no brainer because of the simplicity of setup. Other options would require more setup and configuration, and do not come with the same level of guaranteed uptime as Google Cloud Datastore. …
Apache Cassandra is a NoSQL database and well suited where you need highly available, linearly scalable, tunable consistency and high performance across varying workloads. It has worked well for our use cases, and I shared my experiences to use it effectively at the last Cassandra summit! http://bit.ly/1Ok56TK It is a NoSQL database, finally you can tune it to be strongly consistent and successfully use it as such. However those are not usual patterns, as you negotiate on latency. It works well if you require that. If your use case needs strongly consistent environments with semantics of a relational database or if the use case needs a data warehouse, or if you need NoSQL with ACID transactions, Apache Cassandra may not be the optimum choice.
If you want a serverless NoSQL database, no matter it is for personal use, or for company use, Google Cloud Datastore should be on top of your list, especially if you are using Google Cloud as your primary cloud platform. It integrates with all services in the Google Cloud platform.
Continuous availability: as a fully distributed database (no master nodes), we can update nodes with rolling restarts and accommodate minor outages without impacting our customer services.
Linear scalability: for every unit of compute that you add, you get an equivalent unit of capacity. The same application can scale from a single developer's laptop to a web-scale service with billions of rows in a table.
Amazing performance: if you design your data model correctly, bearing in mind the queries you need to answer, you can get answers in milliseconds.
Time-series data: Cassandra excels at recording, processing, and retrieving time-series data. It's a simple matter to version everything and simply record what happens, rather than going back and editing things. Then, you can compute things from the recorded history.
Cassandra runs on the JVM and therefor may require a lot of GC tuning for read/write intensive applications.
Requires manual periodic maintenance - for example it is recommended to run a cleanup on a regular basis.
There are a lot of knobs and buttons to configure the system. For many cases the default configuration will be sufficient, but if its not - you will need significant ramp up on the inner workings of Cassandra in order to effectively tune it.
I would recommend Cassandra DB to those who know their use case very well, as well as know how they are going to store and retrieve data. If you need a guarantee in data storage and retrieval, and a DB that can be linearly grown by adding nodes across availability zones and regions, then this is the database you should choose.
For the amount of use we're getting from Google Cloud Datastore, switching to any other platform would have more cost with little gain. Not having to manage and maintain Google Cloud Datastore for over 4 years has allowed our teams to work on other things. The price is so low that almost any other option for our needs would be far more expensive in time and money.
We evaluated MongoDB also, but don't like the single point failure possibility. The HBase coupled us too tightly to the Hadoop world while we prefer more technical flexibility. Also HBase is designed for "cold"/old historical data lake use cases and is not typically used for web and mobile applications due to its performance concern. Cassandra, by contrast, offers the availability and performance necessary for developing highly available applications. Furthermore, the Hadoop technology stack is typically deployed in a single location, while in the big international enterprise context, we demand the feasibility for deployment across countries and continents, hence finally we are favor of Cassandra
We selected Google Cloud Datastore as one of our candidates for our NoSQL data is because it is provided by Google Cloud, which fits our needs. Most of our infrastructure is on Google Cloud, so when we think about the NoSQL database, the first thing we thought about is Google Cloud Datastore. And it proves itself.
I have no experience with this but from the blogs and news what I believe is that in businesses where there is high demand for scalability, Cassandra is a good choice to go for.
Since it works on CQL, it is quite familiar with SQL in understanding therefore it does not prevent a new employee to start in learning and having the Cassandra experience at an industrial level.