Не могу записать спарк Dataframe в таблицу cassandra - PullRequest
0 голосов
/ 05 апреля 2020

Я подключаю искру на HDP3.0 с Cassandra для записи кадра данных в таблицу cassandra, но получаю сообщение об ошибке ниже: введите описание изображения здесь

введите описание изображения здесь

мой код для записи в таблицу кассандры приведен ниже: введите описание изображения здесь

Большое спасибо !!

Ответы [ 2 ]

0 голосов
/ 06 апреля 2020

Исключение ниже: Traceback (последний вызов был последним):
Файл "/etc/yum.repos.d/CassandraSpark.py", строка 24, в
.options (таблица = "пользователи" , keyspace = "movielens") \
Файл "/usr/hdp/current/spark2-client/python/lib/pyspark.zip/pyspark/sql/readwriter.py", строка 703, в файле сохранения
"/usr/hdp/current/spark2-client/python/lib/py4j-0.10.7-src.zip/py4j/java_gateway.py", строка 1257, в вызов
Файл "/usr/hdp/current/spark2-client/python/lib/pyspark.zip/pyspark/sql/utils.py", строка 63, в файле deco
* "/ usr / hdp / current / spark2-client /python/lib/py4j-0.10.7-src.zip/py4j/protocol.py ", строка 328, в get_return_value
py4j.protocol.Py4JJavaError: Произошла ошибка при вызове o97.save.
: java .lang.NoClassDefFoundError: org / apache / commons / configuration / ConfigurationException
at org. apache .spark. sql .cassandra.DefaultSource $. (DefaultSource. scala: 135)
at org. apache .spark. sql .cassandra.DefaultSource $. (DefaultSource. scala)
в орг. apache .spark. sql .cassandra.DefaultSource.createRelation (DefaultSource. scala: 82)
в орг. apache .spark. sql .execution.datasources.SaveIntoDataSourceCommand .run (SaveIntoDataSourceCommand. scala: 45)
at org. apache .spark. sql .execution.command.ExecutedCommandExe c .sideEffectResult $ lzycompute (команды. scala: 70)
в орг. apache .spark. sql .execution.command.ExecutedCommandExe c .sideEffectResult (команды. scala: 68)
в орг. apache .spark. sql .execution .command.ExecutedCommandExe c .doExecute (команды. scala: 86)
в орг. apache .spark. sql .execution.SparkPlan $$ anonfun $ execute $ 1.apply (SparkPlan. scala: 131)
в организации. apache .spark. sql .execution.SparkPlan $$ anonfun $ execute $ 1.apply (SparkPlan. scala: 127)
в организации. apache. spark. sql .execution.SparkPlan $$ anonfun $ executeQuery $ 1.apply (SparkPlan. scala: 155)
в орг. apache .spark.rdd.RDDOperationScope $ .withScope (RDDOperationScope. scala : 151)
в орг. apache .spark. sql .execution.S parkPlan.executeQuery (SparkPlan. scala: 152)
в орг. apache .spark. sql .execution.SparkPlan.execute (SparkPlan. scala: 127)
в орг. apache .spark. sql .execution.QueryExecution.toRdd $ lzycompute (QueryExecution. scala: 80)
at org. apache .spark. sql .execution.QueryExecution.toRdd (QueryExecution. scala: 80)
в орг. apache .spark. sql .DataFrameWriter $$ anonfun $ runCommand $ 1.apply (DataFrameWriter. scala: 656)
в орг. apache .spark. sql .DataFrameWriter $$ anonfun $ runCommand $ 1.apply (DataFrameWriter. scala: 656)
в org. apache .spark. sql .execution.SQLExecution $ .withNewExecutionId (SQLExecution * * 11). : 77)
в орг. apache .spark. sql .DataFrameWriter.runCommand (DataFrameWriter. scala: 656)
в орг. apache .spark. sql .DataFrameWriter.saveToV1Source (DataFrameWriter. scala: 273)
в орг. apache .spark. sql .DataFrameWriter.save (DataFrameWriter. scala: 267)
в sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Метод)
в sun.reflect.NativeMethodAccessor Impl.invoke (NativeMethodAccessorImpl. java: 62)
на sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl. java: 43)
в java .lang.reflect.ke (. java: 498)
в py4j.reflection.MethodInvoker.invoke (MethodInvoker. java: 244)
в py4j.reflection.ReflectionEngine.invoke (ReflectionEngine. java: 357)
в py4j.Gateway.invoke (Шлюз. java: 282)
в py4j.commands.AbstractCommand.invokeMethod (AbstractCommand. java: 132)
в py4j.commands.CallCommand.execute (CallCommand. java: 79)
at py4j.GatewayConnection.run (GatewayConnection. java: 238)
at java .lang.Thread.run (Thread. java: 748)
Причина: java .lang.ClassNotFoundException: org. apache .commons.configuration.ConfigurationException
в java. net .URLClassLoader.findClass (URLClassLoader. java: 382)
в java .lang.ClassLoader.loadClass (ClassLoader. java: 424)
в sun.mis c .Launcher $ AppClassLoader.loadClass (Launcher. java: 349)
в java .lang.ClassLoader.loadClass (ClassLoader. java: 357)
... еще 32

20/04/05 21:07:57 ИНФОРМАЦИЯ SparkContext: вызов остановки () из отключающего крюка
20/04/05 21:07:57 ИНФОРМАЦИЯ AbstractConnector: остановлен Spark@724de990 {HTTP / 1.1, [http / 1.1]} {0.0.0.0:4040 innovative
20/04/05 21:07:57 INFO SparkUI: остановлен веб-интерфейс Spark в http://sandbox-hdp.hortonworks.com: 4040
20/04/05 21:07:57 INFO YarnClientSchedulerBackend: прерывание потока монитора
20/04/05 21:07:58 INFO YarnClientSchedulerBackend: выключение всех исполнителей
20 / 04/05 21:07:58 INFO YarnSchedulerBackend $ YarnDriverEndpoint: запрашивать у каждого исполнителя выключение
20/04/05 21:07:58 INFO SchedulerExtensionServices: Остановка SchedulerExtensionServices
( serviceOption = Нет,
services = List (),
началось = false)
20/04/05 21:07:58 INFO YarnClientSchedulerBackend: остановлен
20/04/05 21:07:58 ИНФОРМАЦИЯ MapOutputTrackerMasterEndpoint: MapOutputTrackerMasterEndpoint остановлен!
20/04/05 21:07:58 ИНФОРМАЦИЯ MemoryStore: очистка MemoryStore
20/04/05 21:07:58 ИНФОРМАЦИЯ BlockManager: BlockManager остановлен
20/04/05 21:07:58 ИНФОРМАЦИЯ BlockManagerMaster: BlockManagerMaster остановлен
20/04/05 21:07:58 ИНФОРМАЦИЯ OutputCommitCoordinator $ OutputCommitCoordinatorEndpoint: OutputCommitCoordinator остановлен!
20/04/05 21:07:58 ИНФО SparkContext: успешно остановлен SparkContext
20/04/05 21:07:58 INFO ShutdownHookManager: вызван хук отключения
20/04/05 21:07:58 INFO ShutdownHookManager: удаление каталога / tmp / spark-4b615cf3-aab0-44e7-bc4f- ef8039b2a26e
20/04/05 21:07:58 ИНФОРМАЦИЯ ShutdownHookManager: удаление каталога / tmp / spark-8c4e6b45-5ade-4e73-b9b7-ec10694bf145
20/04/05 21:07:58 INFO ShutdownHookManager: Dele директор y / tmp / spark-4b615cf3-aab0-44e7-bc4f-ef8039b2a26e / pyspark-9b577311-43b8-4608-85 7e-5b0ab52553e2

0 голосов
/ 05 апреля 2020

HDP 3.0 основан на Had oop 3.1.1, который использует библиотеку commons-configuration2 вместо commons-configuration, которая используется Spark Cassandra Connector. Вы можете начать spark-shell или spark-submit со следующего:

spark-shell --packages com.datastax.spark:spark-cassandra-connector_2.11:2.3.1,commons-configuration:commons-configuration:1.10

, чтобы явно добавить commons-configuration.

...