将包含 LONGTEXT 字段的 MySQL 表索引到 Elastic Search

Posted

技术标签:

【中文标题】将包含 LONGTEXT 字段的 MySQL 表索引到 Elastic Search【英文标题】:Indexing a MySQL table containing LONGTEXT field into Elastic Search 【发布时间】:2019-06-06 00:42:54 【问题描述】:

该表包含一个 LONGTEXT 字段,其中包含特殊字符,包括引号和逗号。

我怎样才能把这个表放到 Elastic Search 中?

将表导出为 CSV,然后使用 Logstash 可以工作。但是引号和空格会导致解析额外的列。

【问题讨论】:

【参考方案1】:

CSV 不是此类更复杂数据的理想格式。您可以尝试导出到另一个结构,如 json (example of how to export a table to JSON)。

从那里,您可以使用bulk API 插入数据。

【讨论】:

文本中的引号是否也会导致 JSON 出现问题? 文档中提到特殊字符 at 用反斜杠转义。我建议试一试并检查 json。

以上是关于将包含 LONGTEXT 字段的 MySQL 表索引到 Elastic Search的主要内容,如果未能解决你的问题,请参考以下文章

mysql中text,longtext,mediumtext字段类型的意思,以及区别

MySql中LongText类型大字段查询优化

MySQL 视图中 LONGTEXT 字段的 JPA 本机查询导致错误

我应该使用另一列来显示 LONGTEXT 是不是包含数据? [关闭]

mysql客户端中使用简单的SQL语句来更新名为‘desc’的longtext类型字段,报错1064

将索引应用于 Blob/Longtext 字段