NoSQL Geek2Geek at Wikimedia

Last week we did again a Geek2Geek event in Berlin. This time the event was hosted by Wikimedia Deutschland and the topic was “NoSQL Ring Architecture”.

Ring Architecture

Ring Architecture is designed for high scalability and BIG DATA! The idea is the your data store is organized in a ring and your write operations can be send to multiple nodes in the ring. The nodes of the ring can be server nodes distributed over the whole planet.

ring_architecture

Typically your data is stored redundantly in multiple nodes (Not necessary in all nodes). That makes it automatically very failure tolerant.

Ring Architecture is optimized for writes! There is a bunch of use cases for this kind of Architecture. For example smart meters. If you have a couple million houses with smart meters, sending every 1 minute their state to a centralized data store, you have A LOT of write load! Good luck if you try to handle that load with a multi master MySQL Cluster 😀

It is also very interesting for Geo Location use cases. If you run a service world wide for local retail for example, you will send most of your write operations from Europe to nodes in Europe. that means that read operations from Europe are super fast. Reads for European retail data from other continents would be still possible of course, but it would be a bit slower. But that’s OK, because you know that kind of reads are the Exception.

Geek2Geek

The Geek2Geek event happens every couple weeks. Always at a different location and always with a different topic. We always invite at least 2 speakers to 1 topic. We want to see different solutions for a problem and get people with different background into 1 room.

Two very popular implementations for Ring Architecture are Apache Cassandra and Riak. We had a talk to each of them. Round about 50 people attended to the event.

geek2geek

Check out more pictures on the MeetUp page.

Cassandra

The Apache Cassandra project is completely open source and it was originally started by engineers at Facebook. No wonder, they have a lot of writes and reads on their backend I guess 🙂

Christian Johannsen gave a talk to Cassandra. The talk was recorded and we even live streamed the talk on YouTube. Watch the talk here.

Christian did a great job. He gave a really good intro to Cassandra and explained very well how it works. We had surprisingly many questions to Cassandra from the audience. Much more than usual.

Riak

Riak is a younger implementation of the Ring Architecture. Guillermo Alvarez from Wooga did the 2nd talk about Riak. He gave a short intro and showed us how they use Riak at Wooga to develop some amazing games. Watch his talk here:

Guillermo did a great job as well. It was very interesting to listen to the Wooga use cases. And we had a lot of questions from audience to Riak as well. This time the audience showed a high engagement 🙂

Sponsors

Geek2Geek is always FREE and most times we have even free drinks and Pizza! That wouldn’t be possible without our awesome sponsors!

Wikimedia Deutschland

Many Thanks to Wikimedia Deutschland for sponsoring the great room and the possibility to record and even live stream the talks! The Wikimedia Foundation in Berlin is working on several Open Source projects. The most popular is of course Wikipedia. But indeed most of the engineers at Wikimedia in Berlin work on the WikiData project. That is the biggest fact database in the world.

wikimedia_family

 

DataStax

Many Thanks to DataStax for the food sponsoring. DataStax is the company behind Apache Cassandra. If you need professional help & support for your Cassandra installation you should talk to DataStax. They have more than 300 employees all around the world, ready to help you.

DATASTAX LOGO

Basho Technologies

Many Thanks to Basho Technologies for the food sponsoring. Basho Technologies is the company behind Riak. If you need professional support for your Riak installation you should contact Basho Technologies. And maybe you are even interested in their new Cloud Hosting Service for Riak.

basho-logo-color-vert

VersionEye

And many thanks to VersionEye for organizing the event. For bringing together the right people, the right speakers and the right sponsors. VersionEye is a Notification System for Software Libraries. It helps developers to stay up-to-date.

VerisonEye

Sorry to MongoDB

Round about 2 weeks ago I updated VersionEye from MongoDB 2.4.9 to 2.6.3. At first I updated everything on localhost and executed a couple tests suites. Then I tested manually. Everything was green. So I did the upgrade on production. After that we faced some down times. The application was running smoothly for a couple hours and then suddenly it become incredible slow until it didn’t react anymore. At that time I had to reboot the Mongo cluster or the app servers. And that happened a couples times.

I was reading logs for hours and searching for answers on StackOverflow.   And of course I was blaming MongoDB on Twitter. Well. I’m sorry for that. It was my fault!

Here is what happened. VersionEye is running on a 3 node replica set. Somehow, late at night, I was doing a copy & paste fuck up. In the mongoid.yml all MongoDB hosts has to be listed. 2 of the 3 entries pointed to the same host. Somehow that worked out for a couples hours. But If 1 of the hosts was not available anymore the MongoID driver tried to find a new master and if it wasn’t available (because 1 host was not listed) everything blocked.

I’m sorry for that!

mongoDB-logo

Geek2Geek NoSQL

Last Friday we met again for the Geek2Geek event in Berlin. The theme this time was NoSQL. 40 people RSVPd on MeetUp.com and 42 joint actually the event. Not bad for a Friday night 🙂

Geek2Geek_01

Jan Lehnardt gave the first talk about CouchDB. A database that uses JSON for documents, JavaScript for Map and Reduce queries, and regular HTTP for an API.

Geek2Geek_04

Jan is one of the core comitters of the CouchDB project and knows the database in and out. Jan gave us a very entertaining overview about the features of CouchDB 🙂

Geek2Geek_06

Stefan Plantikow made the 2nd talk about Neo4J, a graph database written in Java and Scala.  Stefan is one of the core comitters of the project.

Geek2Geek_07

He is a brave guy, because he did a live demo. Thanks God the internet was working and Maven could download all dependencies without any errors 🙂

Geek2Geek_09

Stefan showed us the new features in version 2.0 of Neo4J and he even talked about new and not yet presented features in version 2.1.

The 3rd talk was by Martin Schoener about ArangoDB, a multi-purpose, multi-model, non-relational, open source database. Martin is the chief architect at the ArangoDB project.

Geek2Geek_10

Beside ArangoDB he talked also about the other database systems and he showed us a very interesting landscape of dbs, which caused quiet some active discussions.

Geek2Geek_11

The event was a lot of fun with all this great people. After the talks we moved to a pizza shop around the corner, where we stayed until midnight. We talked for a couple hours about databases and languages.

Geek2Geek_13

Sponsors

Pizza and Drinks have been sponsored by 2 awesome companies. Many Thanks for that.

Locafox

Locafox is a young StartUp from Berlin. They work on a real-time online/offline solution for retail. It’s a young team in the middle of Berlin and currently they are hiring. Check out the positions here: http://locafox.de/jobs

locafox

Tempo-DB

TempoDB is a young database StartUp from Chicago. TempoDB is purpose-built to store & analyze time series data from sensors, smart meters, servers & more. If you want to join the team send an email to jobs@tempo-db.com.

Screen Shot 2014-02-18 at 19.20.35

Many Thanks again to our great sponsors. Many Thanks for the Pizza & Beer.