- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 JupyterLab 打开我的 EMR 集群后。我无法使用 nltk.download()
下载额外的语料库。
代码
nltk.download('wordnet')
错误
I/O operation on closed file
Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/nltk/downloader.py", line 817, in download
show('Downloading collection %r' % msg.collection.id)
File "/usr/local/lib/python3.6/site-packages/nltk/downloader.py", line 783, in show
subsequent_indent=prefix + prefix2 + ' ' * 4,
File "/tmp/4461650941863117011", line 534, in write
super(UnicodeDecodingStringIO, self).write(s)
ValueError: I/O operation on closed file
这是在使用 sc.list_packages()
确认安装了 nltk 之后。
Package Version
-------------------------- -------
...
nltk 3.4.5
...
并使用 import nltk
导入 nltk。
感觉这个问题是因为我对 EMR 的设置方式缺乏了解。
有什么我应该尝试调试的吗?
我已经尝试将它安装在引导脚本中,该脚本可以正确安装。
pip install nltk
python -m nltk.downloader wordnet
但是我在尝试使用它时仍然遇到这个错误。
An error occurred while calling o166.showString.
: org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 2.0 failed 4 times, most recent failure: Lost task 0.3 in stage 2.0 (TID 7, ip-172-31-1-163.ca-central-1.compute.internal, executor 3): org.apache.spark.api.python.PythonException: Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/nltk/corpus/util.py", line 86, in __load
root = nltk.data.find('{}/{}'.format(self.subdir, zip_name))
File "/usr/local/lib/python3.6/site-packages/nltk/data.py", line 701, in find
raise LookupError(resource_not_found)
LookupError:
**********************************************************************
Resource wordnet not found.
Please use the NLTK Downloader to obtain the resource:
>>> import nltk
>>> nltk.download('wordnet')
For more information see: https://www.nltk.org/data.html
Attempted to load corpora/wordnet.zip/wordnet/
Searched in:
- '/home/nltk_data'
- '/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/virtualenv_application_1576604798325_0001_0/nltk_data'
- '/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/virtualenv_application_1576604798325_0001_0/share/nltk_data'
- '/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/virtualenv_application_1576604798325_0001_0/lib/nltk_data'
- '/usr/share/nltk_data'
- '/usr/local/share/nltk_data'
- '/usr/lib/nltk_data'
- '/usr/local/lib/nltk_data'
**********************************************************************
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/pyspark.zip/pyspark/worker.py", line 377, in main
process()
File "/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/pyspark.zip/pyspark/worker.py", line 372, in process
serializer.dump_stream(func(split_index, iterator), outfile)
File "/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/pyspark.zip/pyspark/serializers.py", line 345, in dump_stream
self.serializer.dump_stream(self._batched(iterator), stream)
File "/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/pyspark.zip/pyspark/serializers.py", line 141, in dump_stream
for obj in iterator:
File "/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/pyspark.zip/pyspark/serializers.py", line 334, in _batched
for item in iterator:
File "<string>", line 1, in <lambda>
File "/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/pyspark.zip/pyspark/worker.py", line 85, in <lambda>
return lambda *a: f(*a)
File "/mnt1/yarn/usercache/livy/appcache/application_1576604798325_0001/container_1576604798325_0001_01_000005/pyspark.zip/pyspark/util.py", line 113, in wrapper
return f(*args, **kwargs)
File "<stdin>", line 19, in <lambda>
File "<stdin>", line 19, in <listcomp>
File "/usr/local/lib/python3.6/site-packages/nltk/stem/wordnet.py", line 41, in lemmatize
lemmas = wordnet._morphy(word, pos)
File "/usr/local/lib/python3.6/site-packages/nltk/corpus/util.py", line 123, in __getattr__
self.__load()
File "/usr/local/lib/python3.6/site-packages/nltk/corpus/util.py", line 88, in __load
raise e
File "/usr/local/lib/python3.6/site-packages/nltk/corpus/util.py", line 83, in __load
root = nltk.data.find('{}/{}'.format(self.subdir, self.__name))
File "/usr/local/lib/python3.6/site-packages/nltk/data.py", line 701, in find
raise LookupError(resource_not_found)
LookupError:
我找到了 wordnet
被 shell 脚本下载到的目录,并通过 ssh 进入服务器确认它确实存在。
[nltk_data] Downloading package wordnet to /root/nltk_data...
所以在 jupyter 中我正在检查 nltk.data.path
['/var/lib/livy/nltk_data', '/tmp/1576616653412-0/nltk_data', '/tmp/1576616653412-0/share/nltk_data', '/tmp/1576616653412-0/lib/nltk_data', '/usr/share/nltk_data', '/usr/local/share/nltk_data', '/usr/lib/nltk_data', '/usr/local/lib/nltk_data']
并附加我的新路径。
nltk.data.path.append('/root/nltk_data')
nltk.data.path
我们可以看到它添加了。
['/var/lib/livy/nltk_data', '/tmp/1576616653412-0/nltk_data', '/tmp/1576616653412-0/share/nltk_data', '/tmp/1576616653412-0/lib/nltk_data', '/usr/share/nltk_data', '/usr/local/share/nltk_data', '/usr/lib/nltk_data', '/usr/local/lib/nltk_data', '/root/nltk_data']
但当我尝试调用使用该语料库的函数时,它仍然没有被搜索到。
Resource wordnet not found.
Please use the NLTK Downloader to obtain the resource:
>>> import nltk
>>> nltk.download('wordnet')
For more information see: https://www.nltk.org/data.html
Attempted to load corpora/wordnet.zip/wordnet/
Searched in:
- '/home/nltk_data'
- '/mnt1/yarn/usercache/livy/appcache/application_1576615748346_0001/container_1576615748346_0001_01_000006/virtualenv_application_1576615748346_0001_0/nltk_data'
- '/mnt1/yarn/usercache/livy/appcache/application_1576615748346_0001/container_1576615748346_0001_01_000006/virtualenv_application_1576615748346_0001_0/share/nltk_data'
- '/mnt1/yarn/usercache/livy/appcache/application_1576615748346_0001/container_1576615748346_0001_01_000006/virtualenv_application_1576615748346_0001_0/lib/nltk_data'
- '/usr/share/nltk_data'
- '/usr/local/share/nltk_data'
- '/usr/lib/nltk_data'
- '/usr/local/lib/nltk_data'
这里没有引用/root/nltk_data
最佳答案
鉴于无法更改用于加载 wordnet
的路径(更改 nltk.data.path
并未更改 nltk 查找文件的位置)。
我必须更改它从启动脚本下载到的目录,以匹配 nltk 默认的位置。
启动脚本
sudo pip install nltk
sudo python -m nltk.downloader -d /home/nltk_data wordnet
关于python - 无法在 AWS EMR 上下载 nltk 语料库,对已关闭文件进行 I/O 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59379230/
当我确定源数据在 S3 中并且处理的结果将存储在 S3 中时,是否可以使用主节点和一组任务(从属)节点(没有核心节点)构建 AWS EMR。 基本上,问题是“当 EMR 将在 S3 中处理数据时,需要
我正在使用 aws .net sdk 向 EMR 运行 s3distcp 作业,以使用 --groupBy arg 连接文件夹中的所有文件。但是无论我尝试过什么“groupBy”arg,它总是失败,或
我刚刚建立了一个内置 Spark、JupyterHub 等的 EMR 集群。我可以通过 http://master_hostname:9443/hub/login 访问 Jupyter Noteboo
我正在 S3 上运行一个超过 500 个文档的示例 hadoop 作业,在本地运行时需要 <15 分钟才能完成。然而,当我尝试在 EMR 上运行相同的作业时,需要两个多小时,但仍然没有完成缩减步骤,因
是否可以将 Presto 解释器添加到 AWS EMR 4.3 上的 Zeppelin,如果可以,有人可以发布说明吗?我在 EMR 上运行 Presto-Sandbox 和 Zeppelin-Sand
AWS Stepfunctions 最近添加了 EMR 集成,这很酷,但我找不到将变量从步骤函数传递到 addstep 参数的方法。例如,我想将“$.dayid”变量传递给“Parameters”>“
例如,我有两个Hive作业,其中一个作业的输出用作第二个作业的参数/变量。我可以在终端上成功运行以下命令,以在EMR集群的主节点上获得结果。 [hadoop@ip-10-6-131-223 ~]$ h
我有一个非常初学者的问题。我刚刚阅读了一些有关 Amazon EMR 的文档。在我注册之前,我只是想询问一下如何在其中使用 R。 我有一个 R 模块,它调用其他几个模块,然后,在它完成运行之前,将几个
我在从运行 Spark 的 AWS EMR 集群连接到另一个运行 presto 的 AWS EMR 集群时遇到问题。 用 python 编写的代码是: jdbcDF = spark.read \
我正在努力解决这个问题,但无法弄清楚为什么 我有一个要部署在 AWS 私有(private)子网中的 EMR 集群。 我检查了文档 here . 根据以上内容,我明白了以下几点: 一个。对于我的 EM
我有一个 EMR 集群 response = emr_client.run_job_flow( Name="Test dashboards", ReleaseLabel='emr-6.
我在使用 hadoop 时使用了 MultipleInputs 。因为我有多个映射器分配给不同的输入。我想知道 EMR 是否也支持它。 在hadoop中我是这样操作的。这些是我的不同文件的映射器。在这
我是 PySpark 和 EMR 的新手。 我试图通过 Jupyter notebook 访问在 EMR 集群上运行的 Spark,但遇到了错误。 我正在使用以下代码生成 SparkSession:
我正在尝试将我的 Glue 目录连接到 EMR 中的 Presto 和 Hive。在 presto-cli 中运行查询时,我收到 NullPointerException 而相同的查询在 hive-c
我正在使用 MRJob 在 Amazon 的 EMR 上运行一个迭代的 hadoop 程序。 当我不使用“--pool-emr-job-flows”选项时,一切正常(但速度很慢)。当我使用这个选项时,
我有一个 DynamoDB 表,我需要连接到 EMR Spark SQL 以在该表上运行查询。我得到了带有发布标签 emr-4.6.0 和 Spark 1.6.1 的 EMR Spark Cluste
我的团队在 AWS 中工作,我们有 python 脚本,可以将文件从 S3 存储桶移动到 EC2 实例。我想用我们正在使用的脚本作为序言,它在直接从 ec2 实例运行时有效,并且仅在作为 EMR 步骤
我有 Airflow 作业,它们在 EMR 集群上运行良好。我需要的是,假设我有 4 个 Airflow 作业需要 EMR 集群,假设 20 分钟才能完成任务。为什么我们不能在 DAG 运行时创建一个
我正在 AWS 中创建一个数据管道来运行 Pig 任务。但是我的 Pig 任务需要 EMR 中的附加文件。在创建集群之后和运行 pig tasked 之前,我如何告诉 Data Pipeline 将文
如何在 EMR 上设置 Spark Thrift 服务器?我正在尝试使用 Spark Thrift 服务器与 EMR 建立 JDBC/ODBC 连接。例如 直线> !connect jdbc:hive
我是一名优秀的程序员,十分优秀!