介绍
之前花了些时间探讨用D3.js做医疗数据的可视化,所用的数据来自国家卫生和计划生育委员会统计信息中心网站。简便起见,相关的数据做成JSON格式,并存在了本地JSON文件中。对于短期试验性开发,对数据的存储并没有太多要求。但随着时间流逝,我也想能用比较“正式”的方法来存储相应的数据,也就是采用数据库。
当前的数据库技术可谓流派众多,经典的Relational Database依旧占据了大半江山,而NoSQLDatabase也不逞多让,各种新技术层出不穷。孰优孰劣,得看具体的项目需求。在本系列试验中,对数据存储的要求主要有三点:
1. 能从客户端直接访问数据。为了让工作重心在数据及其可视化上,需要尽量弱化甚至取消服务器端的业务逻辑。比如现在的可视化实现通过直接在浏览器中访问HTML网页得到。而预期数据的获取也直接在HTML+JavaScript(D3.js)中完成。
2. 数据格式尽量接近客户端做可视化时需要的格式。这样就可以尽量减少花在格式转换上的时间精力。
3. 简单易学。常用功能上手快。毕竟是一个试验性的项目,尽量提高效率吧。
综合考虑后,我选择了ApacheCouchDB:直接提供RESTful API来访问和操作数据库,直接存储JSON格式,安装简单、容易上手。
安装和运行CouchDB
Apache CouchDB可以直接从官网上下载安装包安装。安装完后直接运行,就可以打开它自带的控制台Futon。在上面可以很容易地创建Databases、Documents以及Fields。也可以通过cURL用命令行的方式操作,看个人习惯。
在这儿我创建了一个Database叫healthdata,在里面创建了一个Document,然后把原来JSON文件中的内容都放