【问题标题】:Load elasticsearch data in knime在 knime 中加载 elasticsearch 数据
【发布时间】:2022-02-02 22:44:21
【问题描述】:

我在 elasticsearch 中加载了一个数据库,我想从 KNIME 访问它以创建推荐系统。如何连接这两个应用程序?

【问题讨论】:

标签: elasticsearch knime


【解决方案1】:

您可以在 knime 中使用 python 代码来完成。 代码在上面

from pandas import DataFrame
output_table = DataFrame()

from elasticsearch import Elasticsearch
import json
import pandas as pd

esclient = Elasticsearch(['http://XX.YYYY.ZZZ.TTT:9200'])
response = esclient.search(
index='rtimlog-2018.11.02',
body={
   "query": {
    "match": {
      "message.eventParameters.Msisdn.keyword": {
        "query": "532XXXXX",
      }
    }
  }
}
)

columns=['A']
df = pd.DataFrame( columns=columns)


for hit in response['hits']['hits']: 
    X= json.dumps(hit['_source']['message'])
    df.loc[i]=X

output_table = df

【讨论】:

    【解决方案2】:

    这是一个较旧的主题,当时有 REST、Python 或 JDBC 解决方法。依稀记得REST方式是fiddly,因为KNIME不支持GET带body的请求。

    幸运的是,现在有一个专用的商业扩展支持读写 Elasticsearch(当前版本 6 和 7)。

    您可以在这里找到更多信息:https://nodepit.com/product/elasticsearch

    【讨论】:

      猜你喜欢
      • 2017-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-24
      • 2016-12-30
      • 1970-01-01
      相关资源
      最近更新 更多