草庐IT

多云容器编排 Karmada-Operator 实践

作者|vivo互联网服务器团队-ZhangRongKarmada作为开源的云原生多云容器编排项目,吸引了众多企业共同参与项目开发,并运行于生产环境中。同时多云也逐步成为数据中心建设的基础架构,多区域容灾与多活、大规模多集群管理、跨云弹性与迁移等场景推动云原生多云相关技术的快速发展。一、 背景随着vivo业务不断迁移到k8s上,集群规模和集群的数量快速增长,运维难度也急剧增加。为了构建多集群技术,我们也自研了多集群管理,但无法解决我们遇到的更多的问题。后来开始对社区相关项目做了细致的调研和测试,我们最终选择了Karmada。主要原因如下:具备对多套K8s集群的统一管理能力,业务通过服务维度去管理

Spark SQL 字段血缘在 vivo 互联网的实践

 作者:vivo互联网服务器团队-HaoGuangshi一、背景字段血缘是在表处理的过程中将字段的处理过程保留下来。为什么会需要字段血缘呢?有了字段间的血缘关系,便可以知道数据的来源去处,以及字段之间的转换关系,这样对数据的质量,治理有很大的帮助。SparkSQL相对于Hive来说通常情况下效率会比较高,对于运行时间、资源的使用上面等都会有较大的收益。平台计划将Hive任务迁移到SparkSQL上,同时也需要实现字段血缘的功能。二、前期调研开发前我们做了很多相关调研,从中得知Spark是支持扩展的:允许用户对SparkSQL的SQL解析、逻辑计划的分析和检查、逻辑计划的优化、物理计划的形成等进

Spark SQL 字段血缘在 vivo 互联网的实践

 作者:vivo互联网服务器团队-HaoGuangshi一、背景字段血缘是在表处理的过程中将字段的处理过程保留下来。为什么会需要字段血缘呢?有了字段间的血缘关系,便可以知道数据的来源去处,以及字段之间的转换关系,这样对数据的质量,治理有很大的帮助。SparkSQL相对于Hive来说通常情况下效率会比较高,对于运行时间、资源的使用上面等都会有较大的收益。平台计划将Hive任务迁移到SparkSQL上,同时也需要实现字段血缘的功能。二、前期调研开发前我们做了很多相关调研,从中得知Spark是支持扩展的:允许用户对SparkSQL的SQL解析、逻辑计划的分析和检查、逻辑计划的优化、物理计划的形成等进

vivo官网App模块化开发方案-ModularDevTool

作者:vivo互联网客户端团队-WangZhenyu本文主要讲述了Android客户端模块化开发的痛点及解决方案,详细讲解了方案的实现思路和具体实现方法。说明:本工具基于vivo互联网客户端团队内部开源的编译管理工具开发。一、背景现在客户端的业务越来越多,大部分客户端工程都采用模块化的开发模式,也就是根据业务分成多个模块进行开发,提高团队效率。例如我们vivo官网现在的整体架构如下图,分为13个模块,每个模块是一个独立代码仓。(注:为什么这么分,可以参考之前的一篇文章《​​Android模块化开发实践​​》)二、痛点完全隔离的代码仓,使每个模块更独立,更易于代码管理,但也带来了一些问题。1、开

vivo官网App模块化开发方案-ModularDevTool

作者:vivo互联网客户端团队-WangZhenyu本文主要讲述了Android客户端模块化开发的痛点及解决方案,详细讲解了方案的实现思路和具体实现方法。说明:本工具基于vivo互联网客户端团队内部开源的编译管理工具开发。一、背景现在客户端的业务越来越多,大部分客户端工程都采用模块化的开发模式,也就是根据业务分成多个模块进行开发,提高团队效率。例如我们vivo官网现在的整体架构如下图,分为13个模块,每个模块是一个独立代码仓。(注:为什么这么分,可以参考之前的一篇文章《​​Android模块化开发实践​​》)二、痛点完全隔离的代码仓,使每个模块更独立,更易于代码管理,但也带来了一些问题。1、开