import pika import datetime from riak.client import RiakClient import os riak_client = RiakClient(host=os.environ['RIAK_HOST'], pb_port=8087) table_temperature = riak_client.table('Temperature') table_cpu = riak_client.table('CPU') table_mem = riak_client.table('Mem') credentials = pika.PlainCredentials('guest', 'guest') parameters = ( pika.ConnectionParameters(host=os.environ['RABBIT_1'],credentials=credentials), pika.ConnectionParameters(host=os.environ['RABBIT_2'], connection_attempts=5, retry_delay=1,credentials=credentials)) def callback(ch, method, properties, body): message = body.decode('utf-8') message = message.split(',') print(message) producer = int(message[0]) date = datetime.datetime.strptime(message[1], '%Y-%m-%dT%H:%M:%S-07:00') temp = float(message[4]) cpu_usage = float(message[2]) mem_usage = float(message[3]) ts_obj_temp = table_temperature.new([[producer,producer,date,temp]]) print(ts_obj_temp.store()) ts_obj_cpu = table_cpu.new([[producer,producer,date,cpu_usage]]) print(ts_obj_cpu.store())
from riak.client import RiakClient from riak.riak_error import RiakError import sys import time client = RiakClient(host=sys.argv[1], pb_port=8087) table_name = sys.argv[2] table = client.table(table_name) query = "SELECT COUNT(*) FROM {table} where ts > 1392249600000 and ts < 1397347199000 and status='OK' and extid='668'" print "Query: ", query time1 = int(round(time.time() * 1000)) ts_obj = client.ts_query(table_name, query) time2 = int(round(time.time() * 1000)) print ts_obj.rows print "Time elapsed (ms): ", str(time2 - time1) print "\n" query = "SELECT * FROM {table} where ts > 1392249600000 and ts < 1397347199000 and status='OK' and extid='668'" print "Query: ", query time1 = int(round(time.time() * 1000)) ts_obj = client.ts_query(table_name, query) time2 = int(round(time.time() * 1000)) print ts_obj.rows print "Time elapsed (ms): ", str(time2 - time1) print "\n" query = "SELECT MAX(avgSpeed) FROM {table} where ts > 1392249600000 and ts < 1397347199000 and status='OK' and extid='668'" print "Query: ", query time1 = int(round(time.time() * 1000)) ts_obj = client.ts_query(table_name, query)