marian
1.0.0
Marian ist ein HTTP -Volltext -Suchdienst.
Sie benötigen node.js v8.0 oder höher.
npm install
MAX_WORKERS=2 node ./src/index.js [MANIFEST_SOURCE]
Marian liest dann das in MANIFEST_SOURCE angegebene Manifest -Verzeichnis und hört sich Anfragen auf Port 8080 an.
Marian benötigt ein offensichtliches Quellverzeichnis. Dies kann entweder ein lokaler Weg oder ein Amazon S3 -Pfad sein. Zum Beispiel dir:./manifests/ oder bucket:docs-mongodb-org-prod/search-indexes/ .
Der Pfad muss nur JSON -Dateien mit dem folgenden JSON -Schema enthalten:
{
"$id": "http://example.com/example.json",
"type": "object",
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"url": {
"$id": "/properties/url",
"type": "string",
"title": "The Url Schema ",
"default": ""
},
"includeInGlobalSearch": {
"$id": "/properties/includeInGlobalSearch",
"type": "boolean",
"title": "The Includeinglobalsearch Schema ",
"default": false
},
"aliases": {
"$id": "/properties/aliases",
"type": "array"
},
"documents": {
"$id": "/properties/documents",
"type": "array",
"items": {
"$id": "/properties/documents/items",
"type": "object",
"properties": {
"slug": {
"$id": "/properties/documents/items/properties/slug",
"type": "string",
"title": "The Slug Schema ",
"default": ""
},
"title": {
"$id": "/properties/documents/items/properties/title",
"type": "string",
"title": "The Title Schema ",
"default": ""
},
"headings": {
"$id": "/properties/documents/items/properties/headings",
"type": "array",
"items": {
"$id": "/properties/documents/items/properties/headings/items",
"type": "string",
"title": "The 0th Schema ",
"default": ""
}
},
"text": {
"$id": "/properties/documents/items/properties/text",
"type": "string",
"title": "The Text Schema ",
"default": ""
},
"preview": {
"$id": "/properties/documents/items/properties/preview",
"type": "string",
"title": "The Preview Schema ",
"default": "",
},
"tags": {
"$id": "/properties/documents/items/properties/tags",
"type": "string",
"title": "The Tags Schema ",
"default": ""
},
"links": {
"$id": "/properties/documents/items/properties/links",
"type": "array",
"items": {
"$id": "/properties/documents/items/properties/links/items",
"type": "string",
"title": "The 0th Schema ",
"default": ""
}
}
}
}
}
}
}
GET /search?q=<query>[&searchProperty=<searchProperty>]
Returns search results. For example, see https://marian.mongodb.com/search?q=aggregation%20pipeline
GET /status
Returns a status document
POST /refresh
When this endpoint is POSTed, Marian will rescan the manifest source
directory.