Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 如何使用pyspark中java代码的bytestring处理流式RDD输出_Apache Spark_Pyspark_Apache Spark 2.0 - Fatal编程技术网

Apache spark 如何使用pyspark中java代码的bytestring处理流式RDD输出

Apache spark 如何使用pyspark中java代码的bytestring处理流式RDD输出,apache-spark,pyspark,apache-spark-2.0,Apache Spark,Pyspark,Apache Spark 2.0,我有一个流式管道,其中嵌套的json格式数据被馈送到Cloud PubSub。然后使用Spark Streaming将数据提取为流 当打印以检查模式时,流(rdd)数据给出\u损坏\u记录:String 上面的自定义接收器代码是用Java编写的。 然后使用Pyspark处理输出RDD id 打印rdd时,发现它的前缀为b'(字节字符串格式) 如何在pyspark中处理此rdd,其中记录可以保存为2行而不是1行 我尝试过的事情: 在进一步的调试中,我们发现从Pyspark调用java代码时更容易出

我有一个流式管道,其中嵌套的json格式数据被馈送到Cloud PubSub。然后使用Spark Streaming将数据提取为流
当打印以检查模式时,流(rdd)数据给出
\u损坏\u记录:String

上面的自定义接收器代码是用Java编写的。 然后使用Pyspark处理输出RDD id

打印rdd时,发现它的前缀为b'(字节字符串格式)

如何在pyspark中处理此rdd,其中记录可以保存为2行而不是1行

我尝试过的事情:


在进一步的调试中,我们发现从Pyspark调用java代码时更容易出现序列化问题。因此改变了问题的主题。

我能够解决问题。我能够解决问题。1) 使用pyspark访问数据流后,使用flatMap(lambda x:x)将数据流rdd中的记录展平。2) 此外,由于json模式的输入源使用json.loads()解析有效的json字符串并将其转换为Python字典3)上次将此数据保存到BQ
(b'{"_id": {"_data": "abv1"}, "operationType": "insert", "clusterTime": {"$timestamp": {"t": 1622466457, "i": 393}}, "fullDocument": {"_id": "nhmm7779", "uid": "5FZ", "cb": {"key1": "jk8", "user_id": "jk-3"}, "cmp": {"c": "Organic"}, "ts": 1622466405939.0, "cd": {"$date": 1622466457352}, "d": "2021:5:31",  "sg": {"key5": "hj", "key6": "TV Menu", "key7": "NA"}, "s": 0, "dur": 0}, "ns": {"db": "database", "coll": "abnv55666"}, "documentKey": {"_id": "nhmm7779"}}', 
b'{"_id": {"_data": "bhg4"}, "operationType": "insert", "clusterTime": {"$timestamp": {"t": 1622466480, "i": 542}}, "fullDocument": {"_id": "nm1", "uid": "qS", "cb": {"key1": "jku", "user_id": "ty6"}, "cmp": {"c": "Organic"}, "ts": 1622466434999.0, "cd": {"$date": 1622466480445}, "d": "2021:5:31", "sg": {"key5": "bn", "key6": 0, "key7": "val2"}, "s": 0, "dur": 0}, "ns": {"db": "database", "coll": "bvgh678"}, "documentKey": {"_id": "nm1"}}')