我有一个应用程序,它将为它处理的每个搜索查询(来自 Solr)生成一个日志条目,以便我可以为我的搜索引擎计算某些统计信息。例如,没有结果的查询数、平均命中数等。现在我想知道如何最好地执行此分析。负载估计高达每天一万次搜索,每周生成统计数据。换句话说,我正在寻找计算多达十万个 XML 文件的统计信息的最佳方法。
该过程将由 Apache Camel 控制,我目前认为 XQuery 将是解决这个问题的最佳选择。由于我仍在努力建立架构,因此我无法运行任何真实世界的测试,因此我想在深入研究之前就最佳方法获得一些意见。一些问题:
- XQuery 可以处理这么多文件,还是我需要使用 XSLT 将它们全部转换为单个文档?
- XQuery 是适合这项工作的工具吗?在我看来,这比尝试在高级编程语言中执行此操作更有效,而 XSLT 太低级了。
- 一种替代方法可能是在 Apache Lucene/Solr 中索引这些查询。这会更有效率吗?
- 我可以将这些 XML 文件存储在文件系统上吗?还是我需要将它们加载到 XML 数据库中?(我不熟悉。)