1. 内容概述
Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。
Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。
本节为您介绍如何在Wyn系统中连接南大通用 ElasticSearch 数据库。
2. 驱动说明
创建ElasticSearch 数据连接前,需要手动下载驱动。
Elasticsearch jdbc 驱动下载地址:https://www.elastic.co/cn/downloads/past-releases#jdbc-client
在Wyn 系统的安装目录 Datasource service 下,手动创建目录 third-party-drivers/elasticsearch,将下载好的驱动放入即可。
3. 连接 ElasticSearch 数据源
(1) 在系统的门户网站中单击,选择“数据源”。
(2) 在左侧数据源列表或者在右侧图标视图中选择 ElasticSearch(Beta)。
(3) 填写数据库配置信息。
参数 | 说明 |
---|
名称 | 必填参数,自定义输入数据源的名称。 |
服务器 | 服务器名或IP。 |
端口 | 端口号,默认为9200。 |
用户名 | 连接数据库的用户名。 |
密码 | 连接数据库用户的密码。 |
使用配置连接字符串(高级) | 如果您勾选了此选项,则只需要填写此项与数据源的名称即可。填写此项的格式为: jdbc:es://myServerAddress:mySeverPort/?user=myUser&password=myPassword |
使用表/字段名称映射 | 修改数据源中的表名或列名,使其在数据集中显示为希望的名称。 详情请见使用表/字段名称映射(修改数据源表名或列名)。 |
(4) (可选)可通过单击页面左下角的“测试数据连接”按钮测试连接是否正常。
连接成功后,单击“确定”按钮。
(5) 单击“创建”按钮,创建数据源。
(6) 创建成功后,在门户站点中的“未分类”和“数据源”中均可以看到刚刚创建的数据源。单击数据源的名称即可预览。
数据源创建成功后即可进行仪表板(报表)数据集,以供后续数据分析展示使用。
4. 数据源管理
数据源创建成功后,可在门户网站中对其进行管理操作。
可以像其他文档一样进行编辑、设为主页、复制链接、管理分类、删除、下载、重命名等一系列管理操作,具体操作请详见第三章 门户网站介绍。
5. 注意事项
我们系统当前支持的SQL标准是SQL92,但是ElasticSearch的原始SQL语法与SQL92有很大不同,因此我们选择ElasticSearch的JDBC驱动程序来支持标准SQL,但是它有如下限制。
- ElasticSearch 数据源不支持联合和连接操作,因此在数据集中,不支持将两个ElasticSearch表进行联合或连接操作。但是可以跨数据源与其他数据源中的表联合或连接。
- 在数据集中使用聚合函数时,不支持引用字段别名。
- 在数据集设计器中,不能使用“分组”模式,仅能使用“详情”模式。
- 当前版本中,不支持在 ElasticSearch 上使用任何参数。
- 在系统中无法使用不包含任何字段和内容,也即空的 Index。
- 仅支持 ElasticSearch SQL数据类型,不支持其他类型。也即只有以下DataType可以在数据集设计器中选择使用:NULL,BOOLEAN,TINYINT,SMALLINT,INTEGER,BIGINT,DOUBLE,REAL,FLOAT,VARCHAR,VARBINARY和TIMESTAMP
- 不支持使用函数 DISTINCT_COUNT。
- ElasticSearch double类型表示的范围比 javascript double 类型的范围更大,因此多余的数据将被自动拦截。
例如,如果为f或double类型,则数据库中显示的数字为-9223372036884775808,但是页面上的显示可能为-9223372036884776000。 - 某些双精度类型可能会降低精度。
例如,13533592802显示为13533592801.999998。 - 无法支持值为“ true”,“ false”或“”的布尔值字段。Elasticsearch JDBC 驱动程序仅查询值为true或false的布尔字段。
- Wyn 系统中不能显示 ElasticSearch 数据库中的 object 和 nested 数据类型,所以建议您尽量避免使用这两种数据类型。