【发布时间】:2023-03-31 13:25:02
【问题描述】:
我应该使用维基百科的文章链接数据转储从组织的网站中提取具有代表性的术语。 为了实现这一点,我 -
- 抓取并下载了组织的网页。 (~110,000)
- 创建了维基百科 ID 和术语/标题的字典。 (约 4000 万条记录)
现在,我应该使用字典来处理每个网页,以识别术语并跟踪它们的术语 ID 和频率。
为了让字典适合内存,我将字典拆分为更小的文件。根据我对小数据集的实验,上述处理时间约为 75 天。
这仅适用于 1 个组织。我必须为其中的 40 多个人做同样的事情。
实施 -
- HashMap 用于在内存中存储字典。
- 使用 Boyer-Moore 搜索实现循环遍历每个地图条目以搜索网页中的术语。
- 对每个网页重复上述操作,并将结果存储在 HashMap 中。
我已经尝试优化代码并调整 JVM 以获得更好的性能。
有人可以建议一种更有效的方法来实施上述方法,将处理时间缩短到几天。
是否可以考虑使用 Hadoop?
【问题讨论】:
-
你绝对应该使用 Lucene 来完成这项任务。
-
感谢@MarkoTopolnik。我将检查 Lucene。
标签: java hadoop ontology text-mining wikimedia-dumps