HighLoad++ ืืืกืงืื 2018, ืืืื ืืงืื ืืจืกืื. 9 ืื ืืืืืจ, 15:00
ืชืงืฆืืจืื ืืืฆืืช:
ืืืจื ื ืกืจืืืื ืื (VKontakte): ืืื"ื ืืืืจ ืขื ืืืืืืช ืืืืฉืื ืฉื ClickHouse ืืืืจื ืฉืื ื - ืืื ืื ืื ื ืฆืจืืืื ืืช ืื, ืืื ื ืชืื ืื ืื ืื ื ืืืืกื ืื, ืืื ืื ืื ื ืืืชืืื ืืืชื ืืื'.
ืืืคืืื ื ืืืืข:
ืืืจื ื ืกืจืืื ืื: - ืฉืืื ืืืืื! ืฉืื ืืืจื ื ืกืจืืื ืื, ืืคื ืฉืืืจ ืืืฆืืชื. ืื ื ืขืืื ื-VKontakte. ืื ื ืืืืจ ืขื ืืื ืื ืื ื ืืื ืืกืื ื ืชืื ืื ื-ClickHouse ืืฆื ืืฉืจืชืื ืฉืื ื (ืขืฉืจืืช ืืืคืื).
ืืื ืืืื ืื ืืืื ืืืกืืฃ ืืืชื?
ืื ื ืืื ืื: ืื ืขืฉืื ื, ืืื ืืืื ื ืฆืจืืืื ืืช "ClickHouse", ืืืชืืื, ืืื ืืืจื ื ืื, ืืืื ืกืื ืฉื ืืืฆืืขืื ืืชื ืืืื ืืงืื ืืขืจื ืืื ืืืืืืจ ืฉืื ืืืจ ืืืืืื. ืื ื ืืกืคืจ ืืื ืขืื ืขื ืืืืืืช ืืืฅ, ืขื ืืืขืืืช ืฉืืื ืื ื ืืืชื ืืขื ืืคืชืจืื ืืช ืฉืื ื ืฉืคืืชืื ื ืืงืื ืคืชืื - KittenHouse ื-Lighthouse.
ืืื ืืืื ื ืฆืจืืืื ืืขืฉืืช ืืฉืื ืืืื (ืืื ืชืืื ืืื ื-VKontakte, ื ืืื?). ืจืฆืื ื ืืืกืืฃ ืืืื ื ื ืืคืื ืืืืื (ืืืื ืฉื ืืืืช ืืจื-ืืืื ืฉื ื ืชืื ืื), ืืืื ืืืืฉืื ืืืื ื ืื ืืืชืจ ืืืฉื ืกืืืืกืืืงื; ืืืฉ ืื ื ืฆื ืฉื ืขืฉืจืืช ืืืคื ืฉืจืชืื ืฉืืื ืฆืจืื ืืขืฉืืช ืืช ืื ืื.
ืืื ืืืืื ื? ืื ืจืื ืฉืืื ืื ื ืคืชืจืื ืืช ืืืืกืื ืืืื ืื. ืืื - ืืฉ ืืื "Backend VK" ืคืืืื. ืื ื ืืืืืฅ ืืืื ืืืืจืฉื ืืืื.
ืื ืื ืืืื ืื? ืืื ืื ืืข ืฉืืืืืจ ืืขืจืืื ืจืืงืื. ืื ืืขืื ื-VK ืื ืื ืฉืืืจืื ืืื ืื microservices. ืืื ื ืืืืงื ืืืืืืช (ืื ืืจืื ืืืืงืื). ืืื ืื? ืืืื, ืชืงืฉืืื ืืืชืจ!
ืืื ื ืืชื ืืืฉืชืืฉ ืืืืกืื ืืืื ืื? ืื ืืคืฉืจ ืฉืื ืืืืืืจ ืืช Hadup. ืืืืจ ืืื, ืืืฉื, Rsyslog (ืืืกืื ืืืื ืื ืืื ืืงืืฆืื). LSD. ืื ืืืืข ืื ืื LSD? ืื, ืื ื-LSD ืืื. ืืืกื ืื ืงืืฆืื ืืืชืืื. ืืืื, ClickHouse ืืื ืืคืฉืจืืช ืืืืจื.
ืงืืืงืืืืก ืืืชืืจืื: ืืจืืฉืืช ืืืืืื ืืืืช
ืื ืื ืื ื ืจืืฆืื? ืื ืื ื ืจืืฆืื ืืืืืื ืฉืื ื ืฆืืจื ืืืืื ืืืชืจ ืืื ืืืื ืืคืขืืื, ืื ืฉืืื ืชืขืืื ืืืืฅ ืืงืืคืกื, ืจืฆืื ืขื ืชืฆืืจื ืืื ืืืืืช. ืื ืื ื ืจืืฆืื ืืืชืื ืืจืื, ืืืืชืื ืืืจ. ืืื ืื ื ืจืืฆืื ืืฉืืืจ ืืืชื ืืื ืืื ื ืืืืฉืื, ืฉื ืื, ืืืืืจ ืืืืจื ืืื. ืืืื ื ืจืฆื ืืืืื ืืืื ืืขืื ืฉืื ืืื ืืืื ื ืืืชื ืืืืจื, "ืืฉืื ืื ืขืืื ืืื", ืืื ืืื ืืคื ื 3 ืืืืฉืื), ืืื ืื ื ืจืืฆืื ืืืืืช ืืกืืืืื ืืจืืืช ืื ืงืจื ืืคื ื 3 ืืืืฉืื. ืืืืกืช ื ืชืื ืื - ืืจืืจ ืืื ืื ืืืื ืืชืจืื - ืื ืื ืืคืืืช ืืช ืืืืช ืืืงืื ืฉืืื ืชืืคืกืช.
ืืืฉ ืื ื ืืจืืฉื ืื ืื ืืขื ืืื ืช: ืืคืขืืื ืื ืื ื ืืืชืืื ืืช ืืคืื ืฉื ืืื ืคืงืืืืช (ืืืืืื, ืืืื ืื), ืื ืืืื ืืืืืช ืืืชืจ ื-4 ืงืืืืืืื ืื ืืงืืืช. ืืื ืืืืจ ืืื ืขืืื ืขื UDP, ืื ืื ืื ืฆืจืื ืืืืฆืื... ืื ืืืื ืื ืฉืื "ืชืงืืจื" ืขืืืจ ืืืืืืจ, ืืขืืืจ ืืกืคืจ ืืืื ืฉื ืฉืจืชืื ืื ืืืื ืืชืจืื.
ืืืื ื ืจืื ืื ืืงืื ืืคืชืื ืืฆืืข ืื ื. ืจืืฉืืช, ืืฉ ืื ื ืืช ืื ืืข ืืืืื ืื - ืื ืืื ืืข ืฉืื ื; ืขืงืจืื ืืช, ืืื ืืืื ืืขืฉืืช ืืื, ืืื ืืืื ืืคืืื ืืืชืื ืฉืืจืืช ืืจืืืืช. ืืืื, ืื ืื ืืืืก ื ืชืื ืื ืืฉืงืืคืืช - ืื ืื ื ืืืืืื ืืืืืก ืขืืืืืช ืืืืืืช ืืขืฆืื ื ืื ืื ืื ื ืจืืฆืื... ืื ืื ื, ืืืืื, ืื ืจืืฆืื (ืื ืืคืฉืจ). ืืืขืื ืืืืืื ืืื ืฉืืื ืืืืข ืืชืช ืจืง ืื ืฉืืชืืื ืื ืืืืืจืื; ืืื ืืงืจืื ืืช ืืฉืืจ, ืืชื ืฆืจืื ืืงืื ืืช ื-binlog ืฉื ืืื ืืข ืืื, ืืืืชืื, ืื ืืืงื ืื ืืจืื ืืื.
ืืืื ืืคืฉืจืืืืช ื ืืกืคืืช ืงืืืืืช? ืืืืืื, "Hadup". ืงืืืช ืชืคืขืื... ืื ืืืฉื ืฉืงื ืืืืืืจ ืืช Hadup? ืืืืื, ืืื ืืขืืืช ืืืงืืื. ืืงืจืืื, ืืคืขืืื ืขืืืืช ืฉืืืืช. ืืืืคื ืขืงืจืื ื, ืืืืชื ืืืืจ ืื ืจืื ืฉืื, ืืืืืื ืขืืืจ ืืืื ืขืฅ. ืืืกืื ืืืืื ืืจืื - ืืืืื, ืื, ืืืืกืช ื ืชืื ืื - ืื, ืืืจืืืืช ืืจืืืืช - ืืจืืจ ืฉืืชื ืืืื ืืืงืืื. ืืื ืืงืืื ืืืกืคืจ ืจื ืฉื ืฉืจืชืื... ืืชื ืขืืืื ืฆืจืื ืืขืฉืืช ืืฉืื ืืขืฆืื!
Rsyslog. ืืืขืฉื, ืืฉืชืืฉื ื ืื ืืืคืฉืจืืช ืืืืื ืืื ืฉื ืืื ืืงืจืื ืืืชื ืืืื ืืืจืืง ืืช ื-binlog, ืืื ืืื ืื ืืืื ืืืชืื ืฉืืจืืช ืืจืืืืช; ืขืงืจืื ืืช, ืืื ืื ืืืื ืืืชืื ืืืชืจ ื-4 ืงืืืืืืื. ืืชื ืฆืจืื ืืขืฉืืช ืืืืกืช ื ืชืื ืื ืืืืชื ืืืคื ืืขืฆืื. ืืงืจืืื ืชืืืข ืืงืืฆืื.
ืืื ืืฉ ืืช ืืคืืชืื "ืืืืฉืงื" ืฉื LSD. ืืขืฆื ืืื ื-"Rsyslog": ืืื ืชืืื ืืืืจืืืืช ืืจืืืืช, ืืื ืื ืื ืืืื ืืขืืื ืขื UDP ืืืืขืฉื, ืืืื ืื, ืืืจืื ืืฆืขืจ, ืืฉ ืื ืืจืื ืืืจืื ืฉืฆืจืื ืืฉืืชื. ืฆืจืื ืืขืฆื ืืืืฉ ืืช ื-LSD ืืื ืฉืืืื ืืคืฉืจ ืืืงืืื ืืขืฉืจืืช ืืืคื ืฉืจืชืื.
ืืื ื! ืืคืฉืจืืช ืืฆืืืงื ืืื ElasticSearch. ืืื ืืืืจ? ืืื ืืฆืืื ืืงืจืืื, ืืืืืจ ืืื ืงืืจื ืืืจ, ืืื ืื ืืืฉ ืืื ืืืชืืื. ืจืืฉืืช, ืื ืืื ืืืืก ื ืชืื ืื, ืืื ืืืฉ ืืืื. ืกืืืจ ืืื ืื ืฉืืืคืืฉ ืืื ืืืจืฉ ืืื ื ื ืชืื ืื ืืืืืื ืืืชืจ ืืื ืคื ืืืงืืจื. ืงืฉื ืืชืคืขืื ืืืขืืชืื ืงืจืืืืช ืืชืขืืจืจืืช ืืืชื ืืขืืืช. ืืฉืื, ืืงืืื ืืืืกืืืง - ืื ืื ื ืฆืจืืืื ืืขืฉืืช ืืื ืืขืฆืื ื.
ืืื ClickHouse ืืื ืืืคืฆืื ืืืืืืืืช, ืืืืื. ืืืืจ ืืืืื ืืื ืฉืืงืืื ืืขืฉืจืืช ืืืคื ืฉืจืชืื ืืื ืืขืื. ืืื ืืคืืืช ืืฉ ืืขืื ืืืช, ืื ืื ื ืืืืืื ืื ืกืืช ืืคืชืืจ ืืืชื ืืืืฉืื. ืืฉืืจ ืืืื ืขืืกืง ืืืขืื ืื. ืืืืื ืกืื ืฉื ืืืฆืืขืื ืืชื ืืืื ืืฆืคืืช ื-ClickHouse?
ืืื ื ืื ืืก ืืช ืื? MergeTree
ืื ืืื ืื ืฉืืข ืื ืืืืข ืขื "ClickHouse"? ืื ื ืฆืจืื ืืืืื ืื, ื ืืื? ืืืจ ืืืื. ืืืื ืกื ืืฉื - 1-2 ืืืื-ืืื ืืฉื ืืื, ืคืจืฆืื ืฉื ืขื 10 ืืืื-ืืื ืืฉื ืืื ืืืืื ืืืขืฉื ืืขืืื ืืชืฆืืจื ืืื - ืืฉ ืฉื ื Xeons 6 ืืืืืช (ืืืืืจ, ืืคืืื ืื ืืืืงืื ืืืืชืจ), 256 ืืืื-ืืืื ืฉื ืืืืจืื RAM, 20 ืืจื-ืืืื ื-RAID (ืืฃ ืืื ืื ืืืืืจ, ืืืืจืืช ืืจืืจืช ืืืื). ืืืืกืื ืืืืืืืืื, ืืคืชื ClickHouse, ืื ืจืื ืืืฉื ืฉื ืืืื ืื ืื ืืืืจื ื ืืืื (ืืื ืขืื ืื ื ืืื). ืืืชืื ืืื, ื ืืชื ืืืฉืื ืืืืจืืช ืกืจืืงื ืฉื, ื ื ืื, ื-6 ืืืืืืจื ืฉืืจืืช ืืฉื ืืื ืื ืื ืชืื ืื ืืืืกืื ืืืื. ืื ืืชื ืขืืฉื ืืืืง % ืขื ืืืจืืืช ืืงืกื - 100 ืืืืืื ืฉืืจืืช ืืฉื ืืื, ืืืืืจ, ืื ื ืจืื ืื ืืืืจ.
ืืื ื ืื ืืก ืืช ืื? ืืืื, ืืชื ืืืืข ืฉ-VK ืืฉืชืืฉ ื-PHP. ืื ื ื ืื ืืก ืืื ืขืืื PHP ืืจื HTTP ืืชืื "ClickHouse", ืืืืืช MergeTree ืขืืืจ ืื ืจืฉืืื. ืื ืจืืื ืืขืื ืืชืื ืืช ืืื? ืืฉืื ืื, ืื ืืืื ืืจืืื ืืืืื. ืชื ืื ืืกืคืจ ืื.
ืจืืฉืืช, ืืฉ ืืจืื ืฉืจืชืื - ืืืชืื, ืืืื ืืจืื ืืืืืจืื (ืืจืืข). ืื ืขืืืฃ ืืืื ืืก ื ืชืื ืื ืืชืื MergeTree ืื ืืืชืจ ืืคืขื ืืฉื ืืื. ืืื ืืืืข ืืื? ืืกืืจ ืืกืืจ. ืื ื ืืกืคืจ ืื ืงืฆืช ืืืชืจ ืขื ืื. ืฉืืื ืืขื ืืื ืช ื ืืกืคืช ืืื ืฉืื ืื ื ืื ืขืืฉืื ืื ืืืืืงื, ืื ืื ื ืื ืฆืจืืืื ืืืขืฉืืจ ืืช ืื ืชืื ืื, ืื ืื ื ืื ืฆืจืืืื ืฉืจืชื ืืื ืืื, ืื ืื ื ืจืืฆืื ืืืื ืืก ืืฉืืจืืช ื"ClickHouse" (ืจืฆืื - ืืื ืฉืืืชืจ ืืฉืืจ, ืืืชืจ ืืื).
ืืืชืื ืืื, ืืืฆื ืืชืืฆืขืช ืืืื ืกื ื-MergeTree? ืืื ืขืืืฃ ืืืื ืืก ืืชืืื ืื ืืืชืจ ืืคืขื ืืฉื ืืื ืื ืืชืืืจืืช ื ืืืื ืืืชืจ? ืืขืืืื ืืื ืฉ-"ClickHouse" ืืื ืืกื ื ืชืื ืื ืขืืืื ืืืืืื ืืช ืื ืชืื ืื ืืกืืจ ืขืืื ืฉื ืืืคืชื ืืจืืฉื, ืืืืฉืจ ืืชื ืขืืฉื ืืืกืคื, ื ืืฆืจืื ืืกืคืจ ืงืืฆืื ืืคืืืช ืฉืืื ืืืกืคืจ ืืขืืืืืช ืฉืืื ืื ืชืื ืื ืืืืื ืื ืืกืืจ ืขืืื ืฉื ืืืคืชื ืืจืืฉื (ื ืืฆืจืช ืกืคืจืืื ื ืคืจืืช, ืงืืืฆื ืฉื ืงืืฆืื ืืืืกืง ืืื ืืื ืกื). ืืื ืืืืขื ืืืื ืกื ืืืื, ืืืจืงืข ืื ืืฉืืืืื ื"ืืืืฆืืช" ืืืืืืช ืืืชืจ. ืืืืืื ืฉืื ืชืื ืื ืืืืื ืื, ื ืืชื "ืืืื" ืฉื ื ืงืืฆืื ืืืืื ืื ืืืื ืืฆืจืื ืืืืจืื ืจื.
ืืื, ืืคื ืฉืืชื ืืืื ืื ืืฉ, ืื ืืชื ืืืชื 10 ืงืืฆืื ืืื ืชืืกืคืช, ืื ClickHouse (ืื ืืฉืจืช ืฉืื) ืืกืชืืื ืืืืืจืืช, ืืืื ืืืืืฅ ืืืื ืืก ืืืฆืืื ืืืืื. ืืืชืื ืืื, ืืขืืื ืื ืืฉืงื ื ืืช ืืชืืื ืืช ืืจืืฉืื ื ืืืืฆืืจ. ืืืื ืืฉืงื ื ืืื, ืฉืืื ืืก' 2 ืืฉ:
ืื ื ืืืืื ื ืฉืืฉ ืืืืฃ ืฉืจืชืื ืขืืืื ืืฉืงื ื, ืืฉ ืจืง PHP. ืืืื ืฉืจืช ืืฉ ืืช ืืกืืื ืืืงืืื ืฉืื ื, ืฉืงืจืื ื ืื "ืงืืื ืืืืก", ืฉืฉืืืจ ืขื ืงืฉืจ ืืื ืขื "ืงืืืง ืืืืก" ืืืื ืืก ื ืชืื ืื ืื ืืื ืฉื ืืืช. ืืื ืืก ื ืชืื ืื ืื ืืชืื MergeTree, ืืื ืืืืืช ืืืฅ, ืืืฉืจืชืช ืืืืืง ืืื ืืืืื ืข ืืืื ืกื ืืฉืืจื ืืชืื MergeTree ืืื.
ืขืืืื ืขื ืืืืืืช ืืืฅ
ืื ืื? ืืืืืืช ืืืฆืฅ ืื ืคืืกืช ืืืืจืื ืฉืืจืืกืงืช (ืืืืืจ, ื ืืชื ืืืื ืืก ืืืื ืืขืชืื ืงืจืืืืช). ืื ืืืจืืืื ืืืื ืืืงืื, ืืื ืืื ืืืืืงืื ืคืืขื ืืืืืจ ืขืฆืืื, ืืื ื ืฉืืคืื ืืืืคื ืขืฆืืื (ืื ืืฉ ืื ืืจืื ืืืงืื ืืืืืจ, ืื ืืืื ืืจืื ืืืกืคืืช ืืฉื ืืื). ืืคืฉืจ ืืงืจืื ืืืืืืืช ืืื - ืื ืงืืจืืื ืืช ืืืืืื ืฉื ืชืืื ืืืืืจ ืืืืืช ืืื, ืืื ืืจืืข ืื ืืืชืืื ืืกืืื ืืืื ืขืืืฃ ืื ืืงืจืื ืืฉื. ืืืืืืืช ืืืฅ ืืฆืืืืช QPS ืืื ืืืื, ืืืืืจ, ืขื 3 QPS ืื ืืืื ืื ืืขืืืช ืืืื ืืขืช ืืืื ืกื. ืืจืืจ ืฉืื ืืฉืจืช ืืืื ืืชื, ืื ืื ืชืื ืื ืืืืืื ืืืืช ืืืืืื, ืื ืื ื ืฉืืจื ืจืง ืืืืืจืื.
ืืืงืืื, ืืกืืืื ืขื ืืืืจ ืืกืืืช ืืช ALTER, ืืืืืื ืฉืชืืืื ืขืืื ืืฉืืจืจ ืืช ืืืืช ืืืืืจ ืืืฉื ื ืขื ืืกืืืื ืืืฉื ื (ืื ืชืื ืื ืื ืืืขืืื ืืฉืื ืืงืื, ืื ืื ืืืืืงื ืืคื ื ืืืืงืช ืืืืื). ืืื ืืชื "ืืฉื ื" ืืช ืืืืื ืฉืืชื ืฆืจืื ืืืืฆืจ ืฉืื ืืช ืืืืช ืืืืืจ. ืืืชืื ืืื, ืืขืื ืฉืืื ืืืืช ืืืฆืฅ, ืื ืชืื ืื ืฉืื ืื ืืืจืื ืืฉืื ืืงืื, ืืื ืืชื ืืืื ืืืืืืง ืืืชื ืืืืกืง ืืคืืืช ืืืืคื ืืงืืื.
ืื ืื Kittenhouse ืืืื ืื ืขืืื?
ืื ืื KittenHouse? ืืื ืคืจืืงืกื. ื ืืฉื ืืืืื ืฉืคื? ืืกืคืชื ืืช ื ืืฉืื ืืืืืค ืืื ืืจืื ืืืื ืฉืื - "ืงืืืงืืืืก", ืงืืืื, ืืืื ืืืืืจ ืืฉืื ืืืจ. ืื, ืื ืืชืื ืืื, ืื ืื ื ืื ืืืฉ ืืืืข ืืืชืื ื-C, ืื ื ืื ืจืืฆื.
ืืืชืื, ืืื ืฉืืืจ ืขื ืงืฉืจ ืขื ืื ืฉืจืช ืืืืื ืืืชืื ืืืืืจืื. ืืืืืื, ืื ืื ื ืืืชืืื ืืืื ื ืฉืืืืืช ื- Clickhouse, ืื ืื ื- Clickhouse ืืื ืืื ืืืื ืืก ื ืชืื ืื (ืืื ืืืช, ืื ื ืืชื ืืืชืจ ืืื), ืื ืื ืื ื ืื ืื ืคืืื ืืช ืืืืืจืื - ืื ืื ื ืคืฉืื ืืืจืงืื ืืช ืืฉืืจ. ืื ืื ื ืืชืื ืืื ืืืื-ืืื ืืฉื ืืื ืฉื ืฉืืืืืช, ืื ืื ืจืื ื ืืื ืืืจืืง ืืืง. Kittenhouse ืืืื ืืขืฉืืช ืืช ืื. ืื ืืกืฃ, ืืื ืืืื ืืืฆืข ืืกืืจื ืืืื ื, ืืืืืจ ืืืชืื ืืืืกืง ืืืืฉื ืืืงืืื ืืคืขื ืืื ืคืขื (ืฉื, ืคืขื ืืฉืชื ืฉื ืืืช) ืืื ืื ืกื ืืืขืืืจ ื ืชืื ืื ืืืงืืืฅ ืืื. ืืืืชืืื ืืฉืชืืฉื ื ืืคืืจืื ืืขืจืืื ืืจืืื - ืื ืืืื ืคืืจืื ืืื ืืจื, ืคืืจืื ืืงืกื (ืืื ื-SQL ืจืืื).
ืืื ืื ืื ืงืจื. ืืฉืชืืฉื ื ืืืฉืืื ืืืื, ืืชืื ื ืืืื ืื, ืืื ืืืืื ื (ืื ืืื ืืฉืืื ืืืืงื ืืืชื ื)... ืื ืืืฆื ืืืื ืฉืขืืช ืืืืขืื ืืืจื, ืืืชืืืื ืืื ืกื ืืืืฃ ืฉืจืชืื - ืืชืืจืจ ืฉืืงืืืงืืืืก ืขืืืื ืืฉ "ืฉืจืฉืืจ ืืืืืืจ" - ืืืชืื, ืืืืฃ ืืืืืจืื, ืืื ืกื ืคืขืืื ืืืืืื ืืืืืฆืข ืขืืืก ืขื ืืฉืจืช ืฉื ืืืืฃ ืืืฆื. ืืืืคื ืืคืชืืข, ืืฉืจืช ืงืืื ืืงืฉืืช, ืื ืื ืชืื ืื ืขืืืื ืืืื ืกื ืืืืจ ืืื ืื; ืืื ืืฉืจืช ืืื ืืืื ืงืฉื ืืืืืฉ ืืช ืื...
ืืืกืฃ nginx
ืคืชืจืื ืืื ืืืืื Thread per connection ืืื nginx. ืืชืงื ื nginx ืืื Clickhouse, ืืืงืืื ืืืืจื ื ืืืืื ืขืืืจ ืฉื ื ืืขืชืงืื (ืืืืจืืช ืืืื ืกื ืฉืื ื ืืืื ืคื 2, ืืืจืืช ืฉืื ืื ืขืืืื ืฉืื ืฆืจืื ืืืืืช ืืืงืจื) ืืืืืื ื ืืช ืืกืคืจ ืืืืืืจืื ืืงืืืงืืืืก, ื- ืืืขืื ืืืจื, ืืืืชืื, ืืืชืจ, ืืืฉืจ ื-50 ืืืืืจืื, ื ืจืื ืฉืืื ืืขื ืืืื ืืก.
ืืื ืืื ื ืฉืืกืืืื ืืื ืืฉ ืืืจื ืืื ืืกืจืื ืืช, ืื ืืฉ ืื ื ืืื ืจืง nginx ืืื. ืืืชืื ืืื, ืื nginx ืื ืงืืจืก, ืืืจืืช ื ืืืืืชื ืฉื ืืขืชืงืื, ืื ื ืืืืืื ื ืชืื ืื ืื, ืืคืืืช, ืื ื ืืชืื ืืฉืื ืืงืื. ืื ืืกืืื ืฉืขืฉืื ื ืืืืื ืขืืืกืื ืืฉืื ื. ืืื ื ืื ืฉ"ืงืืืงืืืืก" ืขืืืื ืืชืืื ืืืืื ืขืฅ, ืืื "ืืฉื" ืืชืืื ืืืชืื ืืช ืืืืื ืื ืฉืื ื"ืงืืืงืืืืก" - ืืืื ื ืื ืืืขื ืืืืช. ืื ืื ื ืขืืืื ืืฉืชืืฉืื ืื ืขืืืจ "ืฉืืื" ืืืจืื.
ืืื ืืืืื ื ืืช ืืืขืื ืืืขื ืืื ืช ืืื: ืื ืืชื ืืฉืชืืฉ ืืฉืืื ืื ืกืื ืืจืืืช ืฉื ืืื ืกื ืืืฆื SQL, ืื ืืืืฅ ืื ืชื SQL ืืืืกืก AST ืืื, ืฉืืื ืื ืืืื. ืืืชืื ืืื, ืืืกืคื ื ืืืืจืืช ืืื ืืืืืื ืฉืื ืืขืืื ืื ืืงืจื. ืขืฉืื ื ืืืืื ืขืืืกืื, ืืืืงืืช ืืจืืืืช, ืื ืฉืื ืืื ืืช, ืื ืื ื ืขืืืื ืืฉืืืจืื ืืช ืื ืชืื ืื. ืืฉ ืื ื ืขืืฉืื ืื ืืจืื ืืืืืืช ืฉืื ืื ื ืฆืจืืืื ืืื ืฉืืืื ืืฉืืืืืช Clickhouse ืฉืื ืื. ืืืชืืื ื ืืืฉืื ืื ืขื ืฉืืืืฉืื ืืืจืื - ืืืฉื, ืจืฆืื ื ืืืชืื ืืืื ืื ืืืืืืื nginx, ืืื ืื ืื ืืืืขืื ืืื ืืชืงืฉืจ ืืืืฆืขืืช ื-RPC ืฉืื ื. ืืืื, ืืืืชื ืจืืฆื ืืืื ืืืชื ืืื ืืฉืืื ืืคืืืช ืืืืฉืื - ืืืฉื, ืืงืื ืืืจืืขืื ื-localhost ืืจื UDP ืืื ืืืขืืืจ ืืืชื ื-Clickhouse.
ืฆืขื ืืื ืืืคืชืจืื
ืืกืืืื ืืกืืคืืช ืืืื ืืืืจืืืช ืื (ืืืจืกื ืืจืืืขืืช ืฉื ืืกืืื ืืื): ืืื ืฉืจืช ืืื Clickhouse ืืฉ nginx (ืืืืชื ืฉืจืช) ืืืื ืคืฉืื ืืขืืืจ ืืงืฉืืช ื-localhost ืขื ืืืืื ืขื ืืกืคืจ ืืืืืืจืื ืฉื 50 ืืชืืืืช. ืืืชืืื ืืช ืืื ืืืจ ืื ืขืืื, ืืื ืืื ืื ืืื ืืืชื.
ืืืื ื ืืื ืืืืืฉ. ืืืื ืืื ืืจืืฆืื, ืืืกืืคื ืืืืืืช, ืืืกืืคื, ืืืกืืคื... ืืืื, ืืชืืจืจ ืฉืืืจื ืื ืืืกืคื ื ืืืืืืช ืืืฅ ืื ืืืืชื ืืืคืืืืืืช ืืืืืื (ืืืื ื ืืื ืืช ืื ืื). ืขืฉืื ื 16 ืืืงืื ืืื ืืืื ืืืจืืื ืืืืง ืฉื ืืื ืฉื ืืืช; ืืื ืื ื 20 ืืืืืืช ืืื ืืืื ืงืืืื 8 ืืืกืคืืช ืืฉื ืืื - ืืืฉืื ืื ืืชืืื "ืงืืืงืืืืก"... ืืจืฉืืืืช ืืืื ืืืื. ืื ืืคืืื ืื ืขืืจื... ื-Nginx ืืืจืืจืช ืืืื ืืื ืืืจ ืื ืื ืืขื ืืื ืฉืื ืืืืืืจืื ืืกืชืืืื ืืืขืื ืืืจื, ืื ืื ืคืฉืื ืืืืืจ "502" ืืื ืืืงืฉืืช ืืืืฉืืช.
ืืื ื ืืฉ ืื ื (ืืืืืง ืืกืชืืืชื ืขื ืืืืื ืื ืืงืืืงืืืืก ืขืฆืื) ืืืฆื ืืืื ืืืืงืฉืืช ื ืืฉืื. ืืืชืื ืืื, ื ืืฆืื ืืืืกืงืื ืืื ืืืื, ืืื ืืจืื ืืืืืืื. ื ื, ืื ืขืฉืืชื? ืืืืข ืืืืจืื, ืื ืืจืืชื ืืืืื ืืืืข ืืืืืง ื ืืืจ ืืืืืืจ ืืืืขืื.
ืืืืคืช nginx ืืคืจืืงืกื ืืคืื
ืืืืืชื ืฉืื ืื ื ืฆืจืืืื ืื ืื ืืช ืื ืืขืฆืื ื, ืื ืื ื ืื ืฆืจืืืื ืืืฉืืืจ ืืช ืื ื-nginx - nginx ืื ืืืืข ืืืื ืืืืืืช ืืฉ ื-Clickhouse, ืืืืืคืชื ืืช nginx ืืคืจืืงืกื ืืคืื, ืฉืื ืืืชื ืืชืืชื ืืขืฆืื.
ืื ืืื ืขืืฉื? ืื ืขืืื ืขื ืืกืืก ืกืคืจืืืช fasthttp "goshnoy", ืืืืืจ, ืืืจ, ืืืขื ืืืจ ืืื nginx. ืกืืืื, ืืืืืจ, ืื ืืชื ื ืืื ืืื (ืืขืจื: ืืืืืจ ืกืืกืืืื ืืื ืืชืื ืช ืจืืกื ืฉืืฆืจ ืืช ืฉืจืช ืืืื ืืจื ื nginx). ืืื ืืืื ืืืืื ืืืืื ืกืื ืฉื ืฉืืืืชืืช ืืืืืจ - INSERT ืื SELECT - ืืืชืื, ืืื ืืืืืง ืืจืืืืช ืืืืืจ ืฉืื ืืช ืืกืืืื ืฉืื ืื ืฉื ืฉืืืืชืืช.
ืืืชืื, ืื ืื ืื ืืืื ืื ื ืืื ืืืฉืืื ืืช ืืงืฉืืช ืืืื ืกื, ื"ืืืจืจืื" ืืขืืจื, ืืืืืคื. ืืืื ืืงืืฅ ืืช ืื ืชืื ืื ืืืืืืืช ืืืฆืฅ - ืขื ืืืืจ ืงืื: ืื ืืื ืฉืืืืืช, ืฉืืืืืช ืชืืืืจ ืืื' - ืื ืฉืื ืื ืืฉืคืืขื ืืืื ืขื ืฉืืจ ืื ืชืื ืื, ืื ืืืฉืจ ืคืฉืื ืืื ืกื ื ืืืืืืืช ืืืืจ, ืื ืื ื ืืื "ืืืฆ'ื" ืงืื, ืืื ืฉืืืืืช ืืชืืืืจ ืืฉืคืืขื ืจืง ืขื ืืืฆืืจื ืืงืื ื ืืื; ืืืื ืืืจ ืืฉืคืืขื ืขื ืืืฅ ืืืื. ืงืื ืื 1 ืืื ืืืื, ืืืืืจ, ืื ืื ืื ืงืื.
ืืื ืกืช ืกื ืืจืื ืืืขืฆื ืืืืคืช nginx, ืขืืฉื ืืขืฆื ืืช ืืืชื ืืืืจ ืฉ-nginx ืขืฉืชื ืงืืื - ืืื ื ืฆืจืื ืืฉื ืืช ืืช ื-"Kittenhouse" ืืืงืืื ืืฉืืื ืื. ืืืืืืื ืฉืืื ืืฉืชืืฉ ื-fasthttp, ืืื ืืืืจ ืืืื - ืืชื ืืืื ืืืฆืข ืืืชืจ ื-100 ืืืฃ ืืงืฉืืช ืืฉื ืืื ืขืืืจ ืืืกืคืืช ืืืืืืช ืืจื ืคืจืืงืกื ืืคืื. ืชืืืืจืืืช, ืืชื ืืืื ืืืื ืืก ืฉืืจื ืืืช ืืื ืคืขื ืืคืจืืงืกื ืืืคืื ืฉื kittenhouse, ืืื ืืืืื ืฉืื ืื ื ืื ืขืืฉืื ืืช ืื.
ืืกืืืื ืืืื ืืืืจืืืช ืื: "Kittenhouse", ื-Proxy ืืืคืื ืืงืืฅ ืืงืฉืืช ืจืืืช ืืืืืืืช, ืืืชืืืจื, ืืืืืืช ืืืืืจ ืืื ืืกืืช ืืืชื ืืืืืืืช ืืจืืฉืืืช.
ืจืืฆื ืืื ืคืชืจืื ืืื ื, ืืชืืชืื ืืื ืงืืืข
ืื ืืขืื ืืขื ืืื ืช... ืืืฉืื ืืื ืืฉืชืืฉ ื-fasthttp? ืื ืืฉืชืืฉ ื-fasthttp ืขื ืืงืฉืืช POST? ืื ืจืื, ืื ืืืืช ืื ืืื ืฆืจืื ืืืืขืฉืืช, ืื ืื ืืืืกื ืืช ืืืฃ ืืืงืฉื ืืืจืืจืช ืืืื, ืืืืื ืืืืืจ ืฉืื ื ืืืืืจ ื-16 ืืื-ืืืื. ืืืื ืกื ืืคืกืืงื ืืืชืขืืื ืืฉืื ืืกืืื, ืื ืชืื 16 ืืื-ืืืื ืืืื ืืืืืข ืืื ืขืฉืจืืช ืืืคื ืืฉืจืชืื, ืืืืื ืืืกื ื ืืืืืจืื ืืคื ื ืฉื ืฉืืื ืืงืืืงืืืืก. ืืืชืื ืืื, ืืืืืจืื ืืื, ืืจืืฆื ืืกืจ ืืืืืจืื ืื ืืืจื ืืช ื-proxy ืืืคืื (ืื "Clickhouse", ืฉืืืื ืชืืืืจืืืช "ืืืืื" ืืืชืจ ืืืคืจืืงืกื ืืืคืื). ืืืืืืจ ืืืจ ืขื ืขืฆืื. ืืขืื ืื ื ืขืืื ืืืืืื. ืืืจืืช ืฉื ืชืงืื ื ืืื ืจืง ืืืืจ ืืกืคืจ ืืืืฉื ืคืขืืื.
ืื ืื ื ืขืฉืืชื? ืฉืื, ืื ื ืื ืืืฉ ืืืื ืืืืื ืื ืืืืืง ืงืจื. ืื ื ืืืฉื ืฉืื ืื ืืจืืจ ืฉืืชื ืื ืฆืจืื ืืืฆืฅ ืืืืืจืื. ืื ืืฆืืืชื ืืชืงื ืืช fasthttp, ืืืจืืช ืฉื ืืกืืชื. ืืื ืืฆืืชื ืืจื ืืขืฉืืช ืืช ืื ืื ืฉืื ืืืื ืฆืืจื ืืชืงื ืฉืื ืืืจ, ืืืืฆืืชื ืฉืืื ืืฉืื ื-HTTP - ืงืจืืชื ืืื KITTEN. ืืืื, ืื ืืืืื ื - "VK", "ืืชืืชืื"... ืื ืขืื? ..
ืื ืืงืฉื ืืืืขื ืืฉืจืช ืืฉืืืช Kitten, ืื ืืฉืจืช ืฆืจืื ืืืืื "ืืืื" - ืืืืืืื. ืื ืืื ืืืื ืืื, ืื ื ืืฉื ืฉืืื ืืืื ืืช ืืคืจืืืืงืื ืืื, ืืื ืื ื ืืืืจื ืืช ืืืืืืจ (ื-fasthttp ืืฉ ืฉืืื ืืื), ืืืืืืืจ ืขืืืจ ืืืฆื "ืืืืื". ืืื ืื ื ืฆืจืื ืืช ืื? ืื ื ืจืืฆื ืืฉืืื ืืืฆื ืงืจืืื ืืืืืืจื TCP ืืชืจืืฉืช. ื-TCP ืืฉ ืชืืื ื ื ืคืืื: ืื ืืฃ ืืื ืื ืงืืจื ืืืฆื ืืฉื ื, ืืืชืืื ืืชืืืื ืืืืืช, ืืืืืืจืื ืื ืืืฉืงืข ืืืืืื ืขื ืื.
ืืื ืงืจืืชื ืื-50 ืืงืืืืช ืืื ืคืขื (ืืืืืฉืื ืื ืืืืฉืื ืืืืื ืืืืจืื ืืืกืคืืง, ืื ืื ืืชืขืจืืฃ ืืืืข ื-DC ืืืจ)... ืืฆืจืืื ืืจืื ืืืืฉื ืืื ืืคืืืช ืคื 20, ืืื ืื ื, ืืืขื ืืืืช , ืื ืืฆืืืชื ืืืืื ืืืืืง ืืืืื ืฉืขื, ืื ืื ืืืจ ืืกืจ ืืขื (ืื ืืืจ ืืืืข ืืจืืช ืืฉืืืื). ืืคืจืืืืงืื ืืื ืืื ืืจื, ืืืืืจ, ืืื ืืืื ืืช ืฉื ืืืืื ืืื ืชืื ืื; ืืื ืืืชืจืืช http, ืื ืื ืืฉืชืืฉืชื ืืฉืงืข ืืื ืืจื ื (ืื ื ืื ืฆืจืื ืืชืงืฉืจ ืขื ืืคืืคื ืื - ืืื ืชื ืคืจืืืืงืื ืฉืืชืืื ืืฆืจืืื ืฉืื ื). ืืืื ื ืืื ืืกืืจ ืืืชื.
ืืืืช ืืืืฅ ืขืฆืืื
ืืืืจืื ื ื ืชืงืื ื ืืชืืื ื ืืขื ืืื ืช ื ืืกืคืช ืฉื ืืืืืืช ืืืฅ. ืืืืขืื ืืื ืืืจ ืืจืื ืืืชืจ ืืืืืช ืืืืืจืืช. ืืืื ื ืืืืื ืืช ืืืฆื ืืื: ืืชื ืืืจ ืืฉืชืืฉ ืืืืคื ืคืขืื ื-Clickhouse, ืืฉ ืื ืขืฉืจืืช ืฉืจืชื Clickhouse, ืืืฉ ืื ืืื ืืงืฉืืช ืฉืืืงื ืืจืื ืืืื ืืื ืืงืจืืื (ื ื ืื, ืืืชืจ ื-60 ืฉื ืืืช); ืืืชื ืื ืืขืืฉื ืืืืจ ืืจืืข ืื... ืืื ืชืืื, "ืืืจ" ืฉืืชืืื ืืคื ื "Alter" ืื ืืืืื ืืืืื ืื, "Alter" ืื ืืชืืื - ืื ืจืื ืืื ืชืืื ืืช ืฉื ืืื "Clickhouse" ืขืืื ื ืืืงืื ืืื. ืืืื ืืคืฉืจ ืืชืงื ืืช ืื? ืื ืฉืื ืืืชื ืืคืฉืจื?
ืืืืคื ืืืื, ืืจืืจ ืฉืืืฆืืืืช ืื ืื ืืขืื ืื ืื ืืืืื, ืืื ืขื ืืืืืืช ืืืฅ ืื ืืืคื ืืืืืช ืืืชืจ ืืืื. ืื ืื, ื ื ืื, ืคืกืงื ืืืื ืฉื "Alter" ืฉืื (ืืืืื ืืืืืช ืฉืื ืืืื ืงืฆืื ืขื ืืืจื ืืืจ - ืื ืขื ืฉืื, ืืื ืขื ืขืืชืง, ืืืฉื), ืื... ืืืงืช ืืช ืืืืช ืืืืืจ, "Alter" ืฉืื ( ืื ืืืจื ืืืจ) ืชื ืืืื ืืงืฆืื. ืืื ืืืจืขื ืฉืืืืช "Alter") - ืืชื ืขืืืื ืฆืจืื ืืืืื ืฉืื ืชืื ืื ืืืฉืืืื ืืืืืชื: ืืชื ืืืฆืจ ืืช ืืืืืืช ืืืืืจ ืืืืจื (ืืคื ืืืชื ืกืืื ืืื ืืืืช ืืื), ืืื "Alter" ืขืืืจ, ืืกืชืืื ืืืจื ืืื, ืืืืืืจ ืฉืืืืื ืืชืืืื ืืืืืช ืฉืื ื ืืกืืืื ืืืื. ืชืืื ืื ืืื ื-"Alter", ืืืชืื ืฉืืืืกืคื ืื ืชืขืืืจ ืืืชืจ ืืืืืช ืืืืฆืฅ ืืื - ืื ืขืฆืื ืืืื.
ืืฉ ืื ืฉืื ืืื (ืืืื ืืืฉืื ืฉื ืื ืืื) - ืื ื ืงืจื query_thread_log ืืืจืกืืืช ืืืฉืืช ืฉื Clickhouse. ืืืจืืจืช ืืืื, ืืืจืกื ืืืฉืื ืืืืชื ืืืช. ืืื ืฆืืจื ื 840 ืืืืืื ืฉืืืื ืืืื ืืืืฉืื (100 ืืืื-ืืืื). ืื ื ืืืข ืืื ืฉื ืืชืื ืฉื "ืชืืกืคืืช" (ืืืื ืขืืฉืื, ืืื, ืื ืื ืืชืืืืช). ืืคื ืฉืืืจืชื ืื, ื"ืชืืกืคืืช" ืฉืื ื ืงืื ืืช - ืืื ืื ื ืืจืื "ืชืืกืคืืช" ืืืืืืืช ืืืืืจ. ืืจืืจ ืฉืื ืืืฉืืช - ืื ื ืจืง ืืืืจ ืื ืื ืจืืืชื ืืฉืจืช ืฉืื ื. ืืื? ืืื ืืืขืื ื ืืกืฃ ื ืื ืฉืืืืฉ ืืืืืืืช ืืืฅ! ืกืคืืื ืขืฆืื ืืืื.
ืื ืืืข ืฉืฉืื ืฉื ืืืืืจ ืืื ืืื ืกืคืืื? ืขืืืื VK ืืจืืื ืืืืื. ืืกืืจ.
ืขื ืืชืืื ืืืช ืฉื "KittenHouse"
ืืืจื ืืื ืชืืื ืืืช ืื ืืฉืืชืคืืช, ื ืืื? ืคืชืืื ืืชื ืื ืชืืฉืื ืืืชื ืืื ืชืืจืื ืืื ืืืื ืืขืื ื ืืืจืื. ืืื ืื ื ืืงื ืืช ืืกืืืื! ืื ืื ื ืจืืฆืื ืืขืฉืืช ืืช ืืคืขืืืืช ืืืืืช: ืืืืืืช ืืืฆืฅ, ืื ื ืจืื ืื, ืื ืขืืืื ืงืืืื ืืื ืื ื ืฆืจืืืื ืืืฆืฅ ืืช ืืืืืจื ืืขืฆืื ื. ืืื ืื ืื ื ืขืืืื ืื ืจืืฆืื ืืืืกื ืืืชื ืืืืกืง, ืื ื ืืืจ ืืช ืืืื ืกื ืืืืืจืื.
ืืืชืื ืืื, ืืืฉืจ ื ืขืฉื "ืืืกืคื", ืืื ืืืจ ืื ืืืื ืกืื ืืจืื ื - ืืื ืืืจ ืืขืืื ืืืืืช ืืืฆืฅ, ืืื ืก ืืืืืช ืืื (ืืื, ืืชืืฉืื ืืืืืจ ืืืชืจ) ืืืืืื ืืขืจืืฅ ื ืคืจื ืืืื ืื ืืกืืช ืขืืจื ืืืืื ืืื.
ืืื ืื ื ืื ืืืื ืืขืืื ืืช ืืชืืกืคืช ืืกืื ืืจืื ืืช? ืื ืืจืื ืืืชืจ ื ืื. ืืขืืืื ืืื ืฉืื ืืชื ืืื ืืก ื-10 ืืืฃ ืืืจืืื, ืื ืืื ืืกืืจ - ืชืงืื ืงืฆืช ืืื ืืืจื, ืืชื ืืื ืืก ืืฉื ืคืขื ืืฉื ืืื, ืืื ืืกืืจ. ืืื ืืืืชื ืจืืฆื ืฉืืชืืื ืืช ืืื ืชืขืืื, ืืืฉื, ืืฉืชื ืืืื ืืช, ืื ืฉืชืืื ืืืืจืื ืืืืืจืืช ืืืืื - ืืืื ืื ืืืคืืง ืืช ืืืงืกืืืื ืืงืืืงืืืืก, ืืื ืืืชืื ืืคืืืช 100 ืืื-ืืืื ืืฉื ืืื ืืืืฉื ืืื ืืจื ืคืจืืงืกื ืืคืื - ืื ืืกืืืื ืืืืืช ืืืชืืื ืืืืืืืช ืืืืืืช ืืงืื ืืช ืืืื, ืื ืื ืื ื ืื ืืืืืื ืืืืืช ืฉื ืืื ืืื ืืื ืกื, ืื ืืื ืืืืืช ืืืืืช ืืกืื ืืจืื ืืช. ืืืืืชื ืืืคื, ืืืฉืืจืื ืืกืื ืืจืื ืืื ืฆืจืืืื ืืืืืข ืืืืจ ืืฉืืืช ืืืื ืกื. ื ืืข ืื ืื ืขืืจ ืื ืื.
ืืืืจ ืืืฉืื ืืืืชืจ ืืื ืฉืืกืืื ืื ืื ื ืืืืขืื ืืืืืืืช ืื ืืืืืจื ืืชืจืืฉื ืื ืื. ืชืืจื ืืขืฆืืื ืืช ืืืฆื ืืื: ืืฉ ืืื ืืืืช ืืืฆืฅ, ืืชืืชื ืืชืืื ืืฉืื, ืืื, ื ื ืื, ืืืืื ื ืื ืกื ืืืฆื ืงืจืืื ืืืื ืื ืืกืชื ืืฉืืืฃ ืืช ืืืืืจ. ืืื ืืืื ืื ืชืื ืื? ืื ืืืฉืืจื ืืืืืจ. ืืื ืื ืื ื ืื ืืืืืื ืืืืืช ืืืืืื ืืื - ืื ืื ืืฉ ืืืื ืฉืืืื ืืืจืช, ืฉืืืืื ืื ืชืื ืื ืื ืืืฉืืจื ืืืืืจ... (ืคืื ืื ืื Alexey Milovidov, Yandex, ืืคืชื ClickHouse) ืื ืฉืื ืืืฉืืจ? ืชืืื? ืืืืกืื ืืฉืื ืข ืืืชื ื ืฉืืื ืืืื ืืกืืจ. ืืื ืื ื ืกืืื ืื ืืืืืื ืื. ืืื ืืื ืืืช: ืื ืื ื ืฉืชืืฉ ืืืืืืืช ืืืฅ, ืื ืื ืืืื ืืขืืืช ืืืชื. ืื ืืฆืืจืช ืืคืืืื ืฉื ืฉืืืื ืืช ืืื ืื ื ืืื, ืื ืื ืขืงืจืื ืืช ืืื ืืขืืืช ืืืืืืช. ืื ืืชืืื ืืช.
ืืืื ื ืืืจ ืขื ืงืจืืื
ืขืืฉืื ืืืื ื ืืืจ ืขื ืงืจืืื. ืืชืื ื ืืื ืื ืืื ืืฉืื ื. ืื ื ืจืื, ืืืื, ืืื ืืืชืื ืืื ืืื ืืฉืื? .. ืืื ืืฉืชืืฉ ืืืืืืงืก? ืืืืฉืื ืืขื ืื ืฉืื ืืจืืื ืืืืื... ืืื ืืจืืฆื ืืืืืฆืืขืื ืฉื ืืืืงืก? ืืืื, ืื ืื ื ืื ืืจืืฆืื ืืื ื, ืืื ืื ืืืื ื ืื ืืฆืคืืื ืื ืชืื ืื. ืื ืืกืืจ ืื ืืชืืืื, ืืื ืจืง ืืฆืคืืื ืื ืืืืจืืจ ืื ืืืชืื. ืื ืืชืืชื ืืืฉืง ืืฉืื.
ืื ืืืื ืคืฉืื - ืืื ืืืื ืืงืจืื ืจืง ื ืชืื ืื. ืืื ืื ืืืืข ืืืจืืืช ืืจืคืืงื, ืืื ืื ืืืืข ืืขืฉืืช ืืืื. ืืื ืื ืืืื ืืืจืืืช ืื ืื ืื ื ืฆืจืืืื: ืืืฉื ืืื ืฉืืจืืช ืืฉ ืืืืื, ืืื ืืงืื ืืื ืชืืคืกืช (ืืืื ืืคืจืง ืืืชื ืืขืืืืืช), ืืืืืจ ืืืฉืง ืืกืืกื ืืืื ืืื ืื ืฉืื ืื ื ืฆืจืืืื.
ืืื ื ืจืื ืืืื ืืืื ื-Sequel Pro, ืืื ื ืขืฉื ืจืง ืขื Bootstrap ืฉื ืืืืืืจ, ืืืืจืกื ืืฉื ืืื. ืืชื ืฉืืื: "ืืืจื, ืืื ืืืจืกื ืืฉื ืืื?" ืืืื ืฉื ื? 2018? ืืืืคื ืืืื, ืขืฉืืชื ืืช ืื ืื ืืืื ืขืืืจ "Muscle" (MySQL) ืืจืง ืฉืื ืืชื ืืื ืฉืืจืืช ืืฉืืืืชืืช ืฉื, ืืื ืืชืืื ืืขืืื ืขืืืจ "Clickhouse", ืืขื ืื ืชืืื ืืืืืืช! ืืืืืื ืฉืืื ืชื ืืืื ืืืื ื"ืฉืจืืจ", ืืืฉืืืืชืืช ืืืืืช ืืืื - ืืืื ื ืื, ืืืืืื ืืืชืืื.
ืืืื, ืื ืืืื ืืกื ื ืืืืืืช, ืืืื ืืืจืืืช ืืช ืืืื ื ืืืชืืื ืฉื ืืืืื, ืืืคืฉืจ ืื ืืืืื, ืืกื ื ืืคื ืขืืืืืช, ืืฆืื ืืช ืืฉืืืืชื ืฉืืืืื ืืชืืฆืื, ืืช ืืฉืืจืืช ืืืืฉืคืขืืช (ืืื ืืชืืฆืื ืืื), ืืืืืจ, ืืืจืื ืืกืืกืืื ืืฆืคืืื ืื ืชืื ืื. ืื ืืืจ.
ืืฉ ืื ืขืืจื. ืืื ืืช ื ืืกืืชื ืืื ืื ืืช ืื ืืขืืจื ืืืืืืงืก, ืืื ืื ืืฆืืืชื. ืืื ืืืืฉืื ืื ืขืืื. ืขืงืจืื ืืช, ืื ืืื.
"ืงืืืงืืืืก" ืืชืืื ืืืืืจืืช
ืื ื ืจืืฆื ืืืืจ ืืื ืฉ- Clickhouse, ืืืจืืช ืื ืืืขืืืช ืืืชืืืจืืช, ืืชืืืื ืืืื ืืืืื ืื. ืืืื ืืฉืื, ืื ืคืืชืจ ืื ื ืืช ืืืขืื - ืืื ืืืืจ ืืืื ืืืืคืฉืจ ืื ืืกื ื ืืืื ืื ืืคื ืขืืืืืช. ืืืืคื ืขืงืจืื ื, ืืืืืืช ืืืฆืฅ ืื ืืฆืืืื, ืืื ืืืจื ืืื ืืฃ ืืื ืื ืืืืข ืืื... ืืืื ืขืืฉืื ืืชื ืืืืข ืืื ืืืชืจ ืืืคื ืืืื ืื ืืขืืืช.
TCP? ืืืืคื ืืืื, ื-VK ื ืืื ืืืฉืชืืฉ ื-UDP. ืืืฉืืฉืชืืฉืชื ื-TCP... ืืืืื, ืืฃ ืืื ืื ืืืจ ืื: โืืืจื, ืขื ืื ืืชื ืืืืจ! ืืชื ืื ืืืื, ืืชื ืฆืจืื UDP." ืืชืืจืจ ืฉ-TCP ืื ืื ืื ืืคืืื. ืืืืจ ืืืืื ืืื ืฉืื ืืฉ ืื ืขืฉืจืืช ืืืคื ืชืจืืืืืช ืคืขืืืืช ืฉืืชื ืืืชื, ืืชื ืฆืจืื ืืืืื ืืช ืื ืงืฆืช ืืืชืจ ืืืืืจืืช; ืืื ืื ืืคืฉืจื, ืืื ืงื.
ืืืืืชื ืืคืจืกื ืืช "ืงืืืื ืืืืก" ื"ืืืืืืจ" ื-HighLoad Siberia ืื ืืืื ืืืจืฉืื ื-"VK backend" ืืฆืืืืจื ืฉืื ื... ืืืชื ืืืืข, ืื ืืืื ื ืจืฉืื... ืืืืื, ืื ื ืื ืืืจืืฉ ืืื ืืืืจืฉื ืืื ืื ืฉืื ื ืคึผืึผืึฐืึผึตื. ืขืืืื ืืฉ ืืืชืจ ืืื ืืื, ืืืื ืืืฉืื ืืคืืื ื ืขืื, ืืื ืืื ืืืช, ืืืงืฉื ืืืจืฉืื (ืืืื ืื ื ืืืื ืืขืฉืืช ืขืื ืืื ืืื ืฉื ืืชืื). ืื
ืขืืคืจืช: ืืืจืื, ืขืืฉืื ืืฉืืืืช. ืืื ืืืืจ ืฉื ืฆืื ืืช ืชืขืืืช ืืืืงืจื ืืืช ืืื"ื ืฉืื ืขื VHS.
ืืืจื ื ืกืจืืื ืื (ืืืื ื"ื ): - ืืื ืืฆืืืช ืืืงืืื ืืช ืืืืืื ืฉืื ื-VHS ืื ืื ืจืง ืืกืชืืื?
ืขืืคืจืช: - ืื ืืชื ืื ืืืื ืืงืืืข ืืืืคื ืืื ืืื "ืงืืืงืืืืก" ืืขืืื ืื ืื! ืืืจืื, 5 ืืงืืช ืืฉืืืืช!
ืฉืืืืช
ืฉืืื ืืืงืื (ืืืื ืฉ'): - ืืืจ ืืฆืืจืืื ืืืืื. ืชืืื ืจืื ืขื ืืืืืื. ืืฉ ืื ืฉืชื ืฉืืืืช. ืืชืืื ืืืฉืื ืงื ืืขืช: ืืื ืืกืคืจ ืืืืชืืืช t ืืฉื "ืืืช ืืชืืืื" ืืชืจืฉืืืื (3, 4, 7...) ืืฉืคืืข ืขื ืฉืืืขืืช ืืจืฆืื ืฉื ืืืชืืืื?
YN: - ืืืืช ืฉื ืื?
ะ: โ ืืืช ื. ืืฉ ืฉืืืฉื ืช', ืืืคืฉืื ืืกืืืืืช ืฉืืืฉ ืช'.
YN: - ืื ืชืืงื ืชื ืืช ืื? ืืืื, ืืืืื ืฉืื! ืืื ืืืฆืจืื ืฉืื ืื - ืคืฉืื ืฉืืืืชื ืืืชื ืื ืืืื ืืื. ืืืงืื, ืื ื ืฆืืืง - ืื ืื ืืฉื ื. ืื, ืืืฉ ืืื! ืื, ืื ืืืชื ืืืจ, ืขืฉืืชื ืฉืืืืช ืืงืืื.
ะ: - ืชืืื. ืืฉืืื ืืฉื ืืื ืืื ืจืฆืื ืืช. ืืืืื ืืื ืชื, ื-Clickhouse, ืืืืืืช ืืืฆืฅ ืืืืช ืื ืืจืง ืืืืืจืื, ืืื ื ืืืืืกื ืืช ืืืืกืง ืืืืชืื ืืื ืืื ื ืืชืืืืืช.
YN: - ืื.
ะ: - ืืืืืชื ืืืื, ืืืงืื ืฉืื ืืืืกื ืืืืกืง, ืื ืฉืืจืื ืขื ืขืจืืื ืืกืืืืช ืืืกืืจื ืฉื ืืืชื ืืืื ืื. ืืื ืื ืืฉืื ืืืคื ืื ืืืืื ืืงืืืงืืืืก. ืืกืืจ ืืืฆื ืืชืืฆืขืช ืืขืจืืืช, ืืฉื ืื?.. ืื ื ืื ืื ืื ืื ืืืชืจ ืคืืจืื
YN: โ ืื, ืชืืืืจืืืช ืืื ืืื ืกืชืืจืืช, ืื ืืืฉืจ ืงืืืงืืืืก ื ืืคื, ืืืขืฉื ื ืืชื ืืืืืช ืืืช ืืืืืืื ืืจืืื ืฉืื ืืช. ืื ืงืืืงืืืืก ืงืืจืก (ืื ืืื ืืกืชืืื ืืฆืืจื ืื ื ืืื ื), ืืชื ืืืื, ืืืืื, ืืืจืืฅ ืืืืืจ ืืขื ืืืืืื ืฉืื ืฉืจืฉืืช ืืืืชืืื ืืืจืืข ืฉืืื ืืื ืืกืืจ. ื ื ืื ืฉืืชื ืืืืืจ ืืงื ืืืืืจ, ืืืืืจ, ืื ื ืืฉื ืฉืฉืืคืช ืืื ืืืงื.
ะ: โ ืืืืืจ, "ืงืืืื ืืืืก" ืืืืืง ืืช ืืืืื ืืื ืจื ืืืชืจ ืืืืงืจื ืฉื ื ืคืืื ืืืื ืืืืืช ืืืชื ืืืืืื ืืืชื ืืืืืจ?
YN: - ืืื ืื ืืชืืืืจืื. ืืคืืขื, ืื ืื ื ืื ืขืืฉืื ืืืช, ืืืกืคืงื โโืืืื ื ืืื ืืืคืก ืขื ืืื ืกืืฃ ืคืขืืื. ืืื ืืืืืฆืข ืืื. ืื ื ืืจืืฆืื ืฉืื Clickhouse ืงืืจืก ืืกืืื ืืืฉืื ืื ืฉืืฉืจืชืื "ืืืชืืืื", ืื ืื ืื ื ืืคืกืืืื ืงืฆืช. ืืื ืฉืืจ ืืืงืจืื ืื ืืงืจื ืืืื.
ะ: - ืฉืืื. ืืืจ ืืืืชืืื ื ืจืื ืื ืฉืืื ืชืฉืชืืฉ ื-UDP ืืืจ ืืชืืืืช ืืืื. ืืฉ ืื http, ืื ืื... ืืจืื ืืืขืืืช ืฉืชืืืจืช, ืืคื ืืื ืชื, ื ืืจืื ืืืคืชืจืื ืืกืคืฆืืคื ืืื...
YN: - ืืื ืื ื ืืฉืชืืฉืื ื-TCP?
ะ: - ืืขืืงืจืื ืื.
YN: ืื.
ะ: โ ืขื fasthttp ืืื ืื ืืขืืืช, ืขื ืืืืืืจ ืืื ืื ืืขืืืช. ืื ืจืง ืืืืช ืืฉืชืืฉ ื-UDP ืืืืช ืืืกื ืืขืฆืื ืงืฆืช ืืื. ืืืื, ืืืื ืืขืืืช ืขื ืืืืขืืช ืืจืืืืช ืื ืืฉืื ืืืจ...
YN: - ืขื ืื?
ะ: โ ืขื ืืืืขืืช ืืจืืืืช, ืืืืืื ืฉืื ืืืื ืื ืืชืืื ื-MTU, ืืฉืื ืืืจ... ืืืื, ืืืื ืืืืืช ืฉืืฉ ืืขืืืช ืืฉืืื. ืืฉืืื ืืื: ืืื ืื UDP?
YN: โ ืื ื ืืืืื ืฉืืืืชืืื ืฉืคืืชืื TCP/IP ืืจืื ืืืชืจ ืืืืื ืืื ื ืืืืืขืื ืืืชืจ ืืื ืืื ื ืืื ืืขืฉืืช ืกืืจืช ืื ืืช (ืืื ืฉืืืื), ืืืงืืื ืืืชืืื ืืช ืืืื ืืฉืืืื, ืื ืืืขืืืก ืขื ืืจืฉืช, ืืชืช ืืฉืื ืขื ืื ืื ื ืงืจื, ืื ืกืืคืจ ืืฆื ืืฉื ื... ืื ืืืขืืืช ืืืื, ืืืขืชื, ืืืื ืงืืืืืช ื-UDP, ืจืง ืฉืืฆืืจื ืืืชืื ืืคืืื ืืืชืจ ืงืื ืืื ืฉืืืจ ืืชืืชื ืืื ืืืืฉื ืืช ืืืชื ืืืืจ ืืขืฆืื ืืกืืืจ ืืื ืื ืืฆืืจื ืืจืืขื. ืื ื ืืคืืื ืื ืืืฉ ืืืื ืืืชืื ื-C, ืฉืื ืืืืจ ืขื ืฉื...
ะ: - ืคืฉืื ื ืื! ื ืฉืื ืืกืืจ ืืื ืชืืื ืืฉืื ืืืจ - ืื ืืกืื ืืจืื ื ืืืืืืื. ืืืจื ืืืืขื ืฉืืื ืืกืืจ - ืื ืืืืจ ืฉืื ืืืืข; ืื ืื ืื ืืืืข, ืื ืืืืจ ืฉืื ืจืข.
YN: โ ืื ื ืฆืจืื ืืช ืฉื ืืื โ ืื ื ืฆืจืื ืืืืืช ืืกืืื ืืฉืืื ืื ืืขืจืืืช ืืฉืืื ืืื ืืื ืขืจืืืช ืืฉืืื. ืืื ืฉื ื ืชืจืืืฉืื ืฉืื ืื. ืื ื ืฆืจืื ืื ืืืื ืืื ืืืื ืื ืื ืื ืืืื ืืืชื ืืืืคื ืกืืืจ.
ะ: - ืื ื ืื ืืืืื ืืื. ืฆืจืื ืืืื ืืื ืืืชืจ. ืชืืื.
ืขืืคืจืช: โ ืืื ืืฉ ืฉืืืืช โ ืืืืื ืืฉืืืื!
ะ: ืฉืืื, ืื ื ืกืฉื. ืื ืฉื ืืืืฆืข ืืืืืื ืืืคืืขื ืชืืืฉื ืฉืื ืืกืฃ ื-TCP, ืืคืฉืจ ืืืฉืชืืฉ ืืคืชืจืื ืืืื - ืกืื ืฉื ืงืคืงื.
YN: โ ืืืื... ืืืจืชื ืื ืฉืื ื ืื ืจืืฆื ืืืฉืชืืฉ ืืฉืจืชื ืืื ืืื, ืื... ืืงืคืงื, ืืกืชืืจ ืฉืืฉ ืื ื ืขืฉืจืช ืืืคืื ืืืจืืื; ืืืขืฉื, ืืฉ ืื ื ืืืชืจ - ืขืฉืจืืช ืืืคื ืืืจืืื. ืื ืืืื ืื ืืืืืช ืืืื ืืขืฉืืช ืขื ืงืคืงื ืืื ืื ืคืจืืงืกื. ืื ืืกืฃ, ืืืื ืืฉืื, ืื ืขืืืื ื ืืชื "ืฉืืืื", ืื ื ืืชื ืืืจืืื ื ืืกืคืื ืฉืืชื ืฆืจืื. ืืื ืื ื ืื ืจืืฆื ืืงืื ืืืชื - ืื ื ืจืืฆื...
ะ: "ืืื ืืกืืคื ืฉื ืืืจ ืื ืืฆื ืืื ืืื ืืงืจื."
YN: โ ืื, ืืื ืืืจืืื! ืื ืื ืขืืื ืขื ืืืจืื Clickhouse.
ะ: - ืืืื, ื-"Kittenhouse", ืฉืื ืืคืื - ืืืคื ืืื ืืจ?
YN: - ืืืืจื Clickhouse, ืืื ืื ืืืชื ืืืจ ืืืืกืง.
ะ: ืืื ื ื ืื.
ืขืืคืจืช: - ืืื ืืชื ืืจืืฆื? ืืคืฉืจ ืืชืช ืื ืืฉืืืจืช?
ะ: - ืื ืืชื ืืืื. ืืืขืฉื, ืืฉ ืืจืื ืงืืืื ืืื ืืงืื ืืช ืืืชื ืืืืจ, ืืขืืฉืื - ืืชืฉืืื ืืงืืืืช ืื ืืฉื TCP ืกืืชืจืช ืืืขืชื ืืช ืืืฆื ืืื. ืื ืคืฉืื ืืจืืืฉ ืืืืื ืืื ืืื ืืืื ืืืืขืฉืืช ืขื ืืืจืืืื ืฉืื ืืืจืื ืคืืืช ืืื.
YN: - ืืื ืืื ืื ืจืฆืืชื ืืืฉืชืืฉ ืืงืคืงื, ืื ืืื ืื ืืจืื ืชืืื ืืช ืืฆ'ืื ืฉื Clickhouse Telegram ืขื ืื, ืืืฉื, ืืืืขืืช ืืงืคืงื ืืืื. ืื ืืงืคืงื ืขืฆืื, ืืื ืืืื ืืืจืฆืื ืฉื ืงืคืงื ืืงืืืงืืืืก; ืื ืฉืืฉืื ืื ืืชืืืจ ืืฉื. ืืืืคื ืืก, ืื ืืืื ืฆืืจื ืืืชืื ืืงืื ืืงืคืงื. ืื ื ืื ืืืฉื ืฉืืืื ืืืืืช ืคืชืจืื ืคืฉืื ืืืชืจ ืื ืืืื ืืืชืจ.
ะ: โ ืชืืื ืื, ืืื ืื ื ืืกืืช ืฉืื ืชืืจืื ืื ืืืื ืืืืืืืก ืืฉืืชืฃ? ืืืืืื ืฉืืชื ืืืืจ ืฉืขื ืืกืื ืืจืื ื ืืชื ืืืื ืืฉืืื ืืช ืืืืืื ืขืฆืื ืืจื ืืชืืจ ืืืงืื ืืช ืืชืืืื ืืืืคื ืืกืื ืืจืื ื ืืจื ืืชืืจ?
YN: - ืืืงืฉื ืืฆืข ืืืืื ืชืืจืื ื ืืชื ืืืฉืชืืฉ?
ะ: โ ืื, ืื ืืื ืขืจืืื ืฉืื ืชืงืื ืื. ืกืื ืฉื Redis, RMQ...
YN: โ ืืฉ ืื ืืจืืฉื ืฉืกืืืจ ืืื ืื ืฉ-Redis ืื ืชืืื ืืืฉืื ื ืคื ืืื ืฉื ืืื ืกื ืืคืืื ืขื ืืืจื ืืื (ืืืืื ืฉื ืืกืคืจ ืฉืจืชืื) ืฉืฉืืืฃ ืืช Clickhouse. ืื ื ืื ืืืื ืืืืืช ืืช ืื ืืฉืื ืจืืื (ืื ืืืงืชื ืืช ืื), ืืื ื ืจืื ืื ืฉืจืืืก ืืื ืื ืืคืชืจืื ืืืื ืืืืชืจ ืืื. ืืืืคื ืขืงืจืื ื, ืืขืจืืช ืื ืืืืื ืืืืืฉื ืืชืืจ ืืืืขืืช ืืืืืชืจ, ืื ืืื ืืืชืืืช ืจืง ืขืืืจ "Clickhouse"
ืขืืคืจืช: ืืืจื, ืชืืื ืจืื. ืื ื ืืฆืืข ืืกืืื ืืื ืืช ืืฉืืืืช ืืืชืฉืืืืช ืืืืืจ ืืื ืืืื ืฉืฉืืื ืืช ืืฉืืื ื ืืชื ืืช ืืกืคืจ.
YN: โ ืื ื ืจืืฆื ืืชืช ืกืคืจ ืืืื ืืจืืฉืื ืฉืฉืื ืฉืืื.
ืขืืคืจืช: - ื ืคืื! ืืืื! ืืืื! ืชืืื ืจืื!
ืืื ืืืืขืืช ๐
ืชืืื ืฉื ืฉืืจืช ืืืชื ื. ืืื ืืชื ืืืื ืืช ืืืืืจืื ืฉืื ื? ืจืืฆืื ืืจืืืช ืขืื ืชืืื ืืขื ืืื? ืชืืื ืื ื ืขื ืืื ืืืฆืืข ืืืื ื ืื ืืืืฆื ืืืืจืื,
Dell R730xd ืืื ืคื 2 ืืืจืื ืื ืชืื ืื Equinix Tier IV ืืืืกืืจืื? ืจืง ืืื
ืืงืืจ: www.habr.com