memSQL简介

memSQL简介前言由前 Facebook 工程师创办的 MemSQL 号称世界上最快的分布式关系型数据库 兼容 MySQL 但快 30 倍 能实现每秒 150 万次事务

大家好,欢迎来到IT知识分享网。

前言

由前Facebook工程师创办的MemSQL,号称世界上最快的分布式关系型数据库,兼容MySQL但快30倍,能实现每秒150万次事务。原理是仅用内存并将SQL预编译为C++。

MemSQL 提供免费的开发者版本(数据限制32G)和全功能试用版本(试用期30天)

MemSQL 架构:

在这里插入图片描述

MemSQL 生态系统:

在这里插入图片描述

入门使用

下载

http://developers.memsql.com/docs/1b/guides/starting.html

  • 点击右上角的下载链接 http://www.memsql.com/#download ,它会要求你提供email等信息,提交后返回一个license key和下载链接,我们下载developer版的即可。

安装

$ tar -xzf memsqlbin_amd64.tar.gz $ cd memsqlbin 

启动

$ ./check_system $ ./memsqld 

注:

  • check_system会告诉系统是否满足需求,比如内核版本,OS版本,64位 等等
  • 启动的时候,要加 -u root,否则会报fatal错误;如果你已经有mysql在运行,那么可能需要更改默认启动端口3306为其他端口,比如 3307
./memsqld -u root --port 3307 
  • 如果你的RAM没有8G,启动的时候会有警告,但可以忽略。

测试

$ mysql -u root -h 127.0.0.1 -P 3306 --prompt="memsql> " 
memsql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | memsql | +--------------------+ 2 rows in set (0.00 sec) 

建库:

memsql> create database chris001; Query OK, 0 rows affected (0.08 sec) memsql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | memsql | | chris001 | +--------------------+ 3 rows in set (0.00 sec) 

建表:

 memsql> use chris001; Database changed memsql> memsql> create table tab001 (id int primary key, name varchar(100), memo varchar(200),num int); Query OK, 0 rows affected (6.71 sec) memsql> memsql> memsql> show tables; +--------------------+ | Tables_in_chris001 | +--------------------+ | tab001 | +--------------------+ 1 row in set (0.00 sec) memsql> desc tab001; +-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | id | int(11) | NO | PRI | NULL | | | name | varchar(100) | YES | | NULL | | | memo | varchar(200) | YES | | NULL | | | num | int(11) | YES | | NULL | | +-------+--------------+------+-----+---------+-------+ 4 rows in set (0.00 sec) 

插入数据后查询:

memsql> insert into tab001 values (1,'chris','xxx',100); Query OK, 1 row affected (1.82 sec) memsql> memsql> memsql> select * from tab001; +----+-------+------+------+ | id | name | memo | num | +----+-------+------+------+ | 1 | chris | xxx | 100 | +----+-------+------+------+ 1 row in set (0.71 sec) memsql> select * from tab001; +----+-------+------+------+ | id | name | memo | num | +----+-------+------+------+ | 1 | chris | xxx | 100 | +----+-------+------+------+ 1 row in set (0.00 sec) memsql> select * from tab001; +----+-------+------+------+ | id | name | memo | num | +----+-------+------+------+ | 1 | chris | xxx | 100 | +----+-------+------+------+ 1 row in set (0.00 sec) memsql> select * from tab001; +----+-------+------+------+ | id | name | memo | num | +----+-------+------+------+ | 1 | chris | xxx | 100 | +----+-------+------+------+ 1 row in set (0.00 sec) memsql> select count(0) from tab001; +----------+ | count(0) | +----------+ | 1 | +----------+ 1 row in set (0.63 sec) memsql> memsql> select count(0) from tab001; +----------+ | count(0) | +----------+ | 1 | +----------+ 1 row in set (0.00 sec) memsql> select count(0) from tab001; +----------+ | count(0) | +----------+ | 1 | +----------+ 1 row in set (0.00 sec) 

查询的时候,服务端会打出日志:

2012-06-19 10:02:31 INFO: Table chris001.tab001 compiled in 6709 miliseconds (3185 miliseconds for header)

2012-06-19 10:02:31 INFO: Table chris001.tab001 row size 80 bytes (base overhead 32 bytes, column id 4 bytes, column name 12 bytes, column memo 12 bytes, column num 8 bytes)

2012-06-19 10:03:21 INFO: Query chris001.‘insert into tab001 values (?,?,?,?)’ compiled in 1825 miliseconds

2012-06-19 10:03:29 INFO: Query chris001.‘select * from tab001’ compiled in 712 miliseconds

2012-06-19 10:04:58 INFO: Query chris001.‘select count(0) from tab001’ compiled in 632 miliseconds

从以上测试我们看到,两次查询的首次和之后时间对比:

select * from tab001; (0.71 sec) (0.00 sec)

select count(0) from tab001; (0.63 sec) (0.00 sec)

从日志可以知道,首次查询的耗时基本全都花在编译上了 。

关闭

$ killall memsqld

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/125019.html

(0)
上一篇 2025-10-01 15:00
下一篇 2025-10-01 15:10

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信