微信

使用微信服务,更方便

职友集>程序员面试题 > 启云笔试题

启云笔试题

2015-08-12 06:30:01 阅读( 82 )

1942人 收藏本页

标签:程序员面试题

题目五:

请对下面链接中的产品先做一些调研,
http://www.basho.com/products_ riak_overview.php

请以邮件方式,简要回答以下问题:
1,这个产品和传统的数据库有什么区别
2,这个产品的架构
3,这个产品存在的价值
4,如何搭建基于这个产品的应用系统五:这个产品和传统的数据库有什么区别:
riak是一种面向“键/值”对类型数据的分布式NoSQL数据库系统,特点是分布式,水平扩展性,高容错性 ,适应高并发的分布应用场景。
传统的数据库目前来说主要是关系型数据库,但是随着大规模数据的并发访问的应用的普及,非关系型数据库得到了迅速发展。
传统的数据库面对数据库的高并发性读写需求、对海量数据高效率的存储与访问、对数据库的高扩展性和高可用性的需求方面已经出现了疲态,这时候非关系型数据库得到发展的机会,而riak就是其中的一种。
非关系型数据库在数据存储上不需要固定的表结构,通常也不存在连接操作。
另外很多实时系统不要求很严格的数据库事务,对读的一致性要求较低,这是不需要耗费大量资源来进行数据库事务管理;大多数时候对插入处理的及时性要求也不是很高;海量数据存储通常不会涉及到复杂的多表连接查询只需要简单的逻辑,SQL功能被淡化,等等这一些原因促进了非关系型数据库的发展。最上面的一层是Riak的客户端,具有配套的各种驱动,C/C++、java、PHP……
WebMachine,这是一个网络框架?或是说一个工具包。
Protocol Buffer 这应该是一个网络协议缓冲机制。
Riak Replication自动复制机制,Riak中存储的数据被分散的存储在群集的各个节点上。
Riak SNMP/JMX:网络简单管理协议和java扩展机制。
中间三层分别是:键值存储、Riak查询功能、任务管道提供的高延迟数据处理。
Riak Core:核心组件,是提供完整好用的分布式应用的基础。
Bitcask:直译过来是微量的容器?作用是动态响应用户的选择的存储引擎。
LevelDB:一种海量级别的键值数据库,由google开发,被Riak作为存储引擎。
Merge Index:是支持Riak搜素的一个机制,别的资料没太看明白。

这个产品存在的价值:
参照第一个问题~更多的是说了非关系数据库存在的意义。对于这个具体的产品,刚接触,并不十分清楚与Redis、MongoDB等有什么区别~

如何搭建基于这个产品的应用系统 :
当然需要安装Riak和Erlang。
构建包含三个节点的群集。
生成 ./rel/riak 的副本,复制到各节点,并做相应的修改。
启动节点,连接成群集。
其他的就看不太明白了,参照自

http://www.ibm.com/developerworks/cn/opensource/os-riak1/index.html#ibm-pcon

http://blog.nosqlfan.com/newslist

以前很几乎没有接触Riak,一些问题根据自己的理解来写的,因此可能有错误~

来自IT公司面试手册

下一篇:苹果公司面试方式及内容

上一篇:it公司面试笔试秘籍大公开

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题