Kai Lei

159 papers A* 8A 5B 17C 7Misc 1Journal 56Unranked 65
YearRankTypeTitle / Venue / Authors
2026 J jnl
IEEE Trans. Cogn. Commun. Netw.
Jingjing Wang, Jiachi Yan, Ziwei Yan, Rou Wen, Jiansheng Wu, Yakun Ren, Tanren Liu, Xianneng Zou, Kai Lei
2026 J jnl
J. Frankl. Inst.
Kai Lei, Zifu Li, Wenzhi Liu
2025 J jnl
Expert Syst. Appl.
Yuzhi Liang, Weijing Wu, Ruiju Liang, Yixiang Chen, Kai Lei, Guo Zhong, Jingjing Zhang, Qingqing Gan, Jinsheng Huang
2025 conf
NPC (1)
Wenyang Jia, Jingjing Wang, Ziwei Yan, Guohui Yuan, Tanren Liu, Yakun Ren, Kai Lei
2025 J jnl
CoRR
Wenyang Jia, Jingjing Wang, Kai Lei
2025 conf
NPC (1)
Wenyang Jia, Jingjing Wang, Ziwei Yan, Tanren Liu, Kai Lei
2025 B conf
ICNP
Linhan Xia, Mingzhan Yang, Jingjing Wang, Ziwei Yan, Yakun Ren, Guo Yu, Kai Lei
2025 J jnl
CoRR
Linhan Xia, Mingzhan Yang, Jingjing Wang, Ziwei Yan, Yakun Ren, Guo Yu, Kai Lei
2025 Misc conf
ICASSP
Luming Chen, Ziwei Xiang, Kai Lei, Xu-Yao Zhang
2025 conf
KSEM (4)
Linhan Xia, Mingzhan Yang, Guohui Yuan, Shengnan Tao, Yujing Qiu, Guo Yu, Kai Lei
2025 J jnl
CoRR
Linhan Xia, Mingzhan Yang, Guohui Yuan, Shengnan Tao, Yujing Qiu, Guo Yu, Kai Lei
2024 conf
AIMS
Sheng He, Yishuang Ning, Liang-Jie Zhang, Kai Lei
2024 J jnl
Future Gener. Comput. Syst.
Guanjie Lin, Mingyuan Zeng, Zhiguang Shan, Kaishun Wu, Guan Wang, Kai Lei
2024 conf
ICONIP (3)
Ziwei Xiang, Luming Chen, Kai Lei, Xu-Yao Zhang
2023 J jnl
CoRR
Kai Lei, Zhan Chen, Shuman Jia, Xiaoteng Zhang
2023 J jnl
IEEE/ACM Trans. Netw.
Kai Lei, Guanjie Lin, Meimei Zhang, Keke Li, Qi Li, Xiaojun Jing, Peng Wang
2023 B conf
GLOBECOM
Yu Zhou, Shang Gao, Weiwei Qiu, Kai Lei, Bin Xiao
2022 J jnl
J. Supercomput.
Kai Lei, Hao Ye, Junjie Fang, Peiwu Chen, Liangjie Zhang, Jing Xiao
2022 J jnl
IEEE J. Sel. Areas Commun.
Mingpei Cao, Hao Wang, Tailing Yuan, Kun Xu, Kai Lei, Jiaping Wang
2022 A conf
ICDCS
Haotian Wu, Rui Song, Kai Lei, Bin Xiao
2021 J jnl
IEEE Access
Weijing Wu, Yang Deng, Yuzhi Liang, Kai Lei
2021 J jnl
J. Commun. Inf. Networks
Ruibiao Chen, Fangxing Shu, Shuokang Huang, Lei Huang, Huafang Liu, Jin Liu, Kai Lei
2021 J jnl
Peer-to-Peer Netw. Appl.
Meimei Zhang, Jun Luo, Liangjie Zhang, Xiquan Yu, Ting Xu, Kai Lei
2021 J jnl
CoRR
Yuzhi Liang, Weijing Wu, Kai Lei, Feiyang Wang
2021 J jnl
Inf. Sci.
Meng Qin, Kai Lei
2021 J jnl
IEEE Trans. Neural Networks Learn. Syst.
Min Yang, Weiyi Huang, Wenting Tu, Qiang Qu, Ying Shen, Kai Lei
2021 conf
ICC
Kai Lei, Hao Ye, Yuzhi Liang, Jing Xiao, Peiwu Chen
2020 conf
ISPA/BDCloud/SocialCom/SustainCom
Shuokang Huang, Shuai Zhu, Kai Lei, Haiyi Lian, Shouyang Wei
2020 A* conf
AAAI
Yuexiang Xie, Ying Shen, Yaliang Li, Min Yang, Kai Lei
2020 J jnl
J. Grid Comput.
Kai Lei, Junjie Fang, Qichao Zhang, Junjun Lou, Maoyu Du, Jiyue Huang, Jianping Wang, Kuai Xu
2020 J jnl
IEEE Netw.
Kai Lei, Yuzhi Liang, Wei Li
2020 J jnl
Neural Comput. Appl.
Min Yang, Qiang Qu, Ying Shen, Kai Lei, Jia Zhu
2020 conf
APWeb/WAIM (2)
Minxu Zhang, Yingxia Shao, Kai Lei, Yuesheng Zhu, Bin Cui
2020 J jnl
CoRR
Fenglin Liu, Xuancheng Ren, Yuanxin Liu, Kai Lei, Xu Sun
2020 J jnl
Neural Comput. Appl.
Kai Lei, Yuexiang Xie, Shangru Zhong, Jingchao Dai, Min Yang, Ying Shen
2020 J jnl
IEEE Trans. Serv. Comput.
Kai Lei, Maoyu Du, Jiyue Huang, Tong Jin
2020 J jnl
Ad Hoc Networks
Shuokang Huang, Kai Lei
2020 J jnl
Neural Comput. Appl.
Kai Lei, Jin Zhang, Yuexiang Xie, Desi Wen, Daoyuan Chen, Min Yang, Ying Shen
2020 J jnl
Inf. Sci.
Yuzhi Liang, Chen Chen, Yukun Wang, Kai Lei, Min Yang, Ziyu Lyu
2020 A* conf
ACL
Daoyuan Chen, Yaliang Li, Kai Lei, Ying Shen
2020 J jnl
CoRR
Daoyuan Chen, Yaliang Li, Kai Lei, Ying Shen
2020 conf
ISPA/BDCloud/SocialCom/SustainCom
Meimei Zhang, Yingying Xie, Xiang Chen, Bo Bai, Gong Zhang, Kai Lei
2020 conf
ISPA/BDCloud/SocialCom/SustainCom
Shuokang Huang, Maoyu Du, Wei Li, Kai Lei
2020 J jnl
Neurocomputing
Kai Lei, Qiuai Fu, Min Yang, Yuzhi Liang
2020 J jnl
Expert Syst. Appl.
Kai Lei, Bing Zhang, Yu Li, Min Yang, Ying Shen
2019 J jnl
CoRR
Fenglin Liu, Yuanxin Liu, Xuancheng Ren, Kai Lei, Xu Sun
2019 A conf
ICDCS
Kai Lei, Qiuai Fu, Jiake Ni, Feiyang Wang, Min Yang, Kuai Xu
2019 J jnl
IEEE Access
Dong Wang, Bo Bai, Kai Lei, Wenbo Zhao, Yanping Yang, Zhu Han
2019 A* conf
IJCAI
Fenglin Liu, Xuancheng Ren, Yuanxin Liu, Kai Lei, Xu Sun
2019 A* conf
INFOCOM
Kai Lei, Meng Qin, Bo Bai, Gong Zhang, Min Yang
2019 J jnl
CoRR
Kai Lei, Meng Qin, Bo Bai, Gong Zhang, Min Yang
2019 B conf
GLOBECOM
Kai Lei, Junlin Huang, Yu Li, Fan Zhang, Hengky Susanto, Bo Bai, Gong Zhang, Jin Liu
2019 conf
ISPA/BDCloud/SocialCom/SustainCom
Wei Li, Meng Qin, Kai Lei
2019 J jnl
J. Medical Syst.
Ying Shen, Kaiqi Yuan, Jingchao Dai, Buzhou Tang, Min Yang, Kai Lei
2019 J jnl
J. Cheminformatics
Ying Shen, Kaiqi Yuan, Min Yang, Buzhou Tang, Yaliang Li, Nan Du, Kai Lei
2019 J jnl
World Wide Web
Min Yang, Wenting Tu, Qiang Qu, Kai Lei, Xiaojun Chen, Jia Zhu, Ying Shen
2019 A conf
CIKM
Yang Deng, Yaliang Li, Ying Shen, Nan Du, Wei Fan, Min Yang, Kai Lei
2019 B conf
IJCNN
Kai Lei, Qiuai Fu, Yuzhi Liang
2019 A* conf
AAAI
Yang Deng, Yuexiang Xie, Yaliang Li, Min Yang, Nan Du, Wei Fan, Kai Lei, Ying Shen
2019 J jnl
IEEE Trans. Multim.
Min Yang, Wei Zhao, Wei Xu, Yabing Feng, Zhou Zhao, Xiaojun Chen, Kai Lei
2019 J jnl
IEEE Commun. Mag.
Kai Lei, Qichao Zhang, Junjun Lou, Bo Bai, Kuai Xu
2019 B conf
CoNLL
Fenglin Liu, Meng Gao, Yuanxin Liu, Kai Lei
2019 conf
DASFAA (2)
Haobo Sun, Yingxia Shao, Jiawei Jiang, Bin Cui, Kai Lei, Yu Xu, Jiang Wang
2019 conf
ICPCSEE (1)
Jiyue Huang, Kai Lei, Maoyu Du, Hongting Zhao, Huafang Liu, Jin Liu, Zhuyun Qi
2019 conf
HPCC/SmartCity/DSS
Kai Lei, Maoyu Du, Liwei Yang, Jin Liu, Jiyue Huang, Danxia Xie, Kuai Xu
2019 conf
NetAI@SIGCOMM
Meng Qin, Kai Lei, Bo Bai, Gong Zhang
2018 J jnl
CoRR
Kai Lei, Bing Zhang, Yong Liu, Yang Deng, Dongyu Zhang, Ying Shen
2018 conf
NetAI@SIGCOMM
Kai Lei, Meng Qin, Bo Bai, Gong Zhang
2018 J jnl
Knowl. Based Syst.
Meng Qin, Di Jin, Kai Lei, Bogdan Gabrys, Katarzyna Musial-Gabrys
2018 J jnl
IEEE Trans. Ind. Informatics
Kai Lei, Shangru Zhong, Fangxing Zhu, Kuai Xu, Haijun Zhang
2018 J jnl
CoRR
Kai Lei, Shangchun Si, Desi Wen, Ying Shen
2018 J jnl
Sci. China Inf. Sci.
Kai Lei, Lizhu Zhang, Ying Liu, Ying Shen, Chenwei Liu, Qian Yu, WeiTao Weng
2018 J jnl
Artif. Intell. Medicine
Ying Shen, Kaiqi Yuan, Daoyuan Chen, Joël Colloc, Min Yang, Yaliang Li, Kai Lei
2018 J jnl
J. Biomed. Informatics
Ying Shen, Lizhu Zhang, Jin Zhang, Min Yang, Buzhou Tang, Yaliang Li, Kai Lei
2018 conf
INFOCOM Workshops
Yi Zhang, Xiaoke Jiang, Yi Wang, Kai Lei
2018 B conf
COLING
Kai Lei, Daoyuan Chen, Yaliang Li, Nan Du, Min Yang, Wei Fan, Ying Shen
2018 B conf
GLOBECOM
Kai Lei, Keke Li, Jie Xing, Bo Jin, Yi Wang
2018 conf
BIBM
Ying Shen, Kaiqi Yuan, Yaliang Li, Buzhou Tang, Min Yang, Nan Du, Kai Lei
2018 J jnl
J. Biomed. Semant.
Ying Shen, Daoyuan Chen, Buzhou Tang, Min Yang, Kai Lei
2018 A* conf
ICDE
Yingxia Shao, Kai Lei, Lei Chen, Zi Huang, Bin Cui, Zhongyi Liu, Yunhai Tong, Jin Xu
2018 J jnl
Neurocomputing
Min Yang, Qiang Qu, Xiaojun Chen, Chaoxue Guo, Ying Shen, Kai Lei
2018 J jnl
IEEE Access
Ying Shen, Yaliang Li, Yang Deng, Jin Zhang, Min Yang, Jinsong Chen, Shangchun Si, Kai Lei
2018 conf
ICDM Workshops
Ying Shen, Yang Deng, Jin Zhang, Yaliang Li, Nan Du, Wei Fan, Min Yang, Kai Lei
2018 conf
NetAI@SIGCOMM
Yi Zhang, Bo Bai, Kuai Xu, Kai Lei
2018 B conf
NOMS
Sheng Luo, Shangru Zhong, Kai Lei
2018 conf
ICISA
Ying Shen, Qiang Zhang, Jin Zhang, Jiyue Huang, Yuming Lu, Kai Lei
2018 J jnl
CoRR
Ying Shen, Qiang Zhang, Jin Zhang, Jiyue Huang, Yuming Lu, Kai Lei
2018 A conf
SDM
Min Yang, Qiang Qu, Kai Lei, Jia Zhu, Zhou Zhao, Xiaojun Chen, Joshua Zhexue Huang
2018 B conf
COLING
Yang Deng, Ying Shen, Min Yang, Yaliang Li, Nan Du, Wei Fan, Kai Lei
2018 A* conf
SIGIR
Ying Shen, Yang Deng, Min Yang, Yaliang Li, Nan Du, Wei Fan, Kai Lei
2018 conf
INFOCOM Workshops
Kai Lei, Jie Xing, Yi Wang, Keke Li, Dong Lin
2018 conf
ICC
Kai Lei, Keke Li, Junlin Huang, Weichao Li, Jie Xing, Yi Wang
2018 conf
KSEM (1)
Kai Lei, Kaiqi Yuan, Qiang Zhang, Ying Shen
2018 J jnl
CoRR
Kai Lei, Kaiqi Yuan, Qiang Zhang, Ying Shen
2018 J jnl
CoRR
Yang Deng, Yuexiang Xie, Yaliang Li, Min Yang, Nan Du, Wei Fan, Kai Lei, Ying Shen
2018 B conf
ICPADS
Yu Li, Xuewei Piao, Haijun Zhang, Kai Lei
2018 A* conf
SIGIR
Ying Shen, Daoyuan Chen, Min Yang, Yaliang Li, Nan Du, Kai Lei
2018 B conf
ICPADS
Kai Lei, Yingying Xie, Jian Shi, Haijun Zhang, Gong Zhang, Bo Bai
2018 B conf
ICPADS
Kai Lei, Qichao Zhang, Limei Xu, Zhuyun Qi
2018 conf
ICONIP (7)
Kai Lei, Jiyue Huang, Shangchun Si, Ying Shen
2018 J jnl
IEEE Access
Kai Lei, Ying Liu, Shangru Zhong, Yongbin Liu, Kuai Xu, Ying Shen, Min Yang
2018 J jnl
CoRR
Yang Deng, Yaliang Li, Nan Du, Wei Fan, Ying Shen, Kai Lei
2017 conf
SmartCom
Kai Lei, Bing Zhang, Yong Liu, Yang Deng, Dongyu Zhang, Ying Shen
2017 conf
ISPA/IUCC
Ye Zhang, Jiawei Wang, Lirui Gong, Jie Yuan, Kai Lei
2017 conf
ISPA/IUCC
Shangru Zhong, Yongbin Liu, Junmao Li, Kai Lei
2017 conf
ICC
Shangru Zhong, Weiyang Zhang, Qiang Zhang, Kai Lei
2017 conf
SmartCom
Lei Huang, Li Liu, Jiayu Chen, Kai Lei
2017 conf
VTC Spring
Yizhe Zheng, Xuewei Piao, Kai Lei
2017 conf
ICUFN
Tong Jin, Xiang Zhang, Yirui Liu, Kai Lei
2017 conf
ICSAI
Yukun Wang, Kai Lei, Jincheng Wu, Xiaohui Huang, Yuming Lu
2017 J jnl
IEEE Trans. Knowl. Data Eng.
Yingxia Shao, Kai Lei, Lei Chen, Zi Huang, Bin Cui, Zhongyi Liu, Yunhai Tong, Jin Xu
2017 conf
WWW (Companion Volume)
Shibo Tao, Xiaorong Wang, Weijing Huang, Wei Chen, Tengjiao Wang, Kai Lei
2017 J jnl
ACM Trans. Inf. Syst.
Jiawei Jiang, Yunhai Tong, Hua Lu, Bin Cui, Kai Lei, Lele Yu
2017 conf
CyberC
Jiake Ni, WeiTao Weng, Jiayu Chen, Kai Lei
2017 conf
BigDataSecurity/HPSC/IDS
Wei Kang, Shun Li, Wei Chen, Kai Lei, Tengjiao Wang
2017 conf
ISCID (2)
Kai Lei, Yang Deng, Bing Zhang, Ying Shen
2017 conf
BigDataSecurity/HPSC/IDS
Linqing Yang, Shun Li, Wei Chen, Kai Lei, Tengjiao Wang
2017 conf
SmartCom
Feiyang Wang, Dongyu Zhang, Yuming Lu, Kai Lei
2017 conf
ISPA/IUCC
Kai Lei, Mingye Bao, Yi Wang, Dong Lin
2017 conf
ACM TUR-C
Yi Wang, Zhuyun Qi, Kai Lei, Bin Liu, Chen Tian
2017 C conf
ISCC
Qiang Zhang, Chenwei Liu, Shangru Zhong, Kai Lei
2017 conf
ANCS
Yi Wang, Zhuyun Qi, Huichen Dai, Hao Wu, Kai Lei, Bin Liu
2017 conf
SmartCom
Chen Chen, Zhuyun Qi, Yirui Liu, Kai Lei
2016 conf
CyberC
Yongbin Liu, Xuewei Piao, Chaojun Hou, Kai Lei
2016 C conf
PDCAT
Limei Xu, Yining Ma, Kai Lei
2016 B conf
ICPADS
Jian Shi, Xuewei Piao, Lihua Li, Yunbo Xun, Kai Lei
2016 conf
UEMCON
Xiang Zhang, Lirui Gong, Yunbo Xun, Xuewei Piao, Kai Lei
2016 conf
PAKDD (2)
Yuxiao Zhang, Xiaorong Wang, Bingyang Li, Wei Chen, Tengjiao Wang, Kai Lei
2016 conf
ICC
Chenwei Liu, Jiawei Wang, Kai Lei
2016 conf
Trustcom/BigDataSE/ISPA
Lirui Gong, Jiawei Wang, Xiang Zhang, Kai Lei
2016 conf
WAIM (1)
WeiTao Weng, Kai Lei, Kuai Xu, Xiaoyou Liu, Tao Sun
2016 conf
PAKDD (2)
Biwei Liang, Tengjiao Wang, Shun Li, Wei Chen, Hongyan Li, Kai Lei
2016 conf
UEMCON
Xuewei Piao, Lei Huang, Kaiqi Yuan, Jie Yuan, Kai Lei
2015 conf
CyberC
Kai Lei, Chaojun Hou, Lihua Li, Kuai Xu
2015 A conf
CIKM
Ruhui Wang, Weijing Huang, Wei Chen, Tengjiao Wang, Kai Lei
2015 conf
WAIM
Di Wu, Tengjiao Wang, Yuxin Chen, Shun Li, Hongyan Li, Kai Lei
2015 conf
ICC
Kai Lei, Jiawei Wang, Jie Yuan
2015 J jnl
J. Biomed. Informatics
Ying Shen, Joël Colloc, Armelle Jacquet-Andrieu, Kai Lei
2015 conf
ICC
Kai Lei, Weiyang Zhang, Kai Zhang, Kuai Xu
2015 B conf
GLOBECOM
Kai Lei, Jie Yuan, Jiawei Wang
2015 B conf
ICPP
Kai Lei, Fangxing Zhu, Cheng Peng, Kuai Xu
2015 conf
WAIM
Changhe Qiu, Wei Chen, Tengjiao Wang, Kai Lei
2015 conf
ICC
Huiyu Wang, Kai Lei, Kuai Xu
2014 C conf
APWeb
Wenjing Liao, Tengjiao Wang, Hongyan Li, Dongqing Yang, Zhen Qiu, Kai Lei
2014 C conf
IPCCC
Tao Chen, Kai Lei, Kuai Xu
2014 conf
WAIM
Kai Zhang, Qian Yu, Kai Lei, Kuai Xu
2014 conf
CSE
Kai Lei, Tao Chen, Chen Peng, Zhi Tan
2014 C conf
IPCCC
Qian Yu, WeiTao Weng, Kai Zhang, Kai Lei, Kuai Xu
2014 conf
CSE
Kai Lei, Yining Ma, Zhi Tan
2014 conf
WAIM
Peng Liu, Wei Chen, Gaoyan Ou, Tengjiao Wang, Dongqing Yang, Kai Lei
2014 C conf
APWeb
Jiayi Wu, Wei Chen, Gaoyan Ou, Tengjiao Wang, Dongqing Yang, Kai Lei
2013 conf
WAIM
Gaoyan Ou, Wei Chen, Peng Liu, Tengjiao Wang, Dongqing Yang, Kai Lei, Yueqin Liu
2013 B conf
IJCNN
Wei Chen, Tengjiao Wang, Dongqing Yang, Kai Lei, Yueqin Liu
2013 conf
IEEE BigData
Xianxia Huang, Hui Li, Tai Zhou, Yumeng Zhang, Han Guo, Hanxu Hou, Huayu Zhang, Kai Lei
2013 C conf
KSEM
Kai Lei, Sibo Wang, Weiwei Song, Qilin Li
2013 B conf
GLOBECOM
Kai Lei, Kai Zhang, Kuai Xu
2012 conf
FSKD
Chunyang Wei, Hongyan Li, Kai Lei, Tengjiao Wang
2012 conf
FSKD
JunWen Ji, Yue Wang, Kai Lei, Tengjiao Wang
2011 J jnl
CoRR
Lingfei Wu, Jiang Zhang, Jonathan J. H. Zhu, Kai Lei, Qian Mo
notebooks/redb-clickhouse-TEST.ipynb
← Index notebooks/redb-clickhouse-TEST.ipynb plaintext
Truncated preview: showing the first 16384 bytes out of 5988848 total.
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Definitions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "import clickhouse_connect"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "\n",
    "ch_TEST_client = clickhouse_connect.get_client(host='e.rationaledge.io', port=443, username='default', password='werioubTGwvf0-dsbv_', database='redb', verify=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "ch_TEST_BETA_client = clickhouse_connect.get_client(host='k.rationaledge.io', port=443, username='default', password='werioubTGwvf0-dsbv_', database='default', verify=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<bound method HttpClient.close_connections of <clickhouse_connect.driver.httpclient.HttpClient object at 0x105fd64d0>>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ch_TEST_BETA_client.close_connections"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<clickhouse_connect.driver.summary.QuerySummary at 0x11f900810>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ch_TEST_BETA_client.command(\"\"\"\n",
    "RENAME DATABASE redb TO orig_redb;\n",
    "\"\"\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## DB Creation (schema 2025-08-02)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "ch_TEST_client.command(\"\"\"\n",
    "CREATE DATABASE IF NOT EXISTS redb;\n",
    "\"\"\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define General Tables"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "### CREATE FULL REDB DATABASE\n",
    "def create_redb_with_all_tables(client):\n",
    "    client.command(\"\"\"\n",
    "        CREATE DATABASE IF NOT EXISTS redb\n",
    "    \"\"\")\n",
    "    create_all_general_tables(client)\n",
    "    create_all_pe_tables(client)\n",
    "\n",
    "#### CREATE FULL TABLES\n",
    "def create_all_general_tables(client):\n",
    "    create_basic_properties_dbtable(client)\n",
    "    create_hashes_dbtable(client)\n",
    "    create_capa_dbtable(client)\n",
    "    create_die_dbtable(client)\n",
    "    create_extra_findings_dbtable(client)\n",
    "\n",
    "\n",
    "##################################\n",
    "#### CREATE INDIVIDUAL TABLES ####\n",
    "##################################\n",
    "\n",
    "#### GENERAL TABLES ####\n",
    "# All tables have SETTINGS index_granularity = 8192\n",
    "def create_basic_properties_dbtable(client):\n",
    "    # Create samples_metadata table\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_basic_properties (\n",
    "            sha256 FixedString(64), -- primary key\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            filename Nullable(String),\n",
    "            sample_name String,\n",
    "            filesize UInt64,\n",
    "            file_entropy Float64,\n",
    "            filetype LowCardinality(String),\n",
    "            filetype_mime LowCardinality(String),\n",
    "            filetype_magika LowCardinality(String),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "def create_hashes_dbtable(client):\n",
    "    # Create hashes table\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_hashes (\n",
    "            sha256 FixedString(64), -- primary key\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            ssdeep_hash Nullable(String),\n",
    "            tlsh_hash Nullable(String),\n",
    "            authentihash Nullable(String),\n",
    "            imphash Nullable(String),\n",
    "            impfuzzy Nullable(String),\n",
    "            typerefhash Nullable(String),\n",
    "            richhash Nullable(String),\n",
    "            richpe_hash Nullable(String),\n",
    "            richpv_hash Nullable(String),\n",
    "            richpv_hash_sorted Nullable(String),\n",
    "            dhash Nullable(String),\n",
    "            analysis_date DateTime64(3, 'UTC')\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "def create_capa_dbtable(client):\n",
    "    # Create sample_capabilities table\n",
    "    client.command(\"\"\"\n",
    "        SET enable_json_type = 1;\n",
    "    \"\"\")\n",
    "    client.command(\"\"\"\n",
    "        -- Base table for CAPA analysis results\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            -- Store full JSON dumps as strings for flexibility\n",
    "            capa_dump JSON CODEC(ZSTD(3)),\n",
    "            attack_dump JSON CODEC(ZSTD(3)),\n",
    "            mbc_dump JSON CODEC(ZSTD(3))\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY sha256;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for capabilities and namespaces\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_capabilities (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            namespace LowCardinality(String),\n",
    "            capability LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, namespace, capability);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for capability statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_capabilities_stats (\n",
    "            namespace LowCardinality(String),\n",
    "            capability LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (namespace, capability)\n",
    "        AS SELECT\n",
    "            namespace,\n",
    "            capability,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_capabilities\n",
    "        GROUP BY namespace, capability;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for MITRE ATT&CK mappings\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_attack (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            tactic LowCardinality(String),\n",
    "            technique LowCardinality(String),\n",
    "            technique_id LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, tactic, technique_id);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for ATT&CK statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_attack_stats (\n",
    "            tactic LowCardinality(String),\n",
    "            technique LowCardinality(String),\n",
    "            technique_id LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (tactic, technique_id)\n",
    "        AS SELECT\n",
    "            tactic,\n",
    "            technique,\n",
    "            technique_id,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_attack\n",
    "        GROUP BY tactic, technique, technique_id;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for MBC mappings\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_mbc (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            objective LowCardinality(String),\n",
    "            behavior LowCardinality(String),\n",
    "            behavior_id LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, objective, behavior_id);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for MBC statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_mbc_stats (\n",
    "            objective LowCardinality(String),\n",
    "            behavior LowCardinality(String),\n",
    "            behavior_id LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (objective, behavior_id)\n",
    "        AS SELECT\n",
    "            objective,\n",
    "            behavior,\n",
    "            behavior_id,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_mbc\n",
    "        GROUP BY objective, behavior, behavior_id;\n",
    "    \"\"\")\n",
    "\n",
    "def create_die_dbtable(client):\n",
    "    # Create sample_die table\n",
    "    client.command(\"\"\"\n",
    "        SET enable_json_type = 1;\n",
    "    \"\"\")\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_die (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            die_info JSON CODEC(ZSTD(3)),\n",
    "            analysis_date DateTime64(3, 'UTC')\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        CREATE MATERIALIZED VIEW redb_die_mv\n",
    "        (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            compiler LowCardinality(Nullable(String)),\n",
    "            compiler_full Nullable(String),\n",
    "            format LowCardinality(Nullable(String)),\n",
    "            format_full Nullable(String),\n",
    "            installer LowCardinality(Nullable(String)),\n",
    "            installer_full Nullable(String),\n",
    "            joiner LowCardinality(Nullable(String)),\n",
    "            joiner_full Nullable(String),\n",
    "            language LowCardinality(Nullable(String)),\n",
    "            language_full Nullable(String),\n",
    "            library LowCardinality(Nullable(String)),\n",
    "            library_full Nullable(String),\n",
    "            linker LowCardinality(Nullable(String)),\n",
    "            linker_full Nullable(String),\n",
    "            operation_system LowCardinality(Nullable(String)),\n",
    "            operation_system_full Nullable(String),\n",
    "            packer LowCardinality(Nullable(String)),\n",
    "            packer_full Nullable(String),\n",
    "            protector LowCardinality(Nullable(String)),\n",
    "            protector_full Nullable(String),\n",
    "            sfx LowCardinality(Nullable(String)),\n",
    "            sfx_full Nullable(String),\n",
    "            sign_tool LowCardinality(Nullable(String)),\n",
    "            sign_tool_full Nullable(String),\n",
    "            stub LowCardinality(Nullable(String)),\n",
    "            stub_full Nullable(String),\n",
    "            tool LowCardinality(Nullable(String)),\n",
    "            tool_full Nullable(String),   \n",
    "            -- overlay JSON CODEC(ZSTD(3)),\n",
    "            -- resource JSON CODEC(ZSTD(3)),\n",
    "            has_overlay UInt8,\n",
    "            has_resources UInt8,\n",
    "            is_packed UInt8\n",
    "        )\n",
    "        ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256)\n",
    "        POPULATE\n",
    "        AS SELECT\n",
    "            sha256,\n",
    "            md5,\n",
    "            sha1,\n",
    "            analysis_date,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'compiler'), '') AS compiler,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'compiler(full)'), '') AS compiler_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'format'), '') AS format,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'format(full)'), '') AS format_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'installer'), '') AS installer,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'installer(full)'), '') AS installer_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'joiner'), '') AS joiner,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'joiner(full)'), '') AS joiner_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'language'), '') AS language,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'language(full)'), '') AS language_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'library'), '') AS library,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'library(full)'), '') AS library_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'linker'), '') AS linker,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'linker(full)'), '') AS linker_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'operation_system'), '') AS operation_system,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'operation_system(full)'), '') AS operation_system_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'packer'), '') AS packer,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'packer(full)'), '') AS packer_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'protector'), '') AS protector,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'protector(full)'), '') AS protector_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sfx'), '') AS sfx,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sfx(full)'), '') AS sfx_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sign_tool'), '') AS sign_tool,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sign_tool(full)'), '') AS sign_tool_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'stub'), '') AS stub,\n",
    "            nullIf(JSONExtractString(toString(die_info),