Anyone played with Heimdall data’s software?  I was introduced a few weeks ago.  They’re a super early startup (love!) with a pretty cool technology.

The feature that I really latched onto was the invisible cacheing.  The first time I talked about a write-through cache was with nPulse tech, when dealing with some of the indexing we did, and there wasn’t really any easy technology to use..  typically its (pseudocode, python ish):

def my_function_by_id( id ):  
    out_object = check_redis_cache(id)
    if not out_object:
        out_object = db.execute("select * from my_table where id = %s", ( id, ))
        set_redis_cache(id, out_object)
    return out_object

 

What happens when you switch cache services.   Go from Redis (simple) to Hazelcast (complex)?

Wouldn’t it be better to just:

def my_function_by_id( id ):  

    out_object =  db.execute("select * from my_table where id = %s", ( id, ))

    return out_object

Yes, that didn’t save that much code.. but, how many places in your code do you interact with your database?

Enter in the Heimdall data system.      I can write my code, connect to their proxy (since I love python, I’ll use the proxy, but they DO have a JDBC driver.. update your config and you’re off to the races)

The software identifies my SQL statements, extracts patterns, extracts parameters, and automatically sets up the cache.

Let’s follow instructions from here:

 

Alright, let’s start from a fresh Centos 7 virtual machine

sudo su -
bash <(curl -s http://download.heimdalldata.com/downloads/serverinstall.sh)

Then, grabbed the service file from here:  https://rayed.com/wordpress/?p=1496

Put the file contents in /etc/rc.d/init.d/supervisord

chmod +x  /etc/rc.d/init.d/supervisord

sudo chkconfig --add supervisord

sudo chkconfig supervisord on

echo "SELINUX=permissive" > /etc/selinux/config

firewall-cmd --zone=public --add-port=8087/tcp --permanent

shutdown -r now  #Yeah, hack that SE Linux out of here

I had a little issue running the proxy on my VM, when it booted, it preferred, and only listened in the IPV6 addresses.  Quick fix to /etc/supervisor/conf.d/heimdallserver.conf

changed:

command=java -server  -jar /opt/heimdall/heimdallserver.jar

to

command=java -server -Djava.net.preferIPv4Stack=true  -jar /opt/heimdall/heimdallserver.jar

Reloaded supervisord

sudo service supervisord restart

waited a few minutes… tried my web browser and there it is!

Stay tuned.  In the near future, I’ll do a video walk through of these, and at least two more overall videos.

This is a good start for me to practice some on screen time.   More on that to come!  I can’t wait to share the big news.. you’ll hear LOTS more of me.

 

chris.

 

Short URL: http://bit.ly/2kBQDbF