def multiQuery(): print '----------multiQuery----------' mRequest = message_pb2.MultiReadRequest() request = message_pb2.ReadRequest() request.table_name = 't1' request.row_key = 'r1' request.column_family = 'cf' request.qualifiers.append('c2') request.qualifiers.append('c1') mRequest.requests.extend([request]) request = message_pb2.ReadRequest() request.table_name = 't1' request.row_key = 'r1' request.column_family = 'cf' mRequest.requests.extend([request]) mRequest.timeout = 1 data = mRequest.SerializeToString() data2 = raiseHTTPRequest('http://localhost:8000/multi-read', data, timeout=20) mResponse = message_pb2.MultiReadResponse() mResponse.ParseFromString(data2) print mResponse
def multiQueryNone(): print '----------multiQueryNone----------' mRequest = message_pb2.MultiReadRequest() request = message_pb2.ReadRequest() request.table_name = 't2' request.row_key = 'r1' request.column_family = 'cf' request.qualifiers.append('c2') request.qualifiers.append('c1') mRequest.requests.extend([request]) request = message_pb2.ReadRequest() request.table_name = 't2' request.row_key = 'r1' request.column_family = 'cf' mRequest.requests.extend([request]) data = mRequest.SerializeToString() try: data2 = raiseHTTPRequest('http://localhost:8000/multi-read', data, timeout=20) except Exception, e: pass
def queryColumnFamily(): print '----------queryColumnFamily----------' request = message_pb2.ReadRequest() request.table_name = 'appbenchmark' request.row_key = '2012-04-08_YULE' request.column_family = 'stat' data = request.SerializeToString() data2 = raiseHTTPRequest('http://dp0:12345/read', data, timeout=20) response = message_pb2.ReadResponse() response.ParseFromString(data2)
def multiQuery(): print '----------multiQuery----------' mRequest = message_pb2.MultiReadRequest() request = message_pb2.ReadRequest() request.table_name = 'appbenchmark' request.row_key = '2012-04-08_YULE' request.column_family = 'stat' request.qualifiers.append('14_day_active_count_avg') mRequest.requests.extend([request]) request = message_pb2.ReadRequest() request.table_name = 'appbenchmark' request.row_key = '2012-04-08_YULE' request.column_family = 'stat' mRequest.requests.extend([request]) data = mRequest.SerializeToString() data2 = raiseHTTPRequest('http://dp0:12345/multi-read', data, timeout=20) mResponse = message_pb2.MultiReadResponse() mResponse.ParseFromString(data2)
def queryColumn(times=100): print '----------queryColumn----------' request = message_pb2.ReadRequest() request.table_name = 'appuserstat' request.row_key = '2012-12-19_4c14d4471d41c86c6400072b' request.column_family = 'stat' request.qualifiers.append('duTime_d_1_3') request.qualifiers.append('duTime_d_4_10') request.qualifiers.append('duTime_d_11_30') request.qualifiers.append('duTime_d_31_60') request.qualifiers.append('duTime_d_61_180') request.qualifiers.append('duTime_d_181_600') request.qualifiers.append('duTime_d_601_1800') request.qualifiers.append('duTime_d_1801_') data = request.SerializeToString() # long-lived connection. conn = httplib.HTTPConnection('dp0', 12345, timeout=20) conn.connect() conn.sock.settimeout(20) # 20 seconds. s = time.time() for i in xrange(0, times): conn.request('GET', '/read', data) try: data2 = conn.getresponse().read() except: print 'fast timeout' e = time.time() print 'fast time spent %lf / %d, avg %.4lf' % ((e - s), times, (e - s) / times) response = message_pb2.ReadResponse() response.ParseFromString(data2) #print response s = time.time() conn = httplib.HTTPConnection('dp30', 8080, timeout=20) for i in xrange(0, times): conn.request( 'GET', '/appuserstat/2012-12-19_4c14d4471d41c86c6400072b/stat:duTime_d_1_3,stat:duTime_d_4_10,stat:duTime_d_11_30,stat:duTime_d_31_60,stat:duTime_d_61_180,stat:duTime_d_181_600,stat:duTime_d_601_1800,stat:duTime_d_1801_?v=1', headers={'Keep-Alive': 'timeout=10'}) try: data2 = conn.getresponse().read() except: print 'rest timeout' e = time.time() print 'rest time spent %lf / %d, avg %.4lf' % ((e - s), times, (e - s) / times)
def queryColumnFamily(): print '----------queryColumnFamily----------' request = message_pb2.ReadRequest() request.table_name = 't1' request.row_key = 'r1' request.column_family = 'cf' data = request.SerializeToString() data2 = raiseHTTPRequest('http://localhost:8000/read', data, timeout=20) response = message_pb2.ReadResponse() response.ParseFromString(data2) print response
def queryColumnNone(): print '----------queryColumnNone----------' request = message_pb2.ReadRequest() request.table_name = 'appretentionstat' request.row_key = '2013-03-12_4db949a2112cf75caa00002a' request.column_family = 'stat' request.qualifiers.append('provinces_7_lanCnt') data = request.SerializeToString() try: data2 = raiseHTTPRequest('http://dp0:12345/read', data, timeout=20) except Exception, e: pass
def queryColumn(): print '----------queryColumn----------' request = message_pb2.ReadRequest() request.table_name = 'appbenchmark' request.row_key = '2012-04-08_YULE' request.column_family = 'stat' request.qualifiers.append('14_day_active_count_avg') data = request.SerializeToString() data2 = raiseHTTPRequest('http://dp0:12345/read', data, timeout=20) response = message_pb2.ReadResponse() response.ParseFromString(data2)
def queryColumn2(): print '----------queryColumn2----------' request = message_pb2.ReadRequest() request.table_name = 'appuserstat' request.row_key = '2013-03-08_4db949a2112cf75caa00002a' request.column_family = 'stat' request.qualifiers.append('provinces_7_lanCnt') data = request.SerializeToString() data2 = raiseHTTPRequest('http://dp0:12345/read', data, timeout=20) response = message_pb2.ReadResponse() response.ParseFromString(data2) print response
def queryColumnNone(): print '----------queryColumnNone----------' request = message_pb2.ReadRequest() request.table_name = 't2' request.row_key = 'r1' request.column_family = 'cf' request.qualifiers.append('not-exits') data = request.SerializeToString() try: data2 = raiseHTTPRequest('http://localhost:8000/read', data, timeout=20) except Exception, e: pass
def queryColumnSameConnection(): print '----------queryColumn----------' request = message_pb2.ReadRequest() request.table_name = 't1' request.row_key = 'r1' request.column_family = 'cf' request.qualifiers.append('c2') request.qualifiers.append('c1') data = request.SerializeToString() conn = httplib.HTTPConnection('localhost', 8000, timeout=20) for i in range(0, 3): conn.request('GET', '/read', data) data2 = conn.getresponse().read() response = message_pb2.ReadResponse() response.ParseFromString(data2) print response
def queryModels(): print '----------Models----------' request = message_pb2.ReadRequest() request.table_name = 'appuserstat' request.row_key = '2013-03-21_4d707f5e112cf75410007470' request.column_family = 'stat' request.qualifiers.append('models_1_day_installCnt_values') data = request.SerializeToString() data2 = raiseHTTPRequest('http://dp0:12345/read', data, timeout=20) response = message_pb2.ReadResponse() response.ParseFromString(data2) xs = response.kvs[0].content.split("\0") for x in xs[:100]: ss = x.split("\f") print ss
def doUVEstimator(): mRequest = message_pb2.MultiReadRequest() dates = [ '20130701', # '20130702', # '20130703', # '20130704', # '20130705', # '20130706', # '20130707' ] # appkey = '51a577cc56240b76d8006bef' appkey = '4d707f5e112cf75410007470' for date in dates: rowkey = date + '_' + appkey print rowkey request = message_pb2.ReadRequest() request.table_name = 'test_uvestimator' request.row_key = rowkey request.column_family = 'stat' request.qualifiers.append('uv_estimate') mRequest.requests.extend([request]) data = mRequest.SerializeToString() data2 = raiseHTTPRequest('http://dp0:12345/multi-read', data, timeout=20) mResponse = message_pb2.MultiReadResponse() mResponse.ParseFromString(data2) bucket = [0] * (1 << 8) for response in mResponse.responses: vs = response.kvs[0].content.split(',') for i in range(0, len(vs)): v = int(vs[i]) bucket[i] = max(bucket[i], v) print bucket print 2**(float(sum(bucket)) / len(bucket)) * len(bucket) * 0.79402
def queryColumnLarge(): print '----------queryColumnLarge----------' request = message_pb2.ReadRequest() request.table_name = 'appuserstat' request.row_key = '2013-03-08_4d707f5e112cf75410007470' request.column_family = 'stat' request.qualifiers.append('models_1_lanCnt') data = request.SerializeToString() s = time.time() data2 = raiseHTTPRequest('http://dp0:12345/read', data, timeout=20) print "data size = %d bytes" % (len(data2)) e = time.time() print 'time spent %.2lfs' % ((e - s)) response = message_pb2.ReadResponse() response.ParseFromString(data2) x = response.kvs[0].content xs = x.split("\f") print "models size = %d" % (len(xs))