数据库
ciaos
这个作者很懒,什么都没留下…
展开
-
实现一个简单的php操作mysql类
php为操作mysql提供了一些简单易用的函数mysql_connect,mysql_query,mysql_fetch_array等,想对它们做一个简单的封装,这里使用基本的mysql_connect函数而不是保持连接的mysql_pconnect函数。<?php/** * @author pengjing * @copyright 2012 */class EasyMysql原创 2012-05-02 15:44:33 · 1040 阅读 · 0 评论 -
mongoDB学习笔记整理
学习官方文档介绍做下面一点笔记1,文档型数据库(文件存储格式为BSON)设计数据库时需要考虑下面几点:由于mongodb可以存储物理文件,需要考虑什么时候存储资源,什么时候仅仅存储资源的链接需要存储多少个collection,都是些什么是否需要原子操作,原子操作支持文档内部,跨文档原子操作不支持为了让查询速度更快,需要设计怎样的索引针对collection如何分片,用作分片的k原创 2012-09-05 14:32:41 · 1171 阅读 · 0 评论 -
redis的快照方式和aof方式简介
Redis是一个“纯内存”数据库(至少在2.4版本以后vm机制就被废弃掉了),内存数据持久化的方式有两种——快照方式与AOF方式,这里简要介绍一下两者区别。实验环境Redis Master(下面简称M)Redis Slave(下面简称S)另外写一个脚本频繁向M插入数据1,采取SnapShottingS数据库挂掉,M数据库继续提供服务,重启S数据库后,恢复和M一样M数原创 2012-09-02 15:05:07 · 2099 阅读 · 0 评论 -
redis-benchmark测试并发性能
服务器环境SUSE Linux Enterprise Server 10 SP3 (x86_64)MemTotal: 2097324 kBcpu MHz : 2400.084 Hzdisk: 10G首先安装redis2.6.0(引入了lua脚本支持,需要安装lua库与jemalloc内存分配器等依赖)先往数据库压入数据占满内存, key(25~30bytes) val(原创 2012-09-01 13:23:24 · 7685 阅读 · 0 评论 -
C++操作leveldb示例笔记
leveldb是一个google实现的超高性能的k/v数据库,官方介绍说读写性能都很强大。下载下来make生成动态链接库libleveldb.so以及静态链接库libleveldb.a文件,下面就写一个测试文件使用leveldb吧。#include#include#include"leveldb/db.h"using namespace std;using namespace l原创 2012-09-03 17:15:49 · 6268 阅读 · 0 评论 -
linux编译生成动态链接库与静态链接库
这里以sqlite源代码为例,我们有时候需要用sqlite作为嵌入式存储引擎,但是我的opensuse上又不能自动yast安装sqlite的开发包,我们就自行编译链接库吧。首先下载sqlite3的源代码(共四个文件:shell.c,sqlite3.c,sqlite3ext.h,sqlite3.h)。1,编译静态链接库libsqlite3.agcc -c sqlite3.c shel原创 2012-09-06 09:46:46 · 1919 阅读 · 0 评论 -
redis资料学习整理
这些天接触redis以来,发现它不仅仅是一个key-value内存数据库那么简单,redis自身简洁的设计有非常好的性能和特点,毕竟最活跃的微博就是基于redis来构建的,下面整理一点相关的资料。Redis2.6对事务的支持还不够,如下所示,在incr name命令执行出错后并没有回滚到之前状态redis 127.0.0.1:6379> set age 3OKredis 127.0原创 2012-09-05 15:54:10 · 923 阅读 · 0 评论 -
C++操作SQLite示例笔记
SQLLite是一个轻量级关系型数据库,设计的目标是嵌入式的,很多桌面应用程序(如火狐浏览器,QQ,skype)以及手机应用经常用它来作为数据存储,毕竟纯文本或者xml格式的读取不方便。C语言操作SQLite3的方式很简单,下面的程序大致演示了数据表创建,插入数据,查询数据几个常用的数据操作。#includeextern "C"{#include"sqlite3.h"}usi原创 2012-09-03 14:39:20 · 1079 阅读 · 0 评论 -
Innodb引擎中事务使用
Mysql数据库应该是互联网应用中使用范围最广的关系型数据库了,没有之一。它的插件式存储引擎架构非常有意思,不同的引擎有着非常不一样的功能和特点。当然针对不同的应用场景需要选择不同的引擎来处理,一些常见常用的比如MyISAM,InnoDB,NDB,Memory等。虽说各个存储引擎对应用是透明的,但是使用mysql时我们仍然需要了解它们各自的特点。下面简单列举各个引擎的特点InnoD原创 2012-06-17 21:14:47 · 1025 阅读 · 0 评论 -
redis的brpop简单使用
redis作为消息队列,已经在许多互联网公司推广开了,相比memcacheq更加丰富的数据结构和功能当然是它备受青睐的主要原因。redis的安装不用赘述,安装完毕后有redis-server和redis-cli两个工具可用,一个服务器端一个客户端。然后接着安装php的扩展。我在网上找了几个php的扩展,安装使用都不是很方便,没有做具体功能与性能的比较,就随便找了个用C实现的扩展来试试吧gi原创 2012-06-15 22:33:50 · 19846 阅读 · 0 评论 -
CAP理论十二年回顾:"规则"变了
“根据CAP理论,一致性(C)可用性(A)分区容错性(P)三者不可兼得,传统数据库保证了强一致性(ACID)和高可用性,要想实现一个分布式集群就不那么容易,数据库扩展非常有限。近年来异军突起的NoSQL,就是通过牺牲强一致性,用最终一致性的思想设计分布式系统,从而使系统有更高可扩展性。”CAP理论断言任何基于网络的数据共享系统,最多只能满足数据一致性、可用性、分区容忍性三要素中的两个要素。转载 2012-06-29 21:08:39 · 1827 阅读 · 0 评论 -
关于mogilefs分布式文件存储简介
mogilefs开源项目Application level -- no special kernel modules required.No single point of failure -- all three components of a MogileFS setup (storage nodes, trackers, and the tracker's databas翻译 2012-12-06 13:26:03 · 772 阅读 · 0 评论