云数据库和云存储的区别;
首先,从服务层面。
这两者都可以作为paas服务向用户公开。云数据库可以包括关系数据库和非关系数据库,而云存储可以包括块存储和对象存储。
第二,从数据结构上。
一般用户上传的零散文件都存储在云存储中,每个文件的类型和组织可以不同,比如图片、音频、word文件等,而存储在数据库中的数据是由数据库进程直接管理的,包括表空间、表结构和数据存储,是有规律的。
第三,在提供的服务方面
云存储:提供存储容量,更多的场景是非结构化数据,比如文件、图片、视频等。
云数据库:提供基础的数据库和数据对象管理能力,包括oracle、mysql、sqlserver等关系数据库,以及mongodb、hbase等半结构化数据库。
第四,从两者的关系来说。
目前云存储基本是基于类似hdfs的分布式文件系统封装的,提供存储服务能力接口。也可以基于hdfs构建数据库,然后将数据库的能力公开,形成云数据库。
类似hbase,但是对于常见的关系数据库,可以作为云数据库使用,但是它们的底层不依赖云存储能力。
扩展数据:
云存储的主要用途:
云存储通常意味着将主数据或备份数据放在企业外部的不确定存储池中,而不是放在本地数据中心或专用的远程站点中。支持者认为,如果使用云存储服务,企业可以节省投资成本,简化复杂的设置和管理任务,并将数据放在云端,方便从更多地方访问数据。
数据备份、归档和灾难恢复是云存储的三种可能用途。
减少工作和开支是云服务有望在未来几年继续增长的主要原因之一。根据研究公司idc的数据,全球it支出的4%花费在云服务上,到2012年这一比例将达到9%。
由于成本和空间的压力,数据存储非常适合云解决方案idc。同期,云存储在云服务支出中的比例将从8%上升至13%。
平台组件包括以下内容,:。
传统的关系数据库为hive、hue和spark组件提供元数据存储服务。
2.弹性搜索
一个具有搜索引擎和nosql数据库功能的开源系统,基于java/lucene,开源,分布式,支持res完整请求。
3.弗林克
结合批处理和流处理的统一计算框架,为数据分发和并行计算提供流数据处理引擎。
4.水道
一个分布式的、可靠的、高可用的海量日志聚合系统,支持在系统中定制各种数据发送方来收集数据;
同时,flume提供了简单处理数据并将其写入各种数据接收者(可定制)的能力。
5.hbase
它提供海量数据存储功能,是一个基于hdfs的分布式列存储系统。hdfshadoop分布式文件系统提供了高吞吐量的数据访问,适合大规模数据集。
基于hadoop的开源数据仓库,提供结构化数据存储服务和类似sqlhive查询语言的基础数据分析服务。
提供了图形用户网络界面。hue支持各种组件的显示,目前支持hdfs、hive、yarn/mapreduce、oozie、solr和zookeeper。
8.卡夫卡
一种分布式、分区、多副本的实时消息发布和订阅系统。提供可扩展、高吞吐量、低延迟和高可靠性的消息分发服务。
9.sqoop
用于与关系数据库和文件系统交换数据和文件的数据加载工具;同时提供restapi接口供第三方调度平台调用。
它是一种分布式的数据处理模式和执行环境,提供了快速并行处理大量数据的能力。
11.驭象者
它为开源的hadoop组件提供了任务安排和执行的功能。作为javaweb应用程序在javaservlet容器(如tomcat)中运行,使用数据库存储工作流定义和当前运行的工作流实例(包括实例状态和变量)。
开源、高性能的键值分布式存储数据库支持丰富的数据类型,弥补了memcached等键值存储的不足,满足了实时高并发的要求。
它提供了小文件的后台合并功能,可以自动发现系统中的小文件(通过文件大小阈值判断),在空闲时间进行合并,并将元数据存储在本地leveldb中以减轻namenode的压力,同时提供了新的文件系统接口,允许用户透明地访问这些小文件。
基于lucene的高性能全文检索服务器。火花基于内存的分布式计算框架。
提供一个分布式、高性能、高可靠、容错的实时计算平台,能够实时处理海量数据。cql提供的类似sql的流处理语言可以快速开发业务。,缩短业务上线时间。
16.故事
资源管理系统是一个通用的资源模块,可以为各种应用管理和调度资源。
17.动物园管理员
提供分布式、高可用的协调服务能力。帮助系统避免单点故障,从而建立可靠的应用程序。