博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DataLakeAnalytics: 解析IP地址对应的国家城市地址的能力
阅读量:7250 次
发布时间:2019-06-29

本文共 2181 字,大约阅读时间需要 7 分钟。

Data Lake Analytics 作为云上数据处理的枢纽,最近加入了通过IP地址查找对应的国家、省份、城市、ISP的函数, 今天带大家体验一下。

函数详细介绍

本次一共添加了下面这些函数:

ip2region: 功能最全的函数,可以获取国家,省份,城市的信息,而且支持语言切换, 但是参数较多。

ip_country: 获取IP地址对应的国家。
ip_province: 获取IP地址对应的地址/省。
ip_city: 获取IP地址对应的城市。
ip_isp: 获取IP地址对应的ISP(Internet Service Provider)的信息。
ip2long: 把IP地址转换成一个数字。
long2ip: 把数字转换成一个IP地址。
ip2region
ip2region(ip, level, lang)

参数详解:

ip: 要查询的IP地址

level: country/province/city/isp
lang: cn/en, 返回结果的语言
ip_country/ip_province/ip_city/ip_isp
ip_country/ip_province/ip_city/ip_isp是ip2region的一种快捷用法,参数较少,这几个函数风格类似,两种调用方式:

ip_country(ip)

ip_country(ip, lang)

参数详解:

ip: 要查询的IP地址

lang: cn/en, 返回结果的语言
ip2long/long2ip
ip2long(ip)
long2ip(longVal)

Lets make some fun!

废话不多说,我们直接来体验一下:

先来看看国内的ip:

mysql> select ip2region('115.239.210.27', 'country', 'CN'),

> ip_country('115.239.210.27'),  > ip_province('115.239.210.27'),  > ip_city('115.239.210.27'),  > ip_isp('115.239.210.27')\G

1. row **

ip2region('115.239.210.27', 'country', 'CN'): 中国

ip_country('115.239.210.27'): 中国           ip_province('115.239.210.27'): 浙江               ip_city('115.239.210.27'): 杭州                ip_isp('115.239.210.27'): 电信

1 row in set (0.14 sec)

再来看个国外的ip:

mysql> select ip2region('31.13.79.1', 'country', 'CN'),

> ip_country('31.13.79.1'),  > ip_province('31.13.79.1'),  > ip_city('31.13.79.1'),  > ip_isp('31.13.79.1')\G

1. row **

ip2region('31.13.79.1', 'country', 'CN'): 印度

ip_country('31.13.79.1'): 印度           ip_province('31.13.79.1'): 马哈拉施特拉邦               ip_city('31.13.79.1'): 孟买                ip_isp('31.13.79.1'):

1 row in set (0.08 sec)

最后咱再来切换个语言:

mysql> select ip2region('31.13.79.1', 'country', 'EN'),

> ip_country('31.13.79.1', 'EN'),  > ip_province('31.13.79.1', 'EN'),  > ip_city('31.13.79.1', 'EN'),  > ip_isp('31.13.79.1', 'EN')\G

1. row **

ip2region('31.13.79.1', 'country', 'EN'): India

ip_country('31.13.79.1', 'EN'): India     ip_province('31.13.79.1', 'EN'): Maharashtr         ip_city('31.13.79.1', 'EN'): Mumbai          ip_isp('31.13.79.1', 'EN'):

1 row in set (0.06 sec)

总结
我们今天介绍了DLA里面IP地址支持相关的一些函数,这些函数对于用户分析,特别是网站访问用户的地域分析的时候非常有用,在其它数据库里面你可能需要自己实现UDF,或者在应用层进行处理;我们DLA里面已经把这种能力内置了,并且会及时的对IP库进行更新,更多详细的介绍可以直接去我们的官网试用。

Happy DLAing!

参考资料

题图:

转载地址:http://mohbm.baihongyu.com/

你可能感兴趣的文章
Akka系列(一):Akka简介与Actor模型
查看>>
yii2获得从数据库获得数据的方法并处理
查看>>
Android开发百度地图(一)之初体验
查看>>
微服务指南走北(四):你不愿意做微服务架构的十个理由
查看>>
CSS代码重构与优化之路
查看>>
使用 sigprocmask 和 sigpending 在程序正文中捕获和处理信号
查看>>
Bodymovin插件的使用
查看>>
详细深入分析 Java ClassLoader 工作机制
查看>>
关于设计模式
查看>>
对一个“老”架构的重新思考
查看>>
DoubanFMPlayer, A mimic of Douban.fm player
查看>>
埃森哲、亚马逊和万事达卡抱团推出的区块链项目有何神通?
查看>>
2019年自动驾驶5大趋势预测:第一台Level 5 无人车问世
查看>>
后APP时代的破局之路 :阿里技术“三大容器五大方案”亮相,百川开放全面升级...
查看>>
工欲善其事-必先利其器之终端
查看>>
64位的Mac OS X也有Windows.Forms了
查看>>
立下“去O”Flag的AWS,悄悄修炼了哪些内功?
查看>>
Better Software East/DevOps East/Agile Dev East 2016大会上的教程介绍
查看>>
优酷在多模态内容理解上的研究及应用
查看>>
JavaScript学习笔记整理:对象篇
查看>>