探索DataSpread:一款创新的电子表格数据库混合系统
简介
DataSpread是一个革命性的电子表格-数据库混合系统,它融合了电子表格的直观易用性和数据库的强大功能。这个项目由美国国家科学基金会资助(编号1633755)。它的设计理念和优化策略在相关论文中有所描述,你可以通过项目链接进一步了解。
DataSpread的主要创新之处包括:
- 灵活的混合数据模型,将电子表格数据在数据库中表示
- 推测性获取,在用户当前视图之外预加载更多数据
- 异步公式计算,避免用户等待长时间运行的操作
- 导航面板,帮助用户探索和聚合电子表格中的详细信息,以满足需求时的即时查看。
完整文档
想要了解更多关于API、开发环境设置等信息,请访问项目Wiki。
版本
当前版本为0.5.1。
快速上手
你可以直接通过我们云托管的站点(暂时离线)体验DataSpread。
DataSpread可以本地部署,推荐使用Docker,也可以通过Apache Tomcat。创建新书,可导入CSV文件或使用提供的sample.csv
。
Docker部署方法
需要的软件
- Docker >= 1.13.0
在本地启动DataSpread
- 克隆DataSpread仓库并进入目录。
- 安装Docker。
- 开始应用,它应该可以通过http://localhost:8080/访问。按
CTRL+C
停止应用。docker-compose up
检出更改
对代码进行的任何更改都可以通过重新构建应用来反映出来。
docker-compose up --build
如果遇到错误或需从头构建镜像,执行以下命令:
docker-compose down
docker-compose build --no-cache
docker-compose up
数据持久化
数据会自动保存在Docker卷中,即使关闭后也能保留。若要清除保存的数据,执行:
docker-compose down -v
更多信息
Docker使用/docker-compose.yml
启动应用程序。有关如何部署的更多信息,请查看/docker-compose.yml
,/Dockerfile
以及/build-db
和/build-web
目录中的文件。
Tomcat部署方法
如果你想在Tomcat上本地托管DataSpread,可以选择使用预构建的WAR文件或自行构建WAR文件。
需要的软件
- Java平台(JDK)>= 8
- PostgreSQL >= 10.5
- PostgreSQL JDBC驱动= 42.1.4
- Apache Tomcat >= 8.5.4
- Apache Maven >= 3.5.0
- NodeJS >= 10.9
构建说明(生成WAR文件)
-
克隆DataSpread仓库,或者下载源码。
-
使用Maven构建
war
文件,输入以下命令。完成后,在webapp/target
下会出现DataSpread.war
。mvn clean install
在本地部署DataSpread
-
安装PostgreSQL数据库。对于Mac,可以使用Postgres.app快速设置。其他操作系统的安装指南见这里。
-
创建一个数据库,并为其分配一个具有访问权限的用户。记下数据库名称、用户名和密码。通常情况下,本地安装的PostgreSQL密码为空。
-
安装Apache Tomcat。安装指南见这里。记下Tomcat的安装目录,此目录在后续文档中称为
TOMCAT_HOME
。 -
更新Tomcat配置。修改
TOMCAT_HOME/conf/context.xml
文件尾部添加以下内容:<Resource name="jdbc/ibd" auth="Container" type="javax.sql.DataSource" driverClassName="org.postgresql.Driver" url="jdbc:postgresql://127.0.0.1:5432/<database_name>" username="<username>" password="<password>" maxTotal="20" maxIdle="10" maxWaitMillis="-1" defaultAutoCommit="false" accessToUnderlyingConnectionAllowed="true"/>
将
<database_name>
,<username>
和<password>
替换为你PostgreSQL数据库的名称、用户名和密码。 -
将
postgresql-42.1.4.jar
(在此处下载jdbc)复制到TOMCAT_HOME/lib
目录。必须是这个特定版本。 -
在Tomcat中作为根应用程序部署WAR文件。这可以通过Tomcat Web界面完成,先取消
/
上的任何已部署的应用,然后部署WAR文件,上下文路径设为/
。手动操作,当应用未运行时删除TOMCAT_HOME/webapps/ROOT
,将WAR文件拷贝到webapps
目录并将其重命名为ROOT.war
。 -
现在你已经准备好运行程序,访问Tomcat安装的URL,通常是http://localhost:8080/。
贡献
要参与DataSpread的源代码工作,请遵循开发者设置指南。在提交pull请求之前,请阅读贡献指南。我们欢迎所有类型的贡献!
如有问题和反馈,请使用GitHub Issues。
许可
MIT