图数据库实施是一项复杂的工作,需要仔细规划和执行。以下是一些建议,可以帮助您在实施图数据库项目时更加顺利。
根据中国信通院此前发布的《图数据库白皮书》,结合一些专家的建议,图数据库建设实施流程一般包括“业务理解”、“图Schema设计”、“业务数据加工”、“业务验证”和“监控运维等步骤。
1、业务理解
图数据库实施的第一步是进行业务理解,即明确业务需求,将业务上的具体需求描述出来,结合图数据库的特性将业务需求转换为图模型和图处理任务,这一个过程通常需要业务人员和图数据库实施工程师(架构师/解决方案专家)合作来完成。
2、图Schema 设计
图的Schema设计是整个数据库实施中最重要的一环,是把业务模型转换为图模型的关键,因此Schema设计的好坏,直接决定了对业务所能产生的效果。图Schema设计务必需要图数据库实施工程师和业务人员共同参与,共同协商讨论。
图数据库的Schema设计与传统的关系型数据库以及关系模型不同。需要根据业务需求和用例设计合适的图模型,包括实体、关系和属性的定义。另外,根据业务常用的查询路径和时效性要求,设计合理的索引,以提高查询效率。
3、业务数据加工
一般来讲,分析场景下业务数据需要加工,图数据库作为业务库的场景下不需要从上游采集数据。
在分析场景,业务数据加工可以由业务方ETL人员或者图数据库实施工程师(架构师/解决方案专家)负责,业务方需要提供基础的ETL数据处理工具或者环境。
业务数据往往不是以图数据库要求的顶点和边的形式存在。业务数据加工的主要目的是将业务数据经过ETL,处理成图数据库所需要的顶点和边的形式,根据不同业务的时效性要求,业务数据加工过程又分成实时处理和离线处理。
4、验证和测试
完成业务数据的转换和入库后,还需要进行数据校验和测试,以保证数据的可用性,验证测试环节主要包括以下流程:
1)数据准确性校验:预期的顶点和边是否存在,数量是否正确,属性值是否正常,边的方向是否正确等。
2)业务场景的验证:将业务常用的查询表达成图数据库的查询语言,执行查询,检查返回的结果的正确性,同时确保时效性满足业务需求。
3)系统测试:主要包括安全性测试和性能压测。
5、数据迁移
如果您的数据已经存在于其他数据库中,需要制定数据迁移计划。如果需要把现有关系型数据库中的数据迁移到图数据库中,可以尝试考虑以下几个方面来设计图模型。
1)图数据库中的一类顶点相当于关系型数据库的一张表,边相当于关系型数据库中连接两张表的中间表,或者一张表通过外键关联另一张表,那么这两张表对应到图上的两个顶点和一条连接它们的边。
2)顶点和边上的属性可以参考关系型数据库中对应表的字段名称。
3)关系型数据库中表的某字段在该表中可以保证唯一性,那么该字段满足被设置成主键的条件。该这个字段可以做为图数据库的顶点的ID字段,做为查询点的关键字。
4)通过对业务分析,在创建图模型时可以根据需求对顶点和边进行调整。必要时彻底抛弃现有的表结构,根据业务现状重新设计图模型。
6、监控运维
监控运维是保证生产系统持续稳定健康运行的基础,主要包括以下几个方面:
(1)、性能监控:
(2)、数据完整性和备份:
(3)、安全性监控:
(4)、硬件和软件维护:
(5)、高可用性和灾难恢复:
(6)、容量规划:
(7)、日志记录和审计:
(8)、故障诊断和问题解决:
(9)、网络管理:
为了实现这些监控和管理活动,通常会使用专业的监控工具,这些工具可以提供实时的数据可视化、警报机制和自动化脚本来辅助运维工作。运维团队还需确保对这些监控工具进行适当的配置和维护,以保障图数据库系统的稳定性和可靠性。
此外,以下几个方面也比较重要,可以关注参考:
Ps:感谢蚂蚁集团TuGraph图计算平台相关专家对本文的支持
参考资料:《图数据库白皮书》,中国信通院;