Chinaunix首页 | 论坛 | 博客
  • 博客访问: 17826
  • 博文数量: 61
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 620
  • 用 户 组: 普通用户
  • 注册时间: 2022-10-13 17:26
文章分类

全部博文(61)

文章存档

2024年(1)

2023年(40)

2022年(20)

我的朋友

分类: 大数据

2022-10-24 10:54:34

首先我们实现IP地址分布地图可视化需要用到的技术是Elasticsearch + kibana,下面IP数据云的小编具体讲解一下操作,另外如果需要现成的IP地址数据,也可以通过IP数据云(https://www.ipdatacloud.com/?utm-source=Lik&utm-keyword=?1054)IP数据库进行查询。

 

第一步:IP 地址转经纬度坐标。

第二步:经纬度坐标借助可视化工具(如:echarts)渲染展示。

整体架构图如下图所示:

GeoIp processor 根据来自 Maxmind 数据库的数据添加有关IP地址地理位置的信息。默认情况下,GeoIp processor 将此信息添加到 geoip 字段下。GeoIp processor 可以解析 IPv4  IPv6 地址。 

实操步骤如下:

步骤 1:创建预处理管道

该预处理的目的就是:将输入的 IP 字段转换为:Geoip 类型。

步骤 2:创建索引

考虑到后面要批量导入数千条+数据,我们采用了取巧的方式。

使用了在创建索引的时候指定缺省管道(index.default_pipeline)的方式。

这样的好处是:

灵活:用户只关心 bulk 批量写入数据。

零写入代码修改:甚至写入数据的代码一行都不需要改就可以。

步骤 3:写入一条数据

这时候,我们查看一下完整的 Mapping 张什么样?

写入后的数据,查看返回如下:

第一:geoip  object 类型,它有几个子字段,含义如下:

geoip.city_name:城市

geoip.continent_name:大陆名称

geoip.country_iso_code:国家编码

geoip.location:经纬度坐标,必须是:geo_point 类型

geoip.region_iso_code:地域编码

geoip.region_name:地域名称

第二:为节省存储,Mapping 可以优化。比如:所有的默认字符串类型改成:keyword 类型。

第三:为了后面的作图必须将 location 设置为 geo_point 类型。

以上三个步骤:就完成了单条数据的写入。

步骤 4kibana 可视化展示

创建关联索引模板,目的是创建可视化需要关联的索引数据。

创建坐标图,选择左侧导航栏的 Visualize,然后选择右侧 Create new visualization,然后再选择:Coordinate Map 即可。可视化基础设置,执行后,就能看到可视化结果。

 

阅读(252) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~