123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- ===============================
- Query more of your NoSQL stores
- ===============================
- From now on, searx lets you to query your NoSQL data stores:
- * `Redis`_
- * `MongoDB`_
- The reference configuration of the engines are included ``settings.yml`` just commented out,
- as you have to set various options and install dependencies before using them.
- By default, the engines use ``key-value`` template for displaying results.
- If you are not satisfied with the original result layout,
- you can use your owm template by placing the template under
- ``searx/templates/{theme_name}/result_templates/{template_name}`` and setting
- ``result_template`` attribute to ``{template_name}``.
- Furthermore, if you do not want to expose these engines on a public instance, you can
- still add them and limit the access by setting ``tokens`` as described in the `blog post about
- private engines`_.
- Configuring searx to use the stores
- ===================================
- NoSQL data stores are used for storing arbitrary data without first defining their
- structure.
- Redis
- -----
- Required package: ``redis``
- Redis is a key value based data store usually stored in memory.
- Select a database to search in and set its index in the option ``db``. You can
- either look for exact matches or use partial keywords to find what you are looking for
- by configuring ``exact_match_only``.
- In this example you can search for exact matches in your first database:
- .. code:: yaml
- - name : mystore
- engine : redis_server
- exact_match_only : True
- host : 127.0.0.1
- port : 6379
- password : secret-password
- db : 0
- shortcut : rds
- enable_http : True
- MongoDB
- -------
- Required package: ``pymongo``
- MongoDB is a document based database program that handles JSON like data.
- In order to query MongoDB, you have to select a ``database`` and a ``collection``. Furthermore,
- you have to select a ``key`` that is going to be searched. MongoDB also supports the option ``exact_match_only``, so configure it
- as you wish.
- Above is an example configuration for using a MongoDB collection:
- .. code:: yaml
- - name : mymongo
- engine : mongodb
- shortcut : md
- host : '127.0.0.1'
- port : 27017
- database : personal
- collection : income
- key : month
- enable_http: True
- Acknowledgement
- ===============
- This development was sponsored by `Search and Discovery Fund`_ of `NLnet Foundation`_ .
- .. _Redis: https://redis.io/
- .. _MongoDB: https://mongodb.com/
- .. _blog post about private engines: private-engines.html#private-engines
- .. _Search and Discovery Fund: https://nlnet.nl/discovery
- .. _NLnet Foundation: https://nlnet.nl/
- | Happy hacking.
- | kvch // 2021.07.13 23:16
|