模式自由(Schema-free)和数据存储的非格式化趋势
最近遐想,数据存储的非格式化趋势。
格式化表格到自由的XML存储
数年以前,多家数据库厂商开始XML数据库存储。XML数据作为一种自描述的半结构化数据为Web的数据管理提供了新的数据模型,如果将XML标记数据放 入一定的结构中,对数据的检索、分析、更新和输出就能够在更加容易管理的、系统的和较为熟悉的环境下进行,因而我们将数据库技术应用于XML数据处理领 域,通过XML数据模型与数据库模型的映射来存储、提取、综合和分析XML文档的内容。这为数据库研究开拓了一个新的方向,将数据库技术的研究扩展到对 Web数据的管理。
模式自由(Schema-free)
模式自由(Schema-free),所谓“面向集合”(Collection-Oriented),意思是数据被分组存储在数据集中,被称为一个集合 (Collection)。每个集合在数据库中都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库(RDBMS)里的表 (Table),不同的是它不需要定义任何模式(Schema)。
模式自由(Schema-free),意味着对于存储在Mongodb数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构的文件存储在同一个数据库里。
存储在集合中的文档,被存储为“键-值”对的形式。键用于唯一标识一个文档,为字符串类型,而值则可以是各中复杂的文件类型。我们称这种存储形式为BSON(Binary Serialized dOcument Format)。
现在,一般设备的计算能力已经有了飞跃的提高,不再受限于使用严格格式化数据存取来提高效率。采用在线解析的方式(比如:XML,JSON)已经可以满足 人机交互,实现较好的用户体验。除了在嵌入式、处理流程极为固定的场景下,曾经定义一个按位(bit)存取的数据机构,采用二进制方式的高效数据存储的时 代,几乎一去不复返了。
闹钟和其它
最近,遇到的一个应用,开始扩展联想。
我们手机的“闹钟”基础功能,可以进行自由模式(Schema-Free)的扩展,基础的“格式化域”包括:+定义时间,+目标时间,+文字内容;进行动 态增删的内容(自由扩展域)包括:++执行地点,++附件,++同步至目标,++etc各种可扩展域。后续处理根据闹钟的数据记录提取“域”数据内容,分 支转向执行。
模式自由(Schema-free)和数据存储的非格式化趋势的更多相关文章
- 大数据时代的数据存储,非关系型数据库MongoDB
在过去的很长一段时间中,关系型数据库(Relational Database Management System)一直是最主流的数据库解决方案,他运用真实世界中事物与关系来解释数据库中抽象的数据架构. ...
- 大数据时代的数据存储,非关系型数据库MongoDB(一)
原文地址:http://www.cnblogs.com/mokafamily/p/4076954.html 爆炸式发展的NoSQL技术 在过去的很长一段时间中,关系型数据库(Relational Da ...
- Python3爬虫(十) 数据存储之非关系型数据库MongoDB
Infi-chu: http://www.cnblogs.com/Infi-chu/ 一.非关系型数据库NoSQL全程是Not Only SQL,非关系型数据库.NoSQL是基于键值对的,不需要经过S ...
- 数据存储之非关系型数据库存储----MongoDB存储
MongoDB存储----文档型数据库 利用pymongo连接MongoDB import pymongo client = pymongo.MongoClient(host='localhost', ...
- snmpEngineBoots & snmpEngineID数据存储到非易失性存储设备
#include <stdio.h> #include <stdlib.h> #include <string.h> int regenerateID() { ; ...
- SaaS多租户模式数据存储方案
云计算多租户几乎用于所有软件即服务 (Software as a Service, SaaS) 应用程序,因为计算资源是可伸缩的,而且这些资源的分配由实际使用决定.话虽如此,用户可以通过 Intern ...
- SaaS多租户模式数据存储方案比较
云计算多租户几乎用于所有软件即服务 (Software as a Service, SaaS) 应用程序,因为计算资源是可伸缩的,而且这些资源的分配由实际使用决定.话虽如此,用户可以通过 Intern ...
- IOS第13天(3,私人通讯录,登陆状态数据存储,数据缓存, cell的滑动删除,进入编辑模式,单个位置刷新 )
*****联系人的界面的优化 HMContactsTableViewController.m #import "HMContactsTableViewController.h" # ...
- Android实现数据存储技术
转载:Android实现数据存储技术 本文介绍Android中的5种数据存储方式. 数据存储在开发中是使用最频繁的,在这里主要介绍Android平台中实现数据存储的5种方式,分别是: 1 使用Shar ...
随机推荐
- Centos环境下部署游戏服务器-SSH
在这个*nix大行其道的年代,SSH绝对值得你拥有,虽说它的语法真的很简单,可用途相当大.比如说你在登山,突然公司一个电话告诉你服务器出问题了,在登山的过程中,肯定不能背个几公斤的笔记本吧,这个时候只 ...
- ps 快捷键
1.前景色填充ALT+DEL 2.背景色填充CTRL+DEL 3.按D键可以以恢复默认的前景色(黑).背景色(白). 4.按X键可以切换前景色.背景色.
- Linux系统下如何禁止ping命令或允许ping命令的方法
1.禁止pingecho 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all 2.允许ping echo 0 >/proc/sys/net/ipv4/ic ...
- Codecademy For Python学习笔记
一.Python Lists and Dictionaries: 1. 2.
- Linux下安装Python-3.3.2【转】
# 下载最新版本 cd /usr/local/src/ sudo wget http://www.python.org/ftp/python/3.3.2/Python-3.3.2.tar.bz2 su ...
- 《Linux内核设计与实现》读书笔记(七)- 中断处理【转】
转自:http://www.cnblogs.com/wang_yb/archive/2013/04/19/3030345.html 中断处理一般不是纯软件来实现的,需要硬件的支持.通过对中断的学习有助 ...
- Android 判断用户2G/3G/4G移动数据网络
Android 判断用户2G/3G/4G移动数据网络 在做 Android App 的时候,为了给用户省流量,为了不激起用户的愤怒,为了更好的用户体验,是需要根据用户当前网络情况来做一些调整的,也可以 ...
- Ubuntu上安装Maven Eclipse以及配置
通过官方网站 http://maven.apache.org/download.cgi 下载到当前的maven安装包 ubuntu解压安装文件我用的是ubuntu 12.10版本的命令: ...
- webapp框架集合
1.GoAngualrjs homepage github GoAngular 可让你轻松使用 AngularJS 和 GoInstant 构建实时.多用户的应用程序. 2.JingleV home ...
- asp开发微信扫码支付
这个任务已经给了.现在正在学习开发中.主要注意的是2点. 1:返回参数的验证. 2:通知后业务处理和处理后返回财付通.大部分操作,api中已经处理好. 现在需要的业务逻辑部分. 需要正确3个参数 r ...