parser.add_argument('--lz4-block-queries', type=int, default=0) parser.add_argument('--lz4-frame-uploads', type=int, default=0) parser.add_argument('--lz4-frame-queries', type=int, default=0) parser.add_argument('--plain-uploads', type=int, default=0) parser.add_argument('--plain-queries', type=int, default=0) parser.add_argument('--line-count', type=int, default=1000) args = parser.parse_args() input_string = "a,b,c,d,e,f,g,h\n" input_string += "\n".join( args.line_count * ["1200,456,123.12345,a string,another string,9877654.2,1234567.12,77"]) print("Size of input = {}".format(len(input_string))) c = QClient(node_list=["http://localhost:8888"], read_timeout=10.0) frame_uploads = max(args.lz4_frame_uploads, int(args.lz4_frame_queries > 0)) for _ in range(frame_uploads): t0 = time.time() c.post("key_lz4_frame", frame_lz4er(input_string), post_headers={"Content-Encoding": "lz4-frame"}) print("LZ4 frame upload time: {} s".format(time.time() - t0)) for _ in range(args.lz4_frame_queries): t0 = time.time() r = c.get("key_lz4_frame", {}, query_headers={"Accept-Encoding": "lz4-frame"}) qt = time.time() - t0
import random import requests from qclient import QClient import lz4.frame import lz4.block import time # client = QClient(node_list=('https://localhost:8888',), verify='../tls/ca.pem', cert='../tls/host.pem') client = QClient(node_list=('http://localhost:8888', )) def generate_csv(byte_size): header = b'abc,def,ghi,jkl,mno\r\n' body = [] l = len(header) row_count = 0 while True: row_count += 1 number = round(random.uniform(-1000, 1000), 2) line = f"foobar,,,{number},10" l += 2 + len(line) body.append(line) if l > byte_size: break data = "\r\n".join(body).encode("utf-8") return header + data, row_count