在MaxCompute上分析IP来源的方法

淘宝IP库

淘宝IP地址库官网地址http://ip.taobao.com/,其查询接口[http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]](http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]),如下所示:

但是在MaxCompute中禁止使用http请求,那么如何实现在MaxCompute中进行IP的查询?
目前有三种方式:

  1. 用SQL将数据查询到本地,再发起http请求查询。-->效率低下,且淘宝IP库查询频率需小于10qps,否则拒绝请求。
  2. 下载IP地址库到本地,进行查询。-->同样效率低,且不利于数仓等分析使用。
  3. 将IP地址库定期维护上传至MaxCompute,进行连接查询。-->比较高效,但是IP地址库需自己定期维护。

下载IP地址库

① IP地址库下载,http://ip.taobao.org:9999/ipdata_download.html 下载需要的格式数据。本文以[基本数据格式]为例。

②下载UTF-8数据,打开看看数据格式。

前四个数据是IP地址的起始地址与结束地址,前两个是十进制整数形式,后两个是点分形式。这里我们使用整数形式,以便计算IP是否属于这个网段。

上传IP地址库数据

①创建表DDL:

DROP TABLE IF EXISTS ipresource ;CREATE TABLE IF NOT EXISTS ipresource 
(start_ip BIGINT,end_ip BIGINT,start_ip_arg string,end_ip_arg string,country STRING,area STRING,city STRING,county STRING,isp STRING
)
;

②使用Tunnel上传文件(文件>10MB需要使用Tunnel upload命令)

odps@ workshop_demo>tunnel upload ipdata.txt.utf8 ipresource;

可以通过SQL查看到表中共计上传2369306条数据。

③查看ipresource表样本数据。

编写UDF函数

通过编写Python UDF将点号分割的IP地址转化为int类型的IP。详细如下:
①添加Python 资源。

②编写Python资源代码。

from odps.udf import annotate
@annotate("string->bigint")
class ipint(object):def evaluate(self, ip):try:return reduce(lambda x, y: (x << 8) + y, map(int, ip.split('.')))except:return 0

点击提交并解锁。

③新建自定义函数:

提交并解锁:

④验证ipint函数是否生效并满足预期值。

在SQL中使用

以具体IP地址为例,在正常情况会以具体表的字段来读进来。

保证数据准确性可以定期从淘宝IP库获取数据来维护ipresource这个表。

 

原文链接
本文为云栖社区原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/520505.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

egg直接取req_Egg服务器基础功能

1. 框架约定目录规则1.1 app/router.js&#xff1a;用于配置URL路由规则&#xff1b;1.2 app/controller/** &#xff1a;用于解析用户的输入&#xff0c;处理后返回相应的结果&#xff1b;1.3 app/service/**&#xff1a; 用于编写业务逻辑层&#xff1b;1.4 app/public/**&am…

我和 Spring 大神的一天

先介绍一下故事的5位主人公。 Josh Long 龙之春&#xff1a; Spring 技术布道师&#xff0c;撰写过5部著作&#xff0c;录制过3部畅销的培训视频&#xff0c;是一位开源软件贡献者。 Spencer Gibb&#xff1a; Spring 技术布道师&#xff0c;Spring Cloud核心项目的联合创始人…

Android开发中解决自定义弹窗获取不到控件对象的问题

最近做期末作业的时候遇到一个功能需要在弹窗里修改账号密码&#xff0c;弹窗里面含有两个edittext控件&#xff0c;经过查阅资料我通过setView添加了一个view在弹窗里实现了&#xff0c;但是获取的控件对象一直为空导致我取不到输入的值&#xff0c;找了好久的错误原来获取对象…

是什么样的骚操作让应用上线节省90%的时间

优秀的程序员 总会想着 如何把花30分钟才能解决的问题 在5分钟内就解决完 例如在应用上线这件事上 通常的做法是 1. 构建项目 在本地用maven打包 每次需要clean一次&#xff0c;再build一次 2. 部署包 在本地ide、git/svn、maven/gradie 及代码仓库、镜像仓库和云平…

阿里程序员工作小技巧 | 理解CPU分支预测,提高代码效率

技术传播的价值&#xff0c;不仅仅体现在通过商业化产品和开源项目来缩短我们构建应用的路径&#xff0c;加速业务的上线速率&#xff0c;也会体现在优秀程序员在工作效率提升、产品性能优化和用户体验改善等小技巧方面的分享&#xff0c;以提高我们的工作能力。 从本期开始&am…

Spring Tools 4 for Eclipse 下载

https://spring.io/tools 注&#xff1a;如果双击不能运行&#xff0c;就先执行java -jar spring-tool-suite-4-4.6.0.RELEASE-e4.15.0-win32.win32.x86_64.self-extracting.jar 再次双击运行&#xff0c;就好使了。 注&#xff1a;这个文件夹放到什么地方&#xff0c;都可…

我花了一夜用数据结构给女朋友写个H5走迷宫游戏 | CSDN 博文精选

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | bigsai(同公众号)转自&#xff5c; CSDN博客责编 | 阿秃先看效果图(在线电脑尝试地址http://biggsai.com/maze.html)&#xff1a;起因又到深夜了&#xff0c;我按照以往在公众号写着数据结构&#xff01;这占用了我大量的时间…

异常:This application has no explicit mapping for /error, so you are seeing this as a fallback.

初学springboot配置好文件,测试接口出现这个是springboot的启动器要放在dao service…包的上层目录

安全看得见,阿里云性能监控 ARMS 全真3D拓扑实现一“屏”了然

微服务架构下&#xff0c;各类服务之间存在着错综复杂的依赖关系。一旦业务出现问题&#xff0c;追查问题源头就好比大海捞针&#xff0c;没有头绪。但业务不等人&#xff0c;此时&#xff0c;在最短的时间内定位问题根源是开发和运维人员对微服务监控产品的核心诉求。 传统的…

z变换判断稳定性和因果性_图像处理的仿射变换与透视变换

原文首发于微信公众号&#xff1a;【3D视觉工坊】。引言这一周主要在研究图像的放射变换与透视变换&#xff0c;目前出现的主要问题是需要正确识别如下图中的编码标志点圆心。1.当倾斜角较小时&#xff1a;倾斜角较小2.倾斜角较大时&#xff1a;倾斜角较大由上面两幅图可以看出…

阿里云ACM:云原生配置管理利器,让云上的Spring Cloud应用配置管理舞动起来

在传统架构中&#xff0c;如果配置信息有变更&#xff0c;通常是登陆服务器手动修改配置来使配置生效。在微服务架构中&#xff0c;应用数和节点数由于微服务化数量激增&#xff0c;导致发布次数增加&#xff0c;配置变更难度加大&#xff0c;通常是将应用配置抽象出来放置在外…

技术和商业的碰撞,谈阿里云与天猫双11这十年

2009年&#xff0c;发生了两件看似不起眼的事。 初春刚过&#xff0c;阿里云在北京一栋没有暖气的写字楼写下了飞天第一行代码。 同年11月11日&#xff0c;淘宝商城启动了一个叫做双11的促销活动。 谁也没想到&#xff0c;多年以后他们会是现在这模样。 前传 2007年淘宝的…

windows环境 wildfly-10.1.0.Final 安装、配置、部署

文章目录一、下载、解压、配置1. 下载Wildfly2. 解压&#xff0c;成功得到文件夹。3. 配置环境变量4. 添加管控台用户5. 启动并登录管控台测试6. 管控台页面简介7. 修改默认端口由于Wildfly是依赖与Java的Jdk的&#xff0c;所以在这之前要先安装JDK。一、下载、解压、配置 1. …

揭秘 | 双11逆天记录背后的数据库技术革新

每一个数字背后 都需要强大的技术支撑 Higher, Faster, Smarter 是我们不变的追求 技术无边界 创新无止境 ▽ 关于数据库的双11 也许你还想知道 ▽ 2135亿&#xff01;2018 双11阿里数据库技术战报“双11”十年记 阿里数据库演绎变迁三部曲 原文链接 本文为云栖社区原创内容…

重磅!腾讯助推十亿级节点图计算进入分钟级时代;沈向洋离开微软;阿里:拥有超6000项已授权专利,涉及云、AI等领域……...

戳蓝字“CSDN云计算”关注我们哦&#xff01; 嗨&#xff0c;大家好&#xff0c;重磅君带来的【云重磅】特别栏目&#xff0c;如期而至&#xff0c;每周五第一时间为大家带来重磅新闻。把握技术风向标&#xff0c;了解行业应用与实践&#xff0c;就交给我重磅君吧&#xff01;重…

2135亿背后的双11项目协作怎么玩?

2018天猫双11已经收官&#xff0c;2135亿元的成交额再度刷新纪录&#xff0c;这是一场阿里巴巴经济体的深度协作。 在这个大协作项目中&#xff0c;项目协作难题难以想象&#xff1a;如何保证众多部门、百个核心产品、千个垂直项目、几千人的的高效协作&#xff1f;如何在双11…

下一代大数据处理引擎,阿里云实时计算独享模式重磅发布

11月14日&#xff0c;阿里云重磅发布了实时计算独享模式&#xff0c;即用户独享一部分物理资源&#xff0c;这部分资源在网络/磁盘/CPU/内存等资源上跟其他用户完全独立&#xff0c;是实时计算在原有共享模式基础上的重大升级。 独享模式优点更加突出 1、UDX开放&#xff1a;实…

刷爆了!李彦宏:这类程序员我给100万!你怎么看?

从2017年开始&#xff0c;人工智能便波澜不断&#xff0c;无论是从BAT高调布局AI&#xff0c;还是从年薪50万招聘AI应届生&#xff0c;炽手可热形容AI工程师一点都不过分。百度推出“少帅计划”,针对30岁以下的深度学习科学家&#xff0c;开出100万以上年薪&#xff01;阿里巴巴…

Element-UI中Cascader 级联选择器使用

Element-UI的级联组件官方文档 <el-cascaderv-model"value":options"options":props"{ expandTrigger: hover }"change"handleChange"></el-cascader>说明&#xff1a; options:绑定数据源 props:数据配置项 v-model“val…