diff --git a/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_mongo_sink.md b/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_mongo_sink.md index d7b1cd6dd..1bd8299e4 100644 --- a/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_mongo_sink.md +++ b/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_mongo_sink.md @@ -13,6 +13,7 @@ Content: * [Database and table names](#section1.3.2) * [Row-like storing](#section1.3.3) * [Column-like storing](#section1.3.4) + * [MongoDB Indexes](#section1.4) * [Administration guide](#section2) * [Configuration](#section2.1) * [Use cases](#section2.2) @@ -286,6 +287,17 @@ If `data_model=dm-by-entity` and `attr_persistence=column` then `NGSIMongoSink` [Top](#top) +### MongoDB Indexes +Since version 3.0.0 of cygnus an index named `cyg_raw_opt` is created in this way but depending on datamodel: + +| datamodel | keys | +| :---------------- | :--------------------------------------------------------------- | +| dm-by-servicepath | recvTime, entityId, entityType, attrName, attrType, attrValue | +| dm-by-entity | recvTime, attrName, attrType, attrValue | +| dm-by-attribute | recvTime, attrType, attrValue | + +Note that attempting to use any other datamodel different from these ones will cause a "Unknown data model" ERROR in log traces. In addition, note that default datamodel for NGSIMongoSink is dm-by-entity as all others sinks which uses datamodel. + ## Administration guide ### Configuration `NGSIMongoSink` is configured through the following parameters: diff --git a/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_sth_sink.md b/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_sth_sink.md index ae6ca7437..346763010 100644 --- a/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_sth_sink.md +++ b/doc/cygnus-ngsi/flume_extensions_catalogue/ngsi_sth_sink.md @@ -11,6 +11,7 @@ Content: * [`NGSIEvent`](#section1.3.1) * [Database and table names](#section1.3.2) * [Storing](#section1.3.3) + * [MongoDB Indexes](#section1.4) * [Administration guide](#section2) * [Configuration](#section2.1) * [Use cases](#section2.2) @@ -120,30 +121,30 @@ Assuming the following `NGSIEvent` is created from a notified NGSI context data ngsi-event={ headers={ - content-type=application/json, - timestamp=1429535775, - transactionId=1429535775-308-0000000000, - correlationId=1429535775-308-0000000000, - fiware-service=vehicles, - fiware-servicepath=/4wheels, - + content-type=application/json, + timestamp=1429535775, + transactionId=1429535775-308-0000000000, + correlationId=1429535775-308-0000000000, + fiware-service=vehicles, + fiware-servicepath=/4wheels, + }, body={ - entityId=car1, - entityType=car, - attributes=[ - { - attrName=speed, - attrType=float, - attrValue=112.9 - }, - { - attrName=oil_level, - attrType=float, - attrValue=74.6 - } - ] - } + entityId=car1, + entityType=car, + attributes=[ + { + attrName=speed, + attrType=float, + attrValue=112.9 + }, + { + attrName=oil_level, + attrType=float, + attrValue=74.6 + } + ] + } } @@ -288,6 +289,19 @@ Assuming `data_model=dm-by-entity` and all the possible resolutions as configura [Top](#top) +### MongoDB Indexes + +Since version 3.0.0 of cygnus index named `cyg_agg_opt` is created in this way but depending on datamodel: + +| datamodel | keys | +| :----------------- | :------------------------------------------------- | +| dm-by-service-path | entityId, entityType, attrName, resolution, origin | +| dm-by-entity | attrName, resolution, origin | +| dm-by-attribute | resolution, origin | + + +Note that attempting to use any other datamodel different from these ones will cause a "Unknown data model" ERROR in log traces. In addition, note that default datamodel for NGSISTHSink is dm-by-entity as all others sinks which uses datamodel. + ## Administration guide ### Configuration `NGSISTHSink` is configured through the following parameters: