git clone https://github.com/influxdata/influxdb_iox.git
根据readme
文件中的的描述,项目依赖两个基础环境,分别是rust
和clang
。
rust
是使用rustup
来进行版本管理的。默认的情况下,会为你安装最后的stable
版本,但是IOx项目为了使用不太稳定的SIMD
特性,从而达到更高的性能,所以在rust-toolchain
文件中指定了一个nightly
的版本。
rust
安装脚本:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
测试版本号:
rustc --version
rustc 1.51.0 (2fd73fabe 2021-03-23)
cd influxdb_iox
rustc --version
rustc 1.50.0-nightly (825637983 2020-11-18)
clang
安装安装clang
是为了编译croaring
这个依赖(RoaringBitmap
,根据查询语句进行逐列查询的时候使用),安装脚本根据系统的不同。
mac:
xcode-select --install
clang --version
Apple clang version 12.0.0 (clang-1200.0.32.29)
Target: x86_64-apple-darwin20.3.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
我个人使用的goland
,感觉相比于IDEA
要速度更快一些。
GoLand
下载:https://www.jetbrains.com/go/Toml
插件: https://plugins.jetbrains.com/plugin/8195-tomlRust
插件: https://plugins.jetbrains.com/plugin/8182-rust当全部完成后,你可以在IDE的右侧看到如下截图:
你也可以在命令行中执行:
cargo build
具体速度快慢就要看命了,网络至少需要访问github、crates.io
打开src/main.rs
文件,然后右键-->Run. 在运行之后,在命令行里会提示一个错误,然后退出。原因是我们并没有输入系统可以识别的启动命令。
打开启动配置页面,在command中贴入,
run --package influxdb_iox --bin influxdb_iox run
然后就能看到程序启动成功的提示:
祝玩儿的开心!