首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用开放源码的webapp分发嵌入式数据库

用开放源码的webapp分发嵌入式数据库
EN

Software Recommendation用户
提问于 2018-10-28 13:16:47
回答 2查看 66关注 0票数 3

我希望建立一个开源网站项目,将需要一个小型数据库后端。我倾向于使用SQLite,因为该网站将是简单,低流量,和用户的网站将只阅读。只有网站管理员将更新。

不过,我想知道,在SQLite上共享GitHub文件,这是最好的方式吗?很难轻松地查看数据。是否有更好的开源项目数据存储解决方案?最好是将数据以第二种格式(如CSV )包含在数据库中吗?

EN

回答 2

Software Recommendation用户

回答已采纳

发布于 2018-10-30 05:04:10

几个开放源码的webapp (即Al新鲜to和Liferay)使用webapp分发少量数据,以便于开始使用。初学者只需运行start脚本,webapp就可以使用示例数据启动并运行。

他们是这样做的:

  1. 编写创建数据的标准SQL脚本。
  2. 编写一些代码,创建一个空的HyperSQL,并从步骤1将SQL加载到其中。
  3. 将SQL脚本和代码提交到GitHub中。
  4. 当网站管理员下载并运行该应用程序时,它将第一次创建数据库。然后,网站管理员可以添加更多数据。

请注意,HyperSQL数据库有一个内存缓存,因此每次读取并不意味着磁盘读取访问。不过,每次写入都意味着磁盘写入访问。

票数 1
EN

Software Recommendation用户

发布于 2018-10-29 19:06:33

你的问题还不清楚,但你的目标似乎是在访问数据库的应用程序源代码的同时,分发一个相对新鲜的数据库数据副本。但你不能解释你的动机或目标。我想你要么希望机器读取这些数据,要么希望人们读取这些数据。

无论哪种方式,都可以考虑将数据与源代码分开分发。把它们结合在一起是不寻常的,对我来说似乎很困惑。

Machine-readable

如果您的目标是方便程序员使用源代码为自己构建和部署数据库实例,那么您应该包括数据库的数据文件。

你可以赢SQLite。但是请注意,SQLite确实是相当“小”的,意味着更多的是写文件的更好的选择,它并不意味着是一个严肃的数据库。您还没有说明数据的大小和形状,所以我不能建议SQLite是否适合您的需要。

您可能会考虑的一个更严肃的数据库是H2数据库引擎H2数据库引擎。它是用JavaJava编写的,因此需要一个JVM。H2将数据存储到一个您可以轻松复制的文件中。H2可以在应用程序中运行嵌入式程序,也可以作为数据库服务器单独运行。

Human-readable

如果您的目标只是让人们仔细阅读最近的数据副本,那么您需要将数据从数据库导出为人类可读的文本格式。

如果目标仅仅是仔细阅读,那么使用基本的HTML使用table标记写出网页。或许还有一点CSS。使用应用程序的编程语言生成这些文本文件。

如果希望用户使用电子表格中的打开等数据,请使用通用格式(如制表符分隔符逗号分隔值(CSV) )。您可能需要使用一个库来帮助编写这样的文件,比如 (它也会编写TSV)。

您可能希望为数据库中的每个表写出一个文件。注意web浏览器和电子表格应用程序中的内存限制;您可能需要将一个非常大的表分解成多个文件。

票数 0
EN
页面原文内容由Software Recommendation提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwarerecs.stackexchange.com/questions/52913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档