# eZoo-API
面向不同的业务场景和集成环境,eZooDB致力于使用统一的接口提供服务(统称:eZoo-API),尽可能减少重复定义、不完整定义等带来的额外熟悉与学习成本。
用户可以通过以下方式向任意可用的eZooDB服务进程发起请求:
- eZoo-SDK,基于thrift,使用定制消息协议进行网络通信,支持所有主流开发语言;
- RESTful-API,基于http(s),使用eZooDB内置接口进行网络通信,占用一个独立端口,用户可通过配置项启动。
# 接口详细定义:
-
eZooDB从存储层到计算层,均支持多图模式,用户可以实时的完成图创建、删除、加载等操作;
-
eZooDB支持同时基于不同的图提供服务,基础图查询包括对节点、边、邻居、路径等;
-
基于图实体的属性及拓扑结构,用户可以进行更进一步的数据挖掘与分析;
-
针对已经加载的图,用户可以通过图更新接口,进行实时的实体属性、拓扑结构、及图定义的更新;
-
基于角色进行操作权限的验证,用户可以通过权限管理接口,实现上层业务的权限隔离,未来计划支持用户自定义角色及权限组合;
# 其他相关内容:
-
eZoo-API使用统一的请求状态码,辅助用户快速地定位问题,包括但不限于非法参数、约束校验失败、权限不足等;
-
eZooDB使用预定义的方式构建图,支持不同实体结构的灵活组合,图实体的异构之处主要体现在其属性和类型上,我们提供了多种基础属性类型供用户选择,针对不同的业务场景,未来计划将支持更多更灵活的属性类型;
-
为了实现高性能的图基础能力底座,eZooDB在API层针对不同的业务场景,提供了多样化的数据结构作为参数及返回值,最大化地提高数据传输效率、降低多余或冗余数据封装,这在高阶路径及邻居等潜在的大规模结果量查询时显得尤为重要。
用户可以通过接口的详细定义了解其相关的数据结构,或通过此入口快速的查阅指定数据结构详细定义。