基于 INFINI Pizza 为 Hugo 静态站点添加搜索功能
INFINI Pizza 是 INFINI Labs 即将发布的一个基于 Rust 编写的搜索引擎(即将完全开源),目前已经完成基本的搜索能力,并且基于 INFINI Pizza 的核心引擎,提供了一个 WASM 版本的超轻量级内核,可以很方便的嵌入到各类应用系统,比如网站,尤其是静态站点或者小型的博客系统等。
目前 Pizza 和 INFINI Labs 官网已经集成了 INFINI Pizza for WebAssembly,具体的搜索效果如下图:
打开上面的网站(https://infinilabs.cn),通过按下快捷 s
即可调出搜索框,然后就可以体验到 INFINI Pizza 提供的搜索能力。值得特别提出的是,在搜索的过程你所有的操作都是在浏览器本地执行,也就是不会像传统的搜索实现方式那样,需要每次输入一个查询条件都会和后端的搜索服务器进行一次交互,相比之下, INFINI Pizza for WebAssembly 则是完全离线操作,即使断网,也能愉快的搜索。
废话不多说,接下来为大家介绍一下如何在你自己的站点来使用 INFINI Pizza for WebAssembly。
首先,INFINI Pizza for WebAssembly 是开源的,Github 地址在这里:https://github.com/infinilabs/pizza-wasm 编译好的 WASM 包在这里可以直接下载:https://github.com/infinilabs/pizza-wasm/tree/main/pkg
➜ wasm git:(main) ✗ du -sh pkg/*
4.0K pkg/README.md
4.0K pkg/package.json
4.0K pkg/pizza_wasm.d.ts
4.0K pkg/pizza_wasm.js
12K pkg/pizza_wasm_bg.js
580K pkg/pizza_wasm_bg.wasm
4.0K pkg/pizza_wasm_bg.wasm.d.ts
256K pkg/pizza_wasm_bg.wasm.gz
可以看到,WASM 的包只有 500 多 KB,通过 Gzip 压缩之后,只有 200 多 KB,比较轻量级。
Pizza-WASM 是 INFINI Pizza 核心引擎的 WebAssembly 接口封装,只对外暴露了几个简单的访问接口,对于目前的前端搜索应用足够了,在 https://github.com/infinilabs/pizza-wasm/tree/main/web 里面有一个非常简单的 WASM 方法调用的例子,可以简单进行了解。
当然,只是有 Pizza 的 WASM 还是不够的,我们如果要在现有的静态站点上添加搜索框的,还需要考虑数据怎么来,结果如何展现,所以针对这个场景,我们封装好了一个 Pizza-DocSearch 的一个项目,可以直接进一步简化使用,项目也是开源的,Github 地址是:https://github.com/infinilabs/pizza-docsearch
由于示例项目里面默认已经将编译好的代码和样例上传了,我们直接下载这个源代码并本地进行功能预览:
➜ /tmp git clone https://github.com/infinilabs/pizza-docsearch.git
Cloning into 'pizza-docsearch'...
remote: Enumerating objects: 174, done.
remote: Counting objects: 100% (174/174), done.
remote: Compressing objects: 100% (112/112), done.
remote: Total 174 (delta 86), reused 147 (delta 59), pack-reused 0 (from 0)
Receiving objects: 100% (174/174), 941.94 KiB | 1.20 MiB/s, done.
Resolving deltas: 100% (86/86), done.
➜ /tmp cd pizza-docsearch/example/dist
➜ dist git:(main) python3 -m http.server 8083
Serving HTTP on :: port 8083 (http://[::]:8083/) ...
打开浏览器,并访问:http://localhost:8083,如下:
观察浏览器的网络请求,可以看到会加载示例的 index.json 数据:
实际的情况,如果是我们自己的静态网站或者是博客,只有保证网站根目录有这个文件及相应的格式,即可快速将这个你看到的搜索功能集成到你自己的网站上去。OK,功能验证完毕了,我们开始集成到我们的站点吧。
Pizza/INFINI Labs 的官网,使用的 Hugo 来静态生成的,index.json 文件不需要手动生成,首先我们需要让 Hugo 生成 JSON 格式的内容,这个是 Hugo 自带的能力,我们需要修改 Hugo 项目的配置:
将 outputs 参数这里新增一个 JSON 的输出,然后我们在主题的模版里面再定义一下 JSON 输出的格式模版:
文本格式的内容如下,方便复制粘贴,保存文件名为 index.json
:
{{- $index := slice -}}
{{- range where .Site.RegularPages.ByDate.Reverse "Type" "not in" (slice "page" "json") -}}
{{- $index = $index | append (dict "title" (.Title | plainify) "url" .Permalink "tags" .Params.tags "category" .Params.category "subcategory" .Params.subcategory "summary" (.Params.Summary | markdownify | plainify) "content" (.Content | markdownify | plainify)) -}}
{{- end -}}
{{- $index | jsonify -}}
OK,接下来就是将站点内每篇文章或者博客的元数据里面加上我们上面已经用到了的标签:
OK, 启动 Hugo 站点:
| EN
-------------------+------
Pages | 181
Paginator pages | 5
Non-page files | 0
Static files | 110
Processed images | 0
Aliases | 52
Sitemaps | 1
Cleaned | 0
Built in 323 ms
Watching for changes in /Users/medcl/Documents/rust/pizza/website/{assets,content.en,static,themes}
Watching for config changes in /Users/medcl/Documents/rust/pizza/website/config.yaml
Environment: "development"
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at //localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop
打开 Hugo 的站点地址,并尝试访问 http://localhost:1313/index.json
, 应该就可以访问到这个 JSON 文件了:
至此,数据准备完毕,接下来我们集成前端搜索控件。
还记得我们之前从 Pizza-docsearch 下载的资源文件么,我们主要用到 assets
里面的 3 个文件:
/tmp/pizza-docsearch/example/dist
➜ dist git:(main) tree
.
├── assets
├── index-C1z1vz3D.css
├── index-D_gOo737.js
└── pizza_wasm_bg-BRCuviY_.wasm
├── index.html
└── index.json
1 directory, 5 files
➜ dist git:(main)
打开 index.html 文件,我们可以看到里面的内容如下:
拷贝这个 assets 目录文件到我们的 Hugo 站点,位置如下:
然后修改 Hugo 的主题模版,在所有页面的头模版 html-head.html
里面增加一段代码来加载我们的 CSS 样式文件:
然后继续修改 Hugo 的主题模版文件,在所有页面的页脚模版,增加一段代码来加载 JS 脚本文件:
然后,在页面模版的适当位置,插入一下 Docsearch 的一段标签,用于放置搜索框,如图:
至此,大功告成!
打开浏览器即可看到最终效果:
最后,总结一下,借助 INFINI Pizza Docsearch 的 3 个小文件,只需 3 行代码,你可以在 5 分钟内为你的静态站点添加一个轻量级的离线搜索功能,快去试试吧。
相关链接:
交流群
📢 对 Pizza,Rust,Wasm 搜索引擎感兴趣的朋友可以加这个群~👇,如果加不进群可微信添加小助手(INFINI-labs)拉您入群。
关于极限科技(INFINI Labs)
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
INFINI Pizza 是 INFINI Labs 即将发布的一个基于 Rust 编写的搜索引擎(即将完全开源),目前已经完成基本的搜索能力,并且基于 INFINI Pizza 的核心引擎,提供了一个 WASM 版本的超轻量级内核,可以很方便的嵌入到各类应用系统,比如网站,尤其是静态站点或者小型的博客系统等。
目前 Pizza 和 INFINI Labs 官网已经集成了 INFINI Pizza for WebAssembly,具体的搜索效果如下图:
打开上面的网站(https://infinilabs.cn),通过按下快捷 s
即可调出搜索框,然后就可以体验到 INFINI Pizza 提供的搜索能力。值得特别提出的是,在搜索的过程你所有的操作都是在浏览器本地执行,也就是不会像传统的搜索实现方式那样,需要每次输入一个查询条件都会和后端的搜索服务器进行一次交互,相比之下, INFINI Pizza for WebAssembly 则是完全离线操作,即使断网,也能愉快的搜索。
废话不多说,接下来为大家介绍一下如何在你自己的站点来使用 INFINI Pizza for WebAssembly。
首先,INFINI Pizza for WebAssembly 是开源的,Github 地址在这里:https://github.com/infinilabs/pizza-wasm 编译好的 WASM 包在这里可以直接下载:https://github.com/infinilabs/pizza-wasm/tree/main/pkg
➜ wasm git:(main) ✗ du -sh pkg/*
4.0K pkg/README.md
4.0K pkg/package.json
4.0K pkg/pizza_wasm.d.ts
4.0K pkg/pizza_wasm.js
12K pkg/pizza_wasm_bg.js
580K pkg/pizza_wasm_bg.wasm
4.0K pkg/pizza_wasm_bg.wasm.d.ts
256K pkg/pizza_wasm_bg.wasm.gz
可以看到,WASM 的包只有 500 多 KB,通过 Gzip 压缩之后,只有 200 多 KB,比较轻量级。
Pizza-WASM 是 INFINI Pizza 核心引擎的 WebAssembly 接口封装,只对外暴露了几个简单的访问接口,对于目前的前端搜索应用足够了,在 https://github.com/infinilabs/pizza-wasm/tree/main/web 里面有一个非常简单的 WASM 方法调用的例子,可以简单进行了解。
当然,只是有 Pizza 的 WASM 还是不够的,我们如果要在现有的静态站点上添加搜索框的,还需要考虑数据怎么来,结果如何展现,所以针对这个场景,我们封装好了一个 Pizza-DocSearch 的一个项目,可以直接进一步简化使用,项目也是开源的,Github 地址是:https://github.com/infinilabs/pizza-docsearch
由于示例项目里面默认已经将编译好的代码和样例上传了,我们直接下载这个源代码并本地进行功能预览:
➜ /tmp git clone https://github.com/infinilabs/pizza-docsearch.git
Cloning into 'pizza-docsearch'...
remote: Enumerating objects: 174, done.
remote: Counting objects: 100% (174/174), done.
remote: Compressing objects: 100% (112/112), done.
remote: Total 174 (delta 86), reused 147 (delta 59), pack-reused 0 (from 0)
Receiving objects: 100% (174/174), 941.94 KiB | 1.20 MiB/s, done.
Resolving deltas: 100% (86/86), done.
➜ /tmp cd pizza-docsearch/example/dist
➜ dist git:(main) python3 -m http.server 8083
Serving HTTP on :: port 8083 (http://[::]:8083/) ...
打开浏览器,并访问:http://localhost:8083,如下:
观察浏览器的网络请求,可以看到会加载示例的 index.json 数据:
实际的情况,如果是我们自己的静态网站或者是博客,只有保证网站根目录有这个文件及相应的格式,即可快速将这个你看到的搜索功能集成到你自己的网站上去。OK,功能验证完毕了,我们开始集成到我们的站点吧。
Pizza/INFINI Labs 的官网,使用的 Hugo 来静态生成的,index.json 文件不需要手动生成,首先我们需要让 Hugo 生成 JSON 格式的内容,这个是 Hugo 自带的能力,我们需要修改 Hugo 项目的配置:
将 outputs 参数这里新增一个 JSON 的输出,然后我们在主题的模版里面再定义一下 JSON 输出的格式模版:
文本格式的内容如下,方便复制粘贴,保存文件名为 index.json
:
{{- $index := slice -}}
{{- range where .Site.RegularPages.ByDate.Reverse "Type" "not in" (slice "page" "json") -}}
{{- $index = $index | append (dict "title" (.Title | plainify) "url" .Permalink "tags" .Params.tags "category" .Params.category "subcategory" .Params.subcategory "summary" (.Params.Summary | markdownify | plainify) "content" (.Content | markdownify | plainify)) -}}
{{- end -}}
{{- $index | jsonify -}}
OK,接下来就是将站点内每篇文章或者博客的元数据里面加上我们上面已经用到了的标签:
OK, 启动 Hugo 站点:
| EN
-------------------+------
Pages | 181
Paginator pages | 5
Non-page files | 0
Static files | 110
Processed images | 0
Aliases | 52
Sitemaps | 1
Cleaned | 0
Built in 323 ms
Watching for changes in /Users/medcl/Documents/rust/pizza/website/{assets,content.en,static,themes}
Watching for config changes in /Users/medcl/Documents/rust/pizza/website/config.yaml
Environment: "development"
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at //localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop
打开 Hugo 的站点地址,并尝试访问 http://localhost:1313/index.json
, 应该就可以访问到这个 JSON 文件了:
至此,数据准备完毕,接下来我们集成前端搜索控件。
还记得我们之前从 Pizza-docsearch 下载的资源文件么,我们主要用到 assets
里面的 3 个文件:
/tmp/pizza-docsearch/example/dist
➜ dist git:(main) tree
.
├── assets
├── index-C1z1vz3D.css
├── index-D_gOo737.js
└── pizza_wasm_bg-BRCuviY_.wasm
├── index.html
└── index.json
1 directory, 5 files
➜ dist git:(main)
打开 index.html 文件,我们可以看到里面的内容如下:
拷贝这个 assets 目录文件到我们的 Hugo 站点,位置如下:
然后修改 Hugo 的主题模版,在所有页面的头模版 html-head.html
里面增加一段代码来加载我们的 CSS 样式文件:
然后继续修改 Hugo 的主题模版文件,在所有页面的页脚模版,增加一段代码来加载 JS 脚本文件:
然后,在页面模版的适当位置,插入一下 Docsearch 的一段标签,用于放置搜索框,如图:
至此,大功告成!
打开浏览器即可看到最终效果:
最后,总结一下,借助 INFINI Pizza Docsearch 的 3 个小文件,只需 3 行代码,你可以在 5 分钟内为你的静态站点添加一个轻量级的离线搜索功能,快去试试吧。
相关链接:
交流群
📢 对 Pizza,Rust,Wasm 搜索引擎感兴趣的朋友可以加这个群~👇,如果加不进群可微信添加小助手(INFINI-labs)拉您入群。
关于极限科技(INFINI Labs)
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
收起阅读 »换掉ES? Redis官方搜索引擎,效率大幅提升
RediSearch是一个Redis模块,为Redis提供查询、二次索引和全文搜索。要使用RediSearch,首先要在Redis数据上声明索引。然后可以使用重新搜索查询语言来查询该数据。
RedSearch使用压缩的反向索引进行快速索引,占用内存少。RedSearch索引通过提供精确的短语匹配、模糊搜索和数字过滤等功能增强了
实现特性
- 基于文档的多个字段全文索引
- 高性能增量索引
- 文档排序(由用户在索引时手动提供)
- 在子查询之间使用 AND 或 NOT 操作符的复杂布尔查询
- 可选的查询子句
- 基于前缀的搜索
- 支持字段权重设置
- 自动完成建议(带有模糊前缀建议)
- 精确的短语搜索
- 在许多语言中基于词干分析的查询扩展
- 支持用于查询扩展和评分的自定义函数
- 将搜索限制到特定的文档字段
- 数字过滤器和范围
- 使用 Redis 自己的地理命令进行地理过滤
- Unicode 支持(需要 UTF-8 字符集)
- 检索完整的文档内容或只是ID 的检索
- 支持文档删除和更新与索引垃圾收集
- 支持部分更新和条件文档更新
对比 Elasticsearch
如下图所示,RediSearch 构建索引的时间为 221 秒,而 Elasticsearch 为 349 秒,快了 58%。
索引构建测试
我们模拟了一个多租户电子商务应用程序,其中每个租户代表一个产品类别并维护自己的索引。对于此基准测试,我们构建了 50K 个索引(或产品),每个索引最多存储 500 个文档(或项目),总共 2500 万个文档。
RediSearch 仅用了 201 秒就构建了索引,平均每秒运行 125K 个索引。然而,Elasticsearch 在 921 个索引后崩溃了,显然它不是为应对这种负载而设计的。
查询性能测试
一旦数据集被索引,我们就使用在专用负载生成器服务器上运行的 32 个客户端启动两个单词的搜索查询。如下图所示,RediSearch 吞吐量达到了 12.5K 操作/秒,而 Elasticsearch 为 3.1K 操作/秒,速度提高了 4 倍。
此外,RediSearch 延迟稍好一些,平均为 8 毫秒,而 Elasticsearch 为 10 毫秒。
安装
安装目前分为源码和docker安装两种方式。
源码安装
git clone https://github.com/RediSearch/RediSearch.git
cd RediSearch # 进入模块目录
make setup
make install
docker安装
note: RediSearch的安装比较复杂原包无法进行编译操作所以我们使用docker安装
docker run -p 6379:6379 redislabs/redisearch:latest
判断是否安装成功
127.0.0.1:0>module list
1) 1) "name"
2) "ReJSON"
3) "ver"
4) "20007"
2) 1) "name"
2) "search"
3) "ver"
4) "20209"
返回数组存在“ft”或 “search”(不同版本),表明 RediSearch 模块已经成功加载。
命令行操作
1、创建
1.1 创建索引
创建索引不妨想象成创建表结构,表一般基本属性有表名、字段和字段类别等,所以我们可以考虑将索引名代表表名,字段代表字段,属性即表示属性。
xxx.xxx.xxx.xxx:0>ft.create "student" schema "name" text weight 5.0 "sex" text "desc" text "class" tag
"OK"
student 表示索引名,name、sex、desc表示字段,text表示类型(这样表示只是为了便于理解)
“weight”为权重,默认值为 1.0
type student
"none"
我们创建的索引redis是不认识的,这证明使用的是插件。
1.2 创建文档
创建文档上下文的过程不妨想想成向表中插入数据,这里请注意字段名可以使用双引号但切记一定要用英文,这里之所以着重提出是因为有些编译器中文双引号和英文双引号用肉眼实在难以辨认否则会出现 “Fields must be specified in FIELD VALUE pairs”(其实是将“ 当作内容处理了以至于缺少了字段)
ft.add student 001 1.0 language "chinese" fields name "张三" sex "男" desc "这是一个学生" class "一班"
"OK"
其中001为文档ID,"1.0"为评分缺少此值会报"Could not parse document score"异常,language 指明使用的语言默认是英文编码 如果没有此标记存储是没有问题的但不可以通过中文字符查询
1.3 查询
1.3.1 基本查询
1.3.1.1 全量查询
xxx.xxx.xxx.xxx:0>FT.SEARCH student * SORTBY sex desc RETURN 3 name sex desc
1) "2"
2) "001"
3) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
4) "002"
5) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
1.3.1.2 匹配查询
xxx.xxx.xxx.xxx:0>ft.search student "张三" limit 0 10 RETURN 3 name sex desc
1) "2"
2) "001"
3) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
4) "002"
5) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
limit 与mysql相识主要用于分页,此处是全量匹配,如果没有设置language “chinese” 此处查询为0,
1.3.2 模糊匹配
1.3.2.1 后置匹配
ft.search student "李*" SORTBY sex desc RETURN 3 name sex desc
1) "1"
2) "003"
3) 1) "name"
2) "李四"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
1.3.2.2 模糊搜索
xxx.xxx.xxx.xxx:0>FT.SEARCH beers "%%张店%%"
1) "1"
2) "beer:1"
3) 1) "name"
2) "集团本部已发布【文明就餐公约】,2号楼办公人员午餐的就餐时间是11:45~13:00,现经行政服务部进行抽查,发现我们部门有员工违规就餐现象。请大家务必遵守,相互转告,对于外地回到集团办公的同事,亦请遵守,谢谢!"
3) "org"
4) "山东省淄博市张店区"
5) "school"
6) "山东理工大学"
别高兴太早全量模糊匹配是由很大限制的,他基于Levenshtein距离(LD)进行模糊匹配。术语的模糊匹配是通过在术语周围加“%”来实现的,模糊匹配的最大LD为3,确切的说这只是一种相识度查询,并非一般意义上的模糊搜索,但是如果仔细观察会发现通过精确匹配时不仅能够将完整value值查询出来而且还查询出其他处于文档某个位置的key请看官方提供的一个例子:
FT.CREATE idx SCHEMA txt TEXT
FT.ADD idx docCn 1.0 LANGUAGE chinese FIELDS txt
Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。从盘可以有意无意的对数据进行写操作。
由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。
FT.CREATE idx SCHEMA txt TEXT
FT.ADD idx docCn 1.0 LANGUAGE chinese FIELDS txt "Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。从盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。[8]"
FT.SEARCH idx "数据" LANGUAGE chinese HIGHLIGHT SUMMARIZE
# Outputs:
# <b>数据</b>?... <b>数据</b>进行写操作。由于完全实现了发布... <b>数据</b>冗余很有帮助。[8...
之所以会出现这样的效果是因为redisearch对文本进行了分词,其使用的工具是friso相比es的ik还是弱一些前者主要是对中文分词,体积小可移植性强。
从而我们可以结合后后置匹配算法
xxx.xxx.xxx.xxx:0>FT.SEARCH idx "数*" LANGUAGE chinese HIGHLIGHT
1) "1"
2) "docCn"
3) 1) "txt"
2) "Redis支持主从同步。<b>数据</b>可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。从盘可以有意无意的对<b>数据</b>进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和<b>数据</b>冗余很有帮助。[8]"
或者结合Levenshtein算法这样基本上能够满足业务查询需求
xxx.xxx.xxx.xxx:0>FT.SEARCH idx "%%单的树%%" LANGUAGE chinese HIGHLIGHT
1) "1"
2) "docCn"
3) 1) "txt"
2) "Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层<b>树</b>复制。从盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步<b>树</b>时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。[8]"
1.3.2.3 字段查询
通过字段查询也可以实现模糊搜索,直接给例子,后面跟着官网上给的sql 和 redisearch的对照表
ft.search student *
1) "2"
2) "doudou"
3) 1) "name"
2) "豆豆"
3) "jtzz"
4) "“检索”是很多产品中"
5) "phone"
6) "18563717107"
4) "ttao"
5) 1) "name"
2) "姚元涛"
3) "jtzz"
4) "一个生病的人只"
5) "phone"
6) "18563717107"
ft.search student '@phone:185* @name:豆豆'
1) "1"
2) "doudou"
3) 1) "name"
2) "豆豆"
3) "jtzz"
4) "“检索”是很多产品中"
5) "phone"
6) "18563717107"
1.4 删除
1.4.1 删除文档
xxx.xxx.xxx.xxx:0>ft.del student 002
"1"
1.4.3 删除索引
xxx.xxx.xxx.xxx:0>ft.drop student
"OK"
1.5 查看
1.5.1 查看所有索引
xxx.xxx.xxx.xxx:0>FT._LIST
1) "student1"
2) "ttao"
3) "idx"
4) "student"
5) "myidx"
6) "123"
7) "myIndex"
8) "testung"
9) "student2"
1.5.2 查看索引文档中的数据
1.5.2.1 获取单条数据
xxx.xxx.xxx.xxx:0>ft.get student 001
1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
7) "class"
8) "一班"
1.5.2.2 获取多条数据
xxx.xxx.xxx.xxx:0>ft.mget student 001 002
1) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
7) "class"
8) "一班"
2) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
7) "class"
8) "一班"
1.6 索引别名操作
1.6.1 添加别名
123.232.112.84:0>FT.ALIASADD xs student
"OK"
给索引student起个xs的别名,一个索引可以起多个别名
1.6.2 修改别名
1.6.3 删除别名
123.232.112.84:0>FT.ALIASDEL xs
"OK"
作者:架构师公众号
来源:https://mp.weixin.qq.com/s/TmCXx3rLjLPggvOFjGqS9w
版权申明:内容来源网络,仅供学习研究,版权归原创者所有。如有侵权烦请告知,我们会立即删除并表示歉意。谢谢!
RediSearch是一个Redis模块,为Redis提供查询、二次索引和全文搜索。要使用RediSearch,首先要在Redis数据上声明索引。然后可以使用重新搜索查询语言来查询该数据。
RedSearch使用压缩的反向索引进行快速索引,占用内存少。RedSearch索引通过提供精确的短语匹配、模糊搜索和数字过滤等功能增强了
实现特性
- 基于文档的多个字段全文索引
- 高性能增量索引
- 文档排序(由用户在索引时手动提供)
- 在子查询之间使用 AND 或 NOT 操作符的复杂布尔查询
- 可选的查询子句
- 基于前缀的搜索
- 支持字段权重设置
- 自动完成建议(带有模糊前缀建议)
- 精确的短语搜索
- 在许多语言中基于词干分析的查询扩展
- 支持用于查询扩展和评分的自定义函数
- 将搜索限制到特定的文档字段
- 数字过滤器和范围
- 使用 Redis 自己的地理命令进行地理过滤
- Unicode 支持(需要 UTF-8 字符集)
- 检索完整的文档内容或只是ID 的检索
- 支持文档删除和更新与索引垃圾收集
- 支持部分更新和条件文档更新
对比 Elasticsearch
如下图所示,RediSearch 构建索引的时间为 221 秒,而 Elasticsearch 为 349 秒,快了 58%。
索引构建测试
我们模拟了一个多租户电子商务应用程序,其中每个租户代表一个产品类别并维护自己的索引。对于此基准测试,我们构建了 50K 个索引(或产品),每个索引最多存储 500 个文档(或项目),总共 2500 万个文档。
RediSearch 仅用了 201 秒就构建了索引,平均每秒运行 125K 个索引。然而,Elasticsearch 在 921 个索引后崩溃了,显然它不是为应对这种负载而设计的。
查询性能测试
一旦数据集被索引,我们就使用在专用负载生成器服务器上运行的 32 个客户端启动两个单词的搜索查询。如下图所示,RediSearch 吞吐量达到了 12.5K 操作/秒,而 Elasticsearch 为 3.1K 操作/秒,速度提高了 4 倍。
此外,RediSearch 延迟稍好一些,平均为 8 毫秒,而 Elasticsearch 为 10 毫秒。
安装
安装目前分为源码和docker安装两种方式。
源码安装
git clone https://github.com/RediSearch/RediSearch.git
cd RediSearch # 进入模块目录
make setup
make install
docker安装
note: RediSearch的安装比较复杂原包无法进行编译操作所以我们使用docker安装
docker run -p 6379:6379 redislabs/redisearch:latest
判断是否安装成功
127.0.0.1:0>module list
1) 1) "name"
2) "ReJSON"
3) "ver"
4) "20007"
2) 1) "name"
2) "search"
3) "ver"
4) "20209"
返回数组存在“ft”或 “search”(不同版本),表明 RediSearch 模块已经成功加载。
命令行操作
1、创建
1.1 创建索引
创建索引不妨想象成创建表结构,表一般基本属性有表名、字段和字段类别等,所以我们可以考虑将索引名代表表名,字段代表字段,属性即表示属性。
xxx.xxx.xxx.xxx:0>ft.create "student" schema "name" text weight 5.0 "sex" text "desc" text "class" tag
"OK"
student 表示索引名,name、sex、desc表示字段,text表示类型(这样表示只是为了便于理解)
“weight”为权重,默认值为 1.0
type student
"none"
我们创建的索引redis是不认识的,这证明使用的是插件。
1.2 创建文档
创建文档上下文的过程不妨想想成向表中插入数据,这里请注意字段名可以使用双引号但切记一定要用英文,这里之所以着重提出是因为有些编译器中文双引号和英文双引号用肉眼实在难以辨认否则会出现 “Fields must be specified in FIELD VALUE pairs”(其实是将“ 当作内容处理了以至于缺少了字段)
ft.add student 001 1.0 language "chinese" fields name "张三" sex "男" desc "这是一个学生" class "一班"
"OK"
其中001为文档ID,"1.0"为评分缺少此值会报"Could not parse document score"异常,language 指明使用的语言默认是英文编码 如果没有此标记存储是没有问题的但不可以通过中文字符查询
1.3 查询
1.3.1 基本查询
1.3.1.1 全量查询
xxx.xxx.xxx.xxx:0>FT.SEARCH student * SORTBY sex desc RETURN 3 name sex desc
1) "2"
2) "001"
3) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
4) "002"
5) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
1.3.1.2 匹配查询
xxx.xxx.xxx.xxx:0>ft.search student "张三" limit 0 10 RETURN 3 name sex desc
1) "2"
2) "001"
3) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
4) "002"
5) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
limit 与mysql相识主要用于分页,此处是全量匹配,如果没有设置language “chinese” 此处查询为0,
1.3.2 模糊匹配
1.3.2.1 后置匹配
ft.search student "李*" SORTBY sex desc RETURN 3 name sex desc
1) "1"
2) "003"
3) 1) "name"
2) "李四"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
1.3.2.2 模糊搜索
xxx.xxx.xxx.xxx:0>FT.SEARCH beers "%%张店%%"
1) "1"
2) "beer:1"
3) 1) "name"
2) "集团本部已发布【文明就餐公约】,2号楼办公人员午餐的就餐时间是11:45~13:00,现经行政服务部进行抽查,发现我们部门有员工违规就餐现象。请大家务必遵守,相互转告,对于外地回到集团办公的同事,亦请遵守,谢谢!"
3) "org"
4) "山东省淄博市张店区"
5) "school"
6) "山东理工大学"
别高兴太早全量模糊匹配是由很大限制的,他基于Levenshtein距离(LD)进行模糊匹配。术语的模糊匹配是通过在术语周围加“%”来实现的,模糊匹配的最大LD为3,确切的说这只是一种相识度查询,并非一般意义上的模糊搜索,但是如果仔细观察会发现通过精确匹配时不仅能够将完整value值查询出来而且还查询出其他处于文档某个位置的key请看官方提供的一个例子:
FT.CREATE idx SCHEMA txt TEXT
FT.ADD idx docCn 1.0 LANGUAGE chinese FIELDS txt
Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。从盘可以有意无意的对数据进行写操作。
由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。
FT.CREATE idx SCHEMA txt TEXT
FT.ADD idx docCn 1.0 LANGUAGE chinese FIELDS txt "Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。从盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。[8]"
FT.SEARCH idx "数据" LANGUAGE chinese HIGHLIGHT SUMMARIZE
# Outputs:
# <b>数据</b>?... <b>数据</b>进行写操作。由于完全实现了发布... <b>数据</b>冗余很有帮助。[8...
之所以会出现这样的效果是因为redisearch对文本进行了分词,其使用的工具是friso相比es的ik还是弱一些前者主要是对中文分词,体积小可移植性强。
从而我们可以结合后后置匹配算法
xxx.xxx.xxx.xxx:0>FT.SEARCH idx "数*" LANGUAGE chinese HIGHLIGHT
1) "1"
2) "docCn"
3) 1) "txt"
2) "Redis支持主从同步。<b>数据</b>可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。从盘可以有意无意的对<b>数据</b>进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和<b>数据</b>冗余很有帮助。[8]"
或者结合Levenshtein算法这样基本上能够满足业务查询需求
xxx.xxx.xxx.xxx:0>FT.SEARCH idx "%%单的树%%" LANGUAGE chinese HIGHLIGHT
1) "1"
2) "docCn"
3) 1) "txt"
2) "Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层<b>树</b>复制。从盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步<b>树</b>时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。[8]"
1.3.2.3 字段查询
通过字段查询也可以实现模糊搜索,直接给例子,后面跟着官网上给的sql 和 redisearch的对照表
ft.search student *
1) "2"
2) "doudou"
3) 1) "name"
2) "豆豆"
3) "jtzz"
4) "“检索”是很多产品中"
5) "phone"
6) "18563717107"
4) "ttao"
5) 1) "name"
2) "姚元涛"
3) "jtzz"
4) "一个生病的人只"
5) "phone"
6) "18563717107"
ft.search student '@phone:185* @name:豆豆'
1) "1"
2) "doudou"
3) 1) "name"
2) "豆豆"
3) "jtzz"
4) "“检索”是很多产品中"
5) "phone"
6) "18563717107"
1.4 删除
1.4.1 删除文档
xxx.xxx.xxx.xxx:0>ft.del student 002
"1"
1.4.3 删除索引
xxx.xxx.xxx.xxx:0>ft.drop student
"OK"
1.5 查看
1.5.1 查看所有索引
xxx.xxx.xxx.xxx:0>FT._LIST
1) "student1"
2) "ttao"
3) "idx"
4) "student"
5) "myidx"
6) "123"
7) "myIndex"
8) "testung"
9) "student2"
1.5.2 查看索引文档中的数据
1.5.2.1 获取单条数据
xxx.xxx.xxx.xxx:0>ft.get student 001
1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
7) "class"
8) "一班"
1.5.2.2 获取多条数据
xxx.xxx.xxx.xxx:0>ft.mget student 001 002
1) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
7) "class"
8) "一班"
2) 1) "name"
2) "张三"
3) "sex"
4) "男"
5) "desc"
6) "这是一个学生"
7) "class"
8) "一班"
1.6 索引别名操作
1.6.1 添加别名
123.232.112.84:0>FT.ALIASADD xs student
"OK"
给索引student起个xs的别名,一个索引可以起多个别名
1.6.2 修改别名
1.6.3 删除别名
123.232.112.84:0>FT.ALIASDEL xs
"OK"
收起阅读 »作者:架构师公众号
来源:https://mp.weixin.qq.com/s/TmCXx3rLjLPggvOFjGqS9w
版权申明:内容来源网络,仅供学习研究,版权归原创者所有。如有侵权烦请告知,我们会立即删除并表示歉意。谢谢!
搜索客:Elasticsearch 中文社区的崭新征程
社区就是一个大家庭,很多小伙伴可能现在已经没有活跃在相关领域了,但是在咱们社区发展的过程中,有很多优秀的小伙伴积极参与做出了大量杰出的贡献,第一次大会的场地离不开 @三斗室 的大力支持,还记得只有 20-30 号人,糙的很,连拍照都没有来得及进行,社区里面带来各种干货分享 @wood 大叔,一直在社区默默奉献的石阳,说学逗唱样样精通的斌哥,深圳分会的杨振涛,武汉分会的白凡,南京分会的李啸,广州分会的鸿智等等其他各个城市的社区分会主席们,咱们甚至台湾还有分会,还记得 Advent 分享文章接力么,还记得咱们的翻译小组么,还记得咱们一起通宵达旦编写 Elasticsearch 权威指南中文版本的的日子么, 80 多人浩浩荡荡分成 5 个团队,中国开源史上最早的大协作,咱们还有社区编辑部,现在还在坚持每天一篇相关行业新闻的社区日报社,迄今为止已经 1700 多期了,还有每次大会的志愿者们,还有给咱们社区带来几百个分享的嘉宾们,名字实在太多了,不能一一列举了,但我都记下了,这个社区正是因为有了你们,才这么精彩,感谢你们。
然而,没有哪项技术能永远保持新鲜活力,当一些技术逐渐成熟,相应的讨论似乎也变得有限。然而,搜索领域的从业者并未停止前行的脚步,每一年都有新的搜索技术涌现,今年的最火话题必然是 GenAI 或者 AIGC 啦,Embedding、LLM、向量数据库、RAG 摩拳擦掌,传统搜索是否还能再战几个回合?硬件发展也是一日千里,几百核,上 TB SSD 的机器成为常态,快速迭代的硬件架构需要与时俱进的软件架构,兼顾安全和高效的 Rust 发展也是热火朝天,我于 2021 年底离开 Elastic 出来创办了 INFINI Labs 也在积极探索下一代搜索引擎的发展,不过可以预见的是,未来的搜索必定将更加智能化,性能更加强悍,使用更加简单,相信大家和我一样我对新技术的发展充满了期待,拭目以待吧。
从业十多年来一直在围绕搜索打转,深感搜索技术所涵盖的领域极为广泛,从文本分析到从自然语言处理,从算法到数据结构,从单机高性能到海量 PB 分布式,从机器学习到大模型,从传统的运维日志分析到上天揽月的前沿科技,都有搜索技术的身影。众行致远,国外有类似 BERLIN BUZZWORDS 这样优质的大会和交流社区,而国内这样垂直且优质的社区还相对较为缺乏,希望咱们的社区能够成为这样一个专注于搜索领域的小圈子。并且应该更加开放,除了 Elasticsearch,其他任何跟搜索相关的技术和框架我们都欢迎交流,也希望国内更多和我们一样参与搜索核心技术研究的厂商和同仁们也能参与进来,并且希望在这里,不仅是可以围绕搜索的各种相关技术进行讨论交流,还能找到志同道合的朋友一起共同进步,共同构建一个咱们自己的小家园。
因此,Elasticsearch 中文社区进行全新的品牌升级,正式更名为“搜索客”,以新的 Slogan:“搜索人自己的社区” 为宣言,并以全新的面貌来迎接社区的小伙伴们,相信你们已经注意到了我们的社区网站已经更新了全新的 Logo 和视觉风格,后续调整完毕也将启用新的域名:searchkit.org/searchkit.cn。 我们期望新的搜索客社区能够为广大搜索领域的从业者提供更为丰富和便捷的交流平台。希望在这里,我们能够共同见证搜索技术的新篇章,为整个搜索领域的发展添砖加瓦。
Medcl
社区就是一个大家庭,很多小伙伴可能现在已经没有活跃在相关领域了,但是在咱们社区发展的过程中,有很多优秀的小伙伴积极参与做出了大量杰出的贡献,第一次大会的场地离不开 @三斗室 的大力支持,还记得只有 20-30 号人,糙的很,连拍照都没有来得及进行,社区里面带来各种干货分享 @wood 大叔,一直在社区默默奉献的石阳,说学逗唱样样精通的斌哥,深圳分会的杨振涛,武汉分会的白凡,南京分会的李啸,广州分会的鸿智等等其他各个城市的社区分会主席们,咱们甚至台湾还有分会,还记得 Advent 分享文章接力么,还记得咱们的翻译小组么,还记得咱们一起通宵达旦编写 Elasticsearch 权威指南中文版本的的日子么, 80 多人浩浩荡荡分成 5 个团队,中国开源史上最早的大协作,咱们还有社区编辑部,现在还在坚持每天一篇相关行业新闻的社区日报社,迄今为止已经 1700 多期了,还有每次大会的志愿者们,还有给咱们社区带来几百个分享的嘉宾们,名字实在太多了,不能一一列举了,但我都记下了,这个社区正是因为有了你们,才这么精彩,感谢你们。
然而,没有哪项技术能永远保持新鲜活力,当一些技术逐渐成熟,相应的讨论似乎也变得有限。然而,搜索领域的从业者并未停止前行的脚步,每一年都有新的搜索技术涌现,今年的最火话题必然是 GenAI 或者 AIGC 啦,Embedding、LLM、向量数据库、RAG 摩拳擦掌,传统搜索是否还能再战几个回合?硬件发展也是一日千里,几百核,上 TB SSD 的机器成为常态,快速迭代的硬件架构需要与时俱进的软件架构,兼顾安全和高效的 Rust 发展也是热火朝天,我于 2021 年底离开 Elastic 出来创办了 INFINI Labs 也在积极探索下一代搜索引擎的发展,不过可以预见的是,未来的搜索必定将更加智能化,性能更加强悍,使用更加简单,相信大家和我一样我对新技术的发展充满了期待,拭目以待吧。
从业十多年来一直在围绕搜索打转,深感搜索技术所涵盖的领域极为广泛,从文本分析到从自然语言处理,从算法到数据结构,从单机高性能到海量 PB 分布式,从机器学习到大模型,从传统的运维日志分析到上天揽月的前沿科技,都有搜索技术的身影。众行致远,国外有类似 BERLIN BUZZWORDS 这样优质的大会和交流社区,而国内这样垂直且优质的社区还相对较为缺乏,希望咱们的社区能够成为这样一个专注于搜索领域的小圈子。并且应该更加开放,除了 Elasticsearch,其他任何跟搜索相关的技术和框架我们都欢迎交流,也希望国内更多和我们一样参与搜索核心技术研究的厂商和同仁们也能参与进来,并且希望在这里,不仅是可以围绕搜索的各种相关技术进行讨论交流,还能找到志同道合的朋友一起共同进步,共同构建一个咱们自己的小家园。
因此,Elasticsearch 中文社区进行全新的品牌升级,正式更名为“搜索客”,以新的 Slogan:“搜索人自己的社区” 为宣言,并以全新的面貌来迎接社区的小伙伴们,相信你们已经注意到了我们的社区网站已经更新了全新的 Logo 和视觉风格,后续调整完毕也将启用新的域名:searchkit.org/searchkit.cn。 我们期望新的搜索客社区能够为广大搜索领域的从业者提供更为丰富和便捷的交流平台。希望在这里,我们能够共同见证搜索技术的新篇章,为整个搜索领域的发展添砖加瓦。
Medcl 收起阅读 »
使用 Easysearch,日志存储少一半
在海量日志存储场景中,索引膨胀率是一个关键指标,直接影响存储成本和查询性能。它表示原始数据与索引数据在磁盘上所占空间的比率。较高的索引膨胀率不仅增加了存储成本,而且可能会影响查询速度,尤其是在 I/O 密集型的查询中。因此,我们需要密切关注和优化索引膨胀率。接下来,我们将比较 Elasticsearch 和 Easysearch 在处理相同数据时的索引膨胀率。
测试结果
一图胜千言,下图是 Easysearch v1.1 和 Elasticsearch v6.4.3 的索引大小测试对比,Y 轴单位是 MB。
使用 Easysearch v1.1 的压缩功能,比 Elasticsearch v6.4.3 的索引大小降低了 50%。
测试说明
以下是对 Elasticsearch v6.4.3 版本,测试数据 500 万条大小 1.054G(1080M)的 nginx 日志,使用 es 默认的 mapping,分别用 best_compression 和 default 的压缩策略进行写入。 Elasticsearch v6.4.3
索引 | 大小(MB) | 膨胀率 | 条数(万) |
---|---|---|---|
nginx_default_1g | 1812.61 | 1.61 | 500 |
nginx_best_1g | 1551.36 | 1.42 | 500 |
然后我们对比下,使用极限科技的 Easysearch 进行索引膨胀率的压测.
Easysearch 是什么?
INFINI Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10 版本。 Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能,与 Elasticsearch 相比,Easysearch 更关注在搜索业务场景的优化和继续保持其产品的简洁与易用性。 安装包大小只有 54 兆,相比 Elasticsearch 动辄一两百兆的安装包更加轻量级。 Easysearch v1.1
索引 | 大小(MB) | 膨胀率 | 条数(万) |
---|---|---|---|
nginx_default_1g | 1514 | 1.33 | 500 |
nginx_best_1g | 1286 | 1.138 | 500 |
nginx_zstd_1g | 1015.3 | 0.94 | 500 |
nginx_reuse_1g | 758.39 | 0.70 | 500 |
注意上面使用到的 Easysearch 的压缩策略有 4 种:
压缩策略 | 描述 |
---|---|
default | 和 Elasticsearch 的 default 压缩策略一致。 |
best_compression | 和 Elasticsearch 的 best_compression 一致。 |
ZSTD | ZSTD(Zstandard)是一种开源的压缩算法和压缩库,旨在提供高性能和高压缩比的数据压缩解决方案。由 Facebook 开发并开源的一个压缩库,Easysearch 1.1 版引入了这个压缩算法作为一个可选的压缩策略,分别对存储字段,doc_values,和词典文件进行了压缩,并且 Easysearch 使用的 zstd 是纯 java 版,不依赖底层的操作系统和 cpu 架构,无需单独编译可以直接部署在国产的操作系统和芯片上。 |
index.source_reuse | Easysearch v1.1 新增加的一个索引配置项,表示是否对 source 中的字段进行复用,熟悉 Elasticsearch 存储结构的都知道,es 底层依赖 lucene 作为核心的存储和查询引擎,默认 mapping 下,在将 es 的字段解析成 lucene 的对应字段后,一个 keyword 类型的字段会分别存储在 _source 和 doc_values 字段里,Easysearch 将 keyword 字段在 source 存储时进行了过滤,然后在查询阶段又利用 doc_values 对 source 里过滤的 keyword 字段进行了无缝拼接,用户层面感知不到对 keyword 字段的特殊处理。 |
default 和 best_compression 比之前 6.43 版的膨胀率降低是因为得益于 lucene 版本的升级到了 8.11.2,新版的 lucene 的压缩比之前的版本有了很大提升。 重点是最后利用 ZSTD 加 index.source_reuse,存储资源的占用比之前 6.43 版本的 best_compression 的 1.5G 减少了 50%,对比相同 lucene 版本的 best_compression,存储资源也减少了 40%,带来以下几点好处:
- 降低存储成本:较低的索引膨胀率意味着存储相同量的数据需要更少的磁盘空间,这将直接减少硬件和维护成本。
- 提高系统扩展性:由于索引占用的存储空间较小,可以在相同的硬件上处理更多的数据,或者在扩展存储时,需要添加的硬件更少。
- 更高效的数据备份和传输:小的索引文件意味着备份和传输数据的时间和带宽需求都会减少。
使用方法
##启用ZSTD
PUT nginx_zstd
{
"settings": {
"codec": "ZSTD"
}
}
##启用index.source_reuse
PUT nginx_reuse
{
"settings": {
"index.source_reuse": true
}
}
##结合使用
PUT nginx_reuse
{
"settings": {
"codec": "ZSTD",
"index.source_reuse": true
}
}
最后附上 Easysearch 的下载地址,欢迎大家下载试用。 https://www.infinilabs.com/download/?product=easysearch
在海量日志存储场景中,索引膨胀率是一个关键指标,直接影响存储成本和查询性能。它表示原始数据与索引数据在磁盘上所占空间的比率。较高的索引膨胀率不仅增加了存储成本,而且可能会影响查询速度,尤其是在 I/O 密集型的查询中。因此,我们需要密切关注和优化索引膨胀率。接下来,我们将比较 Elasticsearch 和 Easysearch 在处理相同数据时的索引膨胀率。
测试结果
一图胜千言,下图是 Easysearch v1.1 和 Elasticsearch v6.4.3 的索引大小测试对比,Y 轴单位是 MB。
使用 Easysearch v1.1 的压缩功能,比 Elasticsearch v6.4.3 的索引大小降低了 50%。
测试说明
以下是对 Elasticsearch v6.4.3 版本,测试数据 500 万条大小 1.054G(1080M)的 nginx 日志,使用 es 默认的 mapping,分别用 best_compression 和 default 的压缩策略进行写入。 Elasticsearch v6.4.3
索引 | 大小(MB) | 膨胀率 | 条数(万) |
---|---|---|---|
nginx_default_1g | 1812.61 | 1.61 | 500 |
nginx_best_1g | 1551.36 | 1.42 | 500 |
然后我们对比下,使用极限科技的 Easysearch 进行索引膨胀率的压测.
Easysearch 是什么?
INFINI Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10 版本。 Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能,与 Elasticsearch 相比,Easysearch 更关注在搜索业务场景的优化和继续保持其产品的简洁与易用性。 安装包大小只有 54 兆,相比 Elasticsearch 动辄一两百兆的安装包更加轻量级。 Easysearch v1.1
索引 | 大小(MB) | 膨胀率 | 条数(万) |
---|---|---|---|
nginx_default_1g | 1514 | 1.33 | 500 |
nginx_best_1g | 1286 | 1.138 | 500 |
nginx_zstd_1g | 1015.3 | 0.94 | 500 |
nginx_reuse_1g | 758.39 | 0.70 | 500 |
注意上面使用到的 Easysearch 的压缩策略有 4 种:
压缩策略 | 描述 |
---|---|
default | 和 Elasticsearch 的 default 压缩策略一致。 |
best_compression | 和 Elasticsearch 的 best_compression 一致。 |
ZSTD | ZSTD(Zstandard)是一种开源的压缩算法和压缩库,旨在提供高性能和高压缩比的数据压缩解决方案。由 Facebook 开发并开源的一个压缩库,Easysearch 1.1 版引入了这个压缩算法作为一个可选的压缩策略,分别对存储字段,doc_values,和词典文件进行了压缩,并且 Easysearch 使用的 zstd 是纯 java 版,不依赖底层的操作系统和 cpu 架构,无需单独编译可以直接部署在国产的操作系统和芯片上。 |
index.source_reuse | Easysearch v1.1 新增加的一个索引配置项,表示是否对 source 中的字段进行复用,熟悉 Elasticsearch 存储结构的都知道,es 底层依赖 lucene 作为核心的存储和查询引擎,默认 mapping 下,在将 es 的字段解析成 lucene 的对应字段后,一个 keyword 类型的字段会分别存储在 _source 和 doc_values 字段里,Easysearch 将 keyword 字段在 source 存储时进行了过滤,然后在查询阶段又利用 doc_values 对 source 里过滤的 keyword 字段进行了无缝拼接,用户层面感知不到对 keyword 字段的特殊处理。 |
default 和 best_compression 比之前 6.43 版的膨胀率降低是因为得益于 lucene 版本的升级到了 8.11.2,新版的 lucene 的压缩比之前的版本有了很大提升。 重点是最后利用 ZSTD 加 index.source_reuse,存储资源的占用比之前 6.43 版本的 best_compression 的 1.5G 减少了 50%,对比相同 lucene 版本的 best_compression,存储资源也减少了 40%,带来以下几点好处:
- 降低存储成本:较低的索引膨胀率意味着存储相同量的数据需要更少的磁盘空间,这将直接减少硬件和维护成本。
- 提高系统扩展性:由于索引占用的存储空间较小,可以在相同的硬件上处理更多的数据,或者在扩展存储时,需要添加的硬件更少。
- 更高效的数据备份和传输:小的索引文件意味着备份和传输数据的时间和带宽需求都会减少。
使用方法
##启用ZSTD
PUT nginx_zstd
{
"settings": {
"codec": "ZSTD"
}
}
##启用index.source_reuse
PUT nginx_reuse
{
"settings": {
"index.source_reuse": true
}
}
##结合使用
PUT nginx_reuse
{
"settings": {
"codec": "ZSTD",
"index.source_reuse": true
}
}
最后附上 Easysearch 的下载地址,欢迎大家下载试用。 https://www.infinilabs.com/download/?product=easysearch
收起阅读 »助力 Elasticsearch 国产化,极限科技受邀参加 2023 移动云大会
近日,2023 移动云大会“数据库&云原生创新”论坛 在苏州隆重召开。现场精英荟萃、专家云集,共同探讨数据库与云原生技术发展及应用落地方案,为助力推动云原生数据库产业发展建言献策。极限科技创始人兼 CEO 曾勇受邀出席论坛。
会上,极限科技创始人兼 CEO 曾勇针对《Elasticsearch 国产化在移动云的演进之路》主题进行演讲,演讲围绕了什么是 Elasticsearch 以及 Elasticsearch 在移动云上的国产化演进过程。
Elasticsearch 在移动云的演进
随着数字化转型的不断深化,非结构化数据日益成为各类组织数据的增长主力,但其在管理和应用方面仍面临模态多样、管理复杂、检索挖掘难度大等挑战。为此,极限科技与移动云共同研发出搜索型数据库软件 Easysearch。
“Easysearch” 是极限科技在 Elasticsearch 软件原版本基础上,立足中国企业需求,助力移动云打造更符合其需求,独具 8 大特色功能的自有开源平替版本系统。-- 极限科技创始人兼 CEO 曾勇在会上介绍道
移动云版本 “Easysearch” 精简 Kernel ,只保留开源核心能力,回归轻量化;增强内核后,可更稳定可靠地支持万亿级数据规模;为进一步增强安全能力,系统支持字段内容脱敏的同时对字段级别采取权限控制;可降低灾难恢复时间,系统具备完整的备份与容灾能力,可实时切换;为更好地服务业务场景,此版本更关注搜索场景的优化;增强型中文分词,提供本地化的词库与拼音支持;增强数据压缩能力后,最高可降低 40%存储空间;信创兼容的系统,支持适配国产操作系统和 CPU 芯片。
目前 Elasticsearch 为移动云提供的后端架构,已由基于 Docker 容器的“移动云 ES v1.0”升级为基于 K8s 架构的“移动云 ES v2.0”版本。其优势可以体现在:
- 新版本更具自主可控性,应对新需求更具灵活性;
- 基于 K8s 架构的系统,能支持更大规模的集群服务;
- 在支持全链路 IPv6 和本地磁盘(IO 隔离)的基础上,实现了更优性能的升级。
Elasticsearch 在中国已有近十万+开发者,上万家企业已经在生产环境大规模运行 Elasticsearch,服务客户包括知名互联网公司及大型企事业单位,覆盖全国范围内生活消费、金融投资、娱乐学习、软件应用与安全等领域知名企业。-- 极限科技创始人兼 CEO 曾勇在会上介绍道
极限科技创始成员多来自 Elasticsearch 中国团队,深耕搜索及 Elasticsearch 十多年,且运营有国内最大的开源搜索技术社区,极限科技团队具备雄厚的技术实力和丰富的相关行业经验技术积累。
国产化替代的首选方案“Easysearch”
目前实时大数据搜索分析,尤其是结构化和非结构化数据结合的场景和需求非常大。针对海量数据,搜索技术成为核心,大多数企业都有不止部署一套搜索后端服务来满足各个场景的搜索业务需求。-- 极限科技创始人兼 CEO 曾勇在会上介绍道
Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能。该软件衍生自开源的搜索引擎软件 Elasticsearch,具备相当的接口兼容能力,对于目前国内广大的 Elasticsearch 用户来说切换和接入的成本非常低。
与 Elasticsearch 相比,Easysearch 更关注在搜索业务场景的优化和继续保持其产品的简洁与易用性。基于团队在搜索和 Elasticsearch 生态的多年深耕,极限科技已具备完全自主自研可控能力,Easysearch 因更符合国产搜索技术生态需求,目前逐渐成为 Elasticsearch 国产化替代的首选方案。
作为一款具备自主可控的分布式近实时搜索型数据库产品 Easysearch 具备高性能、高可用、弹性伸缩、高安全性等特性,支持丰富的个性化搜索及聚合分析,且能承载 PB 级别的海量业务数据,可部署在物理机、虚拟机、容器、私有云和公有云,为金融核心系统、运营商、制造业和政企业务系统提供安全、稳定、可靠的快速检索和实时数据探索分析能力,满足不同业务场景的各项复杂需求。
持续丰富完善企业级服务能力
随着国内搜索型数据库的迅速发展,关键技术逐渐突破,应用场景和数据规模也逐年上升,已经成为企业必不可少的核心基础设施,产业生态日益繁荣。
截至目前,极限科技与移动云合作共建的 Easysearch 系统,已在无锡、呼和浩特、南基这 3 个城市上线,此外还有北京、上海、重庆、宁波、海南等 9 个城市的资源池正在上线中。-- 极限科技创始人兼 CEO 曾勇介绍道。
作为全球领先的近实时搜索数据库技术提供商,极限科技始终致力于搜索核心技术的研发与创新,基于国内搜索型数据库行业生态需求,在产品研发创新上,着力提升产品易用性、实时性、降低 IT 成本等,为推动国内搜索行业技术水平及相关技术社区的发展,建设数据强国提供强有力的基础技术支撑。
极限科技自成立起始终致力于提供本地化配套产品及解决方案,帮助客户解决在使用 Elasticsearch 时遇到的各种挑战。未来,极限科技将基于更多的真实客户场景提供个性化服务,持续丰富并完善更多维度、更高需求的企业级服务能力,与移动云等众多行业平台一起构建更“简单”的搜索服务。
关于极限科技
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。让搜索更简单是我们追求的目标。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
更多详情参见官网 (https://infinilabs.com) 。
近日,2023 移动云大会“数据库&云原生创新”论坛 在苏州隆重召开。现场精英荟萃、专家云集,共同探讨数据库与云原生技术发展及应用落地方案,为助力推动云原生数据库产业发展建言献策。极限科技创始人兼 CEO 曾勇受邀出席论坛。
会上,极限科技创始人兼 CEO 曾勇针对《Elasticsearch 国产化在移动云的演进之路》主题进行演讲,演讲围绕了什么是 Elasticsearch 以及 Elasticsearch 在移动云上的国产化演进过程。
Elasticsearch 在移动云的演进
随着数字化转型的不断深化,非结构化数据日益成为各类组织数据的增长主力,但其在管理和应用方面仍面临模态多样、管理复杂、检索挖掘难度大等挑战。为此,极限科技与移动云共同研发出搜索型数据库软件 Easysearch。
“Easysearch” 是极限科技在 Elasticsearch 软件原版本基础上,立足中国企业需求,助力移动云打造更符合其需求,独具 8 大特色功能的自有开源平替版本系统。-- 极限科技创始人兼 CEO 曾勇在会上介绍道
移动云版本 “Easysearch” 精简 Kernel ,只保留开源核心能力,回归轻量化;增强内核后,可更稳定可靠地支持万亿级数据规模;为进一步增强安全能力,系统支持字段内容脱敏的同时对字段级别采取权限控制;可降低灾难恢复时间,系统具备完整的备份与容灾能力,可实时切换;为更好地服务业务场景,此版本更关注搜索场景的优化;增强型中文分词,提供本地化的词库与拼音支持;增强数据压缩能力后,最高可降低 40%存储空间;信创兼容的系统,支持适配国产操作系统和 CPU 芯片。
目前 Elasticsearch 为移动云提供的后端架构,已由基于 Docker 容器的“移动云 ES v1.0”升级为基于 K8s 架构的“移动云 ES v2.0”版本。其优势可以体现在:
- 新版本更具自主可控性,应对新需求更具灵活性;
- 基于 K8s 架构的系统,能支持更大规模的集群服务;
- 在支持全链路 IPv6 和本地磁盘(IO 隔离)的基础上,实现了更优性能的升级。
Elasticsearch 在中国已有近十万+开发者,上万家企业已经在生产环境大规模运行 Elasticsearch,服务客户包括知名互联网公司及大型企事业单位,覆盖全国范围内生活消费、金融投资、娱乐学习、软件应用与安全等领域知名企业。-- 极限科技创始人兼 CEO 曾勇在会上介绍道
极限科技创始成员多来自 Elasticsearch 中国团队,深耕搜索及 Elasticsearch 十多年,且运营有国内最大的开源搜索技术社区,极限科技团队具备雄厚的技术实力和丰富的相关行业经验技术积累。
国产化替代的首选方案“Easysearch”
目前实时大数据搜索分析,尤其是结构化和非结构化数据结合的场景和需求非常大。针对海量数据,搜索技术成为核心,大多数企业都有不止部署一套搜索后端服务来满足各个场景的搜索业务需求。-- 极限科技创始人兼 CEO 曾勇在会上介绍道
Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能。该软件衍生自开源的搜索引擎软件 Elasticsearch,具备相当的接口兼容能力,对于目前国内广大的 Elasticsearch 用户来说切换和接入的成本非常低。
与 Elasticsearch 相比,Easysearch 更关注在搜索业务场景的优化和继续保持其产品的简洁与易用性。基于团队在搜索和 Elasticsearch 生态的多年深耕,极限科技已具备完全自主自研可控能力,Easysearch 因更符合国产搜索技术生态需求,目前逐渐成为 Elasticsearch 国产化替代的首选方案。
作为一款具备自主可控的分布式近实时搜索型数据库产品 Easysearch 具备高性能、高可用、弹性伸缩、高安全性等特性,支持丰富的个性化搜索及聚合分析,且能承载 PB 级别的海量业务数据,可部署在物理机、虚拟机、容器、私有云和公有云,为金融核心系统、运营商、制造业和政企业务系统提供安全、稳定、可靠的快速检索和实时数据探索分析能力,满足不同业务场景的各项复杂需求。
持续丰富完善企业级服务能力
随着国内搜索型数据库的迅速发展,关键技术逐渐突破,应用场景和数据规模也逐年上升,已经成为企业必不可少的核心基础设施,产业生态日益繁荣。
截至目前,极限科技与移动云合作共建的 Easysearch 系统,已在无锡、呼和浩特、南基这 3 个城市上线,此外还有北京、上海、重庆、宁波、海南等 9 个城市的资源池正在上线中。-- 极限科技创始人兼 CEO 曾勇介绍道。
作为全球领先的近实时搜索数据库技术提供商,极限科技始终致力于搜索核心技术的研发与创新,基于国内搜索型数据库行业生态需求,在产品研发创新上,着力提升产品易用性、实时性、降低 IT 成本等,为推动国内搜索行业技术水平及相关技术社区的发展,建设数据强国提供强有力的基础技术支撑。
极限科技自成立起始终致力于提供本地化配套产品及解决方案,帮助客户解决在使用 Elasticsearch 时遇到的各种挑战。未来,极限科技将基于更多的真实客户场景提供个性化服务,持续丰富并完善更多维度、更高需求的企业级服务能力,与移动云等众多行业平台一起构建更“简单”的搜索服务。
关于极限科技
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。让搜索更简单是我们追求的目标。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
更多详情参见官网 (https://infinilabs.com) 。
收起阅读 »国内首家 | 极限科技率先完成信通院搜索型数据库行业标准测试
随着数字化转型的深入,非结构化数据越来越多地出现在各种类型的数据中,成为了最主要的数据元素,其中蕴藏着巨大的价值。根据 IDC 的预测,到 2025 年,非结构化的数据将占到 80%,而高德纳公司的预测,到 2024 年,这一数字将会是现在的三倍。当前,非结构化数据存在表征多样、管理复杂、价值挖掘困难等问题,而基于自动分词、倒排索引、关联度计算、矢量检索等技术的检索数据库,是实现非结构化数据高效处理的基本工具,自 90 年代产生至今,一直在发展和演变,已成为数据库研究的一个重要分支。
顺利完成首个搜索型数据库产品能力测试
《搜索型数据库技术要求》是中国信通院云计算与大数据研究所依托中国通信标准化协会大数据技术标准推进委员会(CCSA TC601)和中国信通院数据库应用创新实验室(CAICT DBL),联合阿里云、拓尔思、极限科技、星环科技、科大讯飞、百度、联通软研院等多家企业专家参与编制,融合国内行业专家丰富的实践经验与智慧,对搜索型数据库基础能力进行综合评判的行业权威标准。
2023 年 4 月 18 日,在中国信通院组织的第一批“搜索型数据库”产品能力评测中,极限数据 (北京) 科技有限公司(以下简称:极限科技)的 INFINI Easysearch 搜索型数据库软件【Easysearch】顺利完成了首个搜索型数据库产品能力测试。该测评依据《搜索型数据库技术要求》进行,该标准融合了国内行业专家丰富的实践经验与智慧,是对搜索型数据库基础能力的综合评判,覆盖数据库基本能力、数据库管理能力、数据库安全能力、数据库兼容能力、数据库扩展能力、数据库高可用能力,共计 32 个测试项目,包括 12 个必选项和 20 个可选项。
搜索型数据库在各行业的重要应用
1.金融行业:搜索型数据库可以帮助金融机构快速检索和分析海量的客户交易数据,预测市场趋势、评估客户风险、优化交易策略等。
2.通信行业:搜索型数据库可以帮助运营商管理和分析海量的网络数据,例如网络流量、网络性能、用户活跃度等,从而提高网络效率和用户体验。
3.制造业:搜索型数据库可以帮助制造企业高效管理和分析海量的生产数据,例如生产效率产品质量、供应链信息等,从而提高生产效率和产品质量。
4.零售行业:搜索型数据库可以帮助零售商快速检索和分析海量的销售数据,例如顾客购买记录、商品销售趋势、促销活动效果等,从而更好地制定营销策略、优化商品库存管理、提高销售业绩等。
5.医疗行业:搜索型数据库可以帮助医疗机构快速检索和分析海量的医疗数据,例如患者病历、医学论文、药品说明书等,从而更好地研究疾病、制定治疗方案、优化医疗资源等。
6.教育行业:搜索型数据库可以帮助教育机构快速检索和分析海量的教学数据,例如学生成绩、课程评价、教师绩效等,从而更好地优化教学策略、提高教学质量等。
INFINI Easysearch
极限科技研发的 INFINI Easysearch,是一款具备自主可控的分布式近实时搜索型数据库产品,具备高性能、高可用、弹性伸缩、高安全性等特性,具备支持丰富的个性化搜索及聚合分析能力,可部署在物理机、虚拟机、容器、私有云和公有云,能承载 PB 级别的海量业务数据,为金融核心系统、运营商、制造业和政企业务系统提供安全、稳定、可靠的快速检索和实时数据探索分析能力,可满足不同业务场景的各项复杂需求。
除了 Easysearch,极限科技还提供用于构建企业搜索基础设施的完整解决方案,通过云原生的方式来让企业高效治理大规模搜索集群,将分散的各个业务搜索计算资源合并归拢,通过资源统一调度管控,提升整体资源利用率和系统弹性,降低系统复杂度和 IT 运营成本,来持续满足业务的灵活多变需求,结合统一的安全、监控、告警、运维和管理等能力,达到统一管理、统一治理,降本增效,实现企业的搜索基础设施的平台化运营。
国内搜索型数据库最近几年发展迅速,关键技术逐渐突破,应用场景和数据规模也逐年上升,已经成为企业必不可少的核心基础设施,产业生态也日益繁荣。极限科技作为国内搜索型数据库产品厂商第一梯队的杰出代表,同时也是行业标准的起草单位之一,此次测试的成功通过,不仅代表着对 INFINI Easysearch 搜索型数据库软件 Easysearch 的权威性肯定,更代表着极限科技在“搜索数据库”产品的研究与创新上,取得了新的里程碑。
关于极限科技
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。让搜索更简单是我们追求的目标。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
更多详情参见官网 (https://infinilabs.com) 。
相关链接
随着数字化转型的深入,非结构化数据越来越多地出现在各种类型的数据中,成为了最主要的数据元素,其中蕴藏着巨大的价值。根据 IDC 的预测,到 2025 年,非结构化的数据将占到 80%,而高德纳公司的预测,到 2024 年,这一数字将会是现在的三倍。当前,非结构化数据存在表征多样、管理复杂、价值挖掘困难等问题,而基于自动分词、倒排索引、关联度计算、矢量检索等技术的检索数据库,是实现非结构化数据高效处理的基本工具,自 90 年代产生至今,一直在发展和演变,已成为数据库研究的一个重要分支。
顺利完成首个搜索型数据库产品能力测试
《搜索型数据库技术要求》是中国信通院云计算与大数据研究所依托中国通信标准化协会大数据技术标准推进委员会(CCSA TC601)和中国信通院数据库应用创新实验室(CAICT DBL),联合阿里云、拓尔思、极限科技、星环科技、科大讯飞、百度、联通软研院等多家企业专家参与编制,融合国内行业专家丰富的实践经验与智慧,对搜索型数据库基础能力进行综合评判的行业权威标准。
2023 年 4 月 18 日,在中国信通院组织的第一批“搜索型数据库”产品能力评测中,极限数据 (北京) 科技有限公司(以下简称:极限科技)的 INFINI Easysearch 搜索型数据库软件【Easysearch】顺利完成了首个搜索型数据库产品能力测试。该测评依据《搜索型数据库技术要求》进行,该标准融合了国内行业专家丰富的实践经验与智慧,是对搜索型数据库基础能力的综合评判,覆盖数据库基本能力、数据库管理能力、数据库安全能力、数据库兼容能力、数据库扩展能力、数据库高可用能力,共计 32 个测试项目,包括 12 个必选项和 20 个可选项。
搜索型数据库在各行业的重要应用
1.金融行业:搜索型数据库可以帮助金融机构快速检索和分析海量的客户交易数据,预测市场趋势、评估客户风险、优化交易策略等。
2.通信行业:搜索型数据库可以帮助运营商管理和分析海量的网络数据,例如网络流量、网络性能、用户活跃度等,从而提高网络效率和用户体验。
3.制造业:搜索型数据库可以帮助制造企业高效管理和分析海量的生产数据,例如生产效率产品质量、供应链信息等,从而提高生产效率和产品质量。
4.零售行业:搜索型数据库可以帮助零售商快速检索和分析海量的销售数据,例如顾客购买记录、商品销售趋势、促销活动效果等,从而更好地制定营销策略、优化商品库存管理、提高销售业绩等。
5.医疗行业:搜索型数据库可以帮助医疗机构快速检索和分析海量的医疗数据,例如患者病历、医学论文、药品说明书等,从而更好地研究疾病、制定治疗方案、优化医疗资源等。
6.教育行业:搜索型数据库可以帮助教育机构快速检索和分析海量的教学数据,例如学生成绩、课程评价、教师绩效等,从而更好地优化教学策略、提高教学质量等。
INFINI Easysearch
极限科技研发的 INFINI Easysearch,是一款具备自主可控的分布式近实时搜索型数据库产品,具备高性能、高可用、弹性伸缩、高安全性等特性,具备支持丰富的个性化搜索及聚合分析能力,可部署在物理机、虚拟机、容器、私有云和公有云,能承载 PB 级别的海量业务数据,为金融核心系统、运营商、制造业和政企业务系统提供安全、稳定、可靠的快速检索和实时数据探索分析能力,可满足不同业务场景的各项复杂需求。
除了 Easysearch,极限科技还提供用于构建企业搜索基础设施的完整解决方案,通过云原生的方式来让企业高效治理大规模搜索集群,将分散的各个业务搜索计算资源合并归拢,通过资源统一调度管控,提升整体资源利用率和系统弹性,降低系统复杂度和 IT 运营成本,来持续满足业务的灵活多变需求,结合统一的安全、监控、告警、运维和管理等能力,达到统一管理、统一治理,降本增效,实现企业的搜索基础设施的平台化运营。
国内搜索型数据库最近几年发展迅速,关键技术逐渐突破,应用场景和数据规模也逐年上升,已经成为企业必不可少的核心基础设施,产业生态也日益繁荣。极限科技作为国内搜索型数据库产品厂商第一梯队的杰出代表,同时也是行业标准的起草单位之一,此次测试的成功通过,不仅代表着对 INFINI Easysearch 搜索型数据库软件 Easysearch 的权威性肯定,更代表着极限科技在“搜索数据库”产品的研究与创新上,取得了新的里程碑。
关于极限科技
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。让搜索更简单是我们追求的目标。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
更多详情参见官网 (https://infinilabs.com) 。
相关链接
收起阅读 »INFINI 产品更新|Console v1.0 版本正式发布
本次 INFINI Labs 产品更新主要包括 Gateway v1.12.1、Console v1.0.0,其中 Console v1.0.0 是一个重要里程碑版本,该版本做了很多UI交互优化;集成了Github SSO 单点登录功能;新增了数据迁移功能,支持跨搜索引擎、跨版本的数据迁移;新增了数据看板,支持自定义可视化报表;以及修复已知Bug等。值得一提的是,Console 非常轻量级,安装包只有16MB,架构简洁,除了使用 Elasticsearch 当作数据存储外无任何外部依赖,包含监控、告警、安全、可视化分析等日常管理功能,欢迎下载使用。在线体验DEMO:https://play.infinilabs.com:64443,用户名密码 readonly/readonly。
INFINI Gateway v1.12.1
极限网关本次更新如下:
Bug fix
- Elasticsearch 修复偶现连接断开的问题。
- Elasticsearch 修复连接超时未返回错误信息的问题。
更多 Gateway 更新可参考【Gateway 版本历史】。
INFINI Console v1.0.0
Console 本次主要更新如下:
1、集成 Github 单点登录,方便快速登录,减少用户名和密码登录经常忘记带来的烦恼。详情查看教程
2、新增了工作台界面,作为 Console 登录后的入口页面,可以快速预览整个系统的集群资源概要信息、集群动态、常用功能快捷入口等。
3、新增了数据迁移功能,支持 Elasticsearch、Opensearch、Easysearch 等搜索引擎的所有版本之间相互迁移。需要搭配 最新版本极限网关(INFINI Gateway) 使用,详情查看教程
4、新增了数据看板功能,支持多标签页,支持折线图、柱状图、饼图等图表,支持用户自定义可视化数据报表,详情查看教程
5、数据探索 Discover 添加搜索关键词高亮功能。
除了以上主要功能外还做了很多优化和Bug fix,如下:
Features
- 数据迁移添加初始化索引 settings, mappings 可选步骤
- 数据迁移添加删除功能
Improvements
- 添加 Opening scroll context 监控指标
- 数据迁移分区设置优化
- 优化数据迁移错误日志和异常情况处理
- 迁移后目标集群和源集群文档数量不匹配,标记迁移任务为失败状态
Bug fix
- 修复新注册集群状态不同步更新的问题
- 修复低版本 ES 多 type 分区查询时没有根据 doctype 过滤的问题
- 修复特殊情况下迁移任务没有被释放的问题
- 修复迁移任务结束,队列磁盘文件未释放的问题
- 修复bulk写入失败导致迁移任务卡住的问题
更多 Console 更新可参考【Console 版本历史】。
期待反馈
欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。
- INFINI Gateway: https://github.com/infinilabs/gateway/issues
- INFINI Console: https://github.com/infinilabs/console/issues
- 官网: https://www.infinilabs.com
- 下载地址: https://www.infinilabs.com/download
您还可以通过邮件联系我们:hello@infini.ltd
或者拨打我们的热线电话:(+86) 400-139-9200
也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群讨论,或者扫码加入我们的知识星球一起学习交流。
最后祝大家周末愉快!
关于极限科技(INFINI Labs)
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
本次 INFINI Labs 产品更新主要包括 Gateway v1.12.1、Console v1.0.0,其中 Console v1.0.0 是一个重要里程碑版本,该版本做了很多UI交互优化;集成了Github SSO 单点登录功能;新增了数据迁移功能,支持跨搜索引擎、跨版本的数据迁移;新增了数据看板,支持自定义可视化报表;以及修复已知Bug等。值得一提的是,Console 非常轻量级,安装包只有16MB,架构简洁,除了使用 Elasticsearch 当作数据存储外无任何外部依赖,包含监控、告警、安全、可视化分析等日常管理功能,欢迎下载使用。在线体验DEMO:https://play.infinilabs.com:64443,用户名密码 readonly/readonly。
INFINI Gateway v1.12.1
极限网关本次更新如下:
Bug fix
- Elasticsearch 修复偶现连接断开的问题。
- Elasticsearch 修复连接超时未返回错误信息的问题。
更多 Gateway 更新可参考【Gateway 版本历史】。
INFINI Console v1.0.0
Console 本次主要更新如下:
1、集成 Github 单点登录,方便快速登录,减少用户名和密码登录经常忘记带来的烦恼。详情查看教程
2、新增了工作台界面,作为 Console 登录后的入口页面,可以快速预览整个系统的集群资源概要信息、集群动态、常用功能快捷入口等。
3、新增了数据迁移功能,支持 Elasticsearch、Opensearch、Easysearch 等搜索引擎的所有版本之间相互迁移。需要搭配 最新版本极限网关(INFINI Gateway) 使用,详情查看教程
4、新增了数据看板功能,支持多标签页,支持折线图、柱状图、饼图等图表,支持用户自定义可视化数据报表,详情查看教程
5、数据探索 Discover 添加搜索关键词高亮功能。
除了以上主要功能外还做了很多优化和Bug fix,如下:
Features
- 数据迁移添加初始化索引 settings, mappings 可选步骤
- 数据迁移添加删除功能
Improvements
- 添加 Opening scroll context 监控指标
- 数据迁移分区设置优化
- 优化数据迁移错误日志和异常情况处理
- 迁移后目标集群和源集群文档数量不匹配,标记迁移任务为失败状态
Bug fix
- 修复新注册集群状态不同步更新的问题
- 修复低版本 ES 多 type 分区查询时没有根据 doctype 过滤的问题
- 修复特殊情况下迁移任务没有被释放的问题
- 修复迁移任务结束,队列磁盘文件未释放的问题
- 修复bulk写入失败导致迁移任务卡住的问题
更多 Console 更新可参考【Console 版本历史】。
期待反馈
欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。
- INFINI Gateway: https://github.com/infinilabs/gateway/issues
- INFINI Console: https://github.com/infinilabs/console/issues
- 官网: https://www.infinilabs.com
- 下载地址: https://www.infinilabs.com/download
您还可以通过邮件联系我们:hello@infini.ltd
或者拨打我们的热线电话:(+86) 400-139-9200
也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群讨论,或者扫码加入我们的知识星球一起学习交流。
最后祝大家周末愉快!
关于极限科技(INFINI Labs)
极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
收起阅读 »【门票赠送】下周!院士及行业专家将齐聚第四届OpenI/O启智开发者大会
大会简介
OpenI/O启智开发者大会是OpenI启智社区的年度盛会。大会立足于国际国内开源大环境和发展趋势,侧重AI领域前沿技术分享和自主AI开源项目的展示,汇聚专家学者碰撞思想火花,凝聚发展共识,既有院士级专家们高屋建瓴的点评与引导,又有行业专家最前沿技术的分享,同时也为普通开发者提供大量AI模型与应用开发的线上教学与实践机会。[图片]
大会亮点
- 专家主题演讲
- 北京智源人工智能研究院、北京大学、百度等启智社区核心成员单位各自的优秀开源项目分享
- 2022年度优秀开源项目团队及社区优秀开发者颁奖
- 设立八个国家级开放创新平台合作签约
- 启智社区分中心授牌
- 《中国城市人工智能发展指数报告》发布
- 为开发者分享各类前沿动态与实践学习的机会
- 直面各厂商技术专家,获取一线面试经验/机会,还可进入招聘内推面试群
- 有望于行业大咖合影
- 结识志同道合的行业伙伴,组织头脑风暴,产生更多思想碰撞
大会主题
- 算网筑基、开源启智、AI赋能
本届OpenI/O启智开发者大会计划以“算网筑基、开源启智、AI赋能”为主题,邀请国内人工智能开源领域领军院士亲自参与,汇聚学术界、产业界的技术专家,围绕中国算力网资源基座、开源社区服务支撑环境、国家级开放创新应用平台三大部分,探讨如何高效建设适合我国的人工智能开源生态体系,惠及广大开发者群体。
大会信息
时间:2023年2月24日-25日
地点:深圳人才研修院
主题:算网筑基、开源启智、AI赋能
参与方式:
日程安排
2月24日上午 OpenI/O启智开发者大会主论坛
1、领导致辞
2、院士、学者、专家大咖系列Keynotes
3、国家级开放创新平台签约仪式
4、启智分中心授牌仪式
5、CCF开源相关发布
6、《中国城市人工智能发展指数报告》发布
7、启智社区优秀开源项目与开发者颁奖
2月24日下午及25日 OpenI/O启智开发者大会专题分论
1、专场一(24日下午):
NLP大模型论坛(开源集智创新探索中文NLP大模型生态发展)
2、专场二(24日下午):
深度学习与大模型产业应用专场(引领前沿技术,推动产业升级)
3、专场三(24日下午):
开源治理论坛(构建开源联合体,共建开源生态)
4、专场四(25日上午):
昇腾人工智能应用专场(数智未来,因你而来)
5、专场五(25日上午):
高校开源专场(因“AI”而“深”)
组织架构
主办单位:鹏城实验室、新一代人工智能产业技术创新战略联盟(AITISA)
承办单位:OpenI启智社区、中关村视听产业技术创新联盟(AVSA)
协办单位:华为技术有限公司、百度在线网络技术(北京)有限公司、CCF开源发展委员会
支持单位:广东省人工智能与机器人学会、国家超高清视频创新中心(深圳)
支持媒体:CSDN、InfoQ、雷峰网
合作机构:LF AI&DATA、OpenSSF基金会、开放原子开源基金会、开源科技OSTech、开源高校OSU、GDG广州、GDG东莞、开放群岛社区、开源中国、昇腾社区、飞桨社区、木兰开源社区、白玉兰开源社区、阿浦美股研究院
展望未来
希望OpenI/O启智开发者大会让更多怀揣着开源梦想的开发者加入到开源创新活动中来,让中国开源技术在万物互联的智慧时代爆发,培养更多高校开源人才,为他们搭建展示自身创造力的平台,形成良性可期的开源持续发展生态。
大会简介
OpenI/O启智开发者大会是OpenI启智社区的年度盛会。大会立足于国际国内开源大环境和发展趋势,侧重AI领域前沿技术分享和自主AI开源项目的展示,汇聚专家学者碰撞思想火花,凝聚发展共识,既有院士级专家们高屋建瓴的点评与引导,又有行业专家最前沿技术的分享,同时也为普通开发者提供大量AI模型与应用开发的线上教学与实践机会。[图片]
大会亮点
- 专家主题演讲
- 北京智源人工智能研究院、北京大学、百度等启智社区核心成员单位各自的优秀开源项目分享
- 2022年度优秀开源项目团队及社区优秀开发者颁奖
- 设立八个国家级开放创新平台合作签约
- 启智社区分中心授牌
- 《中国城市人工智能发展指数报告》发布
- 为开发者分享各类前沿动态与实践学习的机会
- 直面各厂商技术专家,获取一线面试经验/机会,还可进入招聘内推面试群
- 有望于行业大咖合影
- 结识志同道合的行业伙伴,组织头脑风暴,产生更多思想碰撞
大会主题
- 算网筑基、开源启智、AI赋能
本届OpenI/O启智开发者大会计划以“算网筑基、开源启智、AI赋能”为主题,邀请国内人工智能开源领域领军院士亲自参与,汇聚学术界、产业界的技术专家,围绕中国算力网资源基座、开源社区服务支撑环境、国家级开放创新应用平台三大部分,探讨如何高效建设适合我国的人工智能开源生态体系,惠及广大开发者群体。
大会信息
时间:2023年2月24日-25日
地点:深圳人才研修院
主题:算网筑基、开源启智、AI赋能
参与方式:
日程安排
2月24日上午 OpenI/O启智开发者大会主论坛
1、领导致辞
2、院士、学者、专家大咖系列Keynotes
3、国家级开放创新平台签约仪式
4、启智分中心授牌仪式
5、CCF开源相关发布
6、《中国城市人工智能发展指数报告》发布
7、启智社区优秀开源项目与开发者颁奖
2月24日下午及25日 OpenI/O启智开发者大会专题分论
1、专场一(24日下午):
NLP大模型论坛(开源集智创新探索中文NLP大模型生态发展)
2、专场二(24日下午):
深度学习与大模型产业应用专场(引领前沿技术,推动产业升级)
3、专场三(24日下午):
开源治理论坛(构建开源联合体,共建开源生态)
4、专场四(25日上午):
昇腾人工智能应用专场(数智未来,因你而来)
5、专场五(25日上午):
高校开源专场(因“AI”而“深”)
组织架构
主办单位:鹏城实验室、新一代人工智能产业技术创新战略联盟(AITISA)
承办单位:OpenI启智社区、中关村视听产业技术创新联盟(AVSA)
协办单位:华为技术有限公司、百度在线网络技术(北京)有限公司、CCF开源发展委员会
支持单位:广东省人工智能与机器人学会、国家超高清视频创新中心(深圳)
支持媒体:CSDN、InfoQ、雷峰网
合作机构:LF AI&DATA、OpenSSF基金会、开放原子开源基金会、开源科技OSTech、开源高校OSU、GDG广州、GDG东莞、开放群岛社区、开源中国、昇腾社区、飞桨社区、木兰开源社区、白玉兰开源社区、阿浦美股研究院
展望未来
希望OpenI/O启智开发者大会让更多怀揣着开源梦想的开发者加入到开源创新活动中来,让中国开源技术在万物互联的智慧时代爆发,培养更多高校开源人才,为他们搭建展示自身创造力的平台,形成良性可期的开源持续发展生态。 收起阅读 »
让世界听到开源的声音 | 2022国际开源节邀您参展!
- 国际开源教育与人才培养论坛
时间:11月6日9:00-12:10
随着不同开源技术的兴起以及机构持续进行数字化转型的活动,业界需要更多开源技术的人才,尤其在云原生、开源安全性、AI、边缘计算、区块链等等不同领域。本次论坛,OSTech联合Linux Foundation 开源软件学园 (LFOSSA)共同举办,共同探讨开源人才培养的话题以及女性在开源中承担的力量,敬请期待!
- 机器学习中国峰会
时间:11月6日13:00-16:40
以机器学习为代表的人工智能技术,已经被业界公认为是自互联网以来最伟大的技术革命。目前机器学习已经在自动驾驶、医疗、金融、电商、社交、能源、教育……作出了突出的贡献。随着人工智能的迅速普及与落地应用,相关基础架构得到了很大的突破,深度学习领域也诞生了非常实用的平台和框架,如 TensorFlow、PyTorch、Keras、Caffe、Theano、MXNet 等等,为了推动人工智能及机器学习技术的发展和实践交流,“机器学习中国峰会(Machine Learning China Summit)” 将在2022国际开源节盛大召开。
- OpenSSF开源安全中国峰会
时间:11月7日9:00-17:00
当前开源软件的安全问题依旧严重,代码中的安全缺陷密度较高。开源软件实际上已经成为软件开发的核心基础设施,开源软件的安全问题应该上升到基础设施安全的高度来对待,应该得到更多的、更广泛的重视。OpenSSF开源安全中国峰会将关注和防范开源软件安全风险,为国内软件的安全开发水平提高贡献一份力量。
- Hyperledger区块链技术峰会
时间:11月8日9:00-12:25
“当今社会正处于数字化转型升级当中,数据如何确权和流转是全社会共同关注的话题,几乎所有企业受到人工智能、区块链、云计算等技术的影响; Web 3.0、元宇宙、数字藏品等是当前科技行业的"热门”科技词汇,也是当前科技圈大咖们最关注的话题。区块链在数字化转型过程中起到什么样的作用在新一代互联网——Web3.0当中扮演什么的角色?”超级账本携手可信区块链推进计划及OSTech,为大家带来Hyperledger区块链技术峰会。
- CNCF云原生论坛
时间:11月8日13:30-16:50
根据Forrester数据显示,在2021年,全球云原生应用持续上升,组织中容器和无服务器技术的使用率在一年内都增长了75%以上。并且根据Gartner预测,到2025年,将会有超过95%的新数字工作负载被部署在云原生平台上,而在2021年这一比例只有30%。因此OSTech联合CNCF举行云原生论坛,重点围绕“DevOps,CI/CD”、“容器,多云管理”、“云原生安全”、“监视,可观测性”、“虚拟化、原生应用案例”、“云原生和其他技术整合( 云原生+)”等专题,邀请海内外技术专家在专场论坛上共话云原生,深度为大家介绍云原生相关技术。
- 国际开源教育与人才培养论坛
时间:11月6日9:00-12:10
随着不同开源技术的兴起以及机构持续进行数字化转型的活动,业界需要更多开源技术的人才,尤其在云原生、开源安全性、AI、边缘计算、区块链等等不同领域。本次论坛,OSTech联合Linux Foundation 开源软件学园 (LFOSSA)共同举办,共同探讨开源人才培养的话题以及女性在开源中承担的力量,敬请期待!
- 机器学习中国峰会
时间:11月6日13:00-16:40
以机器学习为代表的人工智能技术,已经被业界公认为是自互联网以来最伟大的技术革命。目前机器学习已经在自动驾驶、医疗、金融、电商、社交、能源、教育……作出了突出的贡献。随着人工智能的迅速普及与落地应用,相关基础架构得到了很大的突破,深度学习领域也诞生了非常实用的平台和框架,如 TensorFlow、PyTorch、Keras、Caffe、Theano、MXNet 等等,为了推动人工智能及机器学习技术的发展和实践交流,“机器学习中国峰会(Machine Learning China Summit)” 将在2022国际开源节盛大召开。
- OpenSSF开源安全中国峰会
时间:11月7日9:00-17:00
当前开源软件的安全问题依旧严重,代码中的安全缺陷密度较高。开源软件实际上已经成为软件开发的核心基础设施,开源软件的安全问题应该上升到基础设施安全的高度来对待,应该得到更多的、更广泛的重视。OpenSSF开源安全中国峰会将关注和防范开源软件安全风险,为国内软件的安全开发水平提高贡献一份力量。
- Hyperledger区块链技术峰会
时间:11月8日9:00-12:25
“当今社会正处于数字化转型升级当中,数据如何确权和流转是全社会共同关注的话题,几乎所有企业受到人工智能、区块链、云计算等技术的影响; Web 3.0、元宇宙、数字藏品等是当前科技行业的"热门”科技词汇,也是当前科技圈大咖们最关注的话题。区块链在数字化转型过程中起到什么样的作用在新一代互联网——Web3.0当中扮演什么的角色?”超级账本携手可信区块链推进计划及OSTech,为大家带来Hyperledger区块链技术峰会。
- CNCF云原生论坛
时间:11月8日13:30-16:50
根据Forrester数据显示,在2021年,全球云原生应用持续上升,组织中容器和无服务器技术的使用率在一年内都增长了75%以上。并且根据Gartner预测,到2025年,将会有超过95%的新数字工作负载被部署在云原生平台上,而在2021年这一比例只有30%。因此OSTech联合CNCF举行云原生论坛,重点围绕“DevOps,CI/CD”、“容器,多云管理”、“云原生安全”、“监视,可观测性”、“虚拟化、原生应用案例”、“云原生和其他技术整合( 云原生+)”等专题,邀请海内外技术专家在专场论坛上共话云原生,深度为大家介绍云原生相关技术。 收起阅读 »
2022国际开源节(IOSF):被疫情追着打的这一年(再度改期)
尊敬的各位参展商、采购商、参会嘉宾及合作伙伴:
为了保证参展和参观效果,经与政府相关主管部门、展馆等多方协调沟通,主办方就2022国际开源节(IOSF)的举办时间进行微调,由原来的11月5-7日调整为11月6-8日,在深圳会展中心(福田)1/9号馆隆重举行!
因展会改期给您带来的不便,我们深表歉意,恳请各位谅解与支持!我们将持续密切关注疫情发展态势,积极与各方保持沟通,全力以赴做好各项后续服务。
感谢业界同仁对本次活动一如既往的支持与关注,我们有信心为大家呈现一场精彩纷呈并富有成效的行业盛会。期待您继续关注2022国际开源节!
2022国际开源节组委会
深圳市开源科技咨询有限公司
尊敬的各位参展商、采购商、参会嘉宾及合作伙伴:
为了保证参展和参观效果,经与政府相关主管部门、展馆等多方协调沟通,主办方就2022国际开源节(IOSF)的举办时间进行微调,由原来的11月5-7日调整为11月6-8日,在深圳会展中心(福田)1/9号馆隆重举行!
因展会改期给您带来的不便,我们深表歉意,恳请各位谅解与支持!我们将持续密切关注疫情发展态势,积极与各方保持沟通,全力以赴做好各项后续服务。
感谢业界同仁对本次活动一如既往的支持与关注,我们有信心为大家呈现一场精彩纷呈并富有成效的行业盛会。期待您继续关注2022国际开源节!
2022国际开源节组委会
深圳市开源科技咨询有限公司 收起阅读 »
2022国际开源节延期通知 | 待疫去花开,我们相约鹏城,不见不散!
致尊敬的各参展商、合作单位、媒体及观众朋友:
鉴于近期深圳市新冠疫情防控形势严峻,为贯彻政府对疫情防控工作的相关要求,保障广大参展商、参观者的身体健康和展出、参观效果,经充分听取各方意见,深圳国际电子展和2022国际开源节组委会审慎决定原定于2022年9月15-17日在深圳会展中心举办的“2022国际开源节”将延期举办,复展具体时间,我们将根据疫情防控情况尽快通知。
衷心感谢社会各界一直以来对“2022国际开源节”的关注、支持与理解,我们深知展会延期给您带来不便,在此我们深表歉意。我们相信,所有与会人员都希望在一个安全、健康、有序、温馨的环境下共同参与盛会。作为“2022国际开源节”的主办方,我们将密切关注疫情的发展形势,动态调整大会预案,及时与各位参展商、观众、业界伙伴们沟通,竭诚做好后续服务,持续进行线上宣传推广,全力以赴保证大会的高品质举办,为行业发展增势储能。
众志成城,共克时艰!期待您继续关注2022国际开源节!
2022国际开源节组委会
2022年9月5日
致尊敬的各参展商、合作单位、媒体及观众朋友:
鉴于近期深圳市新冠疫情防控形势严峻,为贯彻政府对疫情防控工作的相关要求,保障广大参展商、参观者的身体健康和展出、参观效果,经充分听取各方意见,深圳国际电子展和2022国际开源节组委会审慎决定原定于2022年9月15-17日在深圳会展中心举办的“2022国际开源节”将延期举办,复展具体时间,我们将根据疫情防控情况尽快通知。
衷心感谢社会各界一直以来对“2022国际开源节”的关注、支持与理解,我们深知展会延期给您带来不便,在此我们深表歉意。我们相信,所有与会人员都希望在一个安全、健康、有序、温馨的环境下共同参与盛会。作为“2022国际开源节”的主办方,我们将密切关注疫情的发展形势,动态调整大会预案,及时与各位参展商、观众、业界伙伴们沟通,竭诚做好后续服务,持续进行线上宣传推广,全力以赴保证大会的高品质举办,为行业发展增势储能。
众志成城,共克时艰!期待您继续关注2022国际开源节!
2022国际开源节组委会
2022年9月5日
收起阅读 »
2022国际开源节(IOSF)锁定9月,元宇宙产业风向标地位稳了!
2022国际开源节的O3DE元宇宙体验中心,通过元宇宙技术层、应用层、场景层三大领域,让到场观众体会触手可及的元宇宙体验,并从底层技术揭开元宇宙的神秘面纱。同时,通过 O3DF - 元宇宙专场论坛,探索元宇宙产业未来发展趋势、生态建设以及落地应用场景,打造中国特色的元宇宙资源超级连接器及展贸窗口。
本次IOSF展会期间,展览将覆盖元宇宙领域相关硬件、软件、内容、技术、应用、上下游合作伙伴等全产业链,全景呈现元宇宙产业的无限可能,我们将带大家身临其境,体验 O3DE 元宇宙空间。展会观众可以体验沉浸式逛展,足不出户就能到达元宇宙会场,以超现实的方式感受前沿产品和科技,精彩纷呈,逛足三天。
2022国际开源节的O3DE元宇宙体验中心,通过元宇宙技术层、应用层、场景层三大领域,让到场观众体会触手可及的元宇宙体验,并从底层技术揭开元宇宙的神秘面纱。同时,通过 O3DF - 元宇宙专场论坛,探索元宇宙产业未来发展趋势、生态建设以及落地应用场景,打造中国特色的元宇宙资源超级连接器及展贸窗口。
本次IOSF展会期间,展览将覆盖元宇宙领域相关硬件、软件、内容、技术、应用、上下游合作伙伴等全产业链,全景呈现元宇宙产业的无限可能,我们将带大家身临其境,体验 O3DE 元宇宙空间。展会观众可以体验沉浸式逛展,足不出户就能到达元宇宙会场,以超现实的方式感受前沿产品和科技,精彩纷呈,逛足三天。
收起阅读 »
Open Source@Scale!2022年国际开源节(IOSF)全球首发!
由OSTech携手环球资源,联合中国信息通信研究院、Linux基金会亚太区发起策划,在CTIS消费者科技及创新展览会落地,并聚集了包括中国科学院软件研究所、CNCF、LF AI & Data、LFOSSA、LF Edge、OpenSSF、Hyperledger基金会等国际一流开源基金会和机构,GDG、开源中国等全球知名开发者社区,以及上海开源信息技术协会等本地开源力量的共建支持。国际开源节旨在汇聚全球开源技术与项目,融合国际文化、开源社区生态和开源产业发展,构建“共创共赢”的开源文化,打造中国开源新生态。
由OSTech携手环球资源,联合中国信息通信研究院、Linux基金会亚太区发起策划,在CTIS消费者科技及创新展览会落地,并聚集了包括中国科学院软件研究所、CNCF、LF AI & Data、LFOSSA、LF Edge、OpenSSF、Hyperledger基金会等国际一流开源基金会和机构,GDG、开源中国等全球知名开发者社区,以及上海开源信息技术协会等本地开源力量的共建支持。国际开源节旨在汇聚全球开源技术与项目,融合国际文化、开源社区生态和开源产业发展,构建“共创共赢”的开源文化,打造中国开源新生态。 收起阅读 »