全部产品

Databricks 数据洞察访问E-MapReduce数据源

更新时间:2020-10-10 14:14:06

本文介绍如何使用阿里云 Databricks 数据洞察创建的集群去访问外部数据源 E-MapReduce,并运行Spark Streaming作业以消费Kafka数据。

前提条件

  • 已注册阿里云账号,详情请参见阿里云账号注册流程

  • 已开通 E-MapReduce服务。

  • 已开通对象存储 OSS服务。

  • 已开通 Databricks数据洞察服务。

  • 已完成云账号的授权,详情请参见角色授权

步骤一:创建Kafka集群和Databricks 数据洞察集群

  1. 登录阿里云E-MapReduce控制台

  2. 创建Kafka集群。

    1601461261185_D8E1DCA8-C8CA-414D-AAAA-61D96AAD75A8

  3. 登陆Databricks数据洞察控制台

  4. 创建集群,详情参见创建集群

    1601461449119_768596FB-8D99-48DF-B593-B47260EB5A33

步骤二:Databricks 数据洞察集群添加外部数据源

  1. 登陆Databricks数据洞察控制台

  2. 单击左侧集群按钮,选择已创建的集群。

  3. 进入集群详情页面,单击上方数据源按钮。

  4. 在数据源页面,单击添加按钮,选择Aliyun EMR KAFKA

  5. 填入描述,选择kafka集群

添加数据源

步骤三:获取JAR包并上传到对象存储 OSS

  1. 登陆OSS管理控制台

  2. 创建Bucket存储空间,详情请参见存储空间

  3. 获取JAR包(spark-kafka-sample-1.0-SNAPSHOT-jar-with-dependencies.jar)。

  4. 上传JAR,详情请参见上传文件

步骤四:在Kafka集群上创建Topic

本示例将创建一个分区数为10、副本数为2、名称为test的Topic。

  1. 登录Kafka集群的Master节点,详情请参见使用SSH连接主节点

  2. 通过如下命令创建Topic。

/usr/lib/kafka-current/bin/kafka-topics.sh --partitions 10 --replication-factor 2 --zookeeper emr-header-1:2181 /kafka-1.0.0 --topic test --create
说明

创建Topic后,请保留该登录窗口,后续步骤仍将使用。

步骤五:运行Spark Streaming作业

  1. 登陆Databricks数据洞察控制台

  2. 新建项目空间,详情请参见新建项目

  3. 在所属项目空间创建作业,详情请参见管理作业

  4. 执行如下作业命令,进行流式单词统计。

--class com.aliyun.scala.ScalaKafkaStream oss://xxx/xxx/spark-kafka-sample-1.0-SNAPSHOT-jar-with-dependencies.jar 192.168.xxx.xxx:9092 test 
关键参数说明如下:

参数

说明

oss://xxx/xxx/spark-kafka-sample-1.0-SNAPSHOT-jar-with-dependencies.jar

oss对象存储上JAR包的位置

192.168.xxx.xxx:9092

Kafka集群中任一Kafka Broker组件的内网IP地址。IP地址如下图所示。

test

Topic名称

Kafka集群IP
1602211879422_C927F65E-7358-45DA-AD21-B8C7A06E2A9E

步骤六:使用Kafka发布消息

  1. 在Kafka集群的命令行窗口,执行如下命令运行Kafka的生产者。

/usr/lib/kafka-current/bin/kafka-console-producer.sh --topic test --broker-list emr-worker-1:9092

在命令行中输入数据

1602212101172_72CD774E-3390-4949-B2AB-6DE2B33139E3

步骤七:查看结果

通过Yarn UI查看Spark Streaming作业的信息,详情请参见集群 Web UI

  1. 在Hadoop控制台,单击作业的ID。

1602209477597_2F740886-8F2F-44F2-AAFB-E6E702922808

详细信息如下。

1602209918260_9A7A860D-E41F-4A45-878D-CA1D1E6ED122

点击Logs,查看详细信息。

1602211178345_8BF0D04E-CE30-4985-9B72-34AC4771A623