Lucene采访问题

时间:2010-07-08 18:25:38

标签: java lucene

我正在面试开发一个严重依赖Lucene的应用程序的候选人。除了我提出的常见问题之外,我还想问一两个特定于Lucene的问题,这些问题可以让我大致了解它们对图书馆的熟悉程度。问题是我自己没有Lucene的经验。有什么建议吗?

3 个答案:

答案 0 :(得分:15)

我会问几个问题:

  • 什么是Lucene数据结构? (倒排索引)
  • Lucene如何计算文档的相关性? (向量空间模型,布尔模型)
  • 什么是细分? (指数的一部分)
  • 如何对文字编制索引? (分析器,标记器)
  • 什么是文件? (字段集合)
  • Lucene查询语法是什么样的? (布尔查询,提升,模糊搜索)
  • 它与关系数据库的区别以及何时使用其中一个?

答案 1 :(得分:5)

如果候选人有很长的Java开发历史,那么熟悉Lucene API应该不那么重要。不熟悉Lucene的人可能需要更长的时间才能开始,但从长远来看,我会觉得非常有经验的Java开发人员比拥有Lucene经验的有经验的java开发人员更舒服。事实上,如果投资组合令人印象深刻,我可能更喜欢非常有经验的非java程序员。

答案 2 :(得分:5)

这是一项棘手的任务。你正在寻找知道更多关于Lucene而不是你的人;因此,你不能对候选人的知识做出可靠的判断(尽管你应该能够至少消除那些明显比你知道得少的人)。

我的建议是让候选人向你解释Lucene的某些方面,你对此感到困惑。当面试结束时,你可以查看答案是否有意义。这具有测试他们传达复杂想法的能力的额外好处。 (如果答案是“我不知道”,那么你应该把它作为一个好兆头:那些愿意承认自己的无知的人比那些没有的人更有价值。)