首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >lucene.net引擎使用概况与数据库及ORM问题

lucene.net引擎使用概况与数据库及ORM问题
EN

Stack Overflow用户
提问于 2013-08-06 21:18:37
回答 1查看 256关注 0票数 1

这个问题看上去可能有点混乱,但这是因为我缺乏经验。我做了一些lucene使用教程,并且有一些基本知识。Gona将这个引擎在.net中实现为一个简单的应用程序,显示了最常见的用法:

搜索引擎

  • 从文件/数据库加载现有数据
  • 把这个放到lucene商店
  • 在lucene指数中放一些值
  • 添加数据搜索(查询)
  • 更新/删除数据

这种用法看起来很常见。假设我们有一些来自网络的数据集。由于我了解整个过程,并希望创建一个android(java)/web应用程序,这将是这样的:

  1. 创建一些数据库结构
  2. 执行ETL过程,将裸数据集转换为数据库输入(例如MySQL数据库管理系统)
  3. 实现lucene (lucene.net)使用一些ORM(ADO.NET/NHibernate)将数据库数据转换为lucene可以理解的对象(例如lucene文档对应于数据库表记录SE文档结构=数据库表结构?)(从未执行过任何ORM)

如果我们有现有的关系数据库,那么我们需要为SE创建一个更容易理解的新数据库。我从来没有使用过ORM映射,所以不知道该如何做。让我们说,我们有一些基本的论坛与简单的关系数据库的用户和他们的帖子。如果用户想要搜索某个帖子,他会使用SE从数据库中检索数据。如果他想添加/删除某个帖子(据我理解),他将直接使用数据库而不使用SE。在数据库中添加/del数据后,我们必须通知SE,更新(删除当前文档并从一开始就添加整个数据库),创建新的索引,并对其进行优化。我甚至想知道如果没有数据库,SE应用程序是否还会存在。我知道SE有自己的二进制平面文件结构,但是在用户/post数据中,可以不使用任何dbms吗?

我知道它看上去有点混乱,但是这个话题涉及不同的领域,因为一般的问题,所以现在问总比等一会儿好。

感谢那些已经面临这种情况的人提供的任何信息。

谢谢

编辑:只是说我们想测试一些有用的SE用法。我们需要有数据的数据库来测试它,所以有些.net对象会有ORM,或者直接到lucene文档(?)然后把它放到lucene专用的存储器里。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-28 13:52:18

纯粹使用ORM检索数据并将其添加到Lucene索引中是过分的。Lucene索引文档,它们本身并不比字段值对多。您最好直接使用ADO.NET或微ORM将数据输出到Lucene文档中,为索引做好准备。

如果您的数据还没有在关系数据库中,那么您还可以考虑是否需要RDBMS。Lucene既可以存储数据,也可以索引数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18090693

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档