Euphoria Audio, LLC

Audio, Video and Data Consulting

OpenTSDB 2.0 Work in Progress

2 Comments »

OpenTSDB is an awesome Time Series Data Base that can ingest and store an insane number of metrics. Written by Benoit Sigoure to run on top of HBase, it's easily scalable to storing millions of data points per second with built in Hadoop redundancy.

I've been working with Benoit to coordinate the official 2.0 release and we're making excellent progress. Click through for documentation on what's been accomplished so far and what's left to do. We had a great time designing new features and chatting with users at HBaseCon 2013. I'll be posting some tutorials for OpenTSDB as well as the Async and Asyncbase libraries in the future. In the mean time, join the OpenTSDB user group for discussions and updates.

Hypertable C++ Thrift Tutorial

No Comments »

Recently I was looking at different NOSQL solutions to storing huge amounts of data effeciently and so I started digging into Big Table like solutions including Cassandra, Hbase and Hypertable. All three are fairly similar in operation and access and though the first two are written in Java, Hypertable is written in C++, thus standing to have a slight performance benefit over the Java apps. While it's much faster to access the servers through their native interfaces, they all support Thrift which is necessary if your language doesn't have a native driver (or a Thrift wrapper) yet and you need to get coding. This is a brief tutorial that should get you started writing a low level Thrift interface for Hypertable.

Read the rest of this entry »

Log4cxx XML Configuration Location Patch

No Comments »

I've been working in C and C++ quite a bit lately and using the Apache Log4cxx library for file and syslogging. It works wonderfully but I didn't like the fact that it required it's own configuration file (unless you set it up programmatically). My configs are in XML and I used Log4cxx's XML configuration as well. Since it's silly to distribute two configs for each application, I wrote the patch below that lets you put the Log4cxx configuraton root anywhere within your own XML file. I submitted it to the Apache dev list back in January but it doesn't look like anyone's comitting to the project so I'll post it here in the hopes that someone finds it useful.

Read the rest of this entry »

libJSON Basic Parser Example

3 Comments »

libJSON is a great C/C++ library written by Jonathan Wallace and can be found on Sourceforge. Previously we looked at how to create a new JSON node tree programmatically that could be sent over the wire to consumer. Now we'll look at the consumer side and see how to parse the JSON string into our application.

Read the rest of this entry »

libJSON Array Example

2 Comments »

libJSON is a great C/C++ library written by Jonathan Wallace and can be found on Sourceforge. This quick example will show you how to add an array to your JSON tree.

Read the rest of this entry »

libJSON Child Node Example

No Comments »

libJSON is a great C/C++ library written by Jonathan Wallace and can be found on Sourceforge. In my previous post, I showed you an example of how to create a very simple JSON tree without any branches, just a few nodes. Now we'll look at how to create a branch off the main tree.

Read the rest of this entry »

libJSON Simple Write Example

No Comments »

libJSON is a great C/C++ library written by Jonathan Wallace and can be found on Sourceforge. I needed a quick and easy way to generate JSON strings to dump in MQ messages and also parse JSON from various sorces and after trying a few of them, I settled on libJSON as the easest to use. The documentation included with the source was great for figuring out what the functions did, but it took me a while to get up and running due to a lack of examples.

Read the rest of this entry »