当前位置: 首页 > news >正文

ClickHouse开发相关(UDAF)

ClickHouse开发相关(UDAF)

ClickHouse介绍
ClickHouse是一个开源、高性能的列式 OLAP 数据库管理系统,用于使用 SQL 进行实时分析。

为什么需要ClickHouse UDAF?
ClickHouse中已存在了许多聚合函数,绝大多数情况下已经覆盖我们的需求,但是有时候我们仍然需要自定义函数逻辑,去实现复杂的数据分析需求,因此就有了基于ClickHouse中实现自定义函数(UDF)或自定义聚合函数(UDAF)需求,这篇文章我们讲下如何基于ClickHouse实现UDAF。

实现UDAF步骤
源码下载编译运行
实现UDAF
源码下载编译运行(mac系统)
推荐电脑内存配置 >= 16G,CPU核数越多越好,主频越高越好

安装 Homebrew
/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”

…and follow the printed instructions on any additional steps required to complete the installation.

复制代码
安装 Xcode 和命令行工具
从 App Store安装最新的Xcode。 至少打开一次以接受最终用户许可协议并自动安装所需的组件。 然后,确保在系统中安装并选择了最新的命令行工具:

sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install
复制代码
安装所需的编译器、工具和库
brew update
brew install cmake ninja libtool gettext llvm gcc binutils
复制代码
下载ClickHouse源代码
git clone --recursive git@github.com:ClickHouse/ClickHouse.git
复制代码
此方式会下载ClickHouse最新的代码,但是不推荐此方式,因为新代码最新的代码BUG比较多,推荐选择稍微旧点的稳定版本源代码下载。另外ClickHouse的依赖较多,如果只下载主工程,在下载依赖的过程中很可能会因网络问题导致失败,所以推荐在github上直接下载包含所有依赖的源码包,如下图所示 image.png

构建ClickHouse
cd ClickHouse
// 创建构建目录
mkdir build
cd build
// 设置构建参数,KaTeX parse error: Double subscript at position 71: …cmake -DCMAKE_C_̲COMPILER=(brew --prefix llvm)/bin/clang -DCMAKE_CXX_COMPILER= ( b r e w − − p r e f i x l l v m ) / b i n / c l a n g + + − D C M A K E

http://www.lryc.cn/news/332951.html

相关文章:

  • MySql并发事务问题
  • Windows下Docker创建Mysql5.7
  • Redis(性能管理、主从复制、哨兵模式)概述及部署
  • LabVIEW挖坑指南
  • docker容器环境安装记录(MAC M1)(完善中)
  • Linux 常用命令(持续更新中...)
  • xss.pwnfunction-Jefff
  • java——文件上传
  • RCE(远程命令执行)漏洞详解
  • K8S - Deployment 的版本回滚
  • 53 v-bind 和 v-model 的实现和区别
  • VMware-16.0配置虚拟机网络模式
  • element-ui badge 组件源码分享
  • MySQL中日期有关函数
  • jdbc工具类
  • Svelte Web 框架介绍
  • IP地址获取不到的原因是什么?
  • Android APP加固利器:深入了解混淆算法与混淆配置
  • 蓝桥杯真题Day47 倒计时6天:6道真题+回溯递归问题
  • 通过UDP实现参数配置
  • 解析Apache Kafka:在大数据体系中的基本概念和核心组件
  • 独角数卡对接码支付收款教程
  • vuepress-theme-hope 添加谷歌统计代码
  • LabVIEW太赫兹波扫描成像系统
  • 什么是stable diffusion?
  • KeyguardClockSwitch的父类
  • Gradle系列(二):Groovy基础
  • PW1503限流芯片:可达3A限流,保障USB电源管理安全高效
  • 深挖苹果Find My技术,伦茨科技ST17H6x芯片赋予产品功能
  • Web3 革命:揭示区块链技术的全新应用