Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2      [все]
 Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Прошу прощения что пишу в форум Java.
Но в big-data - сверчки сверчат и вообще нет людей.

Учебный туториал по Spark.
import org.apache.spark.{SparkConf, SparkContext}

object Main {

    def main(arg : Array[String]): Unit = {

        val conf = new SparkConf().setMaster("local").setAppName("My App")

        val sc = new SparkContext(conf)

        val input = sc.textFile("c:/db/maven/mvnidx.csv")

        val words = input.flatMap(line => line.split(" "))

        val counts = words.map(words => (words, 1)).reduceByKey( {case (x,y) => x + y} )

        counts.saveAsTextFile("c:/db/maven/mvnidx_report.txt")

        printf("OK")

    }

}


Падает в фазе сохранения отчота. Есть ощущение что толи аргуменов не хватило. Толи chmod не отработал.

+
19/05/22 18:00:32 INFO MemoryStore: Block broadcast_2 stored as values in memory (estimated size 66.8 KB, free 93.1 MB)
19/05/22 18:00:32 INFO MemoryStore: Block broadcast_2_piece0 stored as bytes in memory (estimated size 24.5 KB, free 93.1 MB)
19/05/22 18:00:32 INFO BlockManagerInfo: Added broadcast_2_piece0 in memory on EPUAKHAW0852.kyiv.epam.com:59775 (size: 24.5 KB, free: 93.3 MB)
19/05/22 18:00:32 INFO SparkContext: Created broadcast 2 from broadcast at DAGScheduler.scala:1161
19/05/22 18:00:32 INFO DAGScheduler: Submitting 153 missing tasks from ResultStage 1 (MapPartitionsRDD[5] at saveAsTextFile at Main.scala:23) (first 15 tasks are for partitions Vector(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))
19/05/22 18:00:32 INFO TaskSchedulerImpl: Adding task set 1.0 with 153 tasks
19/05/22 18:00:32 INFO TaskSetManager: Starting task 0.0 in stage 1.0 (TID 153, localhost, executor driver, partition 0, ANY, 7141 bytes)
19/05/22 18:00:32 INFO Executor: Running task 0.0 in stage 1.0 (TID 153)
19/05/22 18:00:32 INFO ShuffleBlockFetcherIterator: Getting 153 non-empty blocks including 153 local blocks and 0 remote blocks
19/05/22 18:00:33 INFO ShuffleBlockFetcherIterator: Started 0 remote fetches in 9 ms
19/05/22 18:00:33 INFO BlockManagerInfo: Removed broadcast_1_piece0 on EPUAKHAW0852.kyiv.epam.com:59775 in memory (size: 3.3 KB, free: 93.3 MB)
19/05/22 18:00:33 INFO HadoopMapRedCommitProtocol: Using output committer class org.apache.hadoop.mapred.FileOutputCommitter
19/05/22 18:00:33 ERROR Executor: Exception in task 0.0 in stage 1.0 (TID 153)
java.io.IOException: (null) entry in command string: null chmod 0644 C:\db\maven\mvnidx_report.txt\_temporary\0\_temporary\attempt_20190522175850_0005_m_000000_0\part-00000
        at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:762)
        at org.apache.hadoop.util.Shell.execCommand(Shell.java:859)
        at org.apache.hadoop.util.Shell.execCommand(Shell.java:842)
        at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:661)
        at org.apache.hadoop.fs.ChecksumFileSystem$1.apply(ChecksumFileSystem.java:501)
        at org.apache.hadoop.fs.ChecksumFileSystem$FsOperation.run(ChecksumFileSystem.java:482)
        at org.apache.hadoop.fs.ChecksumFileSystem.setPermission(ChecksumFileSystem.java:498)
        at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:467)
        at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:433)
        at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:908)
        at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:801)
        at org.apache.hadoop.mapred.TextOutputFormat.getRecordWriter(TextOutputFormat.java:123)
        at org.apache.spark.internal.io.HadoopMapRedWriteConfigUtil.initWriter(SparkHadoopWriter.scala:228)
        at org.apache.spark.internal.io.SparkHadoopWriter$.executeTask(SparkHadoopWriter.scala:122)
        at org.apache.spark.internal.io.SparkHadoopWriter$.$anonfun$write$1(SparkHadoopWriter.scala:83)
        at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
        at org.apache.spark.scheduler.Task.run(Task.scala:121)
        at org.apache.spark.executor.Executor$TaskRunner.$anonfun$run$3(Executor.scala:411)
        at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1360)
        at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:414)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:834)


Искал в дефектах https://issues.apache.org/jira/browse/ но там похожие давно закрытые.
22 май 19, 18:15    [21891104]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
mayton,

https://github.com/steveloughran/winutils

WinUtils установлен?
22 май 19, 18:22    [21891110]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Минуту.
22 май 19, 18:25    [21891114]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Да. На рабочей машине под десяткой этого нет.

Вот есть какая-то инструкция https://simonsuthers.wordpress.com/2017/02/13/how-to-install-spark-on-a-windows-10-machine/
Но я winutils на эту машину ее не поставлю. Есть действующие полиси. Возможно чуть позже.

Попробую через пару часиков под Ubuntu. Думаю взлетит все в шоколаде.
22 май 19, 18:36    [21891117]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
lleming
Member

Откуда:
Сообщений: 1595
а если запустить в git-bash? там есть окружение почти.
22 май 19, 18:45    [21891123]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
mayton

Попробую через пару часиков под Ubuntu. Думаю взлетит все в шоколаде.


Это лучший фикс
22 май 19, 18:53    [21891134]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
lleming
а если запустить в git-bash? там есть окружение почти.

Пробовал. Таже ошибка.
22 май 19, 18:53    [21891135]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
andreykaT
Member

Откуда:
Сообщений: 2181
норм у меня под виндой всё работало.

а ты пробовал вот это?
22 май 19, 18:58    [21891137]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
andreykaT
Member

Откуда:
Сообщений: 2181
2)Set the HADOOP_HOME environment variable to the above downloaded winutils directory.(ex:C:\winutils\hadoop-2.7.1)
22 май 19, 18:59    [21891138]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Хм. Под линуксом результат немного другой. (Файловые пути и сплиттер я поменял.)

      val conf = new SparkConf().setMaster("local").setAppName("My App")

    val sc = new SparkContext(conf)

    printf("[::1]")

    val input = sc.textFile("/db/GEO/maxmind/2010-10.MaxMind GeoIP City CSV Format/GeoIP-139_20101001/GeoIPCity.csv")

    printf("[::2]")

    val words = input.flatMap(line => line.split(","))

    printf("[::3]")

    val counts = words.map(words => (words, 1)).reduceByKey( { case (x,y) => x + y } )

    printf("[::4]")

    counts.saveAsTextFile("/db/GEO/maxmind/2010-10.MaxMind GeoIP City CSV Format/GeoIP-139_20101001/GeoIPCity-report")

    printf("OK")


name := "probeSpark"

version := "0.1"

scalaVersion := "2.12.8"

libraryDependencies += "org.apache.spark" %% "spark-core" % "2.4.3"

Сформировался не 1 отчот а пачка. ХМ... корректно ли это? Не знаю.
Складывается ощущение что последний шаг слияния отчота не добежал до конца.
В логах ошибки были но они не прерывали процесс расчета.

+

[info] Loading project definition from /home/mayton/git/probeSpark/project
[info] Loading settings for project probespark from build.sbt ...
[info] Set current project to probeSpark (in build file:/home/mayton/git/probeSpark/)
[info] Running Main 
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
19/05/23 09:56:54 WARN Utils: Your hostname, mayton-ryzen resolves to a loopback address: 127.0.1.1; using 192.168.0.110 instead (on interface enp7s0)
19/05/23 09:56:54 WARN Utils: Set SPARK_LOCAL_IP if you need to bind to another address
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.spark.unsafe.Platform (file:/tmp/sbt_e76d0bca/target/f8e12f96/spark-unsafe_2.12-2.4.3.jar) to method java.nio.Bits.unaligned()
WARNING: Please consider reporting this to the maintainers of org.apache.spark.unsafe.Platform
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
19/05/23 09:56:54 INFO SparkContext: Running Spark version 2.4.3
19/05/23 09:56:54 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
19/05/23 09:56:54 INFO SparkContext: Submitted application: My App
19/05/23 09:56:54 INFO SecurityManager: Changing view acls to: mayton
19/05/23 09:56:54 INFO SecurityManager: Changing modify acls to: mayton
19/05/23 09:56:54 INFO SecurityManager: Changing view acls groups to: 
19/05/23 09:56:54 INFO SecurityManager: Changing modify acls groups to: 
19/05/23 09:56:54 INFO SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users  with view permissions: Set(mayton); groups with view permissions: Set(); users  with modify permissions: Set(mayton); groups with modify permissions: Set()
19/05/23 09:56:55 INFO Utils: Successfully started service 'sparkDriver' on port 46127.
19/05/23 09:56:55 INFO SparkEnv: Registering MapOutputTracker
19/05/23 09:56:55 INFO SparkEnv: Registering BlockManagerMaster
19/05/23 09:56:55 INFO BlockManagerMasterEndpoint: Using org.apache.spark.storage.DefaultTopologyMapper for getting topology information
19/05/23 09:56:55 INFO BlockManagerMasterEndpoint: BlockManagerMasterEndpoint up
19/05/23 09:56:55 INFO DiskBlockManager: Created local directory at /tmp/blockmgr-1779fe36-c630-405d-ae8e-52ce5a31db79
19/05/23 09:56:55 INFO MemoryStore: MemoryStore started with capacity 408.9 MB
19/05/23 09:56:55 INFO SparkEnv: Registering OutputCommitCoordinator
19/05/23 09:56:55 WARN Utils: Service 'SparkUI' could not bind on port 4040. Attempting port 4041.
19/05/23 09:56:55 INFO Utils: Successfully started service 'SparkUI' on port 4041.
19/05/23 09:56:55 INFO SparkUI: Bound SparkUI to 0.0.0.0, and started at http://192.168.0.110:4041
19/05/23 09:56:55 INFO Executor: Starting executor ID driver on host localhost
19/05/23 09:56:55 INFO Utils: Successfully started service 'org.apache.spark.network.netty.NettyBlockTransferService' on port 41997.
19/05/23 09:56:55 INFO NettyBlockTransferService: Server created on 192.168.0.110:41997
19/05/23 09:56:55 INFO BlockManager: Using org.apache.spark.storage.RandomBlockReplicationPolicy for block replication policy
19/05/23 09:56:55 INFO BlockManagerMaster: Registering BlockManager BlockManagerId(driver, 192.168.0.110, 41997, None)
19/05/23 09:56:55 INFO BlockManagerMasterEndpoint: Registering block manager 192.168.0.110:41997 with 408.9 MB RAM, BlockManagerId(driver, 192.168.0.110, 41997, None)
19/05/23 09:56:55 INFO BlockManagerMaster: Registered BlockManager BlockManagerId(driver, 192.168.0.110, 41997, None)
19/05/23 09:56:55 INFO BlockManager: Initialized BlockManager: BlockManagerId(driver, 192.168.0.110, 41997, None)
19/05/23 09:56:56 INFO MemoryStore: Block broadcast_0 stored as values in memory (estimated size 107.2 KB, free 408.8 MB)
19/05/23 09:56:56 INFO MemoryStore: Block broadcast_0_piece0 stored as bytes in memory (estimated size 20.4 KB, free 408.8 MB)
19/05/23 09:56:56 INFO BlockManagerInfo: Added broadcast_0_piece0 in memory on 192.168.0.110:41997 (size: 20.4 KB, free: 408.9 MB)
19/05/23 09:56:56 INFO SparkContext: Created broadcast 0 from textFile at Main.scala:11
19/05/23 09:56:56 INFO FileInputFormat: Total input paths to process : 1
19/05/23 09:56:56 INFO deprecation: mapred.output.dir is deprecated. Instead, use mapreduce.output.fileoutputformat.outputdir
19/05/23 09:56:56 INFO HadoopMapRedCommitProtocol: Using output committer class org.apache.hadoop.mapred.FileOutputCommitter
19/05/23 09:56:56 INFO SparkContext: Starting job: runJob at SparkHadoopWriter.scala:78
19/05/23 09:56:56 INFO DAGScheduler: Registering RDD 3 (map at Main.scala:15)
19/05/23 09:56:56 INFO DAGScheduler: Got job 0 (runJob at SparkHadoopWriter.scala:78) with 13 output partitions
19/05/23 09:56:56 INFO DAGScheduler: Final stage: ResultStage 1 (runJob at SparkHadoopWriter.scala:78)
19/05/23 09:56:56 INFO DAGScheduler: Parents of final stage: List(ShuffleMapStage 0)
19/05/23 09:56:56 INFO DAGScheduler: Missing parents: List(ShuffleMapStage 0)
19/05/23 09:56:56 INFO DAGScheduler: Submitting ShuffleMapStage 0 (MapPartitionsRDD[3] at map at Main.scala:15), which has no missing parents
19/05/23 09:56:56 INFO MemoryStore: Block broadcast_1 stored as values in memory (estimated size 5.7 KB, free 408.8 MB)
19/05/23 09:56:56 INFO MemoryStore: Block broadcast_1_piece0 stored as bytes in memory (estimated size 3.3 KB, free 408.8 MB)
19/05/23 09:56:56 INFO BlockManagerInfo: Added broadcast_1_piece0 in memory on 192.168.0.110:41997 (size: 3.3 KB, free: 408.9 MB)
19/05/23 09:56:56 INFO SparkContext: Created broadcast 1 from broadcast at DAGScheduler.scala:1161
19/05/23 09:56:56 INFO DAGScheduler: Submitting 13 missing tasks from ShuffleMapStage 0 (MapPartitionsRDD[3] at map at Main.scala:15) (first 15 tasks are for partitions Vector(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12))
19/05/23 09:56:56 INFO TaskSchedulerImpl: Adding task set 0.0 with 13 tasks
19/05/23 09:56:56 INFO TaskSetManager: Starting task 0.0 in stage 0.0 (TID 0, localhost, executor driver, partition 0, PROCESS_LOCAL, 7419 bytes)
19/05/23 09:56:56 INFO Executor: Running task 0.0 in stage 0.0 (TID 0)
19/05/23 09:56:56 INFO HadoopRDD: Input split: file:/db/GEO/maxmind/2010-10.MaxMind GeoIP City CSV Format/GeoIP-139_20101001/GeoIPCity.csv:0+33554432
19/05/23 09:56:59 INFO Executor: Finished task 0.0 in stage 0.0 (TID 0). 1172 bytes result sent to driver
19/05/23 09:56:59 INFO TaskSetManager: Starting task 1.0 in stage 0.0 (TID 1, localhost, executor driver, partition 1, PROCESS_LOCAL, 7419 bytes)
19/05/23 09:56:59 INFO Executor: Running task 1.0 in stage 0.0 (TID 1)

..............
rmat/GeoIP-139_20101001/GeoIPCity-report/_temporary/0/task_20190523100430_0005_m_000010
19/05/23 10:05:13 INFO SparkHadoopMapRedUtil: attempt_20190523100430_0005_m_000010_0: Committed
19/05/23 10:05:13 INFO Executor: Finished task 10.0 in stage 1.0 (TID 23). 1465 bytes result sent to driver
19/05/23 10:05:13 INFO TaskSetManager: Starting task 11.0 in stage 1.0 (TID 24, localhost, executor driver, partition 11, ANY, 7141 bytes)
19/05/23 10:05:13 INFO TaskSetManager: Finished task 10.0 in stage 1.0 (TID 23) in 1030 ms on localhost (executor driver) (11/13)
19/05/23 10:05:13 INFO Executor: Running task 11.0 in stage 1.0 (TID 24)
19/05/23 10:05:13 INFO ShuffleBlockFetcherIterator: Getting 13 non-empty blocks including 13 local blocks and 0 remote blocks
19/05/23 10:05:13 INFO ShuffleBlockFetcherIterator: Started 0 remote fetches in 0 ms
19/05/23 10:05:14 INFO HadoopMapRedCommitProtocol: Using output committer class org.apache.hadoop.mapred.FileOutputCommitter
19/05/23 10:05:14 INFO FileOutputCommitter: Saved output of task 'attempt_20190523100430_0005_m_000011_0' to file:/db/GEO/maxmind/2010-10.MaxMind GeoIP City CSV Format/GeoIP-139_20101001/GeoIPCity-report/_temporary/0/task_20190523100430_0005_m_000011
19/05/23 10:05:14 INFO SparkHadoopMapRedUtil: attempt_20190523100430_0005_m_000011_0: Committed
19/05/23 10:05:14 INFO Executor: Finished task 11.0 in stage 1.0 (TID 24). 1465 bytes result sent to driver
19/05/23 10:05:14 INFO TaskSetManager: Starting task 12.0 in stage 1.0 (TID 25, localhost, executor driver, partition 12, ANY, 7141 bytes)
19/05/23 10:05:14 INFO Executor: Running task 12.0 in stage 1.0 (TID 25)
19/05/23 10:05:14 INFO TaskSetManager: Finished task 11.0 in stage 1.0 (TID 24) in 1171 ms on localhost (executor driver) (12/13)
19/05/23 10:05:14 INFO ShuffleBlockFetcherIterator: Getting 13 non-empty blocks including 13 local blocks and 0 remote blocks
19/05/23 10:05:14 INFO ShuffleBlockFetcherIterator: Started 0 remote fetches in 0 ms
19/05/23 10:05:15 INFO HadoopMapRedCommitProtocol: Using output committer class org.apache.hadoop.mapred.FileOutputCommitter
19/05/23 10:05:15 INFO FileOutputCommitter: Saved output of task 'attempt_20190523100430_0005_m_000012_0' to file:/db/GEO/maxmind/2010-10.MaxMind GeoIP City CSV Format/GeoIP-139_20101001/GeoIPCity-report/_temporary/0/task_20190523100430_0005_m_000012
19/05/23 10:05:15 INFO SparkHadoopMapRedUtil: attempt_20190523100430_0005_m_000012_0: Committed
19/05/23 10:05:15 INFO Executor: Finished task 12.0 in stage 1.0 (TID 25). 1465 bytes result sent to driver
19/05/23 10:05:15 INFO TaskSetManager: Finished task 12.0 in stage 1.0 (TID 25) in 1036 ms on localhost (executor driver) (13/13)
19/05/23 10:05:15 INFO TaskSchedulerImpl: Removed TaskSet 1.0, whose tasks have all completed, from pool 
19/05/23 10:05:15 INFO DAGScheduler: ResultStage 1 (runJob at SparkHadoopWriter.scala:78) finished in 14.524 s
19/05/23 10:05:15 INFO DAGScheduler: Job 0 finished: runJob at SparkHadoopWriter.scala:78, took 45.735034 s
19/05/23 10:05:15 INFO SparkHadoopWriter: Job job_20190523100430_0005 committed.
OK19/05/23 10:05:15 WARN FileSystem: exception in the cleaner thread but it will continue to run
java.lang.InterruptedException
	at java.base/java.lang.Object.wait(Native Method)
	at java.base/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at java.base/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
	at org.apache.hadoop.fs.FileSystem$Statistics$StatisticsDataReferenceCleaner.run(FileSystem.java:2989)
	at java.base/java.lang.Thread.run(Thread.java:834)
19/05/23 10:05:15 ERROR Utils: uncaught error in thread spark-listener-group-executorManagement, stopping SparkContext
java.lang.InterruptedException
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(AbstractQueuedSynchronizer.java:2056)
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2090)
	at java.base/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at org.apache.spark.scheduler.AsyncEventQueue.$anonfun$dispatch$1(AsyncEventQueue.scala:97)
	at scala.runtime.java8.JFunction0$mcJ$sp.apply(JFunction0$mcJ$sp.java:23)
	at scala.util.DynamicVariable.withValue(DynamicVariable.scala:62)
	at org.apache.spark.scheduler.AsyncEventQueue.org$apache$spark$scheduler$AsyncEventQueue$$dispatch(AsyncEventQueue.scala:87)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.$anonfun$run$1(AsyncEventQueue.scala:83)
	at org.apache.spark.util.Utils$.tryOrStopSparkContext(Utils.scala:1302)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.run(AsyncEventQueue.scala:83)
19/05/23 10:05:15 ERROR ContextCleaner: Error in cleaning thread
java.lang.InterruptedException
	at java.base/java.lang.Object.wait(Native Method)
	at java.base/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at org.apache.spark.ContextCleaner.$anonfun$keepCleaning$1(ContextCleaner.scala:181)
	at org.apache.spark.util.Utils$.tryOrStopSparkContext(Utils.scala:1302)
	at org.apache.spark.ContextCleaner.org$apache$spark$ContextCleaner$$keepCleaning(ContextCleaner.scala:179)
	at org.apache.spark.ContextCleaner$$anon$1.run(ContextCleaner.scala:73)
19/05/23 10:05:15 ERROR Utils: uncaught error in thread spark-listener-group-appStatus, stopping SparkContext
java.lang.InterruptedException
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(AbstractQueuedSynchronizer.java:2056)
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2090)
	at java.base/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at org.apache.spark.scheduler.AsyncEventQueue.$anonfun$dispatch$1(AsyncEventQueue.scala:97)
	at scala.runtime.java8.JFunction0$mcJ$sp.apply(JFunction0$mcJ$sp.java:23)
	at scala.util.DynamicVariable.withValue(DynamicVariable.scala:62)
	at org.apache.spark.scheduler.AsyncEventQueue.org$apache$spark$scheduler$AsyncEventQueue$$dispatch(AsyncEventQueue.scala:87)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.$anonfun$run$1(AsyncEventQueue.scala:83)
	at org.apache.spark.util.Utils$.tryOrStopSparkContext(Utils.scala:1302)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.run(AsyncEventQueue.scala:83)
19/05/23 10:05:15 ERROR Utils: throw uncaught fatal error in thread spark-listener-group-executorManagement
java.lang.InterruptedException
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(AbstractQueuedSynchronizer.java:2056)
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2090)
	at java.base/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at org.apache.spark.scheduler.AsyncEventQueue.$anonfun$dispatch$1(AsyncEventQueue.scala:97)
	at scala.runtime.java8.JFunction0$mcJ$sp.apply(JFunction0$mcJ$sp.java:23)
	at scala.util.DynamicVariable.withValue(DynamicVariable.scala:62)
	at org.apache.spark.scheduler.AsyncEventQueue.org$apache$spark$scheduler$AsyncEventQueue$$dispatch(AsyncEventQueue.scala:87)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.$anonfun$run$1(AsyncEventQueue.scala:83)
	at org.apache.spark.util.Utils$.tryOrStopSparkContext(Utils.scala:1302)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.run(AsyncEventQueue.scala:83)
19/05/23 10:05:15 ERROR Utils: throw uncaught fatal error in thread spark-listener-group-appStatus
java.lang.InterruptedException
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(AbstractQueuedSynchronizer.java:2056)
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2090)
	at java.base/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at org.apache.spark.scheduler.AsyncEventQueue.$anonfun$dispatch$1(AsyncEventQueue.scala:97)
	at scala.runtime.java8.JFunction0$mcJ$sp.apply(JFunction0$mcJ$sp.java:23)
	at scala.util.DynamicVariable.withValue(DynamicVariable.scala:62)
	at org.apache.spark.scheduler.AsyncEventQueue.org$apache$spark$scheduler$AsyncEventQueue$$dispatch(AsyncEventQueue.scala:87)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.$anonfun$run$1(AsyncEventQueue.scala:83)
	at org.apache.spark.util.Utils$.tryOrStopSparkContext(Utils.scala:1302)
	at org.apache.spark.scheduler.AsyncEventQueue$$anon$2.run(AsyncEventQueue.scala:83)
19/05/23 10:05:15 INFO SparkContext: SparkContext already stopped.
19/05/23 10:05:15 INFO SparkUI: Stopped Spark web UI at http://192.168.0.110:4041
[success] Total time: 52 s, completed May 23, 2019, 10:05:15 AM
19/05/23 10:05:15 INFO DiskBlockManager: Shutdown hook called
19/05/23 10:05:15 INFO ShutdownHookManager: Shutdown hook called
19/05/23 10:05:15 INFO ShutdownHookManager: Deleting directory /tmp/spark-d0f8141d-9d13-45c9-b36c-c61b03755edd/userFiles-262e5486-7b4e-4839-a8a1-3c56eda9ee19
19/05/23 10:05:15 INFO ShutdownHookManager: Deleting directory /tmp/spark-d0f8141d-9d13-45c9-b36c-c61b03755edd


Отчоты.

$ ls -la
total 195112
drwxr-xr-x 1 mayton mayton      692 May 23 10:05 .
drwxrwxrwx 1 mayton mayton      106 May 23 10:04 ..
-rw-r--r-- 1 mayton mayton 15250705 May 23 10:05 part-00000
-rw-r--r-- 1 mayton mayton   119156 May 23 10:05 .part-00000.crc
-rw-r--r-- 1 mayton mayton 15254781 May 23 10:05 part-00001
-rw-r--r-- 1 mayton mayton   119188 May 23 10:05 .part-00001.crc
-rw-r--r-- 1 mayton mayton 15245033 May 23 10:05 part-00002
-rw-r--r-- 1 mayton mayton   119112 May 23 10:05 .part-00002.crc
-rw-r--r-- 1 mayton mayton 15253456 May 23 10:05 part-00003
-rw-r--r-- 1 mayton mayton   119176 May 23 10:05 .part-00003.crc
-rw-r--r-- 1 mayton mayton 15251017 May 23 10:05 part-00004
-rw-r--r-- 1 mayton mayton   119160 May 23 10:05 .part-00004.crc
-rw-r--r-- 1 mayton mayton 15239248 May 23 10:05 part-00005
-rw-r--r-- 1 mayton mayton   119068 May 23 10:05 .part-00005.crc
-rw-r--r-- 1 mayton mayton 15232831 May 23 10:05 part-00006
-rw-r--r-- 1 mayton mayton   119016 May 23 10:05 .part-00006.crc
-rw-r--r-- 1 mayton mayton 15239873 May 23 10:05 part-00007
-rw-r--r-- 1 mayton mayton   119072 May 23 10:05 .part-00007.crc
-rw-r--r-- 1 mayton mayton 15227945 May 23 10:05 part-00008
-rw-r--r-- 1 mayton mayton   118980 May 23 10:05 .part-00008.crc
-rw-r--r-- 1 mayton mayton 15251852 May 23 10:05 part-00009
-rw-r--r-- 1 mayton mayton   119164 May 23 10:05 .part-00009.crc
-rw-r--r-- 1 mayton mayton 15235567 May 23 10:05 part-00010
-rw-r--r-- 1 mayton mayton   119036 May 23 10:05 .part-00010.crc
-rw-r--r-- 1 mayton mayton 15240895 May 23 10:05 part-00011
-rw-r--r-- 1 mayton mayton   119080 May 23 10:05 .part-00011.crc
-rw-r--r-- 1 mayton mayton 15253430 May 23 10:05 part-00012
-rw-r--r-- 1 mayton mayton   119176 May 23 10:05 .part-00012.crc
-rw-r--r-- 1 mayton mayton        0 May 23 10:05 _SUCCESS
-rw-r--r-- 1 mayton mayton        8 May 23 10:05 ._SUCCESS.crc
23 май 19, 10:11    [21891562]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
Это ожидаемое поведение. Внутри спарк разбивает rdd\dataframe на партитишены и работает с ними параллельно, запись не исключение(на что собственно инамекает префикс part-). Сделано это потому что при типичном сценарии - эту папку будет вычитывать другая джоба и то что ваш файл разбит на партитишены позволит ускорить чтение. Забудьте про файлы с понятными именами типа report.txt, если вам гужен именно такой выход - придется делать это ручками, например так -

df.repartition(1)//соберет все в один партитишен).writeAsCsv

writeAsCsv = {
Hadoop Api to rename file
}
23 май 19, 11:22    [21891673]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Сорян. Настал рабочий день и я снова под Windows 10.

Поробую поднять в докере Hadoop-slave
https://hub.docker.com/r/anchorfree/hadoop-slave

Поскольку WinUtils - палёный софт буду ставить через внутренние процедуры. Это займет время.
23 май 19, 11:24    [21891680]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
забыл ник
Забудьте про файлы с понятными именами типа report.txt, если вам гужен именно такой выход - придется делать это ручками, например так -

df.repartition(1)//соберет все в один партитишен).writeAsCsv

writeAsCsv = {
Hadoop Api to rename file
}

ОК. Спасибо. Меня не пугают непонятные файлы. Просто хотел услышать от знатока Spark что это ожидаемое поведение.
23 май 19, 11:26    [21891683]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
Вообще крайне рекомендую ознакомиться с форматом parquet. У нас например по полиси все промежуточные операции только на нем, разрешается только либо спраовчники ккие вначале вычитывать как другие форматы(те что не подконтрольны нам) либо конечная запись - если какая тула ожидает в формате отличном от паркета. Производительность parquet на уровне
23 май 19, 11:34    [21891694]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Эта линка ? https://parquet.apache.org/
23 май 19, 11:47    [21891717]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
Да.
23 май 19, 11:57    [21891726]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
На проекте решили использовать ORC https://orc.apache.org/

Вернее ... заказчик решил.

Интересная штука.
30 июн 19, 21:27    [21917856]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
Sergunka
Member

Откуда:
Сообщений: 1843
mayton
Попробую через пару часиков под Ubuntu. Думаю взлетит все в шоколаде.


+1 Вот зачем парить мозги если есть Юбунту?
1 июл 19, 02:41    [21917878]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
Sergunka
Member

Откуда:
Сообщений: 1843
mayton
На проекте решили использовать ORC https://orc.apache.org/

Вернее ... заказчик решил.

Интересная штука.


Вы вообще где? А то уж больно продвинутый у вас заказчик
1 июл 19, 08:43    [21917905]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Для современной разработки это неуместный вопрос. Команда - распределённая.
Часть - в USA. Часть в Украине.
1 июл 19, 10:51    [21917967]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
мы orc не пробовали, но из того что я читал, практически одно и тоже что и паркет. если структура обьектов для датафрейма вложенная или древовидная то лучше паркет, если плоская то orc, по производительности вроде почти одно и тоже
1 июл 19, 11:45    [21918003]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
С точки зрения использования ОРК будет попроще. И авторский сайт очень быстро позволяет
"войти" в использование. А паркет у меня за 1 час не взлетел. Неосилил я его принципы. По голому
API-же трудно понять юзкейс.
1 июл 19, 11:48    [21918009]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
в смысле попроще? 99% использования - прочитать датафрейм записать датафрейм. о каких принципах речь, удивляешь честно говоря
1 июл 19, 11:50    [21918013]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Сколько строк тебе понадобиться чтобы на паркете описать например схему в 3 колонки
типа строка, число и сумма. И сохранить это всё в файлик. На ОРК-е - штук 20 строк.
1 июл 19, 11:58    [21918022]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
Может я конечно чего не понимаю, но вот рабочий код

case class QhrExclusion(DESIGNATED_MARKET_AREA_ID: Int, INTAB_START_DATETIME: Timestamp, INTAB_END_DATETIME: Timestamp)

val df = spark.read.schema(Encoders.product[QhrExclusion].schema).parquet(exclusionsFileName).as[QhrExclusion]
spark.write.parquet("newname")
1 июл 19, 12:09    [21918031]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Можно я возьму твой стиль за образец?
Я буду всегда писать кусками Scala в форум Java.

За помощь - спасибо. Я попробую.
1 июл 19, 13:03    [21918077]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
mayton, ну я никогда не писал на спарке на Java. И не вижу особых причин если честно, там все straightforward, никаких нетривиальных конструкций практически не используется, а удобнее и короче на порядок
1 июл 19, 13:06    [21918082]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
Partisan M
Member

Откуда:
Сообщений: 1356
mayton,
не могу проаерить пример, так как даже в пьяном виде не буду обижать компьютер, устанавливая на него эту мерзость (Scala).

Но текст исключения странный, т.к. в Windows нет команды chmod:


java.io.IOException: (null) entry in command string: null chmod 0644 C:\db\maven\mvnidx_report.txt\_temporary\0\_temporary\attempt_20190522175850_0005_m_000000_0\part-00000


Вышеприведённое предложение использовать Git Bash (то есть, Bash из Git for Windows) сомнительно, так как при нём команда chmod будет действовать, но только внутри интерпретатора Bash.

То, что вкралась команда chmod, вызывает подрзрение, что установка Spark в Windows была в чём-то неправильная. Поискать хорошую инструкцию по установке.
1 июл 19, 13:20    [21918093]     Ответить | Цитировать Сообщить модератору
 Re: Искра под Виндой  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Partisan M, спасибо друг. На первый пост - забей. Пока не актуально. Спарк - под вопросом.
Тоесть мы еще не решили будет спарк или нет.
1 июл 19, 13:41    [21918115]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2      [все]
Все форумы / Java Ответить