[ANN] Mroonga 7.07 - Fast fulltext search for all languages on MySQL
Kentaro Hayashi <[email protected]> Fri, 13 Oct 2017 13:30:11 +0900
| Newsgroups | gmane.comp.db.mysql.general |
|---|---|
| Message-ID | <[email protected]> |
Hi,
Mroonga 7.07 has been released!
Mroonga is a MySQL storage engine that supports fast fulltext search
and geolocation search. It is CJK ready. It uses Groonga as a storage
and fulltext search engine.
Document:
http://mroonga.org/docs/
How to install: Install Guide
http://mroonga.org/docs/install.html
How to upgrade: Upgrade Guide
http://mroonga.org/docs/upgrade.html
Blog:
http://mroonga.org/en/blog/2017/10/12/mroonga-7.07.html
Changes:
http://mroonga.org/docs/news.html#release-7.07
Here is the topic in this release.
* MariaDB 10.1/10.2 package has been supported on CentOS 6/7
* mroonga_query_expand UDF has been supported
### MariaDB 10.1/10.2 package has been supported on CentOS 6/7
In this release, official MariaDB 10.1/10.2 packages has been
supported on CentOS 6/7.
To install on each supported environment, see install documents.
* MariaDB 10.1 on CentOS 6
http://mroonga.org/docs/install/centos.html#centos-6-with-mariadb-10-1-package
* MariaDB 10.2 on CentOS 6
http://mroonga.org/docs/install/centos.html#centos-6-with-mariadb-10-2-package
* MariaDB 10.1 on CentOS 7
http://mroonga.org/docs/install/centos.html#centos-7-with-mariadb-10-1-package
* MariaDB 10.2 on CentOS 7
http://mroonga.org/docs/install/centos.html#centos-7-with-mariadb-10-2-package
### mroonga_query_expand UDF has been supported
In this release, mroonga_query_expand UDF has been supported.
Here is the sample schema to use this UDF.
CREATE TABLE diaries (
id INT PRIMARY KEY AUTO_INCREMENT,
content VARCHAR(255),
FULLTEXT INDEX (content)
) ENGINE = Mroonga DEFAULT CHARSET utf8;
CREATE TABLE synonyms (
term varchar(255),
synonym varchar(255),
INDEX (term)
) ENGINE= Mroonga DEFAULT CHARSET utf8;
diaries is table for full text search. synonym table is used to define
synonyms.
Then insert sample data:
INSERT INTO synonyms VALUES ('Groonga', 'Groonga Mroonga Rroonga');
INSERT INTO diaries (content) VALUES ("Groonga is fast.");
INSERT INTO diaries (content) VALUES ("Mroonga is fast.");
INSERT INTO diaries (content) VALUES ("PGroonga is fast.");
Let's use mroonga_query_expand UDF.
If you want to search with synonym term, just use
mroonga_query_expand("synonyms", "term", "synonym", "Groonga"). This
enable you to do full text search by 'Groonga', 'Mroonga', 'Roonga' at
once even though specified term is only 'Groonga'.
mysql> SELECT * FROM diaries WHERE MATCH(content) AGAINST(mroonga_query_expand("synonyms", "term", "synonym", "Groonga") IN BOOLEAN MODE);
+----+------------------+
| id | content |
+----+------------------+
| 1 | Groonga is fast. |
| 2 | Mroonga is fast. |
+----+------------------+
2 rows in set (0.01 sec)
Regards,
--
Kentaro Hayashi <[email protected]>
signature.asc
(application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEcZ6y2T2+nE0h+6Bk9/t1xWbtIOMFAlngQVMACgkQ9/t1xWbt IOOebxAAoi4WKDtQk2HxE5dURzPmDUbeWDuu1FQq+7ZS4JjubhQiDZr7oeSPqcIj Mayax91/F+D703V4FRsuKH8Exedf3vJqYhBOiNEEV2Csmpk6bCtYPioSl3dfBVGd ADdYvex88nbD4/VZu8tPO/7pQBeU6JCEoZUz0bGoqyYT5nWzdnGqhErkCnCCmYGd ehboOu08DEYkVm/KgaeTtpSLHrYyOOpehMW2g4NDFM+q0nofo9u8v7QHmZpgREZk NW9GZNS7Lqg5DdeWRJyBuXafJeFFMqpny05T0LKBCzTde/ph9VRQzal1j9uHRwab nRf2jRzJeVmv7/ah6PBiRfT+QJNHGfvjz2WolnCtMe+VKoXbf9L+Cc9JFO21Qs/H s0V9a3U1hBnRIMmgJBP5kPWYAvMsT1RdIrzjc0FoPMYbDqiMspvW/iblRxAMfB6Q gek/ypZ0s7qRFMJQVVbNrvNLGFmV+f5425B7DeAQYZ0sRgRQjsOcuL6g0jchtmTx iooktTWMFgvkt1ixNl2YxeWBiiiDB8AWR0j4SYlswczNrgZlNqjGKBBxZyxEyie7 NPspXJgZPNgE2zgLWF/K1pa75X56jdLm5SNt/B3sIbXHsVxvJlUlcqa8pvjN3rfl wpVq3/kO3up2FMUhkD5Py3ST6jg3R/OapPwKHEtp0xTXkAlzkIs= =85PL -----END PGP SIGNATURE-----