Groonga 10.0.6 has been released
Groonga 10.0.6 has been released!
How to install: Install
Changes
Here are important changes in this release:
-
logical_range_filter Improved search plan for large data.
-
Normally,
logical_range_filteris faster thanlogical_select. However, it had been slower thanlogical_selectin the below case.- If Groonga can't get the number of required records easily, it has the feature that switches index search from sequential search.
- Normally,
logical_range_filteruses a sequential search when records of search target are many.
- Normally,
- The search process for it is almost the same as
logical_selectif the above switching occurred. - So,
logical_range_filteris severalfold slower thanlogical_selectin the above case if the search target is large data. Becauselogical_range_filterexecutes sort after the search.
- If Groonga can't get the number of required records easily, it has the feature that switches index search from sequential search.
- If we search for large data, Groonga easily use sequential search than until now since this release.
- Therefore,
logical_range_filterwill improve performance. Because the case of the search process almost the same aslogical_selectdecreases.
-
-
[httpd] Updated bundled nginx to 1.19.1.
-
Modify how to install into Debian GNU/Linux.
- We modify to use
groonga-apt-sourceinstead ofgroonga-archive-keyring. -
Because the
lintiancommand recommends usingapt-sourceif a package that it puts files under the/etc/apt/sources.lists.d/.- The
lintiancommand is the command which checks for many common packaging errors. -
Please also refer to the following for the details about installation procedures.
- The
- We modify to use
-
logical_select Added a support for
highlight_htmlandhighlight_full. -
Added support for recycling the IDs of records that are deleted when an array without value space delete.
- If an array that doesn't have value space is deleted, deleted IDs are never recycled.
-
Groonga had used large storage space by large ID. Because it uses large storage space by itself.
- For example, large ID is caused after many adds and deletes like Mroonga's
mroonga_operations
- For example, large ID is caused after many adds and deletes like Mroonga's
-
select Improved performance of full-text-search without index.
-
function Improved performance for calling of function that all arguments a variable reference or literal.
-
indexing Improved performance of offline index construction by using token column.
-
Improved performance for
"_score = func(...)".- The performance when the
_scorevalue calculate by using only function like"_score = func(...)"improved.
- The performance when the
-
Fixed a bug that garbage may be included in response after response send error.
- It may occur if a client didn't read all responses and closed the connection.
logical_select Added a support for highlight_html.
-
highlight_htmlandhighlight_fullcan be used in only--output-columnsinselectuntil now. -
They can be also used in
logical_selectsince this release as below.plugin_register sharding plugin_register functions/number table_create Memos_20170315 TABLE_NO_KEY column_create Memos_20170315 timestamp COLUMN_SCALAR Time column_create Memos_20170315 content COLUMN_SCALAR Text table_create Memos_20170316 TABLE_NO_KEY column_create Memos_20170316 timestamp COLUMN_SCALAR Time column_create Memos_20170316 content COLUMN_SCALAR Text table_create Memos_20170317 TABLE_NO_KEY column_create Memos_20170317 timestamp COLUMN_SCALAR Time column_create Memos_20170317 content COLUMN_SCALAR Text load --table Memos_20170315 [ {"timestamp": "2017/03/15 00:00:00", "content": "Groonga is fast."}, {"timestamp": "2017/03/15 01:00:00", "content": "Mroonga is fast and easy to use."} ] load --table Memos_20170316 [ {"timestamp": "2017/03/16 10:00:00", "content": "PGroonga is fast and easy to use."}, {"timestamp": "2017/03/16 11:00:00", "content": "Rroonga is fast and easy to use."} ] logical_select Memos \ --shard_key timestamp \ --query 'content:@easy' \ --output_columns 'content, highlight_html(content)' [ [ 0, 0.0, 0.0 ], [ [ [ 3 ], [ [ "content", "Text" ], [ "highlight_html", null ] ], [ "Mroonga is fast and easy to use.", "Mroonga is fast and <span class=\"keyword\">easy</span> to use." ], [ "PGroonga is fast and easy to use.", "PGroonga is fast and <span class=\"keyword\">easy</span> to use." ], [ "Rroonga is fast and easy to use.", "Rroonga is fast and <span class=\"keyword\">easy</span> to use." ] ] ] ]
Conclusion
Let's search by Groonga!