Berlin Buzzwords 2015 – Day 2



It’s All Fun And Games Until…: A Tale of Repetitive Stress Injury (Eric Evans)

Basically, watch out for yourself. If it hurts, you are doing something wrong. It’s good to be reminded about that from time to time. So, watch out for yourself:



A complete Tweet index on Apache Lucene (Michael Busch)

Michael Busch has given this talk in one version or the other for a couple of years now. Unfortunately it got more shallow now, not so many technical details about how they optimized Lucene for Twitter. Numbers are great, they have two billion queries per day and about 500 million tweets per day. One thing that he didn’t mention in his earlier talks is that they actually figured that Earlybird does scale to Twitter level requests due to the Earthquake in Japan when they had to emergency shutdown the caching layer in front (which was Ruby on Rails and did not scale that well). Nowadays they have all tweets in a pretty vanilla Lucene with some additions (going to be open sourced soon) and use a Mesos cluster in case they have to reindex all the data.

And BTW: Tweet IDs encode the timestamp the tweet was send at.


Automating Cassandra Repairs (Radovan Zvoncek)

First time speaker Radovan did a pretty good job. Apparently there are several ways to get to the “consistency” of the “eventual consistency” in Cassandra, which are Read Repair, Hinted Handoff and full blown anit-entropy repairs. The latter ones apparently can lead to a lot of problems if done improperly, so Spotify build something to manage that: Reaper.  The problems are usually due to disk IO limits, network saturation or just plain full disks. Spotify Reaper orchestrates anti-entropy repairs to make them reliable.

I’m still somewhat confused that one aparently has to spend a lot of time repairing Casandra clusters. I always thought that was what Cassandra was doing.


Diving into Elasticsearch Discovery (Shikhar Bhushan)

For all the people who forgot, like me, how ES clustering works this was a good reminder. Plus I learned that discovery is pluggable, so you can write your own plugin to provide the clustering part for ES. He apparently did and wrote Eskka, an Akka based clustering approach. Writing your own apparently isn’t that much fun because APIs change all the time. Just in case you forgot, Zen is the default way ES clusters.


Change Data Capture: The Magic Wand We Forgot (Martin Kleppmann)

We all know the problem Martin was describing: same data in different form, like in your database, in your cache, in your search engine. He went back to the “Change Data Capture” principle, which basically says “save once, distribute everywhere”. So in order to realize that he wrote a PostgreSQL plugin “Bottled Water” which gets the changes from Postgres and posts them to a Kafka topic. Yay for the best project name this year in the category: will never find that on google.

His implementation and idea is solid, the problem is that it is a Kafka topic per table, so you actually loose the transaction when reading from Kafka. Otherwise it is transaction save, messages are only sent when the transaction in Postgres commits. He uses Avro on the wire and transforms the Postgres DDL Schema to an Avro schema.

If you want to get your transaction back you would need a stream processor (Storm/Spark) downstream to reassemble your transactions. Might be a good idea if you already have a Postgres DB or rely on some special properties of a centralized Datastore, otherwise it is OK if your microservices write directly to Kafka.

Has someone actually coined the word “nanoservices” yet for designs that basically do just one thing? Like take the request, write it to a queue (Kafka) and all other processing taking place by consumers down the queue that do just one thing as well.


Designing Concurrent Distributed Sequence Numbers for Elasticsearch (Boaz Leskes)

Elasticsearch is rewriting the way they do distributed indexing based on the Raft Consensus Algorithm. Sounds great, they are mitigating a lot of problems they do have right now.


Apache Lucene 5 – New Features and Improvements for Apache Solr and Elasticsearch (Uwe Schindler)

Apparently, Lucene 4 broke a lot of indexes due to it’s build in backward compatibility to Lucene <=3. With two big companies actually relying on Lucene, that kind of amazes me.

Lucene 5 gets rid of all this legacy stuff and drops support for older indexes. Plus it adds a lot of data safety features when it comes to on-disk indices like checksums and sequence numbers. So, Solr and Elasticsearch should finally be production ready …. ;).

JDK seems to keep breaking Lucene (remember that the initial JDK 7 release broke Lucene?), apparently one should not use G1 GC with Lucene (es? Solr?).

And Lucene 5 uses a lot of the “new” JDK 7 APIs for IO to finally get the index safely to disk.



Real-Time Monitoring of Distributed Systems (Tobias Kuhn)

Less distributed, more of Real-Time monitoring. Apparently they build their own system for analyzing their loggs for anomaly detection, punnily named Anna Molly, which was open sourced now.

They made pretty clear that thresholds are not enough if you have a highly dynamic system that can change on multiple dimensions any time. Seasonality of your date makes it even harder to define useful thresholds. There are a couple of algorithms which can be used for anomaly detection, namely Tukey’s outlier detection and seasonal trend decomposition. And T-digest comes to the rescue of course.

For monitoring they actually use a cascade of statsd and carbon.


To sum up bbuzz 2015:





Berlin Buzzwords 2015 – Day 1


Analytics in the age of the Internet of Things (Ludwine Probst)

Basically a talk about analyzing a demo dataset from sports activity via Spark. Not so much new stuff in there, but beautifully manually illustrated slides.

Real time analytics with Apache Cassandra and Apache Spark (Christopher Batey)


Good speaker, awesome talk. Some takeaways:

  • One should read the dynamo paper
  • You can (mis)use the datacenter awareness of Cassandra for isolating workloads if you run spark on top of it.
  • 500ms is the lowest usefull microbatch length

Application performance management with open source tools (Tudor Golubenco, Monica Sarbu)


Packetbeat, which apparently just joined Elastic, is a TCP Layer application monitoring solution. So what they basically do is understand your protocol (HTTP, Redis, Postgres) and give you metrics directly from the traffic (how long did my HTTP request take?). Sound really interesting, as it doesn’t need any integration. Will be integrated into the ELK-Stack and get some more data providers. I really like the idea.

Practical t-digest Applications (Ted Dunning)


t-digest is an algorithm to get realtime quantiles/percentiles out of your data. That comes in handy if you want to have the data always at your fingertips and/or want to identify outliers. It is blazingly fast and needs constant memory, so you actually want to have it wherever you have numbers. Of course there is a Java-Library and an integration into Elasticsearch. Awesome speaker as well.

The Do’s and Don’ts of Elasticsearch Scalability and Performance (Patrick Peschlow)


Basically a long reminder to RTFM. Know what data you need, now the pitfalls, disable features you don’t need and make sure that your cluster setup fits your requirements.

Detecting Events on the Web with Java, Kafka and ZooKeeper (James Stanier)


Good speaker, I think they build quite interesting stuff at Brandwatch. It was not clear to me till the end why the built all that stuff themselves, but I think they co-evolved with Storm/Spark and just made their existing software cluster aware rather than rewriting the stuff.

Reminded me that there is Apache Curator, a set of high level abstractions for Zookeeper services (

Analyzing and Searching Streams of Social Media at Scale using Spark, Kafka and Elasticsearch (Markus Lorch)

IBM is using Spark. Basically they got a pretty standard setup to get a lot of data from Twitter and enrich/augment that with some of their proprietary tech (mood detection etc.). Nothing special here.

Predictive Insights for IT Operations (Omer Trajman)

Actually a pretty good speaker, but I didn’t really get the whole point. He basically explained that you should use the same big data techniques for analyzing the data that comes out of your operations measurements (and btw, he has a company specializing on that). But it wasn’t a sales talk. So basically, yes, analyze all the data.


Berlin, Berlin, wir fahren nach Berlin

Naja, ich bin schon wieder zu hause. Der letzte Tag vom Kongress war noch ganz lustig, wobei wir fast erst zur letzten Veranstalltung da waren. Irgendwie war die Nacht zuvor vor allem durch SMAs Geburtstag etwas länger geworden. Die Anzahl von Frauen in Berlin, die den Eindruck machen unglaublich viele Drogen genommen zu haben ist gigantisch. Nach der Abschlussveranstaltung des 22C3 waren wir dann noch kurz in der C-Base, das ist sowas wie der Nela in groß. Der “absacker” in der Hotelbar war auch noch sehr lustig, vor allem wegen einer write-only Neuseeländerin, der man alle 5 Minuten das gleilche erzählen konnte und sie es alkoholbedingt sofort wieder vergessen hatte. Danach ging es dann fast wieder zurück in die “real world”.

Am Silvestertag waren wir nett indisch essen, dann noch kurz in der Ständigen Vertretung um endlich mal wieder ordentliches Bier zu bekommen und dann auch noch in den Räumen des CCCB, des Chaos Computer Clubs Berlin.

Silvester in Berlin

Dieses Bild beschreibt den Silvesterabend schon ganz passend. Woher ich das Ding hatte bin ich mir gar nicht mehr so sicher, ich glaube der Barkeeper hatte es uns in die Hand gedrückt. Ansonsten haben wir in der Hostelbar gefeiert, das war sehr unterhaltsam, sehr viele internationale Menschen und auch sonst sehr Lustig. Um 12 gings natürlich raus, aber das Kriegsgebiet Berlin war mir ein wenig zu stressig. Also zurück in die Bar, weiter nett unterhalten und noch ein paar Weizen gekippt (ich hab dem Barkeeper auch erklärt was ein Gehfehler ist, das könnte mein komisches Grinsen erklären). Für Silvester war ich aber noch immer relativ früh im Bett.

Heute ist dann auch nicht mehr viel passiert, wir sind halt mit dem Auto von Berlin ohne größere Zwischenfälle nach hause gefahren und jetzt bin ich wohlbehalten wieder zurück. Langsam muss ich mich mal ums einpacken meiner Sachen kümmern, aber das wird schon. Die letzte Woche in Bonn bricht also an.

Im großen und ganzen muss ich sagen das sich der Congress in jedem Fall gelohnt hat, ich nächstes Jahr nach Möglichkeit wieder dabei bin und auch Berlin immer noch eine schöne Stadt ist (von der ich nicht so viel gesehen habe).

Für alle die ich vergessen habe: Frohes neues!

22C3: Bits and Pieces

Manche Sachen lernt man auch so im vorbeigehen: seit es ein kleines Problem mit COM Objekten in Verbindung mit dem Internet Explorer gab gibt es einen Kill-Bit für eben diese Objekte, d.h. Internet Explorer lädt sie nicht mehr per default, sondern jetzt kommt der interessante Teil benutzt einen undokumentierten Windows API der eine Message Box anzeigt bei der man drei mal auf OK klicken muss um das laden zu bestätigen. Das ist ein API …. was für drogen nehmen die Jungs da?

Sonst habe ich eben noch gelernt wie man tolle Sachen mit diversen Netzwerktools macht um Bugs zu finden. Mal schauen was ich sonst heute noch höre.

22c3: An die Substanz

Irgendwie bin ich müllig. Gestern waren die Vorträge noch ganz lustig, danach lud der LinuxTag e.V. Freunde und Verwandte freier Software zu einem gemütlichen Abend ein, der auch sehr unterhaltsam war. Der Absacker in der Hostelbar dauerte dann aber doch bis kurz nach 5, was schon wieder dafür gesorgt hat das wir heute die ersten Vorträge verpasst haben und quasi erst zur Mittagspause hier waren. Sonst gibts auch nicht so viel zu berichten, abgesehen davon das ich heute gelernt habe wir man für unter 1000 $ ein Radar baut… mal sehen was der Nachmittag bringt.

22C3: Happy Hacking


Originally uploaded by Thiesen.

So, nachdem ich die Weihnachtstage mehr oder minder gut überstanden habe, bin ich dann gestern früh nach Berlin zum 22C3 abgehauen.
Das war ein anstrengeder Tag, 7:30 aufstehen, zum Flughafen, Flieger enteisen weil Schnee fiel, dann auf nach Berlin, zur Herberge, falsches Haus, richtiges Haus finden, einchecken, auf zum Congress.
Der Congress ist unglaublich voll, es gibt unglaublich viele tolle Vorträge und ich weiß jetzt auch warum diese erst um 12h anfangen, ich war heute trotzdem ein wenig zu spät.
Was ich so im einzelnen gehört habe ist viel zu viel zum aufschreiben, aber es ist sehr schön hier und verspricht auf jeden Fall ein guter Congress zu werden.
Vielleicht kann ich ja noch mehr Details später posten. Neben hat auch der Spiegel einen Artikel über den Congress.