1. 分布式数据库的分布式数据库相对传统集中式数据库的优点
大数据时代,面对日益增长的海量数据,传统的集中式数据库的弊端日益显现,分布式数据库相对传统的集中式数据库有如下优点。
● 更高的数据访问速度:分布式数据库为了保证数据的高可靠性,往往采用备份的策略实现容错,所以,在读取数据的时候,客户端可以并发地从多个
备份服务器同时读取,从而提高了数据访问速度。
● 更强的可扩展性:分布式数据库可以通过增添存储节点来实现存储容量的线性扩展,而集中式数据库的可扩展性十分有限。
● 更高的并发访问量:分布式数据库由于采用多台主机组成存储集群,所以相对集中式数据库,它可以提供更高的用户并发访问量。
2. 凶宅数据库的记录内容
在链家地产的信息平台上,内部员工输入小区的名字,便会检索出这个小区内统计在册的凶宅信息。信息列表中,凶宅被一一编号,具体位置也有详细显示。链家地产品牌总监徐东华告诉《天下公司》,这个系统一个很重要的功能就是提示经纪人小心凶宅。
经纪人会活跃在社区里采集房屋的瑕疵信息,采集以后由过去的纸质文档的收集到现在转变为内部的IT系统把所有的数据记录下来,一方面可以随时查看,另一方面当有人委托房源录入系统时,系统会提示此房源是否存在瑕疵。
同时徐东华说,这个数据库内容的来源有50%都是靠门店经纪人走街串巷打听出来的。
按目前来说有40%是我们通过新闻渠道获取的数据,有50%是我们经纪人在日常作业里打听到的,还有10%是我们老客户提供的,但是房子被记录后形成了委托要上市交易,那么我们会向业主本人进行核实,如果没有记录的房屋我们也会在签协议的时候进行询问了解信息,因为房屋没有进行交易的时候是一种隐私。
徐东华透露,目前数据库大概记录了近900个住所,而相对集中的地区在朝阳区。一般来说被戴上凶宅的帽子,就很难交易,甚至两三年都卖不出去。同时链家地产品牌总监徐东华也坦言,之所以自建这个数据库,还是有点无奈。
3. 数据仓库,大数据和云计算有什么区别和联系
您好,上海蓝盟为您解答。
首先简单的看一下云计算与大数据的概念.
1)云计算:云计算本质上是一种计算资源集中分布和充分共享的效用计算模式,其中集中是为了计算资源的集约化管理,分布是便于扩展计算能力.集中分布式是针对云服务提供商的,充分共享是针对用户,在云计算中,虽然对于每个云用户来说都拥有一台超级计算机,但本质上,这些用户是充分共享了云服务商所提供的计算服务.而效用计算更多的是一种商业模式,就是用户按所需服务来付费.
2)在前面的博文中,对大数据有个讨论,简单的说,大数据的特点就是数据量大(虽然很多人都把大数据定义在T级别以上,其实我觉得这是有问题的,大数据的大其实应该是个相对概念,是相对于当前的存储技术和计算能力的),数据应用需求大,计算量大.数据量大是最基本的,需求大其实包含了需求的数量、多样性和实时性.计算量大是因为数据量大和需求量大和算法复杂(检索,推荐,模式识别)所致.大数据的这种特点使得我们很难找到通用的处理模式来解决大数据所面临的问题,我们只能针对不同的需求采用不同的处理方法,这也是大数据处理比较困难的症结所在。无论是传统的数据库还是最近兴起的NoSQL数据库,在大数据存储和处理方面其实都是有非常大的局限性的,所以分布式计算才在大数据处理中大兴其道。Hadoop虽然提供了比较完整的一套处理模式,但相对于大数据所面临的应用需求的多样性而言,能处理的问题域也是十分有限的。
数据库和数据仓库的概念,大家google一下就可以了,接下来,我们看看它们之间的关系:
1)数据库和数据仓库都是数据的一种存储方式,大数据处理更多的是一种需求(问题),而云计算是一种比较综合的需求(问题)解决方案。
2)由于云计算本身的特性,天生就面临大数据处理(存储、计算等)问题,因为云计算的基本架构模式是C/S模式,其中S相对集中,而C是广泛分布。所有用户的数据和绝大部分的计算都是在S端完成的(数据量大,计算量大),加上用户也天然具有多样性(地域,文化,需求,个性化等),因此需求(也包括计算量)就非常大。
3)云计算当然会涉及到数据的存储技术,但数据库技术对于云计算来说要视具体的情况来分析:
A)对于IaaS而言,数据库技术不是必需的,也不是必备的功能;
B)对于PaaS来说,数据库功能应该是必备的功能
C)对于SaaS而言,必然会用到数据库技术(包括传统关系数据库和NoSQL数据库)。
而对于数据仓库技术,并不是云计算所必需的,但由于云数据的信息价值极大,类似一座金矿,我想云服务商是不可能放过从这些金矿中提取金子的.
4)大数据首先所面临的问题就是大数据的存储问题,一般都会综合运用各种存储技术(文件存储,数据库存储),当然,你完全用文件存储或者数据库存储来解决,也是没问题的。与云计算类似,数据仓库技术不是必需的,但对于数据仓库技术对于结构化数据进行淘金还是非常有用的,当然,你不用数据仓库技术也可以,比如Hadoop模式。
在云计算和大数据处理中,最基础的技术其实是分布式计算技术。而对于构建分布式计算而言,多线程,同步,远程调用(RPC,RMI等),进程管理与通信是其基本技术点。分布式计算编程是一种综合性应用编程,不仅需要有基本的技术点,还需要一定的组织管理知识。
就目前来说,云计算和大数据处理其实都没有形成一个统一的标准和定义。希望我的回复对您有所帮助。
4. 分布式数据库系统(DDBS)概述
一 什么是分布式数据库
分布式数据库系统是在集中式数据库系统的基础上发展来的 是数据库技术与网络技术结合的产物
分布式数据库系统有两种 一种是物理上分布的 但逻辑上却是集中的 这种分布式数据库只适宜用途比较单一的 不大的单位或部门 另一种分布式数据库系统在物理上和逻辑上都是分布的 也就是所谓联邦式分布数据库系统 由于组成联邦的各个子数据库系统是相对 自治 的 这种系统可以容纳多种不同用途的 差异较大的数据库 比较适宜于大范围内数据库的集成
分布式数据库系统(DDBS)包含分布式数据库管理系统(DDBMS)和分布式数据库(DDB)
在分布式数据库系统中 一个应用程序可以对数据库进行透明操作 数据库中的数据分别在不同的局部数据库中存储 由不同的DBMS进行管理 在不同的机器上运行 由不同的操作系统支持 被不同的通信网络连接在一起
一个分布式数据库在逻辑上是一个统一的整体 即在用户面前为单个逻辑数据库 在物理上则是分别存储在不同的物理节点上 一个应用程序通过网络的连接可以访问分布在不同地理位置的数据库 它的分布性表现在数据库中的数据不是存储在同一场地 更确切地讲 不存储在同一计算机的存储设备上 这就是与集中式数据库的区别 从用户的角度看 一个分布式数据库系统在逻辑上和集中式数据库系统一样 用户可以在任何一个场地执行全局应用 就好那些数据是存储在同一台计算机上 有单个数据库管理系统(DBMS)管理一样 用户并没有什么感觉不一样
分布式数据库中每一个数据库服务器合作地维护全局数据库的一致性
分布式数据库系统是一个客户/服务器体系结构
在系统中的每一台计算机称为结点 如果一结点具有管理数据库软件 该结点称为数据库服务器 如果一个结点为请求服务器的信息的一应用 该结点称为客户 在ORACLE客户 执行数据库应用 可存取数据信息和与用户交互 在服务器 执行ORACLE软件 处理对ORACLE数据库并发 共享数据存取 ORACLE允许上述两部分在同一台计算机上 但当客户部分和服务器部分是由网连接的不同计算机上时 更有效
分布处理是由多台处理机分担单个任务的处理 在ORACLE数据库系统中分布处理的例子如
客户和服务器是位于网络连接的不同计算机上
单台计算机上有多个处理器 不同处理器分别执行客户应用
参与分布式数据库的每一服务器是分别地独立地管理数据库 好像每一数据库不是网络化的数据库 每一个数据库独立地被管理 称为场地自治性 场地自治性有下列好处
◆系统的结点可反映公司的逻辑组织
◆由局部数据库管理员控制局部数据 这样每一个数据库管理员责任域要小一些 可更好管理
◆只要一个数据库和网络是可用 那么全局数据库可部分可用 不会因一个数据库的故障而停止全部操作或引起性能瓶颈
◆故障恢复通常在单个结点上进行
◆每个局部数据库存在一个数据字典
◆结点可独立地升级软件
可从分布式数据库的所有结点存取模式对象 因此正像非分布的局部的DBMS 必须提供一种机制 可在局部数据库中引用一个对象 分布式DBMS必须提供一种命名模式 以致分布式数据库中一个对象可在应用中唯一标识和引用 一般在层次结构的每一层实施唯一性 分布式DBMS简单地扩充层次命名模型 实施在网络上唯一数据库命名 因此一个对象的全局对象名保证在分布式数据库内是唯一
ORACLE允许在SQL语句中使用全局对象名引用分布式数据库中的模式对象(表 视图和过程) 在ORACLE中 一个模式对象的全局名由三部分组成 包含对象的模式名 对象名 数据库名 其形式如
SCOTT EMP@SALES DIVISION ACME
一个远程查询为一查询 是从一个或多个远程表中选择信息 这些表驻留在同一个远程结点
一个分布式查询可从两个或多个结点检索数据 一个分布式更新可修改两个或两个以上结点的数据
一个远程事务为一个事务 包含一人或多个远程语句 它所引用的全部是在同一个远程结点上 一个分布式事务中一个事务 包含一个或多个语句修改分布式数据库的两个或多个不同结点的数据
在分布式数据库中 事务控制必须在网络上直辖市 保证数据一致性 两阶段提交机制保证参与分布式事务的全部数据库服务器是全部提交或全部回滚事务中的语句
ORACLE分布式数据库系统结构可由ORACLE数据库管理员为终端用户和应用提供位置透明性 利用视图 同义词 过程可提供ORACLE分布式数据库系统中的位置透明性
ORACLE提供两种机制实现分布式数据库中表重复的透明性 表快照提供异步的表重复;触发器实现同步的表的重复 在两种情况下 都实现了对表重复的透明性
在单场地或分布式数据库中 所有事务都是用MIT或ROLLBACK语句中止
二 分布式数据库系统的分类
( ) 同构同质型DDBS 各个场地都采用同一类型的数据模型(譬如都是关系型) 并且是同一型号的DBMS
( )同构异质型DDBS 各个场地采用同一类型的数据模型 但是DBMS的型号不同 譬如DB ORACLE SYBASE SQL Server等
( )异构型DDBS 各个场地的数据模型的型号不同 甚至类型也不同 随着计算机网络技术的发展 异种机联网问题已经得到较好的解决 此时依靠异构型DDBS就能存取全网中各种异构局部库中的数据
三 分布式数据库系统主要特点
DDBS的基本特点
( )物理分布性 数据不是存储在一个场地上 而是存储在计算机网络的多个场地上
逻辑整体性 数据物理分布在各个场地 但逻辑上是一个整体 它们被所有用户(全局用户)共享 并由一个DDBMS统一管理
( )场地自治性 各场地上的数据由本地的DBMS管理 具有自治处理能力 完成本场地的应用(局部应用)
( )场地之间协作性 各场地虽然具有高度的自治性 但是又相互协作构成一个整体
DDBS的其他特点
( )数据独立性
( )集中与自治相结合的控制机制
( )适当增加数据冗余度
( )事务管理的分布性
四 分布式数据库系统的优点
( )更适合分布式的管理与控制
分布式数据库系统的结构更适合具有地理分布特性的组织或机构使用 允许分布在不同区域 不同级别的各个部门对其自身的数据实行局部控制 例如 实现全局数据在本地录入 查询 维护 这时由于计算机资源靠近用户 可以降低通信代价 提高响应速度 而涉及其他场地数据库中的数据只是少量的 从而可以大大减少网络上的信息传输量;同时 局部数据的安全性也可以做得更好
( )具有灵活的体系结构
集中式数据库系统强调的是集中式控制 物理数据库是存放在一个场地上的 由一个DBMS集中管理 多个用户只可以通过近程或远程终端在多用户操作系统支持下运行该DBMS来共享集中是数据库中的数据 而分布式数据库系统的场地局部DBMS的自治性 使得大部分的局部事务管理和控制都能就地解决 只有在涉及其他场地的数据时才需要通过网络作为全局事务来管理 分布式DBMS可以设计成具有不同程度的自治性 从具有充分的场地自治到几乎是完全集中式的控制
( )系统经济 可靠性高 可用性好
与一个大型计算机支持一个大型的集中式数据库在加一些进程和远程终端相比 由超级微型计算机或超级小型计算机支持的分布式数据库系统往往具有更高的性价比和实施灵活性 分布式系统比集中式系统具有更高的可靠性和更好的可用性 如由于数据分布在多个场地并有许多复制数据 在个别场地或个别通信链路发生故障时 不致于导致整个系统的崩溃 而且系统的局部故障不会引起全局失控
( )在一定条件下响应速度加快
如果存取的数据在本地数据库中 那么就可以由用户所在的计算机来执行 速度就快
( )可扩展性好 易于集成现有系统 也易于扩充
对于一个企业或组织 可以采用分布式数据库技术在以建立的若干数据库的基础上开发全局应用 对原有的局部数据库系统作某些改动 形成一个分布式系统 这比重建一个大型数据库系统要简单 既省时间 又省财力 物力 也可以通过增加场地数的办法 迅速扩充已有的分布式数据库系统
五 分布式数据库系统的劣势
( )通信开销较大 故障率高
例如 在网络通信传输速度不高时 系统的响应速度慢 与通信相关的因素往往导致系统故障 同时系统本身的复杂性也容易导致较高的故障率 当故障发生后系统恢复也比较复杂 可靠性有待提高
( )数据的存取结构复杂
一般来说 在分布时数据库中存取数据 比在集中时数据库中存取数据更复杂 开销更大
( )数据的安全性和保密性较难控制
在具有高度场地自治的分布时数据库中 不同场地的局部数据库管理员可以采用不同的安全措施 但是无法保证全局数据都是安全的 安全性问题式分布式系统固有的问题 因为分布式系统式通过通信网络来实现分布控制的 而通信网络本身却在保护数据的安全性和保密性方面存在弱点 数据很容易被窃取
分布式数据库的设计 场地划分及数据在不同场地的分配比较复杂 数据的划分及分配对系统的性能 响应速度及可用性等具有极大的影响 不同场地的通信速度与局部数据库系统的存取部件的存取速度相比 是非常慢的 通信系统有较高的延迟 在CPU上处理通信信息的代价很高 分布式数据库系统中要注意解决分布式数据库的设计 查询处理和优化 事务管理及并发控制和目录管理等问题
六 分布式数据库系统 数据分片
类型
水平分片
按一定的条件把全局关系的所有元组划分成若干不相交的子集 每个子集为关系的一个片段
垂直分片
把一个全局关系的属性集分成若干子集 并在这些子集上作投影运算 每个投影称为垂直分片
导出分片
又称为导出水平分片 即水平分片的条件不是本关系属性的条件 而是其他关系属性的条件
混合分片
以上三种方法的混合 可以先水平分片再垂直分片 或先垂直分片再水平分片 或其他形式 但他们的结果是不相同的
条件
( )完备性条件
必须把全局关系的所有数据映射到片段中 决不允许有属于全局关系的数据却不属于它的任何一个片段
( )可重构条件
必须保证能够由同一个全局关系的各个片段来重建该全局关系 对于水平分片可用并操作重构全局关系;对于垂直分片可用联接操作重构全局关系
( )不相交条件
要求一个全局关系被分割后所得的各个数据片段互不重叠(对垂直分片的主键除外)
七 分布式数据库系统 数据分配方式
( )集中式 所有数据片段都安排在同一个场地上
( )分割式
所有数据只有一份 它被分割成若干逻辑片段 每个逻辑片段被指派在一个特定的场地上
( )全复制式 数据在每个场地重复存储 也就是每个场地上都有一个完整的数据副本
( )混合式 这是一种介乎于分割式和全复制式之间的分配方式
八 分布式数据库系统 体系结构
数据分片和数据分配概念的分离 形成了 数据分布独立型 概念
数据冗余的显式控制 数据在各个场地的分配情况在分配模式中一目了然 便于系统管理
局部DBMS的独立性 这个特征也称为 局部映射透明性 此特征允许我们在不考虑局部DBMS专用数据模型的情况下 研究DDB管理的有关问题
九 分布式数据库管理系统
接受用户请求 并判定把它送到哪里 或必须访问哪些计算机才能满足该要求
访问网络数据字典 了解如何请求和使用其中的信息
如果目标数据存储于系统的多个计算机上 就必须进行分布式处理
通信接口功能 在用户 局部DBMS和其他计算机的DBMS之间进行协调
在一个异构型分布式处理环境中 还需提供数据和进程移植的支持 这里的异构型是指各个场地的硬件 软件之间存在着差别
分布式数据库管理系统
lishixin/Article/program/Oracle/201311/16998