Spark获取并分析Mysql数据

30 篇文章 1 订阅
9 篇文章 0 订阅

安装环境

Java环境

安装并启动Spark

下载并解压Spark
wget https://d3kbcqa49mib13.cloudfront.net/spark-2.2.0-bin-hadoop2.7.tgz
tar xzvf spark-2.2.0-bin-hadoop2.7.tgz /usr/local
cd /usr/local
ln -s spark spark-2.2.0-bin-hadoop2.7
cd spark
运行master和slave
./sbin/start-master.sh -h 192.168.0.166
./sbin/start-slave.sh spark://192.168.0.166:7077

其中192.168.0.166是本地ip

下载Mysql JDBC

下载JDBC,然后解压到spark目录,然后配置conf/spark-defaults.conf

spark.driver.extraClassPath      /usr/local/spark/mysql-connector-java-5.1.39-bin.jar
spark.executor.extraClassPath    /usr/local/spark/mysql-connector-java-5.1.39-bin.jar

运行scala命令(spark-shell)

./bin/spark-shell --master spark://192.168.0.166:7077
var jdbcDF = spark.read.format("jdbc").options(
    Map("url"->"jdbc:mysql://localhost:3306/collection?user=root&password=pw",
    "dbtable"->"collection.iqilu_news",
    "fetchSize"->"100",
    "partitionColumn"->"catid",
    "lowerBound"->"1",
    "upperBound"->"300",
    "numPartitions"->"30"
    )).load()
// 其中Spark根据partitionColumn里的字段来决定并发,numPartitions是并发数


//  创建collection临时视图,以供下面查询使用
jdbcDF.createOrReplaceTempView("collection")

var sqlDF = sql("SELECT title FROM collection ORDER BY id DESC LIMIT 10")

// 查看数据
sqlDF.show()

// 统计
sqlDF.count()

参考:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python爬虫是一种用于抓取网页数据的程序,它可以通过发送HTTP请求并解析HTML内容来提取所需的数据。通过使用Python库如BeautifulSoup和Scrapy,我们可以编写爬虫来自动化数据收集和提取。 Flume是一个分布式的、可靠的、可扩展的日志收集、聚合和传输系统。它可以从多个源采集实时数据,并将其传输到其他处理系统,如Hadoop和Spark。 Kafka是一个高吞吐量的分布式数据流平台,它允许以实时方式收集、处理和存储数据流。它被广泛用于大数据和流处理应用,包括实时推荐、日志处理和事件驱动的架构。 Spark Streaming是Apache Spark的一个子项目,它允许在实时流数据进行高效的流处理。Spark Streaming可以与Kafka等数据源集成,以实时的方式处理来自不同源的数据,并进行转换、分析和存储。 MySQL是一种关系型数据库管理系统,它被广泛用于存储和管理结构化数据。在上述技术栈MySQL可以被用作存储爬虫抓取的数据、Kafka传输的数据Spark Streaming处理的数据。 ECharts是一种用于数据可视化的JavaScript图表库,它可以将数据转化为图表和图形,使数据更易于理解和分析。 综上所述,以上提到的技术可以结合使用来构建一个完整的实时数据处理和可视化系统。Python爬虫用于抓取实时数据,Flume用于收集和传输数据,Kafka用于数据流处理,Spark Streaming用于实时分析MySQL用于数据存储,最后使用ECharts将数据可视化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小龙在山东

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值