Vtocc

高性能MySQL的前端
授权协议 BSD
开发语言 Python
所属分类 数据库相关、 数据库调整和优化
软件类型 开源软件
地区 不详
投 递 者 濮金鑫
操作系统 Windows
开源组织
适用人群 未知
 软件概览

Vtocc 是 vitess 的首个可用的产品,它作为 MySQL 的前端提供一个 RPC 接口接收 SQL 语句并对这些语句进行转换。提供高效的多路大规模的数据库操作请求,超过10k+的并发处理能力。同时提供一个 SQL 解析器可以让服务器理解并智能的对查询进行优化。

Vtocc 已经在大规模的产品环境中使用,它是 YouTube 新的 MySQL 服务架构的核心。

示例代码:

from vtdb import vt_occ2 as db
conn
= db.connect('localhost:6510', timeout=5, dbname='mydb')
curs
= conn.cursor()
curs
.execute('select * from mytable limit 5', {})
print curs.description
for v in curs:
 
print v
print curs.rowcount

主要功能:

  • A Python DBAPI 2.0 兼容的客户端接口 (vt_occ2.py)
  • 理解各种基于 HTTP 和 TCP 的协议
  • 支持查询变量以及查询缓存,可避免重复的 SQL 解析以及重用查询计划
  • 连接池
  • 事务管理,可限制并发事务数和管理事务失效
  • DML 注解: 每个 DML 将被重写并在结尾包含一个注释字段以标识出修改的行记录
  • 内置故障保险
    • Query 合并: The ability to reuse the results of an in-flight query to any subsequent requests that were received while the query was still executing.
    • 可限制查询结果数,如果超出则报错
    • 可删除一些超长的事务
    • 可删除一些时间太长的查询
    • 自动清理空闲连接

Vtocc 的模块:

获取源码的方法:hg clone https://code.google.com/p/vitess/

 相关资料
  • 问题内容: 我正在测试MySQL作为SQL Server的替代产品,并且遇到了一些非常奇怪的事情。我正在测试插入和读取,并且以任何一种方式每秒最多处理约50个查询。 我的测试表如下所示: 我的C#测试程序如下所示: 似乎是一个相当简单的测试用例。在MySQL的安装中,尽管我必须将innodb的缓冲池从2G降低到1G,但我正在使用默认OLTP标准服务器设置运行32位。我不知道瓶颈在哪里。MySQL数

  • 问题内容: 我分两个步骤运行MYSQL查询。首先,通过一个查询获取ID列表,然后使用第二个查询沿的方式检索这些ID的数据。我知道这听起来很骇人听闻,但是由于查询非常复杂,我已经这样做了。第一个涉及许多几何和触发法,第二个涉及许多不同的联接。我确定它们可以在单个查询中编写,但是我的MYSQL不足以实现它。 这种方法有效,但是 感觉 不对。再加上我担心它不会扩展。目前,我正在10,000个记录的数据库

  • 本文向大家介绍提高Web性能的前端优化技巧总结,包括了提高Web性能的前端优化技巧总结的使用技巧和注意事项,需要的朋友参考一下 这篇文章讲述可以帮助 改善优化前端的技术,非常有用。主要内容有清理代码、压缩图片、压缩外部资源、使用CDN,以及一些其它方法。这些方法会为你的网站带显著的速度提升和整体性能提升。 一. 清理 HTML 文档 HTML,即超文本标记语言,几乎是所有网站的支柱。HTML 为网

  • 主要内容:一般业务系统运行流程图,一台 4 核 8G 的机器能扛多少并发量呢?,高并发来袭时数据库会先被打死吗?,8 核 16G 的数据库每秒大概可以抗多少并发压力?,数据库架构可以从哪些方面优化?,总结今天给大家分享一个知识点,是关于 MySQL 数据库架构演进的,因为很多兄弟天天基于 MySQL 做系统开发,但是写的系统都是那种低并发压力、小数据量的,所以哪怕上线了也就是这么正常跑着而已。 但是你知道你连接的这个 MySQL 数据库他到底能抗多大并发压力吗?如果 MySQL 数据库扛不住压力

  • 我们运行在apache kafka 0.10.0. x和Spring 3. x上,不能使用Spring kafka,因为它支持Spring框架版本4. x。 因此,我们使用原生的Kafka Producer API来生成消息。 现在我关心的是我的制片人的表现。问题是我相信有人打电话给是真正连接到Kafka broker,然后将消息放入缓冲区,然后尝试发送,然后可能会调用。 现在,KafkaProd

  • 您可以通过优化您的计算机系统、After Effects、您的项目和您的工作流程来改进性能。此处提供的某些建议不是通过提高渲染速度而是通过降低其他操作(例如,打开项目)所需的时间来改进性能的。 注意:到目前为止,用来改进总体性能的最好方法是提前规划、针对您的工作流程和输出管道运行早期测试、并确认您所提供的内容是您的客户实际需要和预期的内容。(请参阅规划您的工作。) Lloyd Alvarez 在