Apache Solr:数据库索引

时间:2015-09-21 20:11:25

标签: database indexing solr

我正在研究具有这种结构的数据库sql:

CREATE TABLE IF NOT EXISTS `news` (
    `idNews` INT(10) NOT NULL AUTO_INCREMENT,
    `url` TEXT NOT NULL,
    `date` TEXT NOT NULL,
    `title` TEXT NOT NULL,
    `descr` TEXT NOT NULL,
    PRIMARY KEY (`idNews`));

INSERT INTO `myDb`.`news` (`url`, `date`, `title`, `descr`) 
VALUES(...), ..., (...);

现在我想在此数据库上创建索引以提高性能。

如果我使用mysql语法:

CREATE INDEX `newsIndex` ON `news`(`idNews`, `url`, `date`, `title`, `descr`);

我有这样的错误:

#1170 - BLOB/TEXT column 'url' used in key specification without a key length 

发生错误是因为MySQL只能索引BLOB或TEXT列的前N个字符。该问题的解决方案是从索引或唯一约束中删除TEXT或BLOB列,或将另一个字段设置为主键。 但我想用TEXT列保留该结构。

因此,我从Apache Lucene项目中发现了Apache Solr,一个用Java编写的开源企业搜索平台。其主要功能包括全文搜索,点击突出显示等。

问题是Solr用于索引文档,我不明白使用它来索引我的数据库的方法。

任何人都可以帮助我吗?

谢谢!

0 个答案:

没有答案