本文介绍Aerospike的服务器tools去利用aql查询as的数据
具体操作看官网:Aerospike Quick Look (AQL) | Aerospike Documentation
一.安装
首先你要确定服务器的版本,一般都是Linux,那么需要执行
cat /etc/os-release
或
lsb_release -a
这里分为CentOS和Ubantu
前提:必须安装好了Python3,否则后续安装操作就会出现下面的情况
1.Ubantu
步1,其中VERSION要根据要下载的版本去修改,比如4.0.4
wget -O aerospike-tools.tgz https://download.aerospike.com/artifacts/aerospike-tools/VERSION/aerospike-tools_VERSION_ubuntu20.04_x86_64.tgz
步2
tar -xvf aerospike-tools.tgz
步3
cd aerospike-tools_*
步4
sudo ./asinstall
坑1.Ubantu20缺少 libreadline.so.6 库文件
解决方案:
方式1
sudo apt update
sudo apt-get install libreadline6
sudo ln -s /usr/lib/x86_64-linux-gnu/libreadline.so.8 /usr/lib/x86_64-linux-gnu/libreadline.so.6
方式2
sudo apt-get update
sudo apt-get install libreadline6
sudo wget http://archive.ubuntu.com/ubuntu/pool/main/r/readline6/libreadline6_6.3-8ubuntu2_amd64.deb
sudo dpkg -i libreadline6_6.3-8ubuntu2_amd64.deb
ls -l /usr/lib/x86_64-linux-gnu/libreadline.so.6
sudo find / -name "libreadline.so.6*" 找到这个包的位置
sudo ln -s /lib/x86_64-linux-gnu/libreadline.so.6 /usr/lib/x86_64-linux-gnu/libreadline.so.6
坑2.都安装好了,然后aql报错如下
这是因为我们本地没有as服务器,所以我们需要去远端找
aql -h xxx -p 3000
二.AQL如何使用
这里只介绍很简单,常用的操作,其他操作需要进入aql界面,输入help查看,目前官方文档也没有很多教程
show namespaces; # 查看命名空间,相当于mysql的database
show sets; # 查看表
select * fron test.table1; # 查看test空间下的table1表的全部bin的数据
select name fron test.table1; # 查看test空间下的table1表中bin为name的数据
select * fron test.table1 where PK = xxx; # 根据主键PK去查看test空间下的table1表对应的数据
OPERATE MAP_SIZE('url') on test.table1 where PK = '111'; # test.table1的url的字段是一个map,查看PK='111'对应的url的map的size