实验室服务器已完成 OpenAlex 数据集下载及转换,过程依据官方文档。本仓库包含基于 PySpark 的 OpenAlex 读取初始化过程,可方便基于该数据集进行实验。同时可以参考仓库内的 教程 notebook 进行基本学习。
参照 配置过程 进行。需要特别说明:由于原始数据集中所有实体(Works、Authors、Concepts、Institutions、Venues)的 id 均为完整 url,形如 http://openalex.org/works/W10000001
,会大大降低连接、聚合运算、匹配的计算速度,因此在维护中将其转换为纯数字 id,形如 10000001
。如需取回原始 id,可以参考各实体对应的 ids 表 OpenAlex
字段。
部分字段实际为序列,但转换时以字符串储存在文件中,因此对这些字段追加序列字段便于操作,追加的字段数据类型为 pySpark.sql.types.ArrayType
:
Authors
表display_name_alternatives
追加display_name_alternatives_array
字段。ConceptsIds
表umls_aui
追加umls_aui_array
字段。ConceptsIds
表umls_cui
追加umls_cui_array
字段。Institutions
表display_name_acronyms
追加display_name_acronyms_array
字段。Institutions
表display_name_alternatives
追加display_name_alternatives_array
字段。Venues
表issn
追加issn_array
字段。VenuesIds
表issn
追加issn_array
字段。
本仓库已设置为 Github 模板仓库,可以基于 demo 创建仓库。步骤:
- 点击页面上方
Use This Template
,创建自己的仓库; - 使用
git clone
命令将自己的仓库克隆到到服务器上自己的文件夹内; - 参照 教程 notebook,在服务器上创建自己的 notebook,进行自己的实验。注意关键代码块:
%run spark_openalex_init.py --appname=UserName_OpenAlex