Lindorm对外提供统一的标准SQL入口,可以让开发人员快速上手,轻松运维海量数据。SearchIndex是Lindorm宽表的二级索引,主要用来帮助业务实现快速的检索分析。本篇文章介绍如何通过简单的SQL接口操作SearchIndex。
对于非主键的查询,一般会消耗非常多的系统资源,为了系统稳定,这样的查询默认会被拒绝掉。如果基于这些非主键创建了二级索引,则可以高效的执行。
创建通达信l2行情接口,数据库
云原生多模通达信l2行情接口,数据库Lindorm,支持海量数据的低成本存储和弹性按需付费,提供宽表、时序、文件等多种数据模型,兼容HBase、Cassandra、OpenTSDB等多种开源标准接口,是互联网、IoT、车联网、广告、社交、监控、游戏、风控等场景的首选通达信l2行情接口,数据库,也是为阿里巴巴核心业务提供关键支撑的通达信l2行情接口,数据库之关于Lindorm的更多介绍,可以参考云原生多模通达信l2行情接口,数据库Lindorm。
其中的公网连接地址、用户名和密码可以在通达信l2行情接口,数据库控制台“通达信l2行情接口,数据库连接”中获取,参见上个章节中的截。备注:需要提前配置好白名单。
当您购买Lindorm宽表引擎后,可以在通达信l2行情接口,数据库实例控制台开通“全文索引”功能,如下:
引言
进入通达信l2行情接口,数据库实例控制台,在“通达信l2行情接口,数据库连接”中下载SQL工具:Lindorm-cli。为了能够让本机可以访问集群,需要“开通外网地址”,并将本机ip加入到白名单中。
创建表
use testSchema;
// 创建一个表,主键为id,非主键为name,age,address
create table if not exists testTable(id varchar, name varchar, age bigint, address varchar, constraint primary key (id));
// 对表的非主键列建索引,其中address是一个分词字段,使用IK分词器
create search index if not exists testIdx on testTable(name,age,address(type=text,analyzer=ik)) with (indexState=ACTIVE);
写入测试数据
upsert into testTable(id,name,age,address) values ('1', '张三', 25, '北京市朝阳区绿地中心c座');
upsert into testTable(id,name,age,address) values ('2', '李四', 30, '上科路张江人工智能岛2号楼');
upsert into testTable(id,name,age,address) values ('3', '王五', 28, '深圳市南山区科苑南路3331号');
upsert into testTable(id,name,age,address) values ('4', '赵六', 36, '杭州市余杭区文一西路969号');
执行SQL语句
SearchIndex是Lindorm宽表的二级索引,当您想加速检索分析的速度时,只需要对表创建索引即可,写入的数据会自动构建索引,查询时服务端会自动路由到索引,整个使用过程对业务代码0侵入。
开通全文索引
连接集群
本文为阿里云原创内容,未经允许不得转载。
SearchIndex在阿里内部以及公有云上有着丰富的应用场景,如果您在面对订单查询、物流轨迹、大数据画像、车联网等场景的业务架构设计,可以尝试将LindormSearchIndex应用到架构中,将会带来开发和存储成本的极大收益。
SQL操作SearchIndex
下载SQL工具
更多SQL语法,可参考语法手册。
查询
select name from testtable where address = '朝阳区' limit 10;
select * from testtable where age > 30 and address = '杭州' limit 10;
select name from testtable where name = '王五' limit 10;
总结
将上一步下载的Lindorm-cli在本机解压后,直接执行如下命令:
./lindorm-cli -url jdbc:lindorm:table:url=http://ld-xxxx-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30060 -username xxx -password xxx
文章为作者独立观点,不代表股票交易接口观点