TechLog: NoSQL Databases, MicroPython and Choosing a Web Server

A high level over view of NoSQL databases – what they are, how they are used and a mention of a few products.

NoSQL databases have been gaining momentum because organizations want the ability to query unstructured and semi-structured data, and they want to take advantage of database technologies that were designed for the Web and Big Data. NoSQL solutions are generally open source, provide linear scalability across commodity hardware, and ensure high availability through distribution and replication. Many of them also store data in a schemaless manner.

The four major types of NoSQL databases are key-value stores, document stores, wide column stores, and graph stores. Some of them, particularly key-value stores, may be broken down further into subtypes depending on who is classifying them. It is also worth noting that some NoSQL databases span more than one category and some of them also support SQL queries

Read more:
Follow us: @sdtimes on Twitter | sdtimes on Facebook

Micro Python is Python for micro-controllers. It was funded on Kickstarter. I would happily fund a version for Android!

Micro Python is a lean and fast implementation of the Python programming language ( that is optimised to run on a microcontroller.  The Micro Python board is a small electronic circuit board that runs the Micro Python language.  The aim of this Kickstarter campaign is to make Micro Python open source software so you can use it in your own projects, and also to fund a small manufacturing run of Micro Python boards so that you can own one for yourself!

Python is a scripting language that is very easy to learn, yet highly expressive and very powerful, and has a huge existing community.  Running on a small microcontroller, Micro Python allows you to effortlessly blink LEDs, read voltages, make motors and servos move, play sounds, write data to SD cards, communicate wirelessly, and be the brains of your robot, among countless other things.  It is the perfect choice to control your next project!

How do you choose between Apache and Nginx? This article sheds some light on the trends and examines some of the architectural differences between the two.

Nginx has become popular due to its event driven design which can make better use of today’s computer hardware that Apache’s process driven design. The end result is that nginx can serve more concurrent clients with higher throughput than Apache on the same hardware. In some cases. The often overlooked condition with the choice is what exactly you’re going to be doing with your servers.

The most important question when you’re choosing a web server setup is how you’re going to use the server. If you’re going to be serving a single site and this server is dedicated as a web server with a separate database server, you will likely be able to find some gains by using nginx over Apache if you have high traffic. As an additional benefit, nginx has configuration features which make it easier to scale than Apache if necessary. If you’re going to be hosting many sites and many applications with this server, like a bunch of WordPress sites, the answer is less clear. In that case PHP becomes much more of a bottleneck than either of the web server choices.