代碼來創建一個數據幀:
從pyspark。sql進口SparkSession
火花= SparkSession.builder.appName (“oracle_queries”)部分(“地方[4]”)\
. config (“spark.sql.warehouse。dir”、“C: \ \軟件\ \ git \ \ pyspark \ \蜂巢”).getOrCreate ()
從pyspark.sql。functions import current_date,year
從pyspark.sql。類型s import IntegerType,StructType,StructField,StringType
從進口datetime datetime,日期
從pyspark進口SparkContext
sc = SparkContext.getOrCreate ()
抽樣= sc.parallelize(((“內存”,“氣”),
(anil”、“州”))
df = spark.createDataFrame(抽樣、模式= StructType ([StructField(“名字”,StringType(),真的),StructField(“瘋狂的”,StringType(),真的))))
想看看下麵的數據,但是麵對錯誤:
df.show ()
錯誤:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Py4JJavaError回溯(最近調用最後)
< ipython-input-2-1a6ce2362cd4 >在<模塊>
- - - - - > 1df。顯示()
c: \程序文件(x86) \ python38-32 \ lib \網站\ pyspark \ sql \ dataframe.py在顯示(自我,n,截斷,垂直)
438”“”
439年如果isinstance(截斷,bool)和截斷:
- - > 440打印(自我。_jdf。showString(n,20.垂直))
441年其他:
442打印(自我。_jdf。showString(n,int(截斷),垂直))
c: \程序文件(x86) \ python38-32 \ lib \網站\ py4j \ java_gateway.py在__call__(自我,* args)
1302年
1303的答案=自我。gateway_client。send_command(命令)
- > 1304 return_value = get_return_value (
1305年的答案,自我。gateway_client,自我。target_id self.name)
1306年
c: \程序文件(x86) \ python38-32 \ lib \網站\ pyspark \ sql \ utils.py在裝飾(*,* *千瓦)
126年def德科(*一個,* *千瓦
127年試一試:
- - > 128年返回f(*一個,* *千瓦)
129年除了py4j。協議。Py4JJavaError作為e:
130轉換=convert_exception(e。java_exception)
c: \程序文件(x86) \ python38-32 \ lib \網站\ py4j \ protocol.py在get_return_value(答案,gateway_client target_id名稱)
324的價值=OUTPUT_CONVERTER(類型)(回答[2],gateway_client)
325年如果回答[1]= =REFERENCE_TYPE:
- - > 326提高Py4JJavaError (
327年”時發生一個錯誤調用{0}{1}{2}。\ n”。
328格式(target_id”。“名字),值)
Py4JJavaError:調用o48.showString時發生一個錯誤。
:org.apache.spark。SparkException:工作階段失敗而終止:任務0階段0.0失敗1次,最近的失敗:在舞台上失去了任務0.0 0.0 (TID 0) (DESKTOP-N3C4AUC.attlocal.net執行器驅動程序):org.apache.spark.api.python。最後PythonException:回溯(最近電話):
python文件“C: \ pyspark \ spark-3.3.1-bin-hadoop3 \ \ lib \ pyspark.zip \ pyspark \工人。py”, 668行,在主
礦石
可以有三件事
2 * 1你初始化引發上下文
你有問題你的火花配置
本可以在python版本問題
因為我檢查,這是對我工作非常好
從pyspark。sql從pyspark.sql進口SparkSession。功能導入當前日期從pyspark.sql。類型s import IntegerType,StructType,StructField,StringType from datetime import datetime, date from pyspark import SparkContext sc=SparkContext.getOrCreate() rdd=sc.parallelize([('ram','chi'), ('anil','ind')]) df=spark.createDataFrame(rdd,schema=StructType([StructField("name",StringType(),True),StructField("loc",StringType(),True)])) #Trying to see the data but face below error: df.show()
附加圖片也
請選擇最佳答案如果你喜歡這。
謝謝
Aviral Bhardwaj
可以有三件事
2 * 1你初始化引發上下文
你有問題你的火花配置
本可以在python版本問題
因為我檢查,這是對我工作非常好
從pyspark。sql從pyspark.sql進口SparkSession。功能導入當前日期從pyspark.sql。類型s import IntegerType,StructType,StructField,StringType from datetime import datetime, date from pyspark import SparkContext sc=SparkContext.getOrCreate() rdd=sc.parallelize([('ram','chi'), ('anil','ind')]) df=spark.createDataFrame(rdd,schema=StructType([StructField("name",StringType(),True),StructField("loc",StringType(),True)])) #Trying to see the data but face below error: df.show()
附加圖片也
請選擇最佳答案如果你喜歡這。
謝謝
Aviral Bhardwaj
感謝Bhardwaj檢查這個問題。
以下是我使用的配置,請讓我知道如果需要更多的細節。
如果我使用CSV閱讀,這是工作,我麵臨一個問題如果我手動創建一個數據幀。
我在本地係統安裝的火花。
配置:
[('spark.app.name”、“oracle_queries”),
(' spark.driver.extraJavaOptions ',
“- xx: + IgnoreUnrecognizedVMOptions——add-opens = java.base / java。lang = ALL-UNNAMED——add-opens = java.base / . lang。在voke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/io= ALL-UNNAMED——add-opens = java.base /java.net= ALL-UNNAMED——add-opens = java.base / java。nio=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/sun.nio.ch= ALL-UNNAMED——add-opens = java.base / sun.nio。c = ALL-UNNAMED——add-opens = java.base / sun.security。action = ALL-UNNAMED——add-opens = java.base / sun.util。日曆= ALL-UNNAMED——add-opens = java.security.jgss / sun.security.krb5 = ALL-UNNAMED '),
(“火花。主”,“當地[4]”),
(“spark.driver。港',' 50219 '),
(“spark.app。開始時間',' 1671929660604 '),
('spark.executor.id”、“司機”),
('spark.app.id”、“地方- 1671929663025”),
(“spark.sql.warehouse。dir”、“文件:C: /軟件/ git / pyspark /蜂巢”),
(“spark.sql。catalogImplementation”、“蜂巢”),
(' spark.rdd.compress ', '真的'),
(' spark.executor.extraJavaOptions ',
“- xx: + IgnoreUnrecognizedVMOptions——add-opens = java.base / java。lang = ALL-UNNAMED——add-opens = java.base / . lang。在voke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/io= ALL-UNNAMED——add-opens = java.base /java.net= ALL-UNNAMED——add-opens = java.base / java。nio=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/sun.nio.ch= ALL-UNNAMED——add-opens = java.base / sun.nio。c = ALL-UNNAMED——add-opens = java.base / sun.security。action = ALL-UNNAMED——add-opens = java.base / sun.util。日曆= ALL-UNNAMED——add-opens = java.security.jgss / sun.security.krb5 = ALL-UNNAMED '),
(“spark.app。submitTime ', ' 1671929660216 '),
(“spark.serializer。objectStreamReset ', ' 100 '),
(“spark.submit。pyFiles’,”),
(“spark.submit.deployMode”、“客戶端”),
(“spark.driver。主機”、“DESKTOP-test.attlocal.net”),
(“spark.ui。顯示ConsoleProgress', 'true')]
CSV代碼:
source_path = " C: \ \軟件\ \ git \ \ pyspark \ \ \ \ emp.csv源”
emp = spark.read.csv (source_path頭= True, inferSchema = True)
emp.show ()
輸出:
+ - - - - - - - - - - - - + - - - - - - - - - - - - + - - - + - - - - - - - - - - - - + - - - + - - - + - - - - - - +
| | empno | ename |工作經理| hiredate sal | |通訊| deptno |
+ - - - - - - - - - - - - + - - - - - - - - - - - - + - - - + - - - - - - - - - - - - + - - - + - - - + - - - - - - +
史密斯| 7369 | | 7902 | |職員17 - 12月- 1980 | 800 |零20 | |
艾倫| 7499 | |零| 7698 | 2月20 - 30 - 1981 | 1600 | 300 | |
| 7521 | |病房推銷員| 7698 | 22 - 2月30 - 1981 | 1250 | 500 | |
瓊斯| 7566 | | 7839 | |經理2 - 4月- 1981 | 2975 |零20 | |
馬丁| 7654 | | 7698 | |推銷員9月28 - 30 - 1981 | 1250 | 1400 | |
經理布萊克| 7698 | | | | 7839年1 - 5月30 - 1981 | 2850 | 0 | |
克拉克| 7782 | | 7839 | |經理9 - 6月10 - 1981 | 2450 | 0 | |
分析師斯科特| | 7788 | | 7566 | 09 - 12月- 1982 | 3000 | 0 | 20 |
| 7839 | |國王總統| 0 | 11月17 - 10 - 1981 | 5000 | 0 | |
特納| 7844 | |推銷員| 7698 | 8 - 9月30 - 1981 | 1500 | 0 | |
亞當斯| 7876 | | 7788 | |職員12 - 1月20 - 1983 | 1100 | 0 | |
詹姆斯| 7900 | |職員| 7698 | 3——12月30 - 1981 | 950 | 0 | |
福特| 7902 | | 7566 | |分析師3 - 12月20 - 1981 | 3000 | 0 | |
米勒| 7934 | | 7782 | |職員23 - 1月10 - 1982 | 1300 | 0 | |
+ - - - - - - - - - - - - + - - - - - - - - - - - - + - - - + - - - - - - - - - - - - + - - - + - - - + - - - - - - +