日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用Logstash,JDBC将数据聚合并索引到Elasticsearch中

發布時間:2023/12/3 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Logstash,JDBC将数据聚合并索引到Elasticsearch中 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

介紹

在我以前的帖子在這里和這里我展示了如何使用JDBC和Elasticsearch JDBC進口商庫從SQL數據庫索引數據到Elasticsearch。 在這里的第一篇文章中,我提到了使用導入程序庫的一些缺點,這些缺點我已在此處復制:

  • 不支持ES版本5及更高版本
  • 嵌套對象數組中可能存在重復的對象。 但是重復數據刪除可以在應用程序層進行處理。
  • 對最新ES版本的支持可能會延遲。

使用Logstash及其以下插件可以克服以上所有缺點:

  • JDBC Input插件 –用于使用JDBC從SQL DB讀取數據
  • 聚合過濾器插件 –用于將SQL DB中的行聚合到嵌套對象中。

我將使用最新的ES版,即5.63可以從Elasticsearch網站下載這里 。 我們將使用此處可用的映射創建索引world_v2。

$ curl -XPUT --header "Content-Type: application/json" http://localhost:9200/world_v2 -d @world-index.json

或使用Postman REST客戶端,如下所示:

要確認索引已成功創建,請在瀏覽器中打開此URL http:// localhost:9200 / world_v2,以得到類似于以下內容的內容:

創建Logstash配置文件

我們應該選擇等效的logstash版本,即5.6.3,可以從此處下載。 然后,我們需要使用以下命令安裝JDBC輸入插件,聚合過濾器插件和Elasticsearch輸出插件:

bin/logstash-plugin install logstash-input-jdbc bin/logstash-plugin install logstash-filter-aggregate bin/logstash-plugin install logstash-output-elasticsearch

我們需要將以下內容復制到bin目錄中,以便能夠運行我們將在接下來定義的配置:

  • 從此處下載MySQL JDBC jar。
  • 從此處下載包含用于獲取數據的SQL查詢的文件。
  • 我們將上述內容復制到Logstash的bin目錄或您將擁有logstash配置文件的任何目錄中,這是因為我們在配置中使用這兩個文件的相對路徑來引用這兩個文件。 下面是Logstash配置文件:

    input {jdbc {jdbc_connection_string => "jdbc:mysql://localhost:3306/world"jdbc_user => "root"jdbc_password => "mohamed"# The path to downloaded jdbc driverjdbc_driver_library => "mysql-connector-java-5.1.6.jar"jdbc_driver_class => "Java::com.mysql.jdbc.Driver"# The path to the file containing the querystatement_filepath => "world-logstash.sql"} } filter {aggregate {task_id => "%{code}"code => "map['code'] = event.get('code')map['name'] = event.get('name')map['continent'] = event.get('continent')map['region'] = event.get('region')map['surface_area'] = event.get('surface_area')map['year_of_independence'] = event.get('year_of_independence')map['population'] = event.get('population')map['life_expectancy'] = event.get('life_expectancy')map['government_form'] = event.get('government_form')map['iso_code'] = event.get('iso_code')map['capital'] = {'id' => event.get('capital_id'), 'name' => event.get('capital_name'),'district' => event.get('capital_district'),'population' => event.get('capital_population')}map['cities_list'] ||= []map['cities'] ||= []if (event.get('cities_id') != nil)if !( map['cities_list'].include? event.get('cities_id') ) map['cities_list'] << event.get('cities_id')map['cities'] << {'id' => event.get('cities_id'), 'name' => event.get('cities_name'),'district' => event.get('cities_district'),'population' => event.get('cities_population')}endendmap['languages_list'] ||= []map['languages'] ||= []if (event.get('languages_language') != nil)if !( map['languages_list'].include? event.get('languages_language') )map['languages_list'] << event.get('languages_language')map['languages'] << {'language' => event.get('languages_language'), 'official' => event.get('languages_official'),'percentage' => event.get('languages_percentage')}endendevent.cancel()"push_previous_map_as_event => truetimeout => 5}mutate { remove_field => ["cities_list", "languages_list"]} } output {elasticsearch {document_id => "%{code}"document_type => "world"index => "world_v2"codec => "json"hosts => ["127.0.0.1:9200"]} }

    我們將配置文件放置在logstash的bin目錄中。 我們使用以下命令運行logstash管道:

    $ logstash -w 1 -f world-logstash.conf

    我們使用1個工作程序,因為當匯總發生時,多個工作人員可能會破壞匯總,這是基于具有共同國家/地區代碼的事件序列。 成功完成Logstash管道后,我們將看到以下輸出:

    在瀏覽器中打開以下URL http:// localhost:9200 / world_v2 / world / IND ,以查看在Elasticsearch中索引的印度的信息,如下所示:

    翻譯自: https://www.javacodegeeks.com/2017/10/aggregate-index-data-elasticsearch-using-logstash-jdbc.html

    總結

    以上是生活随笔為你收集整理的使用Logstash,JDBC将数据聚合并索引到Elasticsearch中的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲高清在线看 | 国产在线视频网站 | 潘金莲一级淫片aaaaaa播放 | 亚洲你懂得 | 成年人在线视频观看 | 理论片在线观看视频 | 2019中文在线观看 | 特黄a级片 | 午夜成人亚洲理伦片在线观看 | 自拍偷在线精品自拍偷无码专区 | 国产91免费 | 懂色av蜜臀av粉嫩av | www国产com | 欧美成人一区在线观看 | 每日在线观看av | 免费激情片 | 久久久久国产精品区片区无码 | 美女视频在线免费观看 | 俺也去五月婷婷 | 亚洲中文字幕视频一区 | 免费观看av| 亚洲性图av | 久操福利| 成人乱码一区二区三区av | se欧美| 91久久极品少妇xxxxⅹ软件 | av动漫网站| 日本一区二区久久 | 黄色三级片毛片 | 亚洲熟区| 天海翼av在线播放 | 天天艹av | 潮喷失禁大喷水aⅴ无码 | 天天色综 | 在线观看网站av | 欧美久久久久久久 | 日韩欧美成人免费视频 | 竹菊影视一区二区三区 | 青娱乐最新地址 | 欧美男人天堂网 | 欧美xxxx胸大 | 久久久久亚洲精品系列色欲 | 亚洲欧美第一 | 欧美男女动态图 | 亚洲电影一区二区 | 深夜av| 一级黄色大片免费观看 | 亚洲精品一区二区三区区别 | 久久久888| 26uuu精品一区二区在线观看 | 姝姝窝人体www聚色窝 | 美日韩黄色片 | 日韩午夜小视频 | 欧美日韩亚洲高清 | 国产成人a∨ | 国产乱国产乱老熟300部视频 | 新天堂av| 日本久久久久久久久 | 欧美丝袜一区二区 | 中国免费毛片 | 国产日韩在线看 | 亚洲精品乱码久久久久久蜜桃欧美 | 亚洲精品综合久久 | 国产中文字幕精品 | 91偷拍一区二区三区精品 | 69精品久久久久久 | 久久久老熟女一区二区三区91 | 丁香婷婷在线 | 青青草原综合久久大伊人精品 | 91视频三区 | 国产成人在线免费观看视频 | 精品人妻人人做人人爽夜夜爽 | 国产精品一区二区三区免费观看 | 色xxxxxx | 九九福利视频 | 精品国产一区一区二区三亚瑟 | 久久精品国产99久久久 | 久久99国产精品视频 | 日韩极品在线 | 超碰成人免费在线 | 久草在在线 | 天天色综合av | 国产午夜精品一区二区三区欧美 | 国产精品婷婷午夜在线观看 | 美丽的姑娘观看在线播放 | aⅴ在线免费观看 | 成人久久在线 | 欧美aaa在线观看 | 日韩深夜视频 | 久久性精品 | 国产高清精品软件丝瓜软件 | 开心色站 | 国产污污视频 | 国产一国产二 | 榴莲视频黄色 | 免费在线观看av网站 | 日韩aaaaaa| 欧美精品在线看 | 日本视频网址 |