elasticsearch - 如何使用CURL将CSV上传到AWS Elasticsearch?

标签 elasticsearch curl

我收到了包含数百万条记录的庞大CSV文件。我想将其上传到aws elasticsearch以运行一些查询。我尝试将CS​​V转换为AWS文档中提到的JSON格式,格式如下:

{ "index" : { "_index": "movies", "_type" : "_doc", "_id" : "2" } }
{"director": "Frankenheimer, John", "genre": ["Drama", "Mystery", "Thriller"], "year": 1962, "actor": ["Lansbury, Angela", "Sinatra, Frank", "Leigh, Janet", "Harvey, Laurence", "Silva, Henry", "Frees, Paul", "Gregory, James", "Bissell, Whit", "McGiver, John", "Parrish, Leslie", "Edwards, James", "Flowers, Bess", "Dhiegh, Khigh", "Payne, Julie", "Kleeb, Helen", "Gray, Joe", "Nalder, Reggie", "Stevens, Bert", "Masters, Michael", "Lowell, Tom"], "title": "The Manchurian Candidate"}
{ "index" : { "_index": "movies", "_type" : "_doc", "_id" : "3" } }
{"director": "Baird, Stuart", "genre": ["Action", "Crime", "Thriller"], "year": 1998, "actor": ["Downey Jr., Robert", "Jones, Tommy Lee", "Snipes, Wesley", "Pantoliano, Joe", "Jacob, Ir\u00e8ne", "Nelligan, Kate", "Roebuck, Daniel", "Malahide, Patrick", "Richardson, LaTanya", "Wood, Tom", "Kosik, Thomas", "Stellate, Nick", "Minkoff, Robert", "Brown, Spitfire", "Foster, Reese", "Spielbauer, Bruce", "Mukherji, Kevin", "Cray, Ed", "Fordham, David", "Jett, Charlie"], "title": "U.S. Marshals"}
{ "index" : { "_index": "movies", "_type" : "_doc", "_id" : "4" } }
{"director": "Ray, Nicholas", "genre": ["Drama", "Romance"], "year": 1955, "actor": ["Hopper, Dennis", "Wood, Natalie", "Dean, James", "Mineo, Sal", "Backus, Jim", "Platt, Edward", "Ray, Nicholas", "Hopper, William", "Allen, Corey", "Birch, Paul", "Hudson, Rochelle", "Doran, Ann", "Hicks, Chuck", "Leigh, Nelson", "Williams, Robert", "Wessel, Dick", "Bryar, Paul", "Sessions, Almira", "McMahon, David", "Peters Jr., House"], "title": "Rebel Without a Cause"}

但是我无法执行此操作,因为我无法自动执行此任务。是否有这样做的软件?
然后我读到可以使用CURL并使用以下示例脚本:
while read f1
do        
   curl -XPOST 'https://XXXXXXX.us-east-1.aws.found.io:9243/subway_info_v1/station' -H "Content-Type: application/json" -u elastic:XXXX -d "{ \"station\": \"$f1\" }"
done < NYC_Transit_Subway_Entrance_And_Exit_Data.csv

但是这个问题是它逐行读取CSV并按原样上传。它不会将行分成多列,因此也不起作用。
我找不到任何提及我要完成的任务的DOC或教程。你能建议点什么吗?

最佳答案

关于elasticsearch - 如何使用CURL将CSV上传到AWS Elasticsearch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58635308/

相关文章:

elasticsearch - 如何配置Filebeat Kubernetes Deamon以在 namespace 或Pod名称上建立索引

Elasticsearch 查询结果过多

node.js - 如何在 Elasticsearch 中使用 multi_match 查询传递多个值以在多个记录中搜索多个字段

重定向时,curl/wget 无法解析与浏览器相同的 URL

json - 使用 GitHub api 调用 WebRequest 失败 - "Problems parsing json"

javascript - Elasticsearch-模糊搜索未给出建议

java - 处理空指针异常不起作用

c++ - 从 c/c++ 或 linux 发布到 facebook 墙上

python-3.x - Python 请求与curl

php - 无法在Docker容器中使用NGINX子域