![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pyspark
文章平均质量分 78
pyspark sql df ml实际应用
NoOne-csdn
永远年轻,永远热泪盈眶
展开
-
java.lang.RuntimeException: Cannot reserve additional contiguous bytes in the vectorized reader
spark任务报错Job aborted due to stage failure: Task 2049 in stage 515.0 failed 5 times, most recent failure: Lost task 2049.3 in stage 515.0 (TID 241301, n11-147-025.byted.org, executor 1078): java.lang.RuntimeException: Cannot reserve additional contiguous原创 2021-10-19 20:40:59 · 1532 阅读 · 0 评论 -
Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.core.exc.InputCoercionException
backgroundscala 写spark, 执行df.printSchema() 可以执行df.show()时却报错Exception in thread "main" java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/exc/InputCoercionException at com.fasterxml.jackson.module.scala.deser.NumberDeserializers$.<init&g原创 2020-09-21 17:18:22 · 7048 阅读 · 0 评论 -
(已解决)WARN jdbc.JdbcUtils: Requested isolation level 1, but transactions are unsupported
背景spark df写入click house警告:WARN jdbc.JdbcUtils: Requested isolation level 1, but transactions are unsupportedreasonCliskhouse 不支持事务resolution写程序设置关闭事务并发数为1df.write.mode("append").\ option("driver", self.ckdriver). \ option("原创 2020-08-11 13:53:31 · 1084 阅读 · 0 评论 -
(已经解决)Caused by: java.lang.NoClassDefFoundError: com/google/common/escape/Escapers
背景spark 读CLICKHOUSE 正确但是DF 存入clickhouse 表的时候报错:[Stage 0:> (0 + 1) / 1]2020-08-10 19:59:26,987 WARN jdbc.JdbcUtils: Requested isolation level 1, but transactions are unsupported2020-08-10 19:59原创 2020-08-10 20:29:27 · 5132 阅读 · 1 评论 -
pyspark Window 窗口函数
参考:Introducing Window Functions in Spark SQL窗口函数At its core, a window function calculates a return value for every input row of a table based on a group of rows, called the Frame. Every input row can have a unique frame associated with it. This character原创 2020-07-07 15:39:03 · 3557 阅读 · 0 评论 -
pyspark dataframe 自定义分区器
def myp(x): return x % 100 pp = F.udf(myp) df = spark.range(900) df.show() df = df.repartitionByRange(pp('id')) df.write.format('csv').save('output')把 id%100 相等的数据放到一个partition原创 2020-06-29 14:54:14 · 1263 阅读 · 0 评论 -
(待解决) java.io.EOFException: End of File Exception between local host
背景spark 设置checkpoint 的地址为阿里云的hdfs 报错 spark.sparkContext.setCheckpointDir('dfs://f***iyuncs.com:10290/test')集群环境正式环境15932736002020-06-28 14:45:05.159335---------------------------------------------------------------------------Py4JJavaError原创 2020-06-28 14:52:28 · 3953 阅读 · 0 评论 -
获取hdfs 地址,连接阿里云hdfs
本地配置了阿里云的hdfs 地址利用python pyspark连不上报错尝试找到正确的地址和端口号hdfs getconf -confKey fs.default.name# hdfs getconf -confKey fs.default.name2020-06-17 14:59:51,762 INFO Configuration.deprecation: fs.default.name is deprecated. Instead, use fs.defaultFSdfs://****.原创 2020-06-17 15:08:42 · 608 阅读 · 0 评论 -
pyspark group之后展开列表,计算列表个数
背景+-----------+-----------+|question_id|user_answer|+-----------+-----------+| 30530| 122306,|| 30548| 122378,|| 30451| 121990,|| 30530| 122304,|| 30548| 122378,|| 30451| 121990,|| 30530| 12原创 2020-06-03 15:12:42 · 1133 阅读 · 0 评论 -
pyspark必知必会(持续更新中)
RDD 和DF联系都是弹性分布式数据集,轻量集惰性机制,延迟计算根据内存情况,自动缓存,加快计算速度都有partition概念众多相同的算子区别DF引入了schema和off-heapschema RDD每一行的数据结构都是一样的off-heap 意味着JVM堆以外的内存RDD优点:强大,内置很多函数操作,group,map,filter等,方便处理结...原创 2020-04-16 16:09:34 · 735 阅读 · 0 评论 -
Spark transformation 和action 操作总结
transformationmap(func)filter(func)flatMap(func)mapPartitions(func)mapPartitionsWithSplit(func)sample()union()把多行合并为一个 df 并返回re=df.union(df2)re.show()+-----+---+| name|age|+-----+---+...原创 2020-04-03 14:52:50 · 257 阅读 · 0 评论 -
机器学习之预处理pyspark和sklearn相似处理比较(持续更新中)
库sklearn: import sklearn.preprocessingpyspark: import.ml.featureBinarizer 根据阈值进行二值化处理小于等于阈值的设置为0大于阈值的设置为1sklear.preprocessing.Binarizer说明:sklearn 的Binarizer 只能处理2D数组demo:x=np.array([[1,2...原创 2020-01-15 13:44:29 · 1342 阅读 · 0 评论 -
逻辑回归(Logistic Regression)及在spark,sklearn等的应用(更新ing)
参考Logistics Regression逻辑回归和线性回归比较逻辑回归分类二分类逻辑回归多分类逻辑回归原创 2019-12-18 10:16:34 · 660 阅读 · 1 评论 -
pysaprk关于table集锦
Spark Sql写在前面总结关于pyspark sql 里面关于table 的知识点SparkSessionSparkSession 可以用来创建DF,注册DF为table,对table执行SQL,缓存table 以及读parwuet文件。table(tableName)特定的table返回DF>>> df.createOrReplaceTempView("...原创 2019-12-12 09:55:19 · 385 阅读 · 0 评论 -
pyspar grouby 之后把另一列的字符串合并
用F.collect_list函数resdf.groupby('user_id').agg(F.collect_list(F.col("pname")))原创 2019-12-11 11:27:04 · 278 阅读 · 0 评论 -
spark RDD *ByKey操作
*ByKey 操作数据类型为(key,value)模式操作解释sortByKey对数据进行排序reduceByKey合并数据reduceByKeyLocally合并数据以字典的形式返回数据到mastersampleByKey返回rdd的子集subtractByKey返回两个RDD key 的差aggregateByKey合并函数...原创 2019-12-10 12:14:20 · 600 阅读 · 0 评论 -
回顾:关于pyspark RDD的一些理解
写在前面之前用DF数据类型比较多,RDD相对使用的比较少,回头再看只想说too simple too young。Transformation 和ActionTransformation转换,对rdd而言,每次转换都会产生新的rdd。Transformation得到的rdd是惰性求值的,整个转换过程只记录了转换的轨迹,并不是真正的计算,只有遇到Action操作时才会真正计算。Action...原创 2019-12-06 14:14:25 · 215 阅读 · 0 评论 -
关于Kafka-spark-streaming 的一些理解
RDDRDD(Resilient Distributed Dataset) 弹性分布式数据集,是spark 中最基本的数据抽抽象, 它代表一个不可变、可分区、里面的元素可并行计算的集合。RDD具有数据流模型的特点:自动容错、位置感知性调度和可伸缩性。RDD允许用户在执行多个查询时显式地将工作集缓存在内存中,后续的查询能够重用工作集,这极大地提升了查询速度。streaming 操作trans...原创 2019-12-04 20:38:50 · 383 阅读 · 0 评论 -
java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
背景报错:py4j.protocol.Py4JJavaError: An error occurred while calling o53.load.: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driverreason缺少jar 包solutionjar包链接原创 2019-12-03 13:44:54 · 2141 阅读 · 0 评论 -
Spark Streaming's Kafka libraries not found in class path
背景pyspark streaming 处理Kafka生产的数据时报错:Spark Streaming’s Kafka libraries not found in class path. Try one of the following.reason缺少 <spark-streaming-kafka-0-8-assembly.jar> 包solution包下载链接将...原创 2019-11-28 17:06:20 · 1263 阅读 · 0 评论 -
pyspark.ml.feature模块详解(持续更新中)
Tokenizer(inputCol=None,outputCol=None)分词器,把字符串转为小写,并以空格分词eg:df=spark.createDataFrame([('''Machine learning can be applied to a wide variety of data types, such as vectors, text, images, an...原创 2019-08-29 21:10:52 · 2793 阅读 · 0 评论 -
'StopWordsRemover_647238f67672 parameter locale given invalid value en_CN.
###背景用pysaprk 机器学习 StopWordsRemove 时报错pyspark.sql.utils.IllegalArgumentException: ‘StopWordsRemover_647238f67672 parameter locale given invalid value en_CN.’修改print(locale.getDefault()) ##en_CNl...原创 2019-08-29 11:51:13 · 595 阅读 · 0 评论 -
Spark机器学习流程(ML Pipeline)(持续更新ing)
参考:[1]林大贵.Python+Spark2.0+Hadoop机器学习与大数据实战[M].博硕文化股份有限公司名词说明DataFrame:Sparl ML机器学习API处理的数据格式是DF,我们必须使用DF存储数据、处理数据、测试数据,最后预测结果也是DF。我们可以使用SQLContext读取文本文件创建DF或将RDD转为DF,也可以使用Spark SQL来操作。DF可以存储不同的数据类型...原创 2019-08-28 15:58:13 · 690 阅读 · 0 评论 -
spark persist cache()以及StorageLevel
cache() 以及persist()都是用于将一个RDD进行缓存的,这样在之后使用的过程中就不需要重新计算了,可以大大节省程序运行时间cache()区别cache()的缓存机制为MEMORY_AND_DISK。即RDD的数据直接以Java对象的形式存储于JVM的内存中,如果内存空间不中,某些分区的数据会被存储至磁盘,使用的时候从磁盘读取。persist()persist的默认缓存机制为s...原创 2019-08-16 10:21:37 · 2133 阅读 · 0 评论 -
pyspark streaming+Kafka demo
from pyspark import SparkConffrom pyspark.sql import SparkSessionfrom pyspark.streaming import StreamingContextfrom pyspark.streaming.kafka import KafkaUtilsimport osos.environ['PYSPARK_PYTHON'] ...原创 2019-09-04 15:56:15 · 758 阅读 · 0 评论 -
(待解决)java.lang.IllegalStateException: LiveListenerBus is stopped.
背景Spark Streaming 操作时,同样的代码,在本地环境可以通过,但到了线上集群环境报错Py4JJavaError: An error occurred while calling None.org.apache.spark.streaming.api.java.JavaStreamingContext.: java.lang.IllegalStateException: Li...原创 2019-09-06 13:39:50 · 1615 阅读 · 0 评论 -
(已解决)Checkpoint RDD has a different number of partitions from original RDD
背景pyspark 消费Kafka集群环境时报错:py4j.protocol.Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.runJob.: org.apache.spark.SparkException: Checkpoint RDD has a differe...原创 2019-09-06 14:37:07 · 500 阅读 · 0 评论 -
pyspark streaming +Kafka 多个partition指定偏移量消费
from_offsets = {} for i in range(11): from_offsets[ TopicAndPartition(self.topic_name, i) ] = int(0)#指定偏移量kafkaStreams = KafkaUtils.createDirectStream...原创 2019-09-18 21:32:39 · 578 阅读 · 0 评论 -
pyspark.ml.linalg模块之Vector,Vectors,SparseVector,DenseVector详细解析
源码参考地址类Vector,Vectors,SparseVector,DenseVector之间的关系Vector 是SparseVector和DenseVector的基础类“”"Abstract class for DenseVector and SparseVector“”"Vectors 产生SparseVector和DenseVector的工厂类VectortoArra...原创 2019-09-20 12:03:17 · 6176 阅读 · 0 评论 -
Spark ML 函数feature.VectorIndexer及VectorAssembler
assemble英 [əˈsembl] 美 [əˈsembl]v.聚集;集合;收集;装配;组装VectorAssemblerVectorAssembler(inputCols=None, outputCol=None, handleInvalid=‘error’)特征转换器,将多个列合并为一个向量列。VectorAssembler接受以下输入列类型:所有数值类型、布尔类型和向量类...原创 2019-09-20 14:55:36 · 1355 阅读 · 0 评论 -
pyspark.sql之DataFrame
DataFrameagg(*exprs) 同df.groupBy.agg()df.agg({"age":"sum"}).show()±-------+|sum(age)|±-------+| 13|±-------+df.agg({"age":"min"}).show()±-------+|min(age)|±-------+| 1|±-...原创 2019-08-16 09:39:54 · 482 阅读 · 0 评论 -
pyspark.sql module 之SparkSession(待续)
Mocule ContextSpark SQL 和DF重要的类类名说明SparkSessionDF以及SQL的入口DataFrame分布式数据集ColumnDF的一列RowDF的一行GroupedDatadf.groupBy()的一些操作方法DataFrameNafunction处理缺失数据的方法DataFrameStatFu...原创 2019-08-15 16:28:36 · 1269 阅读 · 0 评论 -
pyspark-Rdd-groupby-groupByKey-cogroup-groupWith用法
一、groupBy()groupBy(f, numPartitions=None, partitionFunc=)Return an RDD of grouped items.代码:rdd=sc.parallelize([1,42,3,4,5,1,4,5,0])res=rdd.groupBy(lambda x:x%2).collect()print(res)拿到迭代器的具体值:...原创 2019-02-26 20:35:59 · 2658 阅读 · 0 评论 -
pyspark 读取mysql 数据库,返回类型是true和false
问题描述源码如下: table=''' (select type,`question_id`,status from t_question limit 10) tmp ''' df=self.read_table(sc=sc,table=table) df.show() return df读出来结果如下:数据库中ty...原创 2019-03-05 20:11:46 · 577 阅读 · 0 评论 -
pyspark 连接数据库两种方式
from pyspark.sql import SQLContextfrom pyspark import SparkConf,SparkContextmasterurl='spark://master:7077'# conf = SparkConf().setAppName("miniProject").setMaster("local[*]").set("spark.sql.exec...原创 2019-02-21 10:20:45 · 4786 阅读 · 0 评论 -
pyspark RDD zip、zipWithUniqueId、zipWithIndex操作详解
一、zip(other)Zips this RDD with another one, returning key-value pairs with the first element in each RDD second element in each RDD, etc. Assumes that the two RDDs have the same number of partitions...原创 2019-02-26 14:58:59 · 3527 阅读 · 0 评论 -
pysaprk 创建DataFrame
class spark_df_tool(): def __init__(self): self.spark = SparkSession \ .builder \ .appName('test') \ .master('local') \ .getOrCreate() ...原创 2019-02-20 21:03:50 · 1272 阅读 · 0 评论 -
pyspark.RDD aggregate 操作详解
aggregate(zeroValue, seqOp, combOp)Aggregate the elements of each partition, and then the results for all the partitions, using a given combine functions and a neutral “zero value.”seqOp“”"每个分区执行...原创 2019-02-26 09:48:48 · 1232 阅读 · 3 评论 -
pyspark df 和pandas df 的行数count不一样
需要设置,multiLine=Truedf=spark.read.csv('t_question.csv',header=True,multiLine=True)原创 2019-03-01 16:54:10 · 1365 阅读 · 0 评论 -
RDD,Spark SQL,DF群组统计
RDD#1 RDD性别统计a=userrdd.map(lambda x:(x[2],1)).reduceByKey(lambda x,y:x+y).collect()print(a)#2 性别职业统计a=userrdd.map(lambda x:((x[2],x[3]),1)).reduceByKey(lambda x,y:x+y).collect()print(a)Spa...原创 2019-02-25 17:50:44 · 411 阅读 · 0 评论