使用Spark Streaming进行关键字检测

本文介绍如何使用Spark Streaming构建实时关键字检测应用程序,演示了如何处理大量数据并实时分析,重点关注应用程序的构建基块。

许多公司使用诸如Apache Hadoop的分布式文件系统来存储和分析数据。 通过离线Hadoop使用流分析,可以存储大量的大数据并实时分析这些数据。 本文向您展示了如何使用Spark Streaming启用实时关键字检测的示例。

Spark Streaming是Spark API的扩展,可实现实时数据流的可伸缩,容错处理。 Spark Streaming具有大量的适配器,允许应用程序开发人员从各种来源读写数据,包括Hadoop分布式文件系统(HDFS),Kafka,Twitter等。

先决条件

  • 软件先决条件: IBMInfoSphere®BigInsights 4.0或更高版本以及Apache Maven。
  • 业务先决条件:中级Java™开发技能以及Hadoop和Spark的入门知识。

解决方案概述

Spark Streaming应用程序由一个或多个互连的离散化流(DStreams)组成。 每个DStream由一系列弹性分布式数据集(RDD)组成,它们是不可变分布式数据集的抽象。 Spark支持不同的应用程序开发语言,包括Java,Scala和Python。 在本文中,我们将使用Java语言向您展示开发关键字检测应用程序的分步方法。

图1显示了关键字检测应用程序的高级视图。

图1.关键字检测应用程序图
图1中的组件说明
  • SocketTextStream允许您在传输控制协议(TCP)套接字上绑定和侦听消息。 SocketTextStream的输出被馈送到使用当前关键字列表查找匹配令牌的自定义流中。
  • TextFileStream用于监视Hadoop目录。 只要检测到一个新的文件,它会读取文件,并将其由读转换成DStreams.The值TextFileStream用于更新内部关键字列表中使用自定义逻辑。
  • 关键字检测逻辑使用更新的关键字列表,因此该图使用虚线表示这种关系。

每个组件的实现细节

每个Spark Streaming应用程序都以流上下文开始,如以下代码片段所示。 “上下文”要求您传递定义批次的工期参数。

JavaStreamingContext ssc = new JavaStreamingContext(sparkConf, Durations.seconds(5));

socketTextStream绑定到指定的主机接口和给定的端口号,并生成DStreams。

JavaReceiverInputDStream lines = ssc.socketTextStream( hostname, port, StorageLevels.MEMORY_AND_DISK_SER);

textFileStream使用textFile从Hadoop读取并行关键字词典文件。 处理文件,并在内部列表中更新关键字。

JavaDStream<String> filelines = ssc.textFileStream("/tmp/Streamtest");
JavaDStream<String> updatedKeyWords = filelines.flatMap(new FlatMapFunction<String,String>() {
@Override
public Iterable<String> call(String x) {
final Pattern SPACE = Pattern.compile(" ");
String[] vec=SPACE.split(x);
List<String> ls=Arrays.asList(vec);
return ls;
}
});


updatedKeyWords.foreachRDD(new Function<JavaRDD<String>, Void> (){
public Void call(JavaRDD<String> rdd) {

rdd.foreach(new VoidFunction<String>(){
@Override
public void call(String x){
if(x!=null)
keywords.add(x);

}});
return null;

SocketStream读取的SocketStream用于与关键字列表进行比较,如以下代码所示。 当您使用命令wordPresent.print();时,结果将显示在控制台上wordPresent.print();

JavaDStream<Boolean> wordPresent = lines.map(new Function<String, Boolean>() {
@Override
public Boolean call(String x) {
return keywords.contains(x);
}
});
wordPresent.print();

下面的清单显示了本文中使用的示例的完整代码清单。

public final class KeywordDetect {
	private static final Pattern SPACE = Pattern.compile(" ");
	public static List<String> keywords=new ArrayList<String>();
	public static void main(String[] args) {
	
    if (args.length < 2) {
      System.err.println("Usage: KeywordDetect <hostname> <port> <words>");
      System.exit(1);
    }

    SparkConf sparkConf = new SparkConf().setAppName("KeywordDetect");
	
    JavaStreamingContext ssc = new JavaStreamingContext(sparkConf, Durations.seconds(5));
	JavaDStream<String> filelines = ssc.textFileStream("/tmp/Streamtest");
	
    JavaReceiverInputDStream<String> lines = ssc.socketTextStream(
            args[0], Integer.parseInt(args[1]), StorageLevels.MEMORY_AND_DISK_SER);
			
	keywords.add("initial"); //Initialize keyword list

	JavaDStream<String> updatedKeyWords = filelines.flatMap(new FlatMapFunction<String,String>() {
      	@Override
      	public Iterable<String> call(String x) {
		 final Pattern SPACE = Pattern.compile(" ");
        	String[] vec=SPACE.split(x);
		List<String> ls=Arrays.asList(vec);
		
		return ls;
      }
    });
	
	updatedKeyWords.foreachRDD(new Function<JavaRDD<String>, Void> (){
	public Void call(JavaRDD<String> rdd) {

		rdd.foreach(new VoidFunction<String>(){
		@Override
		public void call(String x){
			//x=x+1;
			if(x!=null)
			keywords.add(x); //add newly read tokens to keyword list
			
		}});
	
	return null;
	}
	});
	
	
    JavaDStream<Boolean> wordPresent = lines.map(new Function<String, Boolean>() {
      @Override
      public Boolean call(String x) {
        return keywords.contains(x); //compare token received from socket against keywords list
      }
    });

	JavaDStream<String> inputWords = lines.map(new Function<String, String>() {
      @Override
      public String call(String x) {
        return x;
      }
    });

	wordPresent.print();

    ssc.start();
    ssc.awaitTermination();
  }
}

编译并启动程序

对于本文中的示例,我们使用Maven安装和构建应用程序。 如果使用的是Maven,请确保在pom.xml中添加适当的依赖项。 依赖关系将主要是spark-core和spark-streaming库。

以下代码显示了我们的应用程序中使用的pom依赖关系的摘要:

<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.10</artifactId>
<version>1.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>1.2.1</version>
</dependency>

编译应用程序并创建jar文件之后,使用以下命令将应用程序提交给Spark调度程序:

spark-submit --class "org.apache.spark.examples.streaming.KeywordDetect" --master local[4] target/KeyWord-1.0.jar rvm.svl.ibm.com 9212

由于Spark实例在具有四个内核的单个主机上运行,​​因此我们在–master参数中使用local [4]值。 我们的应用程序接受两个参数:主机名和端口。

该应用程序假定在端口9212上运行着一个服务器进程并发布数据。 为了在测试环境中模拟服务器,我们使用nc(netcat)Linux命令: nc -l 9212

nc命令绑定到9212。我们在终端中传递的任何输入都将转发给所有正在侦听端口9212的客户端。

一切设置正确之后,提交的作业开始工作并监听端口9212。您应该在终端上收到以下确认消息:

15/09/06 01:43:31 INFO dstream.SocketReceiver: Connecting to rvm.svl.ibm.com:9121
15/09/06 01:43:31 INFO dstream.SocketReceiver: Connected to rvm.svl.ibm.com:9121

现在,让我们更新程序使用的内部字典。 1.2节中的代码正在监听Hadoop目录/ tmp / Streamtest中的change事件。 如果尚未创建目录,请先创建目录,然后使用以下命令上载关键字文件:

hadoop fs -mkdir /tmp/Streamtest hadoop fs -put keywords /tmp/Streamtest

当检测到新文件时,将执行后续的RDD。

15/09/06 01:54:25 INFO dstream.FileInputDStream: New files at time 1441529665000 ms: hdfs://rvm.svl.ibm.com:8020/tmp/Streamtest/keyword
15/09/06 01:54:25 INFO storage.MemoryStore: ensureFreeSpace(272214) called with curMem=109298, maxMem=278302556

关键字之一是“风险”。 现在,我在nc中提交关键字,如以下清单所示

[root@rvm Desktop]# nc -l 9121
risk

然后,Spark检测到该关键字,并在控制台上将其标记为true。

-------------------------------------------
Time: 1441529995000 ms
-------------------------------------------
true

未来的增强

可以进一步增强此应用程序,以处理完整的字符串而不是单个令牌。

关键字检测状态可以写入文件或写入UI呈现服务的端口。

例外条件

如果出现“拒绝连接错误”,可能是因为:

  • HDFS和另一个资源协商器(YARN)未运行
  • 服务器进程未在源端口上运行。 在我们的示例中,源端口为9121。

结论

本文演示了如何使用Spark Streaming构建实时应用程序。 我们还重点介绍了Spark Streaming应用程序的构建基块。 使用此信息作为起点将帮助您使用Spark Streaming创建更复杂的应用程序。


翻译自: https://www.ibm.com/developerworks/data/library/techarticle/dm-1511-keyword-detection-spark-streaming-trs/index.html

[root@node1 server]# hdfs dfs -ls /spark/jars/ Found 146 items -rw-r--r-- 3 hadoop supergroup 232470 2025-08-04 19:54 /spark/jars/JLargeArrays-1.5.jar -rw-r--r-- 3 hadoop supergroup 1175798 2025-08-04 19:54 /spark/jars/JTransforms-3.1.jar -rw-r--r-- 3 hadoop supergroup 325335 2025-08-04 19:54 /spark/jars/RoaringBitmap-0.7.45.jar -rw-r--r-- 3 hadoop supergroup 134044 2025-08-04 19:54 /spark/jars/aircompressor-0.10.jar -rw-r--r-- 3 hadoop supergroup 1168113 2025-08-04 19:54 /spark/jars/algebra_2.12-2.0.0-M2.jar -rw-r--r-- 3 hadoop supergroup 336803 2025-08-04 19:54 /spark/jars/antlr4-runtime-4.7.1.jar -rw-r--r-- 3 hadoop supergroup 27006 2025-08-04 19:54 /spark/jars/aopalliance-repackaged-2.6.1.jar -rw-r--r-- 3 hadoop supergroup 1194003 2025-08-04 19:54 /spark/jars/arpack_combined_all-0.1.jar -rw-r--r-- 3 hadoop supergroup 64674 2025-08-04 19:54 /spark/jars/arrow-format-0.15.1.jar -rw-r--r-- 3 hadoop supergroup 105777 2025-08-04 19:54 /spark/jars/arrow-memory-0.15.1.jar -rw-r--r-- 3 hadoop supergroup 1437215 2025-08-04 19:54 /spark/jars/arrow-vector-0.15.1.jar -rw-r--r-- 3 hadoop supergroup 176285 2025-08-04 19:54 /spark/jars/automaton-1.11-8.jar -rw-r--r-- 3 hadoop supergroup 1556863 2025-08-04 19:54 /spark/jars/avro-1.8.2.jar -rw-r--r-- 3 hadoop supergroup 132989 2025-08-04 19:54 /spark/jars/avro-ipc-1.8.2.jar -rw-r--r-- 3 hadoop supergroup 187052 2025-08-04 19:54 /spark/jars/avro-mapred-1.8.2-hadoop2.jar -rw-r--r-- 3 hadoop supergroup 134696 2025-08-04 19:54 /spark/jars/breeze-macros_2.12-1.0.jar -rw-r--r-- 3 hadoop supergroup 13826799 2025-08-04 19:54 /spark/jars/breeze_2.12-1.0.jar -rw-r--r-- 3 hadoop supergroup 3226851 2025-08-04 19:54 /spark/jars/cats-kernel_2.12-2.0.0-M4.jar -rw-r--r-- 3 hadoop supergroup 58684 2025-08-04 19:54 /spark/jars/chill-java-0.9.5.jar -rw-r--r-- 3 hadoop supergroup 211523 2025-08-04 19:54 /spark/jars/chill_2.12-0.9.5.jar -rw-r--r-- 3 hadoop supergroup 284184 2025-08-04 19:54 /spark/jars/commons-codec-1.10.jar -rw-r--r-- 3 hadoop supergroup 71626 2025-08-04 19:54 /spark/jars/commons-compiler-3.0.16.jar -rw-r--r-- 3 hadoop supergroup 365552 2025-08-04 19:54 /spark/jars/commons-compress-1.8.1.jar -rw-r--r-- 3 hadoop supergroup 134595 2025-08-04 19:54 /spark/jars/commons-crypto-1.0.0.jar -rw-r--r-- 3 hadoop supergroup 284220 2025-08-04 19:54 /spark/jars/commons-lang-2.6.jar -rw-r--r-- 3 hadoop supergroup 503880 2025-08-04 19:54 /spark/jars/commons-lang3-3.9.jar -rw-r--r-- 3 hadoop supergroup 2035066 2025-08-04 19:54 /spark/jars/commons-math3-3.4.1.jar -rw-r--r-- 3 hadoop supergroup 273370 2025-08-04 19:54 /spark/jars/commons-net-3.1.jar -rw-r--r-- 3 hadoop supergroup 197176 2025-08-04 19:54 /spark/jars/commons-text-1.6.jar -rw-r--r-- 3 hadoop supergroup 79845 2025-08-04 19:54 /spark/jars/compress-lzf-1.0.3.jar -rw-r--r-- 3 hadoop supergroup 164422 2025-08-04 19:54 /spark/jars/core-1.1.2.jar -rw-r--r-- 3 hadoop supergroup 18497 2025-08-04 19:54 /spark/jars/flatbuffers-java-1.9.0.jar -rw-r--r-- 3 hadoop supergroup 14395 2025-08-04 19:54 /spark/jars/generex-1.0.2.jar -rw-r--r-- 3 hadoop supergroup 234942 2025-08-04 19:54 /spark/jars/hive-storage-api-2.7.1.jar -rw-r--r-- 3 hadoop supergroup 200223 2025-08-04 19:54 /spark/jars/hk2-api-2.6.1.jar -rw-r--r-- 3 hadoop supergroup 203358 2025-08-04 19:54 /spark/jars/hk2-locator-2.6.1.jar -rw-r--r-- 3 hadoop supergroup 131590 2025-08-04 19:54 /spark/jars/hk2-utils-2.6.1.jar -rw-r--r-- 3 hadoop supergroup 27156 2025-08-04 19:54 /spark/jars/istack-commons-runtime-3.0.8.jar -rw-r--r-- 3 hadoop supergroup 1282424 2025-08-04 19:54 /spark/jars/ivy-2.4.0.jar -rw-r--r-- 3 hadoop supergroup 67889 2025-08-04 19:54 /spark/jars/jackson-annotations-2.10.0.jar -rw-r--r-- 3 hadoop supergroup 348635 2025-08-04 19:54 /spark/jars/jackson-core-2.10.0.jar -rw-r--r-- 3 hadoop supergroup 1400944 2025-08-04 19:54 /spark/jars/jackson-databind-2.10.0.jar -rw-r--r-- 3 hadoop supergroup 46646 2025-08-04 19:54 /spark/jars/jackson-dataformat-yaml-2.10.0.jar -rw-r--r-- 3 hadoop supergroup 105898 2025-08-04 19:54 /spark/jars/jackson-datatype-jsr310-2.10.3.jar -rw-r--r-- 3 hadoop supergroup 34991 2025-08-04 19:54 /spark/jars/jackson-module-jaxb-annotations-2.10.0.jar -rw-r--r-- 3 hadoop supergroup 43740 2025-08-04 19:54 /spark/jars/jackson-module-paranamer-2.10.0.jar -rw-r--r-- 3 hadoop supergroup 341862 2025-08-04 19:54 /spark/jars/jackson-module-scala_2.12-2.10.0.jar -rw-r--r-- 3 hadoop supergroup 44399 2025-08-04 19:54 /spark/jars/jakarta.activation-api-1.2.1.jar -rw-r--r-- 3 hadoop supergroup 25058 2025-08-04 19:54 /spark/jars/jakarta.annotation-api-1.3.5.jar -rw-r--r-- 3 hadoop supergroup 18140 2025-08-04 19:54 /spark/jars/jakarta.inject-2.6.1.jar -rw-r--r-- 3 hadoop supergroup 91930 2025-08-04 19:54 /spark/jars/jakarta.validation-api-2.0.2.jar -rw-r--r-- 3 hadoop supergroup 140376 2025-08-04 19:54 /spark/jars/jakarta.ws.rs-api-2.1.6.jar -rw-r--r-- 3 hadoop supergroup 115498 2025-08-04 19:54 /spark/jars/jakarta.xml.bind-api-2.3.2.jar -rw-r--r-- 3 hadoop supergroup 926574 2025-08-04 19:54 /spark/jars/janino-3.0.16.jar -rw-r--r-- 3 hadoop supergroup 780265 2025-08-04 19:54 /spark/jars/javassist-3.25.0-GA.jar -rw-r--r-- 3 hadoop supergroup 95806 2025-08-04 19:54 /spark/jars/javax.servlet-api-3.1.0.jar -rw-r--r-- 3 hadoop supergroup 1013367 2025-08-04 19:54 /spark/jars/jaxb-runtime-2.3.2.jar -rw-r--r-- 3 hadoop supergroup 16537 2025-08-04 19:54 /spark/jars/jcl-over-slf4j-1.7.30.jar -rw-r--r-- 3 hadoop supergroup 244502 2025-08-04 19:54 /spark/jars/jersey-client-2.30.jar -rw-r--r-- 3 hadoop supergroup 1166647 2025-08-04 19:54 /spark/jars/jersey-common-2.30.jar -rw-r--r-- 3 hadoop supergroup 32091 2025-08-04 19:54 /spark/jars/jersey-container-servlet-2.30.jar -rw-r--r-- 3 hadoop supergroup 73349 2025-08-04 19:54 /spark/jars/jersey-container-servlet-core-2.30.jar -rw-r--r-- 3 hadoop supergroup 76733 2025-08-04 19:54 /spark/jars/jersey-hk2-2.30.jar -rw-r--r-- 3 hadoop supergroup 85815 2025-08-04 19:54 /spark/jars/jersey-media-jaxb-2.30.jar -rw-r--r-- 3 hadoop supergroup 927721 2025-08-04 19:54 /spark/jars/jersey-server-2.30.jar -rw-r--r-- 3 hadoop supergroup 83632 2025-08-04 19:54 /spark/jars/json4s-ast_2.12-3.6.6.jar -rw-r--r-- 3 hadoop supergroup 482486 2025-08-04 19:54 /spark/jars/json4s-core_2.12-3.6.6.jar -rw-r--r-- 3 hadoop supergroup 36175 2025-08-04 19:54 /spark/jars/json4s-jackson_2.12-3.6.6.jar -rw-r--r-- 3 hadoop supergroup 349025 2025-08-04 19:54 /spark/jars/json4s-scalap_2.12-3.6.6.jar -rw-r--r-- 3 hadoop supergroup 33031 2025-08-04 19:54 /spark/jars/jsr305-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 4592 2025-08-04 19:54 /spark/jars/jul-to-slf4j-1.7.30.jar -rw-r--r-- 3 hadoop supergroup 410874 2025-08-04 19:54 /spark/jars/kryo-shaded-4.0.2.jar -rw-r--r-- 3 hadoop supergroup 775174 2025-08-04 19:54 /spark/jars/kubernetes-client-4.9.2.jar -rw-r--r-- 3 hadoop supergroup 11908731 2025-08-04 19:54 /spark/jars/kubernetes-model-4.9.2.jar -rw-r--r-- 3 hadoop supergroup 3954 2025-08-04 19:54 /spark/jars/kubernetes-model-common-4.9.2.jar -rw-r--r-- 3 hadoop supergroup 1045744 2025-08-04 19:54 /spark/jars/leveldbjni-all-1.8.jar -rw-r--r-- 3 hadoop supergroup 12488 2025-08-04 19:54 /spark/jars/logging-interceptor-3.12.6.jar -rw-r--r-- 3 hadoop supergroup 649950 2025-08-04 19:54 /spark/jars/lz4-java-1.7.1.jar -rw-r--r-- 3 hadoop supergroup 33786 2025-08-04 19:54 /spark/jars/machinist_2.12-0.6.8.jar -rw-r--r-- 3 hadoop supergroup 3180 2025-08-04 19:54 /spark/jars/macro-compat_2.12-1.1.1.jar -rw-r--r-- 3 hadoop supergroup 7343426 2025-08-04 19:54 /spark/jars/mesos-1.4.0-shaded-protobuf.jar -rw-r--r-- 3 hadoop supergroup 105365 2025-08-04 19:54 /spark/jars/metrics-core-4.1.1.jar -rw-r--r-- 3 hadoop supergroup 22042 2025-08-04 19:54 /spark/jars/metrics-graphite-4.1.1.jar -rw-r--r-- 3 hadoop supergroup 20889 2025-08-04 19:54 /spark/jars/metrics-jmx-4.1.1.jar -rw-r--r-- 3 hadoop supergroup 16642 2025-08-04 19:54 /spark/jars/metrics-json-4.1.1.jar -rw-r--r-- 3 hadoop supergroup 23909 2025-08-04 19:54 /spark/jars/metrics-jvm-4.1.1.jar -rw-r--r-- 3 hadoop supergroup 5711 2025-08-04 19:54 /spark/jars/minlog-1.3.0.jar -rw-r--r-- 3 hadoop supergroup 4153218 2025-08-04 19:54 /spark/jars/netty-all-4.1.47.Final.jar -rw-r--r-- 3 hadoop supergroup 54391 2025-08-04 19:54 /spark/jars/objenesis-2.5.1.jar -rw-r--r-- 3 hadoop supergroup 423175 2025-08-04 19:54 /spark/jars/okhttp-3.12.6.jar -rw-r--r-- 3 hadoop supergroup 88732 2025-08-04 19:54 /spark/jars/okio-1.15.0.jar -rw-r--r-- 3 hadoop supergroup 19827 2025-08-04 19:54 /spark/jars/opencsv-2.3.jar -rw-r--r-- 3 hadoop supergroup 813783 2025-08-04 19:54 /spark/jars/orc-core-1.5.10.jar -rw-r--r-- 3 hadoop supergroup 48122 2025-08-04 19:54 /spark/jars/orc-mapreduce-1.5.10.jar -rw-r--r-- 3 hadoop supergroup 27749 2025-08-04 19:54 /spark/jars/orc-shims-1.5.10.jar -rw-r--r-- 3 hadoop supergroup 65261 2025-08-04 19:54 /spark/jars/oro-2.0.8.jar -rw-r--r-- 3 hadoop supergroup 19479 2025-08-04 19:54 /spark/jars/osgi-resource-locator-1.0.3.jar -rw-r--r-- 3 hadoop supergroup 34654 2025-08-04 19:54 /spark/jars/paranamer-2.8.jar -rw-r--r-- 3 hadoop supergroup 1097799 2025-08-04 19:54 /spark/jars/parquet-column-1.10.1.jar -rw-r--r-- 3 hadoop supergroup 94995 2025-08-04 19:54 /spark/jars/parquet-common-1.10.1.jar -rw-r--r-- 3 hadoop supergroup 848750 2025-08-04 19:54 /spark/jars/parquet-encoding-1.10.1.jar -rw-r--r-- 3 hadoop supergroup 723203 2025-08-04 19:54 /spark/jars/parquet-format-2.4.0.jar -rw-r--r-- 3 hadoop supergroup 285732 2025-08-04 19:54 /spark/jars/parquet-hadoop-1.10.1.jar -rw-r--r-- 3 hadoop supergroup 1048171 2025-08-04 19:54 /spark/jars/parquet-jackson-1.10.1.jar -rw-r--r-- 3 hadoop supergroup 123052 2025-08-04 19:54 /spark/jars/py4j-0.10.9.jar -rw-r--r-- 3 hadoop supergroup 100431 2025-08-04 19:54 /spark/jars/pyrolite-4.30.jar -rw-r--r-- 3 hadoop supergroup 112235 2025-08-04 19:54 /spark/jars/scala-collection-compat_2.12-2.1.1.jar -rw-r--r-- 3 hadoop supergroup 10672015 2025-08-04 19:54 /spark/jars/scala-compiler-2.12.10.jar -rw-r--r-- 3 hadoop supergroup 5276900 2025-08-04 19:54 /spark/jars/scala-library-2.12.10.jar -rw-r--r-- 3 hadoop supergroup 222980 2025-08-04 19:54 /spark/jars/scala-parser-combinators_2.12-1.1.2.jar -rw-r--r-- 3 hadoop supergroup 3678534 2025-08-04 19:54 /spark/jars/scala-reflect-2.12.10.jar -rw-r--r-- 3 hadoop supergroup 556575 2025-08-04 19:54 /spark/jars/scala-xml_2.12-1.2.0.jar -rw-r--r-- 3 hadoop supergroup 3243337 2025-08-04 19:54 /spark/jars/shapeless_2.12-2.3.3.jar -rw-r--r-- 3 hadoop supergroup 4028 2025-08-04 19:54 /spark/jars/shims-0.7.45.jar -rw-r--r-- 3 hadoop supergroup 302558 2025-08-04 19:54 /spark/jars/snakeyaml-1.24.jar -rw-r--r-- 3 hadoop supergroup 1934320 2025-08-04 19:54 /spark/jars/snappy-java-1.1.7.5.jar -rw-r--r-- 3 hadoop supergroup 9387724 2025-08-04 19:54 /spark/jars/spark-catalyst_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 10167565 2025-08-04 19:54 /spark/jars/spark-core_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 430744 2025-08-04 19:54 /spark/jars/spark-graphx_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 369562 2025-08-04 19:54 /spark/jars/spark-kubernetes_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 59866 2025-08-04 19:54 /spark/jars/spark-kvstore_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 75930 2025-08-04 19:54 /spark/jars/spark-launcher_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 294928 2025-08-04 19:54 /spark/jars/spark-mesos_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 111914 2025-08-04 19:54 /spark/jars/spark-mllib-local_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 5885296 2025-08-04 19:54 /spark/jars/spark-mllib_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 2397699 2025-08-04 19:54 /spark/jars/spark-network-common_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 87027 2025-08-04 19:54 /spark/jars/spark-network-shuffle_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 52512 2025-08-04 19:54 /spark/jars/spark-repl_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 30347 2025-08-04 19:54 /spark/jars/spark-sketch_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 7118845 2025-08-04 19:54 /spark/jars/spark-sql_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 1137816 2025-08-04 19:54 /spark/jars/spark-streaming_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 9478 2025-08-04 19:54 /spark/jars/spark-tags_2.12-3.0.0-tests.jar -rw-r--r-- 3 hadoop supergroup 15149 2025-08-04 19:54 /spark/jars/spark-tags_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 51181 2025-08-04 19:54 /spark/jars/spark-unsafe_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 330670 2025-08-04 19:54 /spark/jars/spark-yarn_2.12-3.0.0.jar -rw-r--r-- 3 hadoop supergroup 79588 2025-08-04 19:54 /spark/jars/spire-macros_2.12-0.17.0-M1.jar -rw-r--r-- 3 hadoop supergroup 8261 2025-08-04 19:54 /spark/jars/spire-platform_2.12-0.17.0-M1.jar -rw-r--r-- 3 hadoop supergroup 34601 2025-08-04 19:54 /spark/jars/spire-util_2.12-0.17.0-M1.jar -rw-r--r-- 3 hadoop supergroup 7188024 2025-08-04 19:54 /spark/jars/spire_2.12-0.17.0-M1.jar -rw-r--r-- 3 hadoop supergroup 178149 2025-08-04 19:54 /spark/jars/stream-2.9.6.jar -rw-r--r-- 3 hadoop supergroup 233745 2025-08-04 19:54 /spark/jars/threeten-extra-1.5.0.jar -rw-r--r-- 3 hadoop supergroup 443231 2025-08-04 19:54 /spark/jars/univocity-parsers-2.8.3.jar -rw-r--r-- 3 hadoop supergroup 281356 2025-08-04 19:54 /spark/jars/xbean-asm7-shaded-4.15.jar -rw-r--r-- 3 hadoop supergroup 99555 2025-08-04 19:54 /spark/jars/xz-1.5.jar -rw-r--r-- 3 hadoop supergroup 35518 2025-08-04 19:54 /spark/jars/zjsonpatch-0.3.0.jar -rw-r--r-- 3 hadoop supergroup 4210625 2025-08-04 19:54 /spark/jars/zstd-jni-1.4.4-3.jar 有什么问题吗
最新发布
08-08
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值