初次接触
第一次看到“个人数据库”这个词是在松本行弘的《松本行弘的程序世界》里。大致意思就是随着硬盘的价格/容量不断降低,在未来,个人可以拥有大量资料,这时就需要“个人数据”来组织这些资料。
看看现在的情况确实如此,现在的个人PC硬盘1TB是很正常的事。更不要说网上云盘动辄几十T。
什么是数据库
数据库简单说就是存储数据的仓库,但是不同的存储检索方式对用户来说使用难易程度相差就有天壤之别。
比如,想要找某本书。书很少的时候可以从头到尾一本一本的找:书稍微多点可以对书分类,先确定要找的书在哪一类里,然后再在类里一本一本的找。如果书海量了,那么这些方法就不太现实了。这时候就一个高级数据库就可以解决这个问题,直接在网上查找想要找的书。由于书的是实物,最后还是要人去书架上按编号查找。如果是电子档案,就可以立马呈现在眼前。
现在想想平时在电脑上查找文件是不是也是这样。比如我们要找某部电影,首先我们要确定在哪个盘,在哪个文件夹。这些都基于你对文件有很好的分类,不知道你们什么情况,反正我的分类很乱。如果我是个“数据库”,肯定没人花钱买。
这还只是查找电影,如果要查某个ppt,查某个word,某个项目的code。。。
可能有人会说,无意义的东西就不要存在电脑上了。比如我,电影下下来看完就删了,反正在网上还找得到。但是未来信息只会增多不会减少。
个人数据库
以上原始的分类查找方法,准确的说是二叉树查找,或者说过程化查找。即你需要把查找过程的每一步都描述出来,第一步确定在哪个盘,第二部确定在哪个文件夹。。。
而非过程化查找,也叫声明式查找语言,就是你直接描述你想要的东西。比如,我想要《高等数学》这本书,然后会返回一系列满足条件的书,这时候再确定出版社(同济出版)。。。当描述越精确时,查找次数就越少。
这和现在的个人数据存储方式最大的不同在于,资料的组织由数据库来管理。说实话,除了开发人员,谁会去关心,一部电影是存在哪个盘,哪个block里。
就像我上面说的,反正电影在网上找得到,干嘛要存在自己电脑上。对于非机密的数据,你关心的只是如何获得数据,存在哪这种事根本不重要。在将来网速足够快的情况下,云盘的读取速度可以与本地磁盘想媲美。存在哪有区别吗?你与他人共享资料,还需要从你的电脑拷到U盘,再从U盘拷到他的电脑里吗?
总结
个人数据库解决的问题是信息组织和获取的方式,在未来,甚至个人就可以对自己数据进行挖掘。
iPad上有个FileMaker做得就很不错,这个目前主要面向的是小型团队。
http://www.filemaker.com/home/images/13_home/fm_platform.png
网友评论