Migrating LDBC SNB Datagen to Spark
Abstract
LDBC’s Social Network Benchmark (LDBC SNB) is an industrial and academic initiative, formed by principal actors in the field of graph-like data management. Its goal is to define a framework where different graph-based technologies can be fairly tested and compared, that can drive the identification of systems’ bottlenecks and required ...
Deriving Spark Encoders and Schemas Using Implicits
Abstract
Since Apache Spark 2.0 the Dataset API is the preferred way of programming over low level RDDs. However when migrating complex business entities from RDDs to Datasets, a handful of problems arise. One is the lack of support for user defined types, confining the developer to a predefined set of types and severely hindering the usefulness...
Who's watching? 👀
I have yet to meet a serious frontend programmer who hasn't used file
system watcher tasks to recompile/rebuild/redeploy code and enjoy the
instant feedback. In Javascript land all build tools/bundlers/packers
and whatnot provide watch flags to make them watch for changes
forever. This sounds a good idea at first, but when you have to use
more...
Set up multiple Git users on your machine
It is quite common to have separate users for different git repos. For example having a public account
for all your open-source GitHub stuff, and a work account for your employer’s private git remote.
If you regularly have to clone new repos in each ‘role’, defaulting to one and changing the
local repository config in all others quickly becomes...
Implementing Kleene logic two different ways in Scala
Recently I’ve been writing a graph query engine at Fault Tolerant System
Research Group at uni. The frontend is Cypher, a language popularized
by Neo Technology shipped OOTB with their graph database Neo4j.
Recently Cypher is getting standardized in an open source and open government
initiative under the name openCypher; and other DB vendors, s...
Scripting a MIDI controller with Modern JavaScript
Abstract: Blogpost summarizing the challenges of creating a flexible and customizable MIDI controller mapping for Mixxx targeting multiple Novation Launchpad grid controllers.
Keywords: JavaScript, MIDI, Mixxx, ES6 modules, Babel, Flow
I own two Novation Launchpads. The most iconic use-cases of this cool grid controller is launching samples. L...
Concurrency & Parallelism: Understanding I/O
With this article we are starting a series of blogposts targeting developers who
want to learn or refresh their knowledge about writing concurrent applications
in general. The series will focus on well-known and widely adopted concurrency
patterns in different programming languages, platforms and runtimes. With this,
we are diverting from our us...
17 post articles, 3 pages.