运行jupyter发现显示NameError: name ‘sc‘ is not defined

在使用jupyter时遇到NameError,提示'sc'未定义。问题可能源于重新安装anaconda3、Scala和Spark后,缺少必要的配置或依赖。错误日志显示Hadoop的NN处于安全模式,资源不足。解决方案可能是手动关闭NN的安全模式,检查并恢复相关配置。
摘要由CSDN通过智能技术生成

如题,不明白为啥sc未定义,之前是可以的,我把原来的工程文件删掉了,又重装了anaconda3,Scala,spark,是不是我有啥重要的东西删了哇

 这个notebook server之前也没有这些东西

上面是之前的 

[I 03:24:59.558 NotebookApp] Kernel started: 0da65d79-01e6-4655-85dc-b5e013f1ab2a
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
23/05/11 03:25:01 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
23/05/11 03:25:02 WARN yarn.Client: Failed to cleanup staging dir hdfs://172.16.40.2:9000/user/root/.sparkStaging/application_1683459395548_0059
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.SafeModeException): Cannot delete /user/root/.sparkStaging/application_1683459395548_0059. Name node is in safe mode.
Resources are low on NN. Please add or free up more resources then turn off safe mode manually. NOTE:  If you turn off safe mode before adding resources, the NN will immediately return to safe mode. Use "hdfs dfsadmin -safemode leave" to turn safe mode off.
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkNameNodeSafeMode(FSNamesystem.java:1335)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.delete(FSNamesystem.java:3681)
        at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.delete(NameNodeRpcServer.java:953)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.delete(ClientNamenodeProtocolServerSideTranslatorPB.java:623)
        at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:616)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:982)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2217)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2213)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1754)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2213)

        at org.apache.hadoop.ipc.Client.call(Client.java:1475)
        at org.apache.hadoop.ipc.Client.call(Client.java:1412)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:229)
        at com.sun.proxy.$Proxy12.delete(Unknown Source)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.delete(ClientNamenodeProtocolTranslatorPB.java:540)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:191)
        at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
        at com.sun.proxy.$Proxy13.delete(Unknown Source)
        at org.apache.hadoop.hdfs.DFSClient.delete(DFSClient.java:2044)
        at org.apache.hadoop.hdfs.DistributedFileSystem$14.doCall(DistributedFileSystem.java:707)
        at org.apache.hadoop.hdfs.DistributedFileSystem$14.doCall(DistributedFileSystem.java:703)
        at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
        at org.apache.hadoop.hdfs.DistributedFileSystem.delete(DistributedFileSystem.java:714)
        at org.apache.spark.deploy.yarn.Client.org$apache$spark$deploy$yarn$Client$$cleanupStagingDirInternal$1(Client.scala:201)
        at org.apache.spark.deploy.yarn.Client.cleanupStagingDir(Client.scala:218)
        at org.apache.spark.deploy.yarn.Client.submitApplication(Client.scala:183)
        at org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.start(YarnClientSchedulerBackend.scala:56)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: NameError: name '' is not defined 的意思是“名称错误:未定义名称''”。这通常是因为在代码使用了未定义的变量或函数。需要检查代码是否有拼写错误或未声明的变量或函数。 ### 回答2: 在Python,变量名必须在使用之前先被定义。如果变量名有被定义或声明,那么当你在程序使用该变量时就会出现“nameerror:name '变量名' is not defined”的错误。 这个错误是Python的一种“异常”,通常在运行python程序过程出现。 这种错误通常会发生在程序使用未定义的变量或函数名称时。例如,如果你尝试在程序使用一个未定义的变量名,那么Python就会报告“nameerror”错误。同样,如果你在程序调用一个未定义的函数,也会收到类似的错误信息。 为了解决这个错误,你需要先确保你已经正确地定义了程序所使用的所有变量名称和函数名称。此外,你还应该检查自己的拼写是否正确,以确保所有名称都正确地拼写。 在更复杂的程序,也可能会发生变量名称与其他变量名称之间的冲突或覆盖,从而导致名称错误。在这种情况下,你需要更加仔细地检查代码,并确保你的变量和函数名称都是唯一的。 总的来说,当你在程序使用未定义的变量名称或函数名称时,Python就会报告“nameerror”错误。要解决这个问题,需要先检查所有名称是否正确地定义和拼写,以确保程序可以正确运行。 ### 回答3: 这个错误提示表明被调用的变量或函数有被定义或者有赋值。这种错误通常出现在Python代码运行时,因为Python在解释代码时会逐行读取并执行代码。 在Python,变量必须先被定义和赋值后才能被调用。如果变量有被定义或者有被正确赋值,调用变量的时候就会引发“nameerror: name 'xxx' is not defined”的错误,其xxx表示变量的名称。 除了变量,函数也同样会出现这个错误。如果调用函数时函数有被定义或者定义不正确,Python同样会抛出这个错误。 为了避免这种错误的出现,开发者可以遵循以下几个建议: 1. 在使用变量之前,先声明该变量,同时进行正确的赋值,确保变量被正确地定义。 2. 在调用函数之前,先确保该函数被正确定义定义的函数名和调用函数时使用的名称一致。 3. 检查变量名和函数名称,确保有拼写错误。 最后,如果出现了“nameerror: name 'XXX' is not defined”的错误,可以在代码添加print语句或者使用IDE调试工具排查问题,找到未定义或赋值不正确的变量或函数,并及时进行修改。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值