Posts Tagged DataBase
MongoDB的分发模式和部署
MongoDB是近期一直在研究的No-SQL,作为No-SQL来说,Mongo做的反而更像传统的关系型数据库,可以利用弱关系进行查询。作为网站应用来说,毫不客气地说,如果你的查询复杂程度到了MongoDB无法支持的程度,只能说明你的数据结构设计的有问题。
作为No-sql的强项,MongoDB的数据分发/同步机制相对比MySQL灵活的多,支持传统上的主从同步和趋向于高性能的ShareSet,而且对于程序端来说改动相对较小,代价几乎可以不计。现在就从这两种分发机制方式说起。
从SQL到NoSQL
之前接触到的基于LAMP平台的网站,凡是稍微有一点量上去的,在数据结构的设计上总是离不开“拆库拆表”。同样,作为网站的数据结构设计,很少会出现类似ERP系统才会应用到的函数(function)、存储过程(procudce)、触发器(trigger)什么的——曾经看过有ERP系统的所有逻辑都是通过这3者保存在数据库端的。加上MySQL本身的一些因素,用之前一个朋友的话说:“Mysql在网站中的地位更多的是一个数据容器,而不是完整意义上的数据库。”
Hadoop的单机部署
要说最近最热的云计算,不得不提Hadoop。这个项目就是为集群运算而生的。依赖于它的项目n多,个人感觉hadoop已经逐渐成为一个“基于Java的分布式运算中间件”。
这里安装的hadoop为ver 0.21.0版本,包含了HDFS分布式文件系统。平台为老一套的Ubuntu 1104 server for amd64。
既然是Java Base的,首先要准备jdk环境。默认1104已经把java从apt中剔除了——跟oracle收购sun不无关系,尽管openjdk还在,我还是建议安装sun-jdk。具体实现如下:
Ubuntu上Coreseek+php的安装
Coreseek是一个基于sphinx引擎,支持与mmseg中文分词模块合作完成中文的全文搜索引擎。相对sql这类操作,Coreseek负载可谓是微不足道。当然类似的索引服务器还有给予Java的solr等。我选择coreseek的主要原因之一是他可以通过配置后可以与现有的mysql客户端兼容,并可以直接嵌入到mysql中成为mysql的引擎之一。
首先,下载安装包,我选择的是最新的stable版, 不过不客气的说,即便是coreseek的stable版本,不论是从稳定性、兼容性还是灵活性上都不能算是完善,至少无法跟apache这类经典应用相提并论。
LAMP的常用扩展安装
之前已经弄过许多篇关于LAMP搭建的东西,都是基于最简单包的,这次说说几个比较常用扩展的安装:
- FreeBSD + Apache + PHP + Mysql (恶搞版)
- FreeBSD + Apache + PHP + Mysql + Oracle
- Ubuntu + Apache + PHP + Mysql ,比较简单,正常server版安装结束的最后一步可以选择安装LAMP
- Ubuntu + nginx + php
- Ubuntu + php + Oracle
高负载的Lamp架构
SQLServer的聚合索引问题
有台SqlServer2000的主机,主要是用来纪录日志的。系统配置属于双核+2G,不算很高,目前数据文件大约在2G左右。高峰时每分钟100次写入左右。
这些天,系统在部分时间(不一定是高峰期),会出现大量的堵塞。堵塞每次持续时间最多5分钟,之后要么自己恢复,要么系统IO吃光。已经排除了病毒或者网络的问题。
Read the rest of this entry »

近期评论