在 DolphinDB 插件市场中,个人开发者的智慧闪光正点亮更多创新可能。本期我们的主角是一位从生物信息学跨界量化交易的独立开发者——面对 Redis 集群与 DolphinDB 高效协同的空白,他自研了 RedisCluster 插件,不仅填补了官方插件在多节点支持上的空白,更在响应速度上实现了数倍突破。
让我们一起走进这位开发者的故事,看他如何将个人业务痛点转化为通用技术方案。
RedisCluster 插件开发背后的故事
01请简要介绍一下自己
我是 DolphinDB 社区开发者 uplee,目前深耕于科研行业,担任生物信息学专业的博士后研究员。对于大数据分析,网页应用开发,算法开发,深度学习都有所涉猎,算是"跨界"玩家。
02 为什么选择开发第三方插件?
最初是因为个人业务需求,我在搭建一套面向期货与期权市场的量化研究与交易的体系,在挑选了市面上的产品后选定了 DolphinDB 作为核心计算引擎。当时我的策略需要实现 DolphinDB 和其他系统(如 Redis 集群)的高速交互,为了满足个人开发场景的需求,我干脆开发了一个插件,同时也希望借此机会回馈社区,与更多开发者交流合作。
03 你想解决的核心痛点是什么?
我在开发时,希望保留应用的可扩展性,以保证未来开发的更多可能性。虽然 DolphinDB 官方也有 Redis 插件,但那是针对单实例设计,很难实现与 Redis 集群的交互。
因此,我希望开发针对 DolphinDB 与 Redis 集群交互的接口插件,解决脚本开发、维护复杂的问题,简化节点路由和数据传输逻辑。此外,针对特定 Redis 命令(如 Redis TimeSeries)进行优化,降低时延,并对特定应用场景进行算法优化。
04 开发中的挑战或成就?
挑战还是有一些。一开始在插件的开发测试过程中,偶尔会把 DolphinDB Server 搞宕机,当时对于如何 debug 毫无头绪,后来在 DolphinDB 社区支持团队的帮助下,这些问题得以解决;后来插件基本开发完成,在后台提交后,得到了官方的审核反馈,针对各种使用场景补充了大量的测试case,虽然很繁琐,但从保证插件稳定性的角度来看,还是非常有必要的,所以工作量对于我来说可能也是一个挑战吧。
成就方面,首先是成就感十足,RedisCluster 插件相较于 Redis 插件在某些功能接口上实现性能的数倍提升,同时也切切实实的看到由自己研发的插架被上架到了官方平台上,感觉还是很不错的。其次比较重要的是,帮我自己打开了一扇“新世界的大门”,这个插件的开发过程极大拓展了我对DolphinDB生态能力的认知边界,我也规划了许多未来围绕 DolphinDB 进行开发的计划。
05 对其他开发者的建议或鼓励
如果在 DolphinDB 代码端开发遇到瓶颈,例如需要写非常复杂的 module,或者代码逻辑复杂、可读性和可维护性低,不妨考虑开发 DolphinDB 插件,将其包装成为黑盒,能够极大提升性能和开发的灵活性;
为了保持代码可读性、可维护性和可扩展性,可以考虑根据业务逻辑将代码分拆,尽量避免将所有代码放在少数几个 C++文件中。同时,这样也能更好应对插件测试阶段的回溯和优化。
开发前仔细参阅 DolphinDB 插件开发教程文档,以及类似功能的开源插件源码;
06 请你评价一下 DolphinDB?
DolphinDB 给我的感觉是“扎实又开放”。它一体化程度高,功能齐全而且经过深度优化。文档很详尽,所以日常开发起来很顺畅;同时,有可靠的技术支持团队,背后还有很健康的生态,这些都让我有信心做长期投入。
而且 DolphinDB 的插件体系,也为开发者提供了一个绝佳舞台,我能够很灵活地拓展 DolphinDB 的能力,去解决更多具体的业务问题。
07 未来有什么插件计划?
未来会继续优化插件,并且考虑开发新的插件。
优化方面,未来会考虑在 RedisCluster 插件中添加针对 Redis 各类模块的支持接口。此外,目前插件侧重于 DolphinDB 端向 Redis 集群端的数据交互,未来可能会增加反向的支持,即实现 Redis 集群向 DolphinDB 的数据流转。
新插件的话,未来可能会考虑开发针对期权分析的流计算插件,以及针对美股等海外市场的应用插件。
也欢迎感兴趣的大佬一起交流,我的邮箱和地址可以贴一下:uplee@pku.edu.cn
RedisCluster 插件
插件市场新成员!DolphinDB RedisCluster 上线,打造 Redis 集群交互新体验
RedisCluster 插件为 DolphinDB 提供了与 Redis 集群的高效交互接口,特别适用于“海量计算 + 低时延缓存/分发”的高并发场景。它内置对 Redis 集群分片机制的支持,能自动发现集群拓扑、识别哈希槽、解析重定向,并将命令路由到正确节点,让开发者直接面向“一个集群”开发,无需手写重定向与分片逻辑,极大提升了金融、行情与监控系统中的可用性与可扩展性。
DolphinDB 插件市场
DolphinDB 插件市场自上线以来,已上架了超过70个专业插件,从数据存取、业务开发、机器学习、数值计算、云服务等多个场景中为用户与业务赋能。通过使用 DolphinDB 专业插件,用户可以将业务开发与高性能数据分析能力深度融合,在扩展数据库功能的同时,大幅提升开发效率与简化流程。
