logo

海量日志数据中,如何提取某日访问百度次数最多的 IP?

Given massive log data, how do you find the IP that accessed Baidu the most on a certain day?

题目类型: 技术面试题

这是一道技术面试题,常见于澳洲IT公司面试中。

难度: hard

分类: 大数据计算, 日志分析, TopK问题

标签: 分而治之, Hash, 文件拆分, HashMap, IP统计, 日志处理

参考答案摘要

核心答案 思路:分而治之 + Hash 。日志文件无法直接读入内存,需要先拆分再统计。 方法一(按原答案步骤) 先筛选出 某一天且访问百度 的日志 IP,逐条写入一个大文件。 由于 IP 为 32 位,最多有 2^32 种,继续采用映射:例如按 Hash(IP) % 1000 拆分为 1000 个小文件。 对每个小文件用 hash_map 统计频率,取该文件频率最高的 IP 及其次数。 最后在 1...

本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。

← 返回面试题库

海量日志数据中,如何提取某日访问百度次数最多的 IP?

Hardalgorithmsdata-structuressystem-design

想查看完整答案?

登录匠人学院学习中心,获取 STAR 格式回答和详细技术解析

前往学习中心查看答案