Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
209 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,209 @@ | ||
| --- | ||
| layout: post.en | ||
| title: Groonga 8.0.0 has been released | ||
| description: Groonga 8.0.0 has been released! | ||
| published: false | ||
| --- | ||
|
|
||
| ## Groonga 8.0.0 has been released | ||
|
|
||
| [Groonga 8.0.0](/docs/news.html#release-8.0.0) has been released! | ||
|
|
||
| This is a major version up! But It keeps backward compatibility. | ||
| You can upgrade to 8.0.0 without rebuilding database. | ||
|
|
||
| How to install: [Install](/docs/install.html) | ||
|
|
||
| ### Changes | ||
|
|
||
| Here are important changes in this release: | ||
|
|
||
| * [select](/docs/reference/commands/select.html) added `--drilldown_adjuster` and `--drilldowns[label].adjuster`. | ||
|
|
||
| * [between](/docs/reference/functions/between) Accept `between()` without borders. | ||
|
|
||
| * Fixed a memory leak for normal hash table. | ||
|
|
||
| ### [select](/docs/reference/commands/select.html) added `--drilldown_adjuster` and `--drilldowns[label].adjuster`. | ||
|
|
||
| Added `--drilldown_adjuster` and `--drilldowns[LABEL].adjuster` in `select` arguments. | ||
| You can adjust score against result of drilldown. | ||
|
|
||
| Specifically, below. | ||
|
|
||
| ```text | ||
| table_create Categories TABLE_PAT_KEY ShortText | ||
| table_create Tags TABLE_PAT_KEY ShortText | ||
| column_create Tags categories COLUMN_VECTOR|WITH_WEIGHT Categories | ||
| table_create Memos TABLE_HASH_KEY ShortText | ||
| column_create Memos tags COLUMN_VECTOR Tags | ||
| column_create Categories tags_categories COLUMN_INDEX|WITH_WEIGHT \ | ||
| Tags categories | ||
| load --table Tags | ||
| [ | ||
| {"_key": "groonga", "categories": {"full-text-search": 100}}, | ||
| {"_key": "mroonga", "categories": {"mysql": 100, "full-text-search": 80}}, | ||
| {"_key": "ruby", "categories": {"language": 100}} | ||
| ] | ||
| load --table Memos | ||
| [ | ||
| { | ||
| "_key": "Groonga is fast", | ||
| "tags": ["groonga"] | ||
| }, | ||
| { | ||
| "_key": "Mroonga is also fast", | ||
| "tags": ["mroonga", "groonga"] | ||
| }, | ||
| { | ||
| "_key": "Ruby is an object oriented script language", | ||
| "tags": ["ruby"] | ||
| } | ||
| ] | ||
| select Memos \ | ||
| --limit 0 \ | ||
| --output_columns _id \ | ||
| --drilldown tags \ | ||
| --drilldown_adjuster 'categories @ "full-text-search" * 2 + categories @ "mysql"' \ | ||
| --drilldown_output_columns _key,_nsubrecs,_score | ||
| [ | ||
| [ | ||
| 0, | ||
| 0.0, | ||
| 0.0 | ||
| ], | ||
| [ | ||
| [ | ||
| [ | ||
| 3 | ||
| ], | ||
| [ | ||
| [ | ||
| "_id", | ||
| "UInt32" | ||
| ] | ||
| ] | ||
| ], | ||
| [ | ||
| [ | ||
| 3 | ||
| ], | ||
| [ | ||
| [ | ||
| "_key", | ||
| "ShortText" | ||
| ], | ||
| [ | ||
| "_nsubrecs", | ||
| "Int32" | ||
| ], | ||
| [ | ||
| "_score", | ||
| "Int32" | ||
| ] | ||
| ], | ||
| [ | ||
| "groonga", | ||
| 2, | ||
| 203 | ||
| ], | ||
| [ | ||
| "mroonga", | ||
| 1, | ||
| 265 | ||
| ], | ||
| [ | ||
| "ruby", | ||
| 1, | ||
| 0 | ||
| ] | ||
| ] | ||
| ] | ||
| ] | ||
| ``` | ||
|
|
||
| In the above example, we adjust the score of records taht have `full-text-search` or `mysql` in `categories` . | ||
|
|
||
| ### [between](/docs/reference/functions/between) Accept `between()` without borders. | ||
|
|
||
| If the number of arguments passed to ``between()`` is 3, the 2nd and 3rd arguments are handled as the inclusive edges. | ||
|
|
||
| Specifically, below. | ||
|
|
||
| ```text | ||
| table_create Users TABLE_HASH_KEY ShortText | ||
| column_create Users age COLUMN_SCALAR Int32 | ||
| table_create Ages TABLE_PAT_KEY Int32 | ||
| column_create Ages users_age COLUMN_INDEX Users age | ||
| load --table Users | ||
| [ | ||
| {"_key": "alice", "age": 17}, | ||
| {"_key": "bob", "age": 18}, | ||
| {"_key": "calros", "age": 19}, | ||
| {"_key": "dave", "age": 20}, | ||
| {"_key": "eric", "age": 21} | ||
| ] | ||
| select Users --filter 'between(age, 18, 20)' | ||
| [ | ||
| [ | ||
| 0, | ||
| 0.0, | ||
| 0.0 | ||
| ], | ||
| [ | ||
| [ | ||
| [ | ||
| 3 | ||
| ], | ||
| [ | ||
| [ | ||
| "_id", | ||
| "UInt32" | ||
| ], | ||
| [ | ||
| "_key", | ||
| "ShortText" | ||
| ], | ||
| [ | ||
| "age", | ||
| "Int32" | ||
| ] | ||
| ], | ||
| [ | ||
| 2, | ||
| "bob", | ||
| 18 | ||
| ], | ||
| [ | ||
| 3, | ||
| "calros", | ||
| 19 | ||
| ], | ||
| [ | ||
| 4, | ||
| "dave", | ||
| 20 | ||
| ] | ||
| ] | ||
| ] | ||
| ] | ||
| ``` | ||
|
|
||
| ### Fixed a memory leak for normal hash table. | ||
|
|
||
| Fixed a bug that you sometimes can not connect to groonga just by continuing to send queries. | ||
|
|
||
| ### Conclusion | ||
|
|
||
| See [Release 8.0.0 2018-02-09](/docs/news.html#release-8.0.0) about detailed changes since 7.1.1 | ||
|
|
||
| Let's search by Groonga! |