字节跳动出手即巅峰,分布式架构的高性能数据集成引擎

《开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的BitSail是字节跳动开源的基于分布式架构的高性能数据集成引擎。

BitSail是字节跳动开源的基于分布式架构的高性能数据集成引擎。支持多个异构数据源之间的数据同步,提供批量、流式、增量场景下的全局数据集成解决方案。目前,它服务于字节跳动的几乎所有业务线,如抖音、今日头条等,每天同步数百万亿数据。

为什么我们使用 BitSail

BitSail 已被广泛使用并支持数百万亿的大流量。同时在火山引擎云原生环境、本地私有云环境等多种场景下得到验证。

BitSail 使用场景

BitSail的特点

支持的连接

DataSource

Sub Modules

Reader

Writer

Hive

-

Hadoop

-

Hbase

-

Hudi

-

Kafka

-

RocketMQ

-


Redis

-


Doris

-


MongoDB

-

JDBC

MySQL

Oracle

PostgreSQL

SqlServer

Fake

-


Print

-


环境设置

先决条件

Bitsail支持在本地 IDE 上运行集成测试。为此,您需要:

正确安装上述所需组件后,我们就可以在您的本地 IDE 上运行集成测试。

从源代码构建

构建项目后,输出 jar 文件位于文件夹中bitsail-dist/target/。

项目生产文件结构如下:

bitsail-archive-${version}-SNAPSHOT    
    /bin  
        /bitsail #Startup script
    /conf
        /bitsail.conf #bitsail system config
    /embedded
        /flink #embedded flink
    /examples #examples configuration files
        /example-datas #examples data
        /Fake_xx_Example.json #Fake source to xx examples config files
        /xx_Print_Example.json #xx to print sink examples config files
    /libs #jar libs
        /bitsail-core.jar #entering jar package
        /connectors #connector plugin jars
            /mapping #connector plugin config files
        /components #components jars,such as metric、dirty-collector
        /clients #bitsail client jar

部署指南

目前 BitSail 仅支持本地和Yarn上部署。 其他平台的部署(例如原生kubernetes)将在不久后支持。


配置Hadoop

为了支持Yarn部署,需要在环境变量中配置HADOOP_CLASSPATH。目前有两种方式设置:

  1. 直接手动设置 HADOOP_CLASSPATH。
  2. 设置环境变量 HADOOP_HOME。此环境变量指向环境中使用的hadoop目录。根据此环境变量,bitsail 脚本可生成 HADOOP_CLASSPATH。
if [ -n "$HADOOP_HOME" ]; then
  export HADOOP_CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath)
fi

提交到Yarn

BitSail 目前仅支持flink的 yarn-per-job 模式提交。

你可以使用 bin/bitsail 脚本将flink作业提交到yarn上。具体的执行指令如下:

bash ./bin/bitsail run --engine flink --conf [job_conf_path] --execution-mode run --queue [queue_name] --deployment-mode yarn-per-job [--priority [

上面中括号内的参数说明如下:

提交一个示例作业

可以使用如下指令提交一个 Fake2Print 测试作业到default队列。

bash ./bin/bitsail run --engine flink --conf ~/bitsail-archive-0.1.0-SNAPSHOT/examples/Fake_Proint_Example.json --execution-mode run -p 1=1  --deplo

本地提交

假设BitSail的安装路径为: ${BITSAIL_HOME}。打包BitSail后,我们可以在如下路径中找到可运行jar包以及示例作业配置文件:

cd ${BITSAIL_HOME}/bitsail-dist/target/bitsail-dist-0.1.0-SNAPSHOT-bin/bitsail-archive-0.1.0-SNAPSHOT/


—END—

开源协议:Apache-2.0 license

开源地址:https://github.com/bytedance/bitsail

展开阅读全文

页面更新:2024-03-27

标签:分布式   架构   引擎   数据   作业   数据源   队列   数据处理   巅峰   字节   出手   环境变量   场景

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top