It is no secret that monsterDB query language is based upon the syntax that is used by MongoDB, this doesn’t mean we use mongoDB, we are built from the ground up as a pure Java engine.
Fuzzy commands will configure the fuzzy capability of the installation and the collection, examples of this include the definition of match and fuzzy indexes plus the ability to influence the controlled vocabulary system (nicknames, synonyms, antonyms, etc)
usage from API:
cursor = aCollection.saveTable(document)
usage from CLI:
db.aCollection.saveTable(document)
The document represents a table (record type structure), please refer to the Table definitions on the schema documentation page here : https://entitystream.com/entitystream-schema-instructions/
db.test.saveTable({tableName: "testT", columns: [{colName: "ID", display: "Identifier", primaryKey: true},{colName: “Desc”, display: “Description” labelPos:1}]})
usage from API:
cursor = aCollection.saveConceptGroup(document)
usage from CLI:
db.aCollection.saveConceptGroup(document)
The document represents a purpose (Conceptual Group), please refer to the Concept Groups definitions on the schema documentation page here : https://entitystream.com/entitystream-schema-instructions/
db.test.saveConceptGroup({purposeName: "CoName", purposeType: "None" })
usage from API:
cursor = aCollection.saveConcept(document)
usage from CLI:
db.aCollection.saveConcept(document)
The document represents a purpose (Concept), please refer to the Concept definitions on the schema documentation page here : https://entitystream.com/entitystream-schema-instructions/
db.test.saveConcept({ purposeName: "CoName", column: "CoName", matchClass: "MatchCompanyName", mandatory: true, minWidth:1, maxWidth:3})
usage from API:
cursor = aCollection.saveConceptMapping(document)
usage from CLI:
db.aCollection.saveConceptMapping(document)
The document represents a purpose to table mapping (Concept Mapping), please refer to the Concept Mapping definitions on the schema documentation page here : https://entitystream.com/entitystream-schema-instructions/
db.test.saveConceptMapping({purposeName: "CoName", purposeColumn: "CoName", tableName: "testT", tableColumn: "Desc", columnOrder: 0})
usage from API:
cursor = aCollection.saveMatchRule(document)
usage from CLI:
db.aCollection.saveMatchRule(document)
The document represents a matching rule (there can be many) that will score two records and decide the possible outcome, please refer to the Match Rule definitions on the schema documentation page here : https://entitystream.com/entitystream-schema-instructions/
db.test.saveMatchRule({order: 0, rulePurpose: [ { purposeName: "CoName", mandatory: true, acceptWeight: 1.0, rejectWeight: 1.2 } ], matchSameSystem: true, highScore: 95.0, lowScore: 60.0, active: true})
usage from API:
cursor = aCollection.saveFuzzyIndex(document)
usage from CLI:
db.aCollection.saveFuzzyIndex(document)
The document represents an bucketing index (there can be more than one on different fields) that will identify potential candidate records to be compared, please refer to the Index definitions on the schema documentation page here : https://entitystream.com/entitystream-schema-instructions/
db.test.saveFuzzyIndex({indexName: "CoIndex", purposeName: "CoName", match: true, search: true, exactIndex: false, keyThreshold: 1000})
usage from API:
cursor = aCollection.deleteFuzzyIndex(String)
usage from CLI:
db.aCollection.deleteFuzzyIndex(string)
The string is the indexName parameter provided in the index definition.
db.test.deleteFuzzyIndex("CoIndex")
usage from API:
cursor = aCollection.deleteTable(String)
usage from CLI:
db.aCollection.deleteTable(string)
The string is the indexName parameter provided in the index definition.
db.test.deleteTable("testT")
usage from API:
cursor = aCollection.deleteConceptGroup(String)
usage from CLI:
db.aCollection.deleteConceptGroup(string)
The string is the purposeName parameter provided in the concept group definition.
db.test.deleteConceptGroup("CoName")
usage from API:
cursor = aCollection.deleteConcept(String)
usage from CLI:
db.aCollection.deleteConcept(string)
The string is the purposeColumn parameter provided in the concept definition.
db.test.deleteConcept("CoName")
usage from API:
cursor = aCollection.deleteConceptMapping(document)
usage from CLI:
db.aCollection.deleteConceptMapping(document)
The document represents an abbreviated purpose to table mapping (Concept Mapping), please refer to the Concept Mapping definitions on the schema documentation page here : https://entitystream.com/entitystream-schema-instructions/ only the fields shown below are required to locate and delete the mapping.
db.test.deleteConceptMapping({purposeName: "CoName", purposeColumn: "CoName", tableName: "testT", tableColumn: "Desc"})
usage from API:
cursor = aCollection.deleteTable(long)
usage from CLI:
db.aCollection.deleteTable(long)
The long is the order parameter provided in the match rule definition.
db.test.deleteMatchRule(0)
usage from API:
cursor = aCollection.removeFuzzy()
usage from CLI:
db.aCollection.removeFuzzy()
This will remove the fuzzy matching element of the collection and revert it back to a standard collection
db.test.removeFuzzy()
The following script can be run from the CLI (command Line) using the grr script command:
java -jar monsterDB.jar -p 27019 -d dbname -x test.grr
where test.grr contains:
db.test.saveTable({tableName: "testT", columns: [{colName: "ID", display: "Identifier", primaryKey: true},{colName: "Desc", display: "Description", labelPos:1}]}) db.test.saveConceptGroup({purposeName: "CoName", purposeType: "None" }) db.test.saveConcept({ purposeName: "CoName", column: "CoName", matchClass: "MatchCompanyName", mandatory: true, minWidth:1, maxWidth:3}) db.test.saveConceptMapping({purposeName: "CoName", purposeColumn: "CoName", tableName: "testT", tableColumn: "Desc", columnOrder: 0}) db.test.saveMatchRule({order: 0, rulePurpose: [ { purposeName: "CoName", mandatory: true, acceptWeight: 1.0, rejectWeight: 1.2 } ], matchSameSystem: true, highScore: 95.0, lowScore: 60.0, active: true}) db.test.saveFuzzyIndex({indexName: "CoIndex", purposeName: "CoName", match: true, search: true, exactIndex: false, keyThreshold: 1000})
© 2021 Entitystream. Built using WordPress and the Mesmerize Theme