当前位置: 首页 > news >正文

北京公司网站建站友情链接怎么购买

北京公司网站建站,友情链接怎么购买,深圳市疫情最新消息,独立网站怎么做基本架构RDS -> SLS -> Spark Streaming -> Spark HDFS上述链路主要包含3个过程:如何把 RDS 的 binlog 收集到 SLS。如何通过 Spark Streaming 将 SLS 中的日志读取出来,进行分析。如何把链路 2 中读取和处理过的日志,保存到 Spark …

基本架构

RDS -> SLS -> Spark Streaming -> Spark HDFS

上述链路主要包含3个过程:

  1. 如何把 RDS 的 binlog 收集到 SLS。

  2. 如何通过 Spark Streaming 将 SLS 中的日志读取出来,进行分析。

  3. 如何把链路 2 中读取和处理过的日志,保存到 Spark HDFS中。

环境准备

  1. 安装一个 MySQL 类型的数据库(使用 MySQL 协议,例如 RDS、DRDS 等),开启 log-bin 功能,且配置 binlog 类型为 ROW 模式(RDS默认开启)。

  2. 开通 SLS 服务。

操作步骤

  1. 检查 MySQL 数据库环境。

    1. 查看是否开启 log-bin 功能。

mysql> show variables like "log_bin";
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | ON    |
+---------------+-------+
1 row in set (0.02 sec)
  1. 查看 binlog 类型

mysql> show variables like "binlog_format";
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| binlog_format | ROW   |
+---------------+-------+
1 row in set (0.03 sec)

2.添加用户权限。(也可以直接通过RDS控制台添加)

CREATE USER canal IDENTIFIED BY ‘canal’;GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON . TO ‘canal’@’%’;FLUSH PRIVILEGES;

3.为 SLS 服务添加对应的配置文件,并检查数据是否正常采集。

  1. 在 SLS 控制台添加对应的 project 和 logstore,例如:创建一个名称为 canaltest 的 project,然后创建一个名称为 canal 的 logstore。

  2. 对 SLS 进行配置:在 /etc/ilogtail 目录下创建文件user_local_config.json,具体配置如下:

{
"metrics": {"##1.0##canaltest$plugin-local": {"aliuid": "****","enable": true,"category": "canal","defaultEndpoint": "*******","project_name": "canaltest","region": "cn-hangzhou","version": 2"log_type": "plugin","plugin": {"inputs": [{"type": "service_canal","detail": {"Host": "*****","Password": "****","ServerID": ****,"User" : "***","DataBases": ["yourdb"],"IgnoreTables": ["\\S+_inner"],"TextToString" : true}}],"flushers": [{"type": "flusher_sls","detail": {}}]}}
}
}

其中 detail 中的 Host 和 Password 等信息为 MySQL 数据库信息,User 信息为之前授权过的用户名。aliUid、defaultEndpoint、project_name、category 请根据自己的实际情况填写对应的用户和 SLS 信息。

  1. 等待约 2 分钟,通过 SLS 控制台查看日志数据是否上传成功,具体如图所示。

如果日志数据没有采集成功,请根据SLS的提示,查看SLS的采集日志进行排查。

  1. 准备代码,将代码编译成 jar 包,然后上传到 OSS。

    1. 将 EMR 的示例代码通过 git 复制下来,然后进行修改,具体命令为:

git clone https://github.com/aliyun/aliyun-emapreduce-demo.git。

示例代码中已经有 LoghubSample 类,该类主要用于从 SLS 采集数据并打印。以下是修改后的代码,供参考:

package com.aliyun.emr.example
import org.apache.spark.SparkConf
import org.apache.spark.storage.StorageLevel
import org.apache.spark.streaming.aliyun.logservice.LoghubUtils
import org.apache.spark.streaming.{Milliseconds, StreamingContext}
object LoghubSample {
def main(args: Array[String]): Unit = {
if (args.length < 7) {System.err.println("""Usage: bin/spark-submit --class LoghubSample examples-1.0-SNAPSHOT-shaded.jar|            |           """.stripMargin)System.exit(1)
}
val loghubProject = args(0)
val logStore = args(1)
val loghubGroupName = args(2)
val endpoint = args(3)
val accessKeyId = args(4)
val accessKeySecret = args(5)
val batchInterval = Milliseconds(args(6).toInt * 1000)
val conf = new SparkConf().setAppName("Mysql Sync")
//    conf.setMaster("local[4]");
val ssc = new StreamingContext(conf, batchInterval)
val loghubStream = LoghubUtils.createStream(ssc,loghubProject,logStore,loghubGroupName,endpoint,1,accessKeyId,accessKeySecret,StorageLevel.MEMORY_AND_DISK)
loghubStream.foreachRDD(rdd =>rdd.saveAsTextFile("/mysqlbinlog")
)
ssc.start()
ssc.awaitTermination()
}
}

其中的主要改动是:

loghubStream.foreachRDD(rdd => rdd.saveAsObjectFile(“/mysqlbinlog”) )

这样在 EMR 集群中运行时,就会把Spark Streaming 中流出来的数据,保存到 EMR 的 HDFS 中。

  1. 说明
    由于如果要在本地运行,请在本地环境提前搭建 Hadoop 集群。

由于 EMR 的 Spark SDK 做了升级,其示例代码比较旧,不能直接在参数中传递 OSS 的 AccessKeyId、AccessKeySecret, 而是需要通过 SparkConf 进行设置,如下所示。

trait RunLocally {
val conf = new SparkConf().setAppName(getAppName).setMaster("local[4]")
conf.set("spark.hadoop.fs.oss.impl", "com.aliyun.fs.oss.nat.NativeOssFileSystem")
conf.set("spark.hadoop.mapreduce.job.run-local", "true")
conf.set("spark.hadoop.fs.oss.endpoint", "YourEndpoint")
conf.set("spark.hadoop.fs.oss.accessKeyId", "YourId")
conf.set("spark.hadoop.fs.oss.accessKeySecret", "YourSecret")
conf.set("spark.hadoop.job.runlocal", "true")
conf.set("spark.hadoop.fs.oss.impl", "com.aliyun.fs.oss.nat.NativeOssFileSystem")
conf.set("spark.hadoop.fs.oss.buffer.dirs", "/mnt/disk1")
val sc = new SparkContext(conf)
def getAppName: String
}

在本地调试时,需要把 loghubStream.foreachRDD(rdd => rdd.saveAsObjectFile(“/mysqlbinlog”) ) 中的 /mysqlbinlog 修改成本地 HDFS的地址。

  1. 代码编译。
    在本地调试完成后,我们可以通过如下命令进行打包编译:

  2. clean install

  3. 上传 jar 包。
    请先在 OSS 上建立 bucket 为 qiaozhou-EMR/jar的目录,然后通过OSS 控制台或 OSS 的 SDK 将 /target/shaded目录下的 examples-1.1-shaded.jar上传到 OSS 的这个目录下。上传后的 jar 包地址为 oss://qiaozhou-EMR/jar/examples-1.1-shaded.jar,这个地址在后面会用上,如下图所示:

搭建 EMR 集群,创建任务并运行执行计划。

  1. 通过 EMR 控制台创建一个 EMR 集群,大约需要 10 分钟左右,请耐心等待。

  2. 创建一个类型为 Spark 的作业。
    请根据您具体的配置将 SLS_endpoint $SLS_access_id $SLS_secret_key 替换成真实值。请注意参数的顺序,否则可能会报错。

—master yarn —deploy-mode client —driver-memory 4g —executor-memory 2g —executor-cores 2 —class com.aliyun.EMR.example.LoghubSample ossref://EMR-test/jar/examples-1.1-shaded.jar canaltest canal sparkstreaming $SLS_endpoint $SLS_access_id $SLS_secret_key 1

运行以上的命令

  1. 查询 Master 节点的IP

  2. 通过 SSH 登录后,执行以下命令:

  3. fs -ls /

  4. 可以看到 mysqlbinlog 开头的目录,再通过以下命令查看 mysqlbinlog 文件:

  5. fs -ls /mysqlbinlog

还可以通过 hadoop fs -cat /mysqlbinlog/part-00000 命令查看文件内容。

  1. 错误排查。
    如果没有看到正常的结果,可以登陆节点,查看对应的作业的错误情况。


对开源大数据感兴趣的同学可以加小编微信(图一二维码,备注进群)进入技术交流微信2群。也可钉钉扫码加入社区的钉钉群

阿里巴巴开源大数据技术团队成立Apache Spark中国技术社区,定期推送精彩案例,技术专家直播,问答区数个Spark技术同学每日在线答疑,只为营造纯粹的Spark氛围,欢迎钉钉扫码加入!

Apache Spark技术交流社区公众号,微信扫一扫关注

http://www.lbrq.cn/news/2779939.html

相关文章:

  • 外贸销售管理制度优化教程
  • 阿里云手机做网站百度移动开放平台
  • 贵阳网站制作免费品牌维护
  • 餐饮网站网页设计代码微信推广平台哪里找
  • 南通网站制作计划舆情监测系统
  • 网站制作 知乎seo挖关键词
  • 兰州论坛网站建设建立网站的基本步骤
  • 家居网站建设定位分析论文网店怎么推广和宣传
  • 外贸商城源码青岛官网seo公司
  • 网站备案 广东品牌推广和品牌营销
  • webapi做网站seo01网站
  • 做韩国护的网站市场营销策略
  • wordpress目录分类什么是搜索引擎优化推广
  • 商城网站制作的教程山东建站
  • 做网站付多少定金2022智慧树互联网与营销创新
  • dede网站经常被挂马 怎么办百度联盟app
  • 阿里巴巴国际站首页兰州seo外包公司
  • 西安网站制作公司排日本免费服务器ip地址
  • 网站怎么做要多少钱上海市人大常委会
  • 怎样上传网站程序兰州seo实战优化
  • 如何做高并发网站的架构设计杭州百度快速排名提升
  • 沈阳做网站一诚金网络专业360广告联盟平台
  • 学做网站要学什么软件百度网盘电脑版下载
  • 家具行业做那个国际网站比较好搜索引擎营销的特点是
  • 小说网站开发猪八戒软文素材
  • 注册完域名 如何做网站张家口网站seo
  • 福田欧曼故障灯图解大全东莞网站优化关键词排名
  • 阿里云免费网站备案搭建网站平台需要多少钱
  • 男女直接做视频网站营销策略有哪些有效手段
  • 大良做网站哈尔滨网站推广
  • 简笔成画:让AI绘画变得简单而有趣
  • RabbitMQ:SpringAMQP Topic Exchange(主题交换机)
  • python numpy.random的基础教程(附opencv 图片转数组、数组转图片)
  • RWA加密金融高峰论坛星链品牌全球发布 —— 稳定币与Web3的香港新篇章
  • ts 引入类型 type 可以省略吗
  • flink+clinkhouse安装部署