阅读以下关于软件系统数据架构建模的说明,在答题纸上回答问题1至问题3。
【说明】
RMO是一家运动服装制造销售公司,计划在五年时间内将销售区域从华南地区扩展至全国范围。为了扩大信息技术对于未来业务发展的价值,公司邀请咨询顾问帮助他们制订战略信息系统规划。经过评审,咨询顾问给出的战略规划要点之一是建立客户关系支持系统CRSS。RMO公司决定由其技术部成立专门的项目组负责CRSS的开发和维护工作。
项目组在仔细调研和分析了系统需求的基础上,确定了基于互联网的CRSS系统架构。但在确定系统数据架构时,张工认为应该采用集中式的数据架构,给出的理由是结构简单、易维护且开发及运行成本低;而刘工建议采用分布式的数据架构,并提出在开发中通过"局部数据库+缓存"的读写分离结构实现,具有较好的运行性能和可扩展性。
项目组经过集体讨论,考虑到公司的未来发展规划,最终采用了刘工的建议。
【问题1】(8分)
请用300字以内的文字,说明张工和刘工提出的数据架构的基本思想。
【问题2】(13分)
在刘工建议的基础上,为了避免CRSS系统的单点故障,请用200字以内文字简要说明如何建立CRSS的数据库系统;对于数据的读取、添加、更改和删除操作分别如何实现。
【问题3】(4分)
RMO公司销售区域将在未来五年大面积扩展,其潜在客户数量也会因此大幅度增加,所以良好的可扩展性是CRSS系统所必需的质量属性。请分别说明在集中式和分布式数据架构下,可以采用哪些方法提升系统的可扩展性。
正确答案及解析
正确答案
解析
【问题1】
(1)张工提出的集中式数据架构是由一个处理器、与它相关联的数据存储设备以及其他外围设备组成,它被物理地定义到单个位置。系统提供数据处理能力,用户可以在同样的站点上操作,也可以在地理位置隔开的其他站点上通过远程终端来操作。系统及其数据管理被某个或中心站点集中控制。
(2)刘工提出的分布式数据架构使用多个计算机系统上的多个局部数据库系统构成,数据可以在多个不同的局部数据库中进行传送,由不同的数据库管理系统软件进行管理,运行在多种不同的计算机上,支持多种不同的操作系统。这些机器位于(或分布在)不同的地理位置并通过多种通信网络连接在一起。企业数据可以分布在不同的计算机上,一个应用程序可以操作位于不同地理位置的机器上的数据。
【问题2】
读写分离架构利用了数据库的复制技术,将数据的读和写分布在不同的处理节点上,从而达到提高可用性和扩展性的目的。
CRSS的分布式数据库系统需要由多个局部数据库系统、多个热备份数据库系统和多个数据缓存组成。局部数据库负责数据的写入,多个热备份数据库系统用以解决单点故障的问题,数据缓存负责为应用提供所读取的数据。
(1)读取数据:应用访问缓存,如果命中则返回,否则从局部数据库系统中读取数据并将数据加载到缓存后返回。
(2)添加数据:采用延迟加载策略,应用将数据直接写入局部数据库。
(3)更改数据:应用更改局部数据库中的数据,将缓存中的数据标记为失效。
(4)删除数据:应用删除局部数据库中的数据,将缓存中的数据标记为失效。
【问题3】
张工提出的集中式数据架构通过向上扩展(Scale Up)提升系统的可扩展性。具体的实现方式包括硬件扩容(增加CPU数量、内存容量、磁盘数量)和硬件升级(更换为高端主机或高速磁盘等)。
刘工提出的分布式数据架构通过向外扩展(Scale Out)提升系统的可扩展性。具体的实现方式包括数据复制、数据垂直切分(或/和)水平切分、缓存和全文搜索。
【解析】
本题考查考生对于软件系统数据架构建模的掌握情况。
数据架构定义了信息系统中文件和数据库的分布结构。数据架构建模是以数据为中心,建模业务数据类型和结构,以及设计满足应用需求的数据库系统。传统以主机为中心的信息系统开发中,利用单个的数据库系统实现数据的集中式存储,物理上所有的数据位于同一个位置,构成的是一种集中式的数据架构;现代基于网络的分布式系统开发中,很少有组织会将其全部的数据存储在单个的数据库中,通常需要多个数据库系统组成,数据在这些数据库系统之间可以传送,由多个不同的数据库管理系统控制,构成的是一种分布式的数据架构。
【问题1】
集中式数据架构中,一个或多个局域网中的客户共享一个单独计算机系统中的单个数据库。系统提供数据处理能力,用户可以在同样的站点上操作,也可以在地理位置隔开的其他站点上通过远程终端来操作。系统及其数据管理被某个或中心站点集中控制。单个数据库服务器结构的主要优点就是简单、易维护开发及运行成本低;但由于所有的客户直接请求服务器,容易发生性能瓶颈,如果服务失败,单个服务器不能提供备份和恢复,所有依赖的应用程序都将不能工作。
分布式数据架构中,使用多个计算机系统以及用户能够访问远程系统的数据,数据可以在多个不同的数据库中进行传送,由不同的数据库管理系统软件进行管理,运行在多种不同的计算机上,支持多种不同的操作系统。这些机器位于(或分布在)不同的地理位置并通过多种通信网络连接在一起。企业数据可以分布在不同的计算机上,一个应用程序可以操作位于不同地理位置的机器上的数据。多个数据库服务器结构的主要优点就是系统的容错能力和对广域网容量的需求有所降低,可以采用多种策略提升整个系统的服务质量;由于多个数据库系统分布在不同的网络节点上,位于不同位置的数据之间需要同步和协作,系统结构复杂、运行成本高并且维护困难。
在实际应用系统的数据架构建模中,应根据不同的应用需求选择集中式或分布式的数据架构。本题中由于RMO要扩展其销售区域,其潜在客户数量也会因此大幅度增加,所以良好的可扩展性是CRSS系统所必需的质量属性;并且由于其销售区域扩大后,系统中的数据会存储于不同的地理位置,所以采用分布式数据架构最为合理。
【问题2】
读写分离架构应用非常广泛,很多网站采用数据库+缓存的方式来实现。通过缓存层来承载大量的读访问,如广泛采用的Mencached,其自身往往不具备持久层存储的功能,通常和数据库一起组成分布式的数据架构,由数据库负责数据持久化存储和写入功能,缓存负责承载大量的并发访问,从而提高了系统的数据处理效率。要避免数据访问的单点故障,通常采用主数据库热备份的方式来实现。所以,要实现题目要求的分布式数据架构,需要多个局部数据库系统、多个热备份数据库系统和多个数据缓存组成。
读写分离结构中,应用读取数据时访问缓存,如果没有命中所需数据,则从主数据库中读取数据并写入缓存;对于新增、修改和删除操作,需要采用延迟加载的策略,新增时只修改主数据库,修改和删除时除了修改主数据库中的内容,还需要将缓存中的数据标记为失效。
【问题3】
传统的集中式数据架构中由于只有单个的数据库系统,所以要满足可扩展性的要求,更多的只能通过硬件的方式来实现。具体的实现方式包括硬件扩容(增加CPU/内存容量/磁盘数量)和硬件升级(更换高端主机或高速磁盘等)。
基于网络的分布式数据架构中由多个数据库系统共同组成,可以通过更改和优化数据分布来满足系统可扩展性的要求。具体的实现方式包括数据复制、数据垂直切分(或/和)水平切分、缓存和全文搜索。
包含此试题的试卷
你可能感兴趣的试题
一台主机的IP地址为202.123.25.36,掩码为255.255.254.0。如果该主机需要在该网络进行直接广播,那么它应该使用的目的地址为( )
-
- A.202.123.25.0
- B.202.123.25.255
- C.202.123.24.0
- D.202.123.24.255
- 查看答案
在计算机系统的日常维护工作中,应当注意硬盘工作时不能__(2)__。另外,需要防范病毒,而__(3)__是不会被病毒感觉的。
-
- A.电子邮件
- B.硬盘
- C.U盘
- D.ROM
- 查看答案
有 4 个 IP 地址:201.117.15.254、201.117.17.01、201.117.24.5 和 201.117.29.3,如果子网掩码为 255.255.248.0,则这 4 个地址分别属于3个子网;其中属于同一个子网的是()
-
- A.201.117.15.254 和 201.117.17.01
- B.201.117.17.01 和 201.117.24.5
- C.201.117.15.254 和 201.117.29.3
- D.201.117.24.5 和 201.117.29.3
- 查看答案
在异步通信中,每个字符包含1位起始位、7位数据位、1位奇偶位和1位终止位,每秒钟传送200个字符,采用4相位调制,则码元速率为()。
-
- A.50波特
- B.500波特
- C.550波特
- D.1000波特
- 查看答案
在 Windows 中,运行( )命令得到下图所示结果。以下关于该结果的叙述中,错误的是( )。
Pinging 59.74.111.8 with 32 bytes of data:
Reply from 59.74.111.8: bytes=32 time=3ms TTL=60
Reply from 59.74.111.8: bytes=32 time=5ms TTL=60
Reply from 59.74.111.8: bytes=32 time=3ms TTL=60
Reply from 59.74.111.8: bytes=32 time=5ms TTL=60
Ping statistics for 59.74.111.8:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 3ms, Maximum = 5ms, Average = 4ms
-
- A.该命令使得本地主机向目标主机发送了 4 个数据包
- B.本地主机成功收到了目标主机返回的 4 个数据包
- C.本地主机与目标主机连接正常
- D.该命令用于查看目标主机的 IP 地址
- 查看答案