We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
结合业内的大数据业务经验,以及在公司内的实际业务环境,为了帮助数据和技术人员可以更加方便地利用大数据技术、帮助产品运营等业务人员可以轻松用数据创建业务价值,我们自研了一站式大数据应用开发和数据管理平台——数星平台。
围绕着数据的血缘链路,从数据源头的生产管理,到数据同步采集、数据存储,实时离线计算引擎, 再到数据的服务化,对接业务应用等,实现了数据开发、任务运维、自助分析、数据管理、项目管理、调度管理及多租户管理等功能。
数星平台将数据开发、数据分析、数据ETL等数据科学工作通过工作流的方式有效地串联起来, 提高了数据开发工程师和数据分析工程师的工作效率;作用于业务上,提高了数据价值变现的能力。
目前支持: 4套集群(实时Flink on Yarn集群 + Hadoop集群 + Spark集群 + Hbase集群)稳定使用; 数星平台—入口flume系统:每天采集400多亿条日志,接入实时的 ETL 存储解析流程,交付下游数据团队稳定使用; 数星平台—入口Dbus系统:接入关系型数据库表数量5w+ 个,每日完成过亿条数据记录的同步操作; 数星平台—调度系统:承接了约 22400+ 的调度任务,涵盖各业务线应用的核心数据计算环节; DMP用户画像系统:接入了 5000+ 的用户标签,每日完成几万次人群画像分析服务;
目前服务近1000名产研、数据、算法的同学。
现状问题: 如何将各BU大数据技术堆栈百花齐放转变为统一的平台 方案方案:四步走:工具、平台、数据、应用 第一步:全链路工具积累各场景用户量,datax、flume、kafka、canal、Ranger等等,提供不同场景的工具包指的获取用户流量。 第二步:工具互通形成平台,提高效率:kafka 对接 flume形成统一采集平台、canal 对接 kafka 统一binlog服务; 第三步:沉淀公共数据指标,提供数据地图、开发平台等产品,增加用户粘性。 第四步:场景化pipeline抽象应用工厂提高数据应用研发上线的效率,将能形成闭环的数据产品做出公共应用,为业务方做乘法,为自己做加法。
数据开发平台,尤其是hive、spark方面,linkis提供了整体技术解决方案,网关、入口、引擎、资源管理、公共服务等模块抽象了开发平台的业务,为后续新引擎的扩展提供了无限可能,目前日均SQL任务量4000左右。 Linkis使用心得: (1)代码质量高:分包、分层合理。 (2)架构设计精良:子系统职责分明,通讯协议规范。参考我们参考Publicservice聚合不同领域API的模式实现了StreamManager模块。 (3)运行稳定:目前承接了很多对可用性要求高的,消息推送业务,整体运行稳定性比较好。 (4)可扩展性强,面向接口编程,方便后续扩展实现新特性。例如:storage子系统的com.webank.wedatasphere.linkis.storage.fs文件系统接口可以很方便实现其他存储系统。
问题: 按照用户和资源进行绑定授权,会带来以下问题: (1)hadoop用户量膨胀,/user/*目录管控治理繁杂 (2)员工离职入职权限初始化繁琐 (3)按照部门进行资源审计工作量大 (4)权限元数据信息膨胀 解决方案: 将数据按照角色进行管理、授权 (1) 登录用户、引擎用户隔离,具体办法:loginUser(用户账号)、umUser(数据角色) (2)集成数据权限系统,进行角色校验,gateway网关透传entrance的时候引擎的时候切角色账号 (3)Apache Ranger 解决hive、spark权限,带来新问题:hdfs rpc超时严重,重写Apache Ranger API以及hdfs插件去除无用的鉴权例如:执行权限。
问题:定时日报、周报,简单的数据监控场景,形式SQL+定时+邮件 解决方案:Linkis Web进行定时任务录入,包括:SQL、触发时间、目标邮件地址等信息,调度系统扩展Linkis 执行器,集成SDK即可。
问题:JDBC方式天然缺陷,无法获取进度条,缺失失效重连机制等 解决方案: 1、thrift协议 thrift -r --gen java TCLIService.thrift(hive-1-api目录) 2、重连机制,实现连接池 3、impala、hive 队列不匹配问题,需要按照一定逻辑做好队列映射。
问题:Mysql、ClickHouse、PostgreSQL、Kylin...... 账号权限控制 代理授权系统: 用户、组账号、库类型、库实例、库/表、可操作权限 数据源管理系统:库类型、库实例、操作类型、账号密码 使用:库实例、SQL、角色账号
特性:Engine需要支持提交flink 不同版本的作业到不同的yarn集群, 例如:flink 1.9、1.11 ,因为不同版本的Flink submit 任务的API 和机制 不一样,所以Engine也要支持插件化,并且在SQL 的开发场景,会面临同一时间段的SQL提交到一个 Flink Session中。参考Linkis publicservice 聚合服务的机制,设计了streamManager,支持作业开发、物料版本控制、作业上线/回滚、日志搜索、监控报警等工作。 线上环境:DataStream、SQL 开发环境:SQL 解决方案: (1)StreamManager (2)FlinkEntrance、FlinkEngineManager、FlinkEngine (3)EngineGroup机制
主要解决:上G结果集,数据传输的问题 支持3种方式下载结果集: (1)默认直接下载 (2)经过publicservice 流下载:Linkis Dolphin ResultSetReader.getResultSetReader 反序列化读取即可。 (3)直接连接集群下载:获取result path,hadoop FileSystem read即可,需要注意的是去掉Linkis Dolphin协议,换成txt即可。
问题:数据分析师、数据工程师 数据上线的问题 两条pipeline,协议代码自动生成:支持dubbo、http (1) online: hive、hbase、redis 、api、用户产品 (2) offline: hive、clickhouse、BI 特性:资源自助申请、K8S容器化部署管理、网关路由监控配置管理:Spring Cloud、Nacos、Sentinel 1、数据开发者(数仓|分析师):少做一些事 减轻开发:减轻DM/DWS层到APP层的数据开发同步工作,对导入结果表类型无感知,在整个需求中可以提前退场解放 2、数据调用方(服务端RD):少做一些事,配接口、调接口方便 分担职责:数据开发和运维的职责转移到上游,专注业务逻辑开发,对上游表类型无感知 代码分离:数据代码、业务代码分离,方便业务交接 方便调试:数据代码通过配置自动生成,可快速调试(测试调整、线上调整) 3、数据应用方(业务方PM):流程清楚,需求交付快 流程清晰:基于数据的业务应用开发流程清晰化(数据开发-数据接口配置-业务代码开发),便于跟踪进度(节点-相关人) 缩短需求周期:数据代码自动生成代替手动开发,缩短业务需求的整体开发周期 降低“改需求”的成本:若要基于OS接口的业务应用做优化迭代,无需阅读修改代码,界面改配置即可 4、系统维护方(管理员):可管控,可追踪
Linkis,目前是我们这边数据平台DAU排名top3的产品,感谢微众银行的同学!
The text was updated successfully, but these errors were encountered:
No branches or pull requests
一、Boss直聘数星平台介绍
二、建设路径
三、Linkis的价值
四、扩展点:让Linkis支持数据角色,解决百名数据员工权限混乱问题。
五、扩展点:互相打通形成新功能,数据订阅服务
六、扩展点:Impala引擎
七、扩展点:权限体系 + Mysql、ClickHouse引擎
八、扩展点:Flink实时计算平台
九、扩展点:Linkis SDK 在Push推送以及特征计算同步一体化场景的运用
十、解决数据最后一公里赋能的问题:如何将Hive表变成Http、Dubbo接口?数据API服务方面的探讨
The text was updated successfully, but these errors were encountered: