结构化数据
结构化数据可以使用关系型数据库来表示和存储,如MySQL、Oracle、SQL Server等,表现二维形式的数据。可以通过固有键值获取相应信息。
一般特点是:数据以行为单位,一行数据表示一个实体的信息,每一行数据的属性是相同的。结构化的数据的存储和排列是很有规律的,这对查询和修改等操作很有帮助。
2 非结构化数据的存储
可以采用OpenStack Swift,Ceph等。以OpenStack为例,介绍存储原理。
OpenStack有三个模块提供存储。
Swift—提供对象存储(Object Storage),在概念上类似于 Amazon S3 服务,不过 swift 具有很强的扩展性、冗余和持久性,也兼容 S3 API。对象存储支持多种应用,比如复制和存档数据、图像或视频服务,存储次级静态数据,开发数据存储整合的新应用,存储容量难以估计的数据,为 Web 应用创建基于云的弹性存储。
Glance—提供虚机镜像(Image)存储和管理,它能够以三种形式加以配置:利用 OpenStack 对象存储机制来存储镜像;利用 Amazon 的简单存储解决方案(简称 S3)直接存储信息;或者将 S3 存储与对象存储结合起来,作为 S3 访问的连接器。OpenStack 镜像服务支持多种虚拟机镜像格式,包括 VMware(VMDK)、Amazon 镜像(AKI、ARI、AMI)以及 VirtualBox 所支持的各种磁盘格式。镜像元数据的容器格式包括 Amazon 的 AKI、ARI 以及 AMI 信息,标准 OVF 格式以及二进制大型数据。
Cinder–提供块存储(Block Storage),类似于 Amazon 的 EBS 块存储服务,OpenStack 中的实例是不能持久化的,需要挂载 volume,在 volume 中实现持久化。Cinder 就是提供对 volume 实际需要的存储块单元的实现管理功能。