1

我对 java 完全陌生,我正在使用 Solr 搜索服务器。碰巧我必须学习 java 才能为我的应用程序自定义 Solr。有没有人有一个好的建议,最好的起点是哪里?

提前致谢!

4

4 回答 4

3

可能不需要了解 Java 即可使用 Solr 并使用它,除非您想检查实际的代码库并想修改它或添加扩展。
一旦您的设置正常工作,还有很多客户端可以在 Ruby、PHP 中与 Solr 一起使用。
除了@peter_budo 的书籍,对于 Solr 及其配置,您还可以开始使用Lucid Imagination 的Solr 指南。这会让你开始。

于 2012-04-08T08:20:50.983 回答
2

这个问题非常笼统,实际上取决于您的背景和愿望以及您的组织:)

如果您是开发人员并且想要修改 Solr 代码,那么如果您对信息检索有所了解会更好(尽管不是强制性的),因此作为第一步,您应该了解什么是倒排索引,什么是数据结构用于倒排索引,布尔查询如何评估,查询形成树的样子等。这不仅会让您对 Solr 有很好的理解,而且明天您将在市场上有另一个搜索引擎 XYZ,您将很快能够适应它。

如果您想在 Solr 管理方面有所作为,而不是像 Solr 3.1 Cookbook 和 Apache Solr 3 Enterprise Search Server 这样的书籍(请注意,无论您是用户、开发人员还是管理员,这些书籍都将适用于各种场景)加上实用在处理内存错误、堆问题、尝试各种合并因子组合、autocmmits 等时,经验最重要。

再次根据您关于 Java 的其他问题,这再次取决于您的编程背景,即您是来自 C++ 还是说 Python 等等。如果您已经是 C++/C# 程序员,那么 Java 对您来说是小菜一碟。在这种情况下,只需稍微了解 Solr 并开始编码,而不是将时间浪费在 Java 书籍上(同样,如果您将时间浪费在 Java 书籍上并首先学习 Java 并依次转到 Solr,这将是一件好事,这取决于时间你有)如果你是 Python 或 Haskell 程序员,你必须学习 Java。在这种特殊情况下,Head First Java 将是他最好的书,可以快速使用 Java,比如最多一周或两周,然后您可以从 Solr 开始。

学习 Solr 时要添加的另一件事不是 Java,您还必须了解一些关于您正在使用的 servlet 容器的知识。

我的最后一个建议(恕我直言),不要去学习工具和 API,研究这些工具背后的科学和工程(正如我提到的信息检索)和语言(了解更多关于独立于语言的基本算法和数据结构),然后自动无论是 Solr 还是 Sphinx,C++ 还是 Java,它们都将成为你的奴隶。

于 2012-04-09T09:51:38.470 回答
1

更详细的Apache Solr 3 Enterprise Search Server或食谱(或问题解决驱动的学习方法)Apache Solr 3.1 Cookbook

于 2012-04-08T08:08:34.980 回答
1

Solr wiki 资源页面http://wiki.apache.org/solr/SolrResources是最好的起点。如果您有更多问题,也可以使用 lucene/solr 邮件列表。

于 2012-04-08T08:25:14.817 回答