Я пытаюсь использовать pyspark в блокноте Jupyter в среде разработки pycharm для выполнения задания. он работает нормально, но если в какой-либо ячейке возникает какая-либо ошибка, она перестает работать. в следующий раз, когда я попытаюсь запустить ячейку, я получу эту ошибку.
код для запуска искры.
from pyspark.sql import SparkSession
spark = SparkSession.builder \
.appName("app name") \
.master("local[*]") \
.config("spark.driver.memory", "4g") \
.getOrCreate()
spark_df = spark.read.csv("path", header=True, inferSchema=True)
spark_df.show(5)
это работает нормально, но допустим, следующая ячейка такая
spark_dg.show(5) # the name is incorrect so it will show an error
теперь каждая ячейка, которую я запускаю после получения первой ошибки, выдает мне следующую ошибку, даже если в ячейке нет кода, вызывающего ошибку.
Error = ConnectionRefusedError: [WinError 10061] Соединение не может быть установлено, поскольку целевая машина активно отказывается от него
возможно, внутренняя jvm или что-то происходит сбой каждый раз, когда он получает ошибку, как мне это сделать стоп?
если я перезапущу ядро Jupyter и повторно запущу ячейки, они снова будут работать нормально, но неудобно перезапускать все каждый раз, когда я получаю ошибку.
python version = 3.11
pyspark==3.5.4 (this version is mandatory for the assignment)
java = 11 (eclipse temurin)
полная ошибка
ConnectionRefusedError Traceback (most recent call last)
Cell In[4], line 1
----> 1 spark_dg.show(5)
File F:\MSPython\.venv3\Lib\site-packages\pyspark\sql\dataframe.py:947, in DataFrame.show(self, n, truncate, vertical)
887 def show(self, n: int = 20, truncate: Union[bool, int] = True, vertical: bool = False) -> None:
888 """Prints the first ``n`` rows to the console.
889
890 .. versionadded:: 1.3.0
(...) 945 name | Bob
946 """
--> 947 print(self._show_string(n, truncate, vertical))
File F:\MSPython\.venv3\Lib\site-packages\pyspark\sql\dataframe.py:965, in DataFrame._show_string(self, n, truncate, vertical)
959 raise PySparkTypeError(
960 error_class="NOT_BOOL",
961 message_parameters={"arg_name": "vertical", "arg_type": type(vertical).__name__},
962 )
964 if isinstance(truncate, bool) and truncate:
--> 965 return self._jdf.showString(n, 20, vertical)
966 else:
967 try:
File F:\MSPython\.venv3\Lib\site-packages\py4j\java_gateway.py:1321, in JavaMember.__call__(self, *args)
1314 args_command, temp_args = self._build_args(*args)
1316 command = proto.CALL_COMMAND_NAME +\
1317 self.command_header +\
1318 args_command +\
1319 proto.END_COMMAND_PART
-> 1321 answer = self.gateway_client.send_command(command)
1322 return_value = get_return_value(
1323 answer, self.gateway_client, self.target_id, self.name)
1325 for temp_arg in temp_args:
File F:\MSPython\.venv3\Lib\site-packages\py4j\java_gateway.py:1036, in GatewayClient.send_command(self, command, retry, binary)
1015 def send_command(self, command, retry=True, binary=False):
1016 """Sends a command to the JVM. This method is not intended to be
1017 called directly by Py4J users. It is usually called by
1018 :class:`JavaMember` instances.
(...) 1034 if `binary` is `True`.
1035 """
-> 1036 connection = self._get_connection()
1037 try:
1038 response = connection.send_command(command)
File F:\MSPython\.venv3\Lib\site-packages\py4j\clientserver.py:284, in JavaClient._get_connection(self)
281 pass
283 if connection is None or connection.socket is None:
--> 284 connection = self._create_new_connection()
285 return connection
File F:\MSPython\.venv3\Lib\site-packages\py4j\clientserver.py:291, in JavaClient._create_new_connection(self)
287 def _create_new_connection(self):
288 connection = ClientServerConnection(
289 self.java_parameters, self.python_parameters,
290 self.gateway_property, self)
--> 291 connection.connect_to_java_server()
292 self.set_thread_connection(connection)
293 return connection
File F:\MSPython\.venv3\Lib\site-packages\py4j\clientserver.py:438, in ClientServerConnection.connect_to_java_server(self)
435 if self.ssl_context:
436 self.socket = self.ssl_context.wrap_socket(
437 self.socket, server_hostname=self.java_address)
--> 438 self.socket.connect((self.java_address, self.java_port))
439 self.stream = self.socket.makefile("rb")
440 self.is_connected = True
ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it
Подробнее здесь: https://stackoverflow.com/questions/798 ... thon-error
PySpark JVM аварийно завершает работу после любой ошибки Python ⇐ Python
Программы на Python
-
Anonymous
1771148031
Anonymous
Я пытаюсь использовать [b]pyspark[/b] в блокноте Jupyter в среде разработки [b]pycharm[/b] для выполнения задания. он работает нормально, но если в какой-либо ячейке возникает какая-либо ошибка, она перестает работать. в следующий раз, когда я попытаюсь запустить ячейку, я получу эту ошибку.
код для запуска искры.
from pyspark.sql import SparkSession
spark = SparkSession.builder \
.appName("app name") \
.master("local[*]") \
.config("spark.driver.memory", "4g") \
.getOrCreate()
spark_df = spark.read.csv("path", header=True, inferSchema=True)
spark_df.show(5)
это работает нормально, но допустим, следующая ячейка такая
spark_dg.show(5) # the name is incorrect so it will show an error
теперь каждая ячейка, которую я запускаю после получения первой ошибки, выдает мне следующую ошибку, даже если в ячейке нет кода, вызывающего ошибку.
Error = ConnectionRefusedError: [WinError 10061] Соединение не может быть установлено, поскольку целевая машина активно отказывается от него
возможно, внутренняя jvm или что-то происходит сбой каждый раз, когда он получает ошибку, как мне это сделать стоп?
если я перезапущу ядро Jupyter и повторно запущу ячейки, они снова будут работать нормально, но неудобно перезапускать все каждый раз, когда я получаю ошибку.
python version = 3.11
pyspark==3.5.4 (this version is mandatory for the assignment)
java = 11 (eclipse temurin)
полная ошибка
ConnectionRefusedError Traceback (most recent call last)
Cell In[4], line 1
----> 1 spark_dg.show(5)
File F:\MSPython\.venv3\Lib\site-packages\pyspark\sql\dataframe.py:947, in DataFrame.show(self, n, truncate, vertical)
887 def show(self, n: int = 20, truncate: Union[bool, int] = True, vertical: bool = False) -> None:
888 """Prints the first ``n`` rows to the console.
889
890 .. versionadded:: 1.3.0
(...) 945 name | Bob
946 """
--> 947 print(self._show_string(n, truncate, vertical))
File F:\MSPython\.venv3\Lib\site-packages\pyspark\sql\dataframe.py:965, in DataFrame._show_string(self, n, truncate, vertical)
959 raise PySparkTypeError(
960 error_class="NOT_BOOL",
961 message_parameters={"arg_name": "vertical", "arg_type": type(vertical).__name__},
962 )
964 if isinstance(truncate, bool) and truncate:
--> 965 return self._jdf.showString(n, 20, vertical)
966 else:
967 try:
File F:\MSPython\.venv3\Lib\site-packages\py4j\java_gateway.py:1321, in JavaMember.__call__(self, *args)
1314 args_command, temp_args = self._build_args(*args)
1316 command = proto.CALL_COMMAND_NAME +\
1317 self.command_header +\
1318 args_command +\
1319 proto.END_COMMAND_PART
-> 1321 answer = self.gateway_client.send_command(command)
1322 return_value = get_return_value(
1323 answer, self.gateway_client, self.target_id, self.name)
1325 for temp_arg in temp_args:
File F:\MSPython\.venv3\Lib\site-packages\py4j\java_gateway.py:1036, in GatewayClient.send_command(self, command, retry, binary)
1015 def send_command(self, command, retry=True, binary=False):
1016 """Sends a command to the JVM. This method is not intended to be
1017 called directly by Py4J users. It is usually called by
1018 :class:`JavaMember` instances.
(...) 1034 if `binary` is `True`.
1035 """
-> 1036 connection = self._get_connection()
1037 try:
1038 response = connection.send_command(command)
File F:\MSPython\.venv3\Lib\site-packages\py4j\clientserver.py:284, in JavaClient._get_connection(self)
281 pass
283 if connection is None or connection.socket is None:
--> 284 connection = self._create_new_connection()
285 return connection
File F:\MSPython\.venv3\Lib\site-packages\py4j\clientserver.py:291, in JavaClient._create_new_connection(self)
287 def _create_new_connection(self):
288 connection = ClientServerConnection(
289 self.java_parameters, self.python_parameters,
290 self.gateway_property, self)
--> 291 connection.connect_to_java_server()
292 self.set_thread_connection(connection)
293 return connection
File F:\MSPython\.venv3\Lib\site-packages\py4j\clientserver.py:438, in ClientServerConnection.connect_to_java_server(self)
435 if self.ssl_context:
436 self.socket = self.ssl_context.wrap_socket(
437 self.socket, server_hostname=self.java_address)
--> 438 self.socket.connect((self.java_address, self.java_port))
439 self.stream = self.socket.makefile("rb")
440 self.is_connected = True
ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it
Подробнее здесь: [url]https://stackoverflow.com/questions/79889611/pyspark-jvm-crashes-after-any-python-error[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия