一、什么是Nosql?
二、它为什么产生?它与sql是什么关系(解释关系型和非关系型)
三、它与大数据是什么关系
四、它有哪些具体表现形式?即有哪些具体应用?
五、它的优缺点是什么?
六、它的前景怎么样?它是否有可能替代sql?
淘宝的数据库现在逐渐从Oracle转向MysqL,从小型机到PC Server
淘宝的模式是MysqL+PC Server
是把三个数据库拆成更多的数据库,或每一个数据库支持一个比较单一的业务。比如用户、商品和交易,都会分成独立的数据库,然后放到独立的小型计算中去,这是我们08年做的很大的事情就是垂直拆分,然后08年的业务我们就顶住了。
今年在十月份之前我们全部完成了淘宝最核心的三个系统:交易数据库、商品数据库和用户数据库的水平拆分。
我们内部有一个提法叫做去O、去I、去E,其实就是我们要从高端硬件Scale up模式到低端硬件的Scal out水平扩展的模式,
去Oracle,去小型机,去高端存储,这个“三去”的整体思路
当时我们知道小型机和存储的价格是非常昂贵的,还是拿我们刚才说压力最大的商品数据库举个例子,当初我们数据库是用了四台高端的小型机,两套高端的存储,成本加起来起码都是三千万以上。那目前我们用的是32台PC server来搭建的一个机群,价格也就是300万~500万的级别。相对来说我们做完这个事情以后,解决了两三千万的硬件成本。
在这一方面,我觉得有两个很重要的因素。第一个是我们需要和我们的开发前端应用架构部门能够紧密的合作,能够让我们的应用融入刚才说的整个机群的单点失效和容灾的问题。都需要我们和架构部门一起来考虑的;第二个比较大的经验就是目前我们在做的,深入研究MysqL的源代码。我们从研究和压力测试的过程中,发现MysqL它本身代码的一些缺陷,可能在高并发大压力下会有很多隐藏的Bug。
MysqL已经被Oracle收购了
MysqL其实是基于GPL的协议来开源的软件