arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2003.03845cs.PLcs.DL
收藏

策展数据库的跨层Web编程:案例研究

Cross-tier web programming for curated databases: A case study

Simon Fowler, Simon D. Harding, Joanna Sharman, James Cheney

摘要:

精选的数据库已成为跨科学学科的重要信息来源,并且由于专家的手工工作,通常成为重要的参考资料。来源跟踪、归档和数据引用等功能被广泛认为是策展数据库的重要功能,但实现这些功能具有挑战性,小型数据库项目通常缺乏资源。科学数据库应用程序不仅仅是数据库本身,还包括用于显示数据的Web应用程序的生态系统,以及支持数据整理的应用程序。支持高级策展功能需要更改所有这些组件,目前还没有办法以可重用的方式提供这些功能。已经提出了跨层程序设计语言来简化web应用程序的创建,其中开发人员用单个统一的语言编写应用程序。因此,数据库查询和更新可以用与程序其余部分相同的语言编写,至少在原则上,应该可以通过程序转换提供可重用的策展功能。作为第一步,重要的是要建立现实的策展数据库可以实现在一个跨层的程序设计语言。在本文中,我们描述了这样一个案例研究:在链接程序设计语言中重新实现真实世界科学数据库的Web前端,IUPHAR/BPS药理学指南(GtoDb)。我们展示了语言集成查询等功能如何简化开发过程,并排除常见错误。我们表明,链接实现执行更少的数据库查询,而处理查询所需的时间与Java版本相当。虽然与Java相比,使用Links有一些开销,因为它相对不成熟,但Links版本作为概念验证案例研究是可行的。

英文摘要:

Curated databases have become important sources of information across scientific disciplines, and due to the manual work of experts, often become important reference works. Features such as provenance tracking, archiving, and data citation are widely regarded as important features for curated databases, but implementing such features is challenging, and small database projects often lack the resources to do so. A scientific database application is not just the database itself, but also an ecosystem of web applications to display the data, and applications supporting data curation. Supporting advanced curation features requires changing all of these components, and there is currently no way to provide such capabilities in a reusable way. Cross-tier programming languages have been proposed to simplify the creation of web applications, where developers write an application in a single, uniform language. Consequently, database queries and updates can be written in the same language as the rest of the program, and at least in principle, it should be possible to provide curation features reusably via program transformations. As a first step, it is important to establish that realistic curated databases can be implemented in a cross-tier programming language. In this paper, we describe such a case study: reimplementing the web frontend of a real-world scientific database, the IUPHAR/BPS Guide to Pharmacology (GtoPdb), in the Links programming language. We show how features such as language-integrated query simplify the development process, and rule out common errors. We show that the Links implementation performs fewer database queries, while the time needed to handle the queries is comparable to the Java version. While there is some overhead to using Links because of its comparative immaturity compared to Java, the Links version is viable as a proof-of-concept case study.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑