文章目录
- 1.现有数据存在的问题
- 1.1 开发数据服务门槛高
- 1.2 重复开发数据服务
- 2.系统架构
- 2.1 大数据服务化业务架构
- 2.2 大数据服务化技术架构
1.现有数据存在的问题
1.1 开发数据服务门槛高
数据开发工程师除了开发完数据表外,通常还需要思考如下问题:
- 数据如何交付:业务通常期望使用数据接口方式来使用数据,而非数据表,这会更加灵活、解耦、高效。数据开发工程师因此需要建立对应的数据服务
- 服务如何开发:数据服务有多种形式,通常要求开发工程师有微服务知识、服务发现注册、高并发等
- 权限、可用性问题:开发完数据服务后,需要考虑权限问题,确保数据资源能被安全的访问;此外还需要考虑可用性问题,要以多种手段保障数据访问的稳定性
- 运维问题:数据服务本身涉及多种运维问题,如扩容、迁移、下线、接口变更、服务报警等
以上问题都需要数据开发工程师去解决。这要求数据开发不仅仅是开发出数据表,还需要将数据表包装成一个独立的、灵活的、高可用的、安全的数据服务。这对于数据开发工程师要求很高:除了具备基本的业务需求捕获、数据建模、SQL开发等能力外,还要具备开发高可用、高性能的数据服务能力(包括java开发、微服务等)。
1.2 重复开发数据服务
支付业务、直播业务、账户业务 都存在数据需求,各业务线都做着:1)数据同步到线上数据库和缓存;2)建设微服务等开发,其中不同业务线下,数据同步和微服务通常有很多共同之处,重复烟囱式的开发意味要重复开发数据服务,造成了人力资源浪费,而且开发效率低,从数据开发到最终交付数据服务,需要经历较长的周期。