鉴于Lucene是一个强大的基于文档的搜索引擎,它是否可以用作简单应用程序(例如,CMS风格的应用程序)的对象数据库?如果是这样,您认为它的好处和局限性是什么?
我理解RDBMS的作用(并且每天都在使用它们),但也在努力探索其他技术/想法。
例如,假设我的域实体如下所示:
[Serializable]
public class Employee
{
public string FirstName {get;set;}
public string Surname {get;set;}
}我是否可以使用反射并将Employee对象的属性值存储为Lucene文档中的字段,并将Employee对象的二进制序列化版本存储到同一Lucene文档中的另一个字段中?
发布于 2009-06-05 02:40:06
不是的。试图使用Lucene作为一个有效的OODB (面向对象的数据库),就像试图把一个方形的钉子装进一个圆孔。他们真的是两个完全不同的野兽。
Lucene擅长构建一组documents...not存储对象的文本索引(在编程意义上)。也许你误解了面向对象的数据库是什么。你可以在维基百科上查看这个定义:
Object Databases
面向对象的数据库有自己的位置。如果您确实有一个可以从面向对象数据库中获益的应用程序,我建议您查看一下InterSystems Caché之类的应用程序
https://stackoverflow.com/questions/954021
复制相似问题