INFINI Easysearch
INFINI Easysearch 是一款由极限科技研发的分布式近实时搜索型数据库。极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。目前,极限科技已获得24项软件著作权,4项专利,以及13项认证。
INFINI Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。 Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10 版本。 Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能。 与 Elasticsearch 相比,Easysearch 更关注在搜索业务场景的优化和继续保持其产品的简洁与易用性。
- 2023.09.13, INFINI Easysearch 在墨天轮中国搜索型数据库排名中荣登榜首
- 2023.07.04, INFINI Easysearch 产品荣获中国信通院颁布《搜索型数据库基础能力专项评测证书》
- 2023.05.15, INFINI Easysearch 正式发布
相关产品
INFINI Console 一款非常轻量级、功能强大的多集群、跨版本的 Elasticsearch 统一管控平台。通过对 Elasticsearch 跨版本多集群的集中纳管,我们可以快速方便的对企业内部的所有 Elasticsearch 集群进行统一管理。
极限网关 (INFINI Gateway) 是一个面向 Elasticsearch 的高性能应用网关,一般将网关部署在 Elasticsearch 集群前面, 将以往直接发送给 Elasticsearch 的请求都发送给网关,再由网关转发给请求到后端的 Elasticsearch 集群。网关包含丰富的特性,比如索引级别的限速限流、常见查询的缓存加速、查询请求的审计、查询结果的动态修改等等。
Docker 环境下使用 Easysearch
拉取并运行 Easysearch 容器。这里指定初始密码为 xxx
podman pull infinilabs/easysearch:1.8.3-265 echo EASYSEARCH_INITIAL_ADMIN_PASSWORD=xxx > .env podman run --name easysearch --env-file ./.env -p 9200:9200 0a2fa7659767
复制
验证运行状态
curl -ku admin:xxx https://localhost:9200
复制
{ "name" : "node-1", "cluster_name" : "infinilabs", "cluster_uuid" : "eax6HjOdSh6vVQROBxfX0w", "version" : { "distribution" : "easysearch", "number" : "1.8.3", "distributor" : "INFINI Labs", "build_hash" : "6127bfe973a3d41f2f237a725697a1f00aa4d015", "build_date" : "2024-08-09T06:53:51.621463Z", "build_snapshot" : false, "lucene_version" : "8.11.2", "minimum_wire_lucene_version" : "7.7.0", "minimum_lucene_index_compatibility_version" : "7.7.0" }, "tagline" : "You Know, For Easy Search!" }
复制
查看用户自进行的自定义设置
curl -ku admin:xxx https://localhost:9200/_cluster/settings
复制
{ "persistent": { "index_state_management": { "template_migration": { "control": "-1" } } }, "transient": {} }
复制
Easysearch 用户授权
下面演示如何设定 基于角色的访问控制 (RBAC)
- 创建角色
myrole
角色:定义操作的权限或范围:集群、索引、文档或字段。
curl -X PUT -H "Content-Type: application/json" \ -ku admin:xxx "https://localhost:9200/_security/role/myrole" -d' { "cluster": ["cluster_composite_ops","indices_monitor"], "indices": [ { "names":[ "movies*" ], "query":"", "field_security":[ ], "field_mask":[ ], "privileges":[ "read" ] } ] }'
复制
{"status":"CREATED","message":"'myrole' created."}
复制
- 查看角色
curl -sku admin:xxx https://localhost:9200/_security/role/myrole | jq
复制
{ "myrole": { "reserved": false, "hidden": false, "cluster": [ "cluster_composite_ops", "indices_monitor" ], "indices": [ { "names": [ "movies*" ], "query": "", "field_security": [], "field_mask": [], "privileges": [ "read" ] } ], "static": false } }
复制
- 创建用户
myuser
curl -X PUT -H "Content-Type: application/json" \ -ku admin:xxx "https://localhost:9200/_security/user/myuser" -d' { "password": "myuser", "roles": ["myrole"], "attributes": { "attribute1": "value1", "attribute2": "value2" } }'
复制
{"status":"CREATED","message":"'myuser' created."}
复制
- 查看用户
curl -sku admin:xxx https://localhost:9200/_security/user/myuser | jq
复制
{ "myuser": { "hash": "", "reserved": false, "hidden": false, "external_roles": [], "attributes": { "attribute1": "value1", "attribute2": "value2" }, "roles": [ "myrole" ], "static": false } }
复制
小结
关于 INFINI Easysearch 的内容先简单介绍到这里。更多内容可参考官方文档。
http://infinilabs.cn/docs/latest/easysearch/overview/
文章被以下合辑收录
评论
