AdminAzure Cosmos DB Team (Product Manager, Microsoft Azure)

My feedback

  1. 119 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    6 comments  ·  Azure Cosmos DB  ·  Flag idea as inappropriate…  ·  Admin →

    We are still reviewing this as there are a number of dependencies and teams involved. We will update the status here as this progresses.

    Thanks.

  2. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Azure Cosmos DB » SQL API  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks, for bringing it up. We will address this ASAP.

  3. 77 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    3 comments  ·  Azure Cosmos DB » MongoDB API  ·  Flag idea as inappropriate…  ·  Admin →

    Pretty much all of $text functionality (and more) has been implemented in Azure Search and we're happy to let you know that it now supports for MongoDB API collections (in private preview). Working with MongoDB collections is very similar to working with SQL Cosmos DB collections as described in https://docs.microsoft.com/azure/search/search-howto-index-cosmosdb

    To create a MongoDB datasource, POST an HTTP request as shown below:

    POST https://[service name].search.windows.net/datasources?api-version=2016-09-01
    Content-Type: application/json
    api-key: [Search service admin key]

    {
    "name": "mymongodbdatasource",
    "type": "documentdb",
    "credentials": {
    "connectionString": "AccountEndpoint=https://<Your Cosmos DB account name>.documents.azure.com;AccountKey=<Your Cosmos DB account key>;Database=<Your database>;ApiKind=MongoDb"
    },
    "container": { "name": "<Your collection>", "query": null },
    "dataChangeDetectionPolicy": {
    "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
    "highWaterMarkColumnName": "_ts"
    }
    }

    Note:

    1. Use `documentdb` as the data source type.
    2. Do not use a MongoDB connection string that you would use in your MongoDB application. Instead, construct the connection string as shown above. Make sure to add **ApiKind=MongoDb** to the connection string.

    Once you've created the data source, follow the steps in https://docs.microsoft.com/azure/search/search-howto-index-cosmosdb to create a search index, create an indexer, and monitor the indexer execution.

    ## Known issues and limitations

    1. Only the REST API is supported. For now, you cannot create or edit MongdoDB data sources using Azure Portal or Azure Search .NET SDK. However, you **can** monitor execution history of MongoDB indexers in the portal.

    2. Custom queries are not supported: `container.query` parameter must be set to null or omitted. If you need to use a custom query, please let us know at the emails below.

    If you encounter any issues, please contact azscustquestions@microsoft.com

    Currently, simple text search is provided through $regex operator. More comprehensive text search is coming shortly through Azure Search that will be able to index MongoDB API collections as well: https://feedback.azure.com/forums/263029-azure-search/suggestions/18861421-documentdb-indexer-should-be-able-to-index-mongodb

  4. 57 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    9 comments  ·  Azure Cosmos DB » MongoDB API  ·  Flag idea as inappropriate…  ·  Admin →

    We are currently working on this feature and have made it available in Preview in the Azure Portal.

    Please feel free to test Aggregation Pipeline support for your MongoDB API accounts in Cosmos DB by opening your MongoDB API account, then clicking on “Preview” tab on left hand side and then Enable for Aggregation Pipeline.

    While there please feel free to test support for MongoDB 3.4 support as well as Per-Document TTL support.

    Thank you for your request and votes.

    We are implementing a number of changes in aggregation pipeline this quarter. Some of the results will bee seen in both speed and RU charges by the end of April 2018.

    replaceRoot support is on our roadmap. The workaround currently is to use simple $project: { _id:0, "<document_root>":1 } stage instead. It will give pretty much same results, except that it will include the name of the field used as a new document_root as well, which you can filter out (or simply omit) on the client side.

  5. 665 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    29 comments  ·  Azure Cosmos DB » MongoDB API  ·  Flag idea as inappropriate…  ·  Admin →

    [UPDATE] Support for positional operator is expected to be released around April 2018

  6. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Azure Cosmos DB » MongoDB API  ·  Flag idea as inappropriate…  ·  Admin →

    Currently, projection definition only supports "1" to include the field in projection (as per https://docs.mongodb.com/manual/tutorial/project-fields-from-query-results/#return-the-specified-fields-and-the-id-field-only)

    As a workaround, can you try the following command
    Command: db.getCollection('Employee').find({ "FullName": /User/i}).projection({ "FullName" : 1 })

Feedback and Knowledge Base