上海图书馆云瀚(FOLIO)应用经验
2023年02期【行业交流】
作者:周纲、张春景、嵇婷、周江纯、张喆昱
本文节选编译自《International Journal of Librarianship》文章《FOLIO successfully went alive in China’s largest public library》
1 背景介绍(略)
2 上海图书馆选择FOLIO(略)
3 上海图书馆云瀚(FOLIO)项目的实施
2019年上海图书馆项目团队首先基于FOLIO原生技术框架开发一个新应用,来学习FOLIO开发技术和验证FOLIO功能性能。上海图书馆是研究型公共图书馆,拥有图书、报刊合订本、古籍、家谱、手稿、唱片、标准、年画、碑帖等多种收藏,上海图书馆希望对这些收藏进行资产管理。上海图书馆FOLIO项目团队评估FOLIO原生技术框架后,于2019年决定基于FOLIO Daisy版本开发馆藏管理应用。经过一年多的开发和实施,馆藏管理应用作为上海图书馆第一个上线的FOLIO模块于2020年9月上线。馆藏管理应用实现了对上海图书馆实体文献从新书验收和登记、移动、剔旧的全生命周期的精细化管理,优化和重构了相关业务流程。馆员可以实时追踪文献位置、状态的变化过程,让图书馆资产管理有据可查。馆藏管理应用目前管理文献1000多万册(件),2022年度验收92万册次、出入库45万册次。通过馆藏管理应用项目的尝试,上海图书馆FOLIO项目团队基本掌握FOLIO技术体系和开发模式,为后续其他模块的开发和实施打下了坚实的基础。
2020年上海图书馆组建FOLIO项目相关小组,例如项目管理组、元数据管理组、数据迁移组、流通应用开发组、用户应用开发组、VuFind应用开发组、运维组,投入到流通和发现的开发实施。上海图书馆FOLIO流通系统包含用户、馆藏、借书、还书、费用、预约等应用;VuFind作为纸电合一检索的统一发现入口。上海图书馆项目团队完善了FOLIO流通和VuFind的功能和性能、增强本地化支持,例如(1)实现全部SIP2消息、兼容Horizon图书馆集成管理系统的SIP2消息、支持500台以上自助借还设备并发访问(2)Marc导入、Inventory、VuFind等全面支持CNMARC(3)支持联盟模式的流通(4)VuFind支持纸电合一检索、本地化的分面查询和书封、按照总分馆显示馆藏(5)支持一个读者多张读者卡、对接图书馆现有OAuth认证服务。(6)流通的性能调优,在本地环境的性能测试中支持年1亿次的流通操作,可以满足“一卡通”图书馆联盟的流通规模。
因为“一卡通”联盟的庞大体系,上海图书馆项目团队2021年开始分阶段迁移“一卡通”成员馆到FOLIO流通系统。项目团队于2021年3月迁移所有流通参数、书目馆藏和借阅数据,并首先将上海图书馆的流通服务切换到FOLIO。根据不同的流通场景,2021年4月上海图书馆淮海路馆的参考外借(闭架文献流通)切换到FOLIO流通系统、上海图书馆门户网站的检索功能切换到VuFind,同年7月上海图书馆淮海路馆的普通外借(开架文献流通)切换到FOLIO流通系统。
FOLIO流通系统包含上海图书馆和“一卡通”联盟的近4000万馆藏,至2023年1月FOLIO流通外借最高16000余册次/日、VuFind最高检索280万次/月。FOLIO流通为上海图书馆东馆、淮海路馆的智慧服务场景提供了有力的支持。例如线下服务:24小时不停车还书亭、自动分拣系统、自助借还机、预约柜、智能书架、服务机器人、盘点机器人、手机借书,线上服务:馆内导航、网借、索书。FOLIO流通系统除了为上海图书馆所有持证读者服务以外,后续还将为上海市“一卡通”图书馆联盟的所有成员馆提供流通服务。目前FOLIO流通系统和Horizon图书馆集成管理系统之间保持流通数据的双向同步,“一卡通”联盟成员馆迁移前仍使用Horizon图书馆集成管理系统,直至全部成员馆切换到FOLIO。
2022年9月,随着上海图书馆东馆的建成正式开放,上海图书馆同步上线了全预约、空间管理、网借、索书、导航导览和机器人等智慧服务模块。和已经上线的馆藏管理和流通一样,这些模块分别由不同的开发团队进行开发,在开发时基于统一的FOLIO(云瀚)技术底座,通过微服务网关与统一的业务后台进行交互。上海图书馆FOLIO(云瀚)平台采用自托管模式、部署在本地的虚拟机集群,采用容器化运行。为保证上海图书馆FOLIO(云瀚)平台和应用的可观测性,项目团队构建了Prometheus监控和ELK日志等观测手段,Prometheus拉取FOLIO微服务网关OKAPI和操作系统、其他软件的指标,通过Grafana展现系统运行健康状态,出现异常后通过企业微信及时通知运维团队。
后续上海图书馆及其开发团队将继续推进智慧图书馆相关模块的开发工作,计划于2023年陆续上线采访、电子资源管理、编目、馆际互借、信息加工、数据中台和智慧情报等业务模块。
4 FOLIO中国社区——云瀚的组建
为了推动各级各类图书馆对基于FOLIO平台的应用与开发,促进国内图书馆向下一代微服务架构的开放的图书馆服务平台过渡,加速智慧图书馆应用生态建设,上海图书馆联合上海交通大学图书馆和江苏嘉图网络科技股份有限公司于2021年7月组建成立了智慧图书馆技术应用联盟(即云瀚联盟,云瀚是 FOLIO 的中国化),也就是FOLIO中国社区。云瀚联盟主要由联盟专家委员会、应用社区、开发社区和联盟秘书处组成。一年多来,云瀚联盟蓬勃发展,取得了丰硕的成果。联盟发布了云瀚logo,明确了治理模式,制定了云瀚产品技术与路线规划,发布了云瀚DEMO,着手云瀚产品核心套件的开发,并每月推出《智慧图书馆技术应用讲座》和《智慧图书馆技术应用动态》,影响力不断提升。目前,云瀚联盟已经有18家图书馆和18家公司加入社区,并汇聚了一大批具有远见卓识的专家加入联盟。除了在上海图书馆成功实施云瀚(FOLIO)以外,联盟成员常熟市图书馆也于2022年成功上线FOLIO平台。
云瀚联盟在国际社区的影响力也日益扩大。2022年7月15日,联盟召开了“新时代,新势力–2022世界开放图书馆联盟亚太会议暨中国云瀚社区年会”。国内外的多名专家和学者在会上分享研究成果和实践案例,总计有2200余人参加了本次会议。会议的召开促进了国内外的相互交流,进一步宣传了FOLIO和云瀚联盟,为FOLIO在国内外的进一步实施和应用打下了基础。2022年8月31日在德国汉堡召开的2022世界开放图书馆基金会会议(会议简称WOLFcon)上,WOLFcon组委会为云瀚联盟代表安排了专场会议。云瀚联盟产品经理刘铁威、上海图书馆工程师周纲、江苏嘉图网络科技股份有限公司的周磊和江沙通过在线会议的方式介绍了中国云瀚社区的进展以及上海图书馆云瀚平台的应用实践。会议吸引了在德国汉堡参会的专家以及网上来自世界各地同行的积极参与,开放图书馆基金会主席汤姆.克莱默和FOLIO国际社区理事会成员保拉.萨伦格出席了会议。本次会议的召开引起了国际社会对云瀚社区的高度关注,应FOLIO国际社区产品理事会邀请,云瀚社区代表与FOLIO国际社区成员于2022年10月20日在FOLIO国际社区产品理事会会议上进行了中国经验交流与分享。双方就上海图书馆云瀚(FOLIO)平台中的导航模块、智能书架、机器人服务、全预约系统、系统开发文档、云瀚API层和应用市场等问题进行了热烈的讨论。
5 经验和教训
作为一家拥有巨大馆藏和几百万用户,又兼顾科研和公共服务两个主要功能的超大型图书馆,其流通量之巨大,书目数据之丰富以及系统需求之复杂可想而知。上海图书馆团队在进行系统迁移之前和之后都做了许多考量,以应对突发问题的出现。以下是上海图书馆团队实施FOLIO(云瀚)过程中的一些经验,希望能对国内外同行有所启发和思考。
实践表明图书馆参与项目的重要性。上海图书馆全程参与FOLIO全过程的调研、开发、测试、培训和上线,由此上海图书馆全面了解FOLIO架构和模式的特点,深入体会FOLIO解决方案的开放性、灵活性。根据上海图书馆东馆不同的业务场景和FOLIO原生应用的功能,上海图书馆采取不同的应用开发方式:尽量使用原生应用功能;在原生应用基础上扩展部分本地化功能;开发新应用满足本地化新服务。另外,上海图书馆云瀚FOLIO应用有多家开发商开发,需要上海图书馆协同项目进度、确认应用边界。
FOLIO的核心在于社区,上海图书馆积极参与国际社区和中国社区。社区是图书馆、开发商、集成商的多方的交流协作的平台,中国社区更集合了众多中国的图书馆和开发商。上海图书馆从社区受益匪浅,通过社区的开放会议、定期讲座、新闻通讯、特别兴趣组,上海图书馆了解了FOLIO最新进展和本土化经验,并应用到上海图书馆云瀚项目。上海图书馆联合社区成员整理中国化应用的需求、提出中国社区对于FOLIO技术架构的建设性建议。
上海图书馆在项目中增加了部分新应用,并注意到FOLIO版本升级后规模不断扩大,上海图书馆希望探索扩展机制保证云瀚项目的延续性。(1)未来图书馆需要更多应用,但是云瀚项目不可能无限扩大。国际社区有最小化平台、核心应用等方案。中国社区建议“平台+应用+应用商店”的思路,希望FOLIO社区更多关注平台和核心应用、共用组件;其他开发商和个人开发的应用作为非核心应用,由应用商店管理。(2)云瀚目前是社区管理的应用开发模式,没有考虑其他开发商在社区之外开发“兼容”云瀚的应用,缺少类似智能手机应用生态的一系列规范。上海图书馆和中国社区希望FOLIO国际社区讨论和制定应用开发规范、数据规范、接口规范、部署规范等,为开发商明确云瀚开发和运维标准。
充分的培训和测试可以降低项目实施风险。云瀚已有比较完整的文档和wiki,为了馆员尽快熟悉流通操作,上海图书馆准备了培训文档、培训视频、简明操作手册,安排多次线上、现场培训。FOLIO流通上线前的公测让上海图书馆的读者服务部门、系统网络部门联合审视FOLIO功能和图书馆实际服务场景的差距,及时完善业务流程和调整FOLIO功能,让FOLIO在有限时间内贴合图书馆业务需要。
可靠的运维是平台正常运行的重要保障。上海图书馆正在完善运维团队的职责、服务级别协议,馆员可以通过即时通讯工具和热线电话报告故障,运维团队结合监控系统等较快定位故障和解决问题,目前运维团队基本满足上海图书馆的7*12小时的技术服务。
特定条件下的双系统流通并行,对于特大型公共图书馆或联盟的迁移方式有一定借鉴意义。上海图书馆采用双系统流通并行方案,应对“一卡通”联盟的成员馆分阶段切换,虽然增加了开发和维护工作,但降低了项目实施风险。
上海图书馆云瀚项目的数据迁移面临了巨大挑战。元数据管理组、数据迁移组评估数据质量后,发现Horizon图书馆集成管理系统的数据量庞大、部分早期的数据质量较差、联盟馆的错误数据较多。数据迁移组和流通开发组合作进行数据分析、清洗、转换、导入、转换规则和参数调整等工作,总共进行了5次测试迁移来解决数据质量问题、估算数据迁移的时间,最后的正式数据迁移过程持续1周左右时间。即使各方紧密协作,书目、馆藏、流通等数据仍有极少量错误,FOLIO流通上线后遇到错误数据后部分功能无法工作。为此上海图书馆运维团队梳理错误类型、提高技术服务质量,降低错误数据对于流通服务的影响。
5 结论和展望
作为首家在中国上线云瀚(FOLIO)平台的超大型科研公共图书馆,虽然上线的过程是曲折的,但从目前的实施状况和服务效果来看,云瀚在上海图书馆的实施和应用是成功的。云瀚在上海图书馆的成功上线表明FOLIO平台能适应中国图书馆和图书馆联盟,云瀚社区的壮大表明了中国图书馆和开发商对于云瀚开放合作理念的认同。
云瀚虽初启征程,未来还将面临诸多挑战。上海图书馆和云瀚联盟除了组织和协调各成员单位为“一卡通”图书馆联盟应用云瀚平台做好准备和各项实施工作之外,即将推出云瀚产品核心套件供国内外同行免费试用和体验。云瀚联盟还在积极规划云瀚产品路线图,推进和研究关于平台的各项开发规范和接口规范,在时机成熟时将会发布一系列的标准规范白皮书和操作指南。为了充分调动社区成员的积极性和主动性,云瀚联盟还将不断优化组织和协作方式,探索一种去中心化的自治形式,希望对社区的治理、激励和决策产生积极的影响。最后,云瀚联盟诚邀国内外图书馆同行加强沟通和交流,一起探讨策略、分享经验、协同合作、突破创新,携手共创开放的图书馆服务平台的美好未来。