IBM Graph API太慢

时间:2016-09-02 10:26:53

标签: ibm-graph

我在加利福尼亚,我正在进行非常简单的API调用,他们平均每人需要3-5秒。我觉得这太慢了。

我使用标准交易

$ 15.00美元/ GB $ 0.20美元/ 1000 API调用

例如:

根据电子邮件属性(已编制索引)查找用户顶点:

获取test_graph/vertices?email=starosta@stanford.edu

或简单的Gremlin脚本: " graph.traversal()V()hasLabel('用户&#39)。具有('电子邮件'' X&#39)。hasNext() ;"

两者都需要超过2秒钟。

人们是否通过IBM Graph体验过这一点?这是预期的吗?或者有没有办法让它在几毫秒内返回?

这是我的图表架构,以防我在其上犯了一些错误

{
"propertyKeys": [
{"name": "lastJIRAInteractionTime", "dataType": "Integer", "cardinality": "SINGLE"},
{"name": "lastCALENDARInteractionTime", "dataType": "Integer", "cardinality": "SINGLE"},
{"name": "lastEMAILInteractionTime", "dataType": "Integer", "cardinality": "SINGLE"},
{"name": "weight", "dataType": "Float", "cardinality": "SINGLE"},
{"name": "email", "dataType": "String", "cardinality": "SINGLE"},
{"name": "lastSLACKInteractionTime", "dataType": "Integer",          "cardinality": "SINGLE"}
],
"vertexLabels": [
{"name": "user"}
],
"edgeLabels": [
{"name": "2016M1", "multiplicity": "MULTI"},
{"name": "2016M2", "multiplicity": "MULTI"},
{"name": "2016M3", "multiplicity": "MULTI"},
{"name": "2016M4", "multiplicity": "MULTI"},
{"name": "2016M5", "multiplicity": "MULTI"},
{"name": "2016M6", "multiplicity": "MULTI"},
{"name": "2016M7", "multiplicity": "MULTI"},
{"name": "2016M8", "multiplicity": "MULTI"},
{"name": "2016M9", "multiplicity": "MULTI"},
{"name": "2016M10", "multiplicity": "MULTI"},
{"name": "2016M11", "multiplicity": "MULTI"},
{"name": "2016M12", "multiplicity": "MULTI"}
],
"vertexIndexes": [
{"name": "vByEmail",
  "propertyKeys": ["email"],
  "composite": false
}
],
"edgeIndexes" :[
{"name": "eByWeight",
  "propertyKeys": ["weight"],
  "composite": false
}
]
}

2 个答案:

答案 0 :(得分:3)

由于用于密码存储的散列机制,通过Basic Auth进行身份验证的请求在设计上总是需要几秒钟。

查看API文档顶部记录的http://some.domain/media/Person_photo/Amy.jpg API:

https://ibm-graph-docs.ng.bluemix.net/api.html

答案 1 :(得分:0)

我使用curl从linux命令行尝试了Bluemix docs中的交互式示例,并发现IBM Graph的类似延迟问题。对不起,这个答案只是另一个数据点,但不是解决方案。