Ejemplo n.º 1
0
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
Ejemplo n.º 2
0
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
Ejemplo n.º 3
0
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)
Ejemplo n.º 4
0
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)
Ejemplo n.º 5
0
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)
Ejemplo n.º 6
0
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
Ejemplo n.º 7
0
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
Ejemplo n.º 8
0
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)
Ejemplo n.º 9
0
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
Ejemplo n.º 10
0
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
Ejemplo n.º 11
0
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
Ejemplo n.º 12
0
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
Ejemplo n.º 13
0
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
Ejemplo n.º 14
0
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))