---
title: "Was MongoDB ever the right choice?"
publication: "DB Weekly"
issue: 247
published_at: "2019-03-29"
canonical_url: "https://dbweekly.com/issues/247"
---

This week's database news       

#247 — March 29, 2019 

[Read on the Web](https://dbweekly.com/issues/247)   

Database Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/ujrnhvi0iljfsxwgwgcm.jpg)](https://blog.acolyer.org/2019/03/25/amazon-aurora-design-considerations-for-high-throughput-cloud-native-relational-databases/)   

[Going Deep on the Design of Amazon Aurora](https://blog.acolyer.org/2019/03/25/amazon-aurora-design-considerations-for-high-throughput-cloud-native-relational-databases/) — _the morning paper_ recently featured two papers that dig deep into how Amazon’s _Aurora_ database system works. [Aurora](https://aws.amazon.com/rds/aurora/) is a MySQL and PostgreSQL-_compatible_ database that uses a lot of optimizations under the hood, and these papers dig into those optimizations. The [second paper](https://blog.acolyer.org/2019/03/27/amazon-aurora:-on-avoiding-distributed-consensus-for-i-os,-commits,-and-membership-changes/) covers the distributed consensus model. 

Adrian Colyer   

[Was MongoDB Ever the Right Choice?](https://www.simplethread.com/was-mongodb-ever-the-right-choice/) — If you’re looking for a place to rant and rave about MongoDB, this isn’t it. As an innovation in the database world, MongoDB has received a lot of criticism over the years but the problems it solves are important, says the author. _(And if you're a MongoDB user, head over to [our MongoDB newsletter](https://mongodb.email/?ref=db) :-))_ 

Justin Etheredge   [![\](https://copm.s3.amazonaws.com/17a6b19d.jpg)](https://hubs.ly/H0h66m30) 

[Why to Use a Relational Database for Your IoT Applications](https://hubs.ly/H0h66m30) — Don’t make the mistake of creating data silos. With a relational database like TimescaleDB, you can unify time-series, metadata, & geospatial data in a single database system that scales from the cloud to the edge. Which is why [Azure partnered with Timescale](https://hubs.ly/H0h66Mj0) to power IoT & time-series workloads. 

Timescale sponsor   

[How to Build and Run the Open Distro For Elasticsearch SQL Plugin with Elasticsearch OSS](https://aws.amazon.com/blogs/opensource/build-run-sql-plugin-open-distro-elasticsearch-oss/?sc_channel=sm&sc_campaign=Open_Source&sc_publisher=TWITTER&sc_country=Open+Source&sc_geo=GLOBAL&sc_outcome=adoption&trk=_TWITTER&sc_content=blog&linkId=65327932) — We recently mentioned Amazon’s controversial [new distribution of Elasticsearch](https://aws.amazon.com/blogs/aws/new-open-distro-for-elasticsearch/) and now we get to see one part of it in action: a plugin that lets you query an Elasticsearch store [using SQL](https://github.com/opendistro-for-elasticsearch/sql). 

Jon Handler   

[McDonald's Bites on Big Data With $300M Acquisition](https://www.wired.com/story/mcdonalds-big-data-dynamic-yield-acquisition/) — McDonalds’s brings Big Data to its Big Macs with its largest acquisition in 20 years. The plan is to use data analysis to suggest products customers are more likely to buy. 

Brian Barrett   

[Neo4j Unveils Its 'Startup Program' Offering Graph Database Tech to Small Companies](https://neo4j.com/startup-program/) — The company behind the [Neo4j graph database](https://github.com/neo4j/neo4j) have started a program opening up their enterprise-level offerings to certain types of startup and small companies. 

Neo4j  

📖 Tutorials  

[Redis Streams as a Pure Data Structure](http://antirez.com/news/128) — The creator of [Redis](https://redis.io/), the data structure server, looks at streams as a pure data structure and how they can be like “CSV files on steroids.” 

Salvatore Sanfilippo   

[The Best Way to Count Distinct Indexed Things](https://www.peterbe.com/plog/best-way-to-count-distinct-indexed-things-in-postgresql) — It’s significantly more efficient to do a count of a subquery’s results than to try to do a count with `DISTINCT` in a single query. 

Peter Bengtsson   

[pganalyze eBook: How to Get a 3x Performance Improvement on Your Postgres Database](https://pganalyze.com/ebooks/optimizing-postgres-query-performance?utm_source=DBWeeklySecondary) — Learn our best practices for optimizing Postgres query performance for customers like Atlassian and how to reduce data loaded from disk by 500x. 

pganalyze sponsor   

[Indexes in Postgres: A Look at B-Trees](https://habr.com/en/company/postgrespro/blog/443284/) — The latest in [a series of extensive posts](https://habr.com/en/company/postgrespro/blog/441962/) taking a deep dive into how indexes work. 

Egor Rogov   

[Speeding Up `GROUP BY` in PostgreSQL](https://www.cybertec-postgresql.com/en/speeding-up-group-by-in-postgresql/) — SQL’s `GROUP BY` is used to group records in a result set together often for summary/aggregation purposes and there’s a way to speed them up and gain some ‘free’ extra perf, claims the author! 

Hans-Jürgen Schönig  

💬 Stories and Opinions  

[How We Moved a Massively Parallel Postgres DB onto Kubernetes](http://engineering.pivotal.io/post/how_we_moved_a_massively_parallel_postgres_database_onto_kubernetes/) 

Oz Basarir (Pivotal)   

[Some Numbers You'll Know by Heart If You Have Been Working with SQL Server for A While](https://sqlservercode.blogspot.com/2019/03/some-numbers-that-you-will-know-by.html) — A light hearted, tongue in cheek piece for SQL Server users. I think every database could have an equivalent article! 

Denis Gobo   

[A Tale Of Two Queries: Standing Up for ANSI-89 SQL `JOIN` Syntax](https://sqlha.com/2019/03/25/a-tale-of-two-queries/) — I’ve gotta admit, this is how I still do joins too. 👴🏻 

Allan Hirt  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/gz2bjknkbv23t7hahi7h.jpg)](https://github.com/minimaxir/automl-gs)  

[automl-gs: Quickly Perform Machine Learning on CSV Files](https://github.com/minimaxir/automl-gs) — OK, the title doesn’t quite get at what this is, but it’s neat. Give automl-gs a CSV file and it’ll create a model for predicting the values of a field of your choice that you can work with from Python. 

Max Woolf   

[Bitraft: A Bitcask Distributed Key/Value Store using Raft for Consensus with a Redis Compatible API](https://github.com/prologic/bitraft) — [Bitcask](https://github.com/prologic/bitcask) is both a high performance Go key/value store and a storage format used by Riak. Bitraft adds Raft-powered consensus to distribute the store. 

James Mills   

[csvq: Use an SQL-like Query Language on CSV Files](https://github.com/mithrandie/csvq) — Includes an interactive REPL. 

Mithrandie         

A **[Cooperpress](https://cooperpress.com/)** publication. 

[Change your email address](https://dbweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://dbweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
