BitSail“拍了拍”你,并给你一份快速入门指南
BitSail 源码编译
BitSail 在项目中内置了编译脚本 build.sh,存放在项目根目录中。新下载的用户可以直接该脚本进行编译,编译成功后可以在目录:bitsail-dist/target/bitsail-dist-${rversion}-bin 中找到相应的产物。

BitSail 产物结构


BitSail 如何提交作业
Flink Session Job
第一步:启动Flink Session集群 session运行要求本地环境存在hadoop的依赖,同时需要HADOOP_CLASSPATH的环境变量存在。 bash ./embedded/flink/bin/start-cluster.sh 第二步:提交作业到Flink Session 集群 bash bin/bitsail run \
--engine flink \
--execution-mode run \
--deployment-mode local \
--conf examples/Fake_Print_Example.json \
--jm-address <job-manager-address>
Yarn Cluster Job
第一步:设置HADOOP_HOME环境变量 export HADOOP_HOME=XXX 第二步:设置HADOOP_HOME,使提交客户端就找到yarn集群的配置路径,然后就可以提交作业到Yarn集群 bash ./bin/bitsail run --engine flink \
--conf ~/dts_example/examples/Hive_Print_Example.json \
--execution-mode run \
--deployment-mode yarn-per-job \
--queue default
BitSail 实机演示
这部分将为大家实机演示两个重要步骤。第一个演示是将 fake 的数据源写入到 MySQL 的 数据源中,第二个演示是将 MySQL 数据源写入到 Hive 中。
Fake->MySQL
// 创建mysql表
CREATE TABLE `bitsail_fake_source` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`price` double DEFAULT NULL,
`image` blob,
`start_time` datetime DEFAULT NULL,
`end_time` datetime DEFAULT NULL,
`order_id` bigint(20) DEFAULT NULL,
`enabled` tinyint(4) DEFAULT NULL,
`datetime` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
MySQL->Hive
// 创建hive表
CREATE TABLE `bitsail`.`bitsail_mysql_hive`(
`id` bigint ,
`name` string ,
`price` double ,
`image` binary,
`start_time` timestamp ,
`end_time` timestamp,
`order_id` bigint ,
`enabled` int,
`datetime` int
)PARTITIONED BY (`date` string)
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
BitSail 技术干货往期回顾:
《干货|深度解析字节跳动开源数据集成引擎 BitSail》
https://mp.weixin.qq.com/s/FqVICUVsaJWNuDwIUe5ZnQ
《干货 | 如何快速实现 BitSail Connector?》
https://mp.weixin.qq.com/s/ZkJgq-WVT5W9Xw4AOvgmgg
以上就是 BitSail Quick Guide 的全部内容,如果你对 BitSail 还有其他入门问题,或者有着更浓厚的兴趣想进一步了解,欢迎扫码加入我们的 BitSail 技术社群,和研发人员及开源爱好者们进行更深入的讨论~

BitSail“拍了拍”你,并给你一份快速入门指南的更多相关文章
- 邓布利多拍了拍你,并递来一份CSS魔法
校长:阿不思·邓布bai利多 亲爱的少年:我们愉快地通知您,您已获准在CSS魔法学校就读.特此带给你一份CSS魔法秘籍,代码简单,支持个性化定制.学期定于今日开始,我们将在此静候您的猫头鹰带来您的回信 ...
- 7. JDK拍了拍你:字符串拼接一定记得用MessageFormat#format
目录 ✍前言 版本约定 ✍正文 DateFormat:日期时间格式化 SimpleDateFormat NumberFormat:数字格式化 DecimalFormat 一.0和#的使用(最常见使用场 ...
- 捷易拍与springMVC系统结合
1. 捷易拍高拍仪在jsp页面的调用 使用ActiveX插件的方式处理解决此问题,捷易拍公司提供了支持IE8以上的32位浏览器的插件,安装插件后,我们可以使用Object标签,使用高拍仪 注意: 1. ...
- 制造测试数据的程序及对拍程序概述(Like CyaRon)
作为一名OIer,比赛时,对拍是必须的 不对拍,有时可以悔恨终身 首先,对拍的程序 一个是要交的程序 另一个可以是暴力.搜索等,可以比较慢,但是必须正确 下面是C++版对拍程序(C++ & c ...
- 随机数据生成与对拍【c++版,良心讲解】
10.7更新:见最下面 离NOIP2018没剩多长时间了,我突然发现我连对拍还不会,于是赶紧到网上找资料,找了半天发现了一个特别妙的程序,用c++写的! 不过先讲讲随机数据生成吧. 很简单,就是写一个 ...
- debug?用对拍!
很多人考noip之类的比赛永远会发生一些奇怪的问题 比如说下面这两位(来自我的两位学长) sliver n:spli,考得怎样啊? spli:就那样啦,day1T1没推出来规律,别的还好 silver ...
- acm对拍程序 以及sublime text3的文件自动更新插件auto refresh
acm等算法比赛常用---对拍 以及sublime text3的文件自动更新插件auto refresh 对拍 对拍即程序自动对比正确程序的运行结果和错误程序的运行结果之间的差异 废话少说, 直接上操 ...
- 对拍(C++)
对拍(C++) 对拍是什么 众所周知,当我们正在考试敲代码的时候,每一道题,都会有某种正解能拿到满分:当我们想不出正解时,我们往往可以打暴力代码来骗分. 但是,当我们有思路写正解,但又担心自己 ...
- (转)从P1到P7——我在淘宝这7年
(一) 2011-12-08 [原文链接] 今天有同事恭喜我,我才知道自己在淘宝已经七周年了.很多人第一句话就是七年痒不痒,老实说,也曾经痒过,但往往都是一痒而过,又投入到水深火热的工作中去.回家之后 ...
- NOIp 11.11/12
最后一场比较正式的NOIp模拟赛,写一发小总结.题目没什么好说的,大部分很简单,先贴一下代码. 1111 T1 //string //by Cydiater //2016.11.11 #include ...
随机推荐
- 关于Linux性能监控之CPU篇详解
http://news.chinaunix.net/opensource/2013/0228/2654519.shtml # vmstat 1 procs -----------memory----- ...
- 从零实现的浏览器Web脚本
从零实现的浏览器Web脚本 在之前我们介绍了从零实现Chrome扩展,而实际上浏览器级别的扩展整体架构非常复杂,尽管当前有统一规范但不同浏览器的具体实现不尽相同,并且成为开发者并上架Chrome应用商 ...
- idea的mybatis插件free mybatis plugin(或 Free MyBatis Tool),很好用
为大家推荐一个idea的mybatis插件----free mybatis plugin(或 Free MyBatis Tool),很好用(个人觉得free mybatis plugin更好用一点,可 ...
- 邮差之死--python源代码
"""sth imported""" import time import os '''2 flags''' flag = 0 tmp = ...
- Altium designer 设置覆铜与板框间距
新版Altium designer不再推荐使用 Keep-Out 层作为板框 以前使用 Keep-Out 作为板框的一个很大原因是因为 Keep-Out 自带板框间距属性.省去甚至不用考虑铺铜的边缘问 ...
- parallel-comparator-200
直接上来就是c代码,这种题还是第一次做,直接写代码逆向回去就行了 但是奈何水平太低写不回去... 分析 需要下面的两个字符串相等才能得到正确的程序,若要相等就只能让result等于0 那就意味着亦或的 ...
- CF1559D1. Mocha and Diana (Easy Version)
原题链接:1559D1. Mocha and Diana (Easy Version) 题意: 小明和小红各有一个具有\(n\)个结点的森林,现执行操作: 加一条边,使得两人的森林还是森林 小明加一条 ...
- 逻辑回归(Logistic Regression) ----转载
概要: 1. 介绍Logistic Regression的数学模型,推导并详细解释求解最优回归系数的过程:2. Python实现Logistic Regression的基本版:3. 介绍sklearn ...
- springBoot + 工厂模式 实现 快递鸟、顺丰和快递100的物流查询
前言: 在Spring Boot中实现快递鸟.顺丰和快递100的物流查询功能通常需要与它们提供的API进行交互.当然使用他们的API 我们是需要申请和注册,从而去拿到 key 来进行调用.所以为注册的 ...
- c++算法练习day01【2022年蓝桥杯省赛B组题目】每天做一点、、、
这个练习目前来说就比较宽松,打算在寒假(基本也就是这一个月每天刷几道题吧) 题目一: 小明决定从下周一开始努力刷题准备蓝桥杯竞赛.他计划周一至周五每天做 a 道题目,周六和周日每天做 b 道题目.请你 ...