· 7 years ago · Dec 04, 2018, 12:14 PM
1CREATE TABLE IF NOT EXISTS src_table (
2 str_1 String,
3 str_2 String,
4 metric_1 UInt64,
5 metric_2 UInt8
6) ENGINE = Log
7
8CREATE TABLE IF NOT EXISTS denorm_table (
9 dt Date,
10 str_1 String,
11 attr_1 UInt64,
12 attr_2 UInt64,
13 ......
14 attr_1000 UInt64,
15 attr_1001 UInt8,
16 attr_1002 UInt8,
17 .....
18 attr_2000 UInt8
19) ENGINE = Log
20
21INSERT INTO denorm_table
22(dt, user, attr_1, attr_2, ..., attr_1000, attr_1001, attr_2000)
23 SELECT
24'2018-11-01' as dt,
25str_1,
26arrayElement( groupArray(metric_1), indexOf(groupArray(str_2), '1') ) as attr_1,
27arrayElement( groupArray(metric_1), indexOf(groupArray(str_2), '2') ) as attr_2,
28......
29arrayElement( groupArray(metric_1), indexOf(groupArray(str_2), '1000') ) as attr_1000,
30arrayElement( groupArray(metric_2), indexOf(groupArray(str_2), '1001') ) as attr_1001,
31.....
32arrayElement( groupArray(metric_1), indexOf(groupArray(str_2), '2000') ) as attr_2000
33FROM src_table
34WHERE str_2 in ('1', '2', .....)
35GROUP BY user
36
37File "/usr/lib/python2.7/site-packages/clickhouse_driver/client.py", line 119, in execute
38columnar=columnar
39 File "/usr/lib/python2.7/site-packages/clickhouse_driver/client.py", line 192, in process_ordinary_query
40columnar=columnar)
41 File "/usr/lib/python2.7/site-packages/clickhouse_driver/client.py", line 42, in receive_result
42return result.get_result()
43 File "/usr/lib/python2.7/site-packages/clickhouse_driver/result.py", line 39, in get_result
44for packet in self.packet_generator:
45 File "/usr/lib/python2.7/site-packages/clickhouse_driver/client.py", line 54, in packet_generator
46packet = self.receive_packet()
47 File "/usr/lib/python2.7/site-packages/clickhouse_driver/client.py", line 68, in receive_packet
48packet = self.connection.receive_packet()
49 File "/usr/lib/python2.7/site-packages/clickhouse_driver/connection.py", line 331, in receive_packet
50packet.type = packet_type = read_varint(self.fin)
51 File "/usr/lib/python2.7/site-packages/clickhouse_driver/reader.py", line 38, in read_varint
52i = _read_one(f)
53 File "/usr/lib/python2.7/site-packages/clickhouse_driver/reader.py", line 23, in _read_one
54c = f.read(1)
55 File "/usr/lib64/python2.7/socket.py", line 380, in read
56data = self._sock.recv(left)
57socket.timeout: timed out