Azure CosmosDB与gremlin控制台连接到模拟器

时间:2018-02-05 09:45:43

标签: azure azure-cosmosdb gremlin

我想用gremlin控制台连接到cosmosDB模拟器。

yaml文件应该如何显示。 目前我试过:

hosts: [localhost]
port: 8182
serializer: { className: 
org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV3d0, config: { 
serializeResultToString: true }}

这里是带响应的命令行调用: enter image description here

以下是没有“:>”的错误消息 enter image description here

但这不起作用。有什么想法吗?

亲切的问候 马库斯

3 个答案:

答案 0 :(得分:1)

我尝试使用Azure Cosmos DB来关联我的hosts: [jaygong.graphs.azure.com] port: 443 username: /dbs/testdb/colls/jay password: **************** connectionPool: {enableSsl: true} serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config: { serializeResultToString: true }} ,这很有效。

我的配置如下:

Azure Cosmos DB Emulator

enter image description here

然后,我按照您的配置尝试连接hosts: [localhost] port: 8081 username: /dbs/familyDB/colls/FamilyCollection password: C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw== connectionPool: { enableSsl: true} serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config: { serializeResultToString: true }}

Cosmos DB Emulator

经过大量的尝试,我也遇到了和你一样的问题。

enter image description here

最后,我发现了这个feedback,似乎Apache tinkerpop server目前不支持Gremlin API。

考虑到费用,我建议您使用Azure Cosmos DB Emulator代替Azure Cosmos DB Emulator在开发阶段在本地测试您的代码。测试完成后,转到Azure Cosmos DB。

此外,Graph API支持提及here.Net

  

通过使用Azure Cosmos数据库模拟器,您可以使用Graph API   在本地开发和测试,无需创建Azure订阅或   产生任何费用。当您对自己的申请表现满意时   正在使用模拟器,您可以切换到使用Azure Cosmos DB   云中的帐户。

可以找到此段落here。但是,在我对source code的研究之后,此处提到的模拟器支持的图谱API仅指Ext.define('User', { extend: 'Ext.data.Model', fields: [ 'id', 'name', 'total'], hasMany: { model: 'Order', name: 'orders' }, proxy: { type: 'rest', url: 'users.json', reader: { type: 'json', root: 'users' } } }); Ext.define('Order', { extend: 'Ext.data.Model', fields: [ 'id', 'total'], hasMany: { model: 'OrderItem', name: 'orderItems', associationKey: 'order_items' }, belongsTo: 'User' }); Ext.define('OrderItem', { extend: 'Ext.data.Model', fields: [ 'id', 'price', 'quantity', 'order_id', 'product_id'], belongsTo: ['Order', {model: 'Product', associationKey: 'product'}] }); var store = Ext.create('Ext.data.Store', { model: 'User' }); , 不是指javanode.js

因此,似乎Azure Cosmos数据库模拟器存在缺陷,因为它可能无法与Azure Cosmos数据库服务的最新更改保持同步。

希望它对你有所帮助。

答案 1 :(得分:1)

更新,该仿真器现在支持版本为2.1.4.0related GitHub issue)的gremlin。

该线程中的一个用户甚至通过/EnableGremlinEndpoint开关创建了repo with instructions for enabling it

答案 2 :(得分:-1)