EducationSoftwareStrategy.com
StrategyCommunity

Knowledge Base

Product

Community

Knowledge Base

TopicsBrowse ArticlesDeveloper Zone

Product

Download SoftwareProduct DocumentationSecurity Hub

Education

Tutorial VideosSolution GalleryEducation courses

Community

GuidelinesGrandmastersEvents
x_social-icon_white.svglinkedin_social-icon_white.svg
Strategy logoCommunity

© Strategy Inc. All Rights Reserved.

LegalTerms of UsePrivacy Policy
  1. Home
  2. Topics

Data Connector SDK


Stefan Zepeda

Salesforce Solutions Architect • Strategy


Documentation, sample code, instructions and APIs to help developers build and deploy secure new connections between MicroStrategy and web data sources.

 
SYMPTOM:
When using MongoDB as a data warehouse in Strategy 11.0 and higher, if collections (tables) are updated in MongoDB, these changes are not reflected when the tables are viewed in a Strategy project/application.
 
Steps to reproduce:
1. Create a MongoDB connectionusing the Strategy ODBC Driver for MongoDB. 
2. Use this ODBC connection to add new data to a Strategy project/application.  Add the MongoDB collections (seen as tables) in the Strategy project/application.
3. In MongoDB, add a new field in an existing collection (similar to add a new field in an existing table) that is currently used in a Strategy project/application.
4. In MongoDB, add a new collection (similar to add a new table)
5. In MongoDB, in an existing collection, add a new dupla (similar to add new row to a table)
6. In the Strategy project/application, the new fields and collections created in MongoDB will not be reflected in the existing ODBC connection.  The new dupla (row) will be available.
 
Expected Result:
1. New fields in existing collections (seen in Strategy as tables) should be available via the ODBC connection.
2. New collections (similar to add a new table) should be available via the ODBC connection.
 
CAUSE:
For Mongodb, when creating a DSN, we have to define a schema path in the DSN configuration where all the MongoDB related properties, table mapping and data are stored. When testing the ODBC DSN connectivity for the first time, this information would be written into the locally embedded schema.  It will not get refreshed automatically the next time the connectivity is established.
 
For example, lets define the schema path on Windows OS to c:\mongodb\eat_wh1. Using this example, the table mapping information will be created on the first connection in a file c:\monfodb\eat_wh1.MONGODB.MAP
Consequently, after the first time of connectivity, all the existing tables(collections) and columns (fields) are mapped locally, even if new collection/field are updated in Mongodb server side, it will not get refreshed and Strategy 10 can only read the old ones.
 
ACTION:
After the initial DB is created, if any changes are made they will not be reflected until a REFRESH MAP statement is issued. 
The REFRESH MAP statement adds newly discovered objects to your relational view of native data. It also incorporates any configuration changes made to your relational view by reloading the schema definition and associated files.

  • Newly discovered objects are mapped using the same relational view as the one you selected as your initial view in "Creating a Schema with the Table Wizard." If you did not select a view with the Schema Tool, or selected a custom view, the driver maps new objects using a normalized view.
  • REFRESH MAP is an expensive query since it involves the discovery of native data.


KB482926


Comment

0 comments

Details

Knowledge Article

Published:

April 17, 2017

Last Updated:

April 17, 2017