写点什么

数据库新闻汇总:ActiveRecord 数据分片,更快的 Postgres IO

  • 2008-07-23
  • 本文字数:712 字

    阅读完需:约 2 分钟

本次数据库新闻汇总有,FiveRun 最近开源的 ActiveRecord 数据分片插件 DataFabric;如何用 Postgres 异步客户端 API 和 Ruby 1.9 的 Fibers 来加速 Postgres 数据访问。

ActiveRecord 的数据分片

数据分片(Sharding)是一种将数据库打散成小块,然后分布到多台服务器上的技术,可以提高性能和可伸缩性。数据如何分割在很大程度上取决于应用的具体情况,比如 eBay 可以按照商品类别来划分。

ActiveRecord 本身并不支持数据分片,于是才有了 FiveRuns 的 DataFabric 。DataFabric 是一个 ActiveRecord 插件,它为数据模型增加了数据分片和复制的能力。

在模型中加入分片相当简单,它在 README 里给出了这样的例子:

<pre id="ga9a11">class MyHugeVolumeOfDataModel < ActiveRecord::Base<p>  data_fabric :replicated => true, :shard_by => :city</p><p>end </p>详细信息请参阅 FiveRuns 博客或者 DataFabric GitHub 仓库

更快的 Postgres IO

另一则数据库新闻是 Muhammed Ali 将 Ruby 的 Postgres 访问速度提高了约 40%。他用 Postgres 的异步客户端 API 和 Ruby 1.9 Fibers 实现了一个非阻塞的连接池和 fiber 池。从用户程序的角度看,交互过程是这样的:

[……] 当一个 fiber 调用 cpool.exec,查询被送到池中处理,该 fiber 被挂起,让路给 其他 fiber。 其他 fiber 到达 cpool.exec 的时候也同样会挂起。稍后你会在事件循环中收到查询结束的通知(但顺序不定),然后与已结束查询相关联的 fiber 将恢复执行。

Muhammed 还打算将之与 EventMachine 做更好的集成,也许能更进一步提升速度。请参阅 Muhammad 的博客,他将在上面给出代码的介绍和分析详情。

查看英文原文: Databases Roundup: Data Sharding for ActiveRecord and Faster Postgres IO

2008-07-23 01:16941
用户头像

发布了 225 篇内容, 共 66.0 次阅读, 收获喜欢 51 次。

关注

评论

发布
暂无评论
发现更多内容

【架构师训练营第 1 期 12 周】 作业

Bear

极客大学架构师训练营

架构师训练营—第十二周作业

Geek_shu1988

Week8作业

lggl

[架构师训练营第 1 期] 第12周命题作业

猫切切切切切

极客大学架构师训练营

架構師訓練營 week12 作業

ilake

第十一周 作业1

Yangjing

极客大学架构师训练营

【第十二周】数据应用

云龙

week7 性能优化(一) 作业和学习总结

杨斌

第十二周作业

极客大学架构师训练营

架构训练营第八周作业

一期一会

哈希表

接下来,冰河要有大动作了!!

冰河

开源 程序人生 高并发

「架构师训练营第 1 期」第十二周作业

张国荣

架构师训练营第 1 期第 12 周作业

好吃不贵

极客大学架构师训练营

架构师训练营第 12 周课后练习

叶纪想

极客大学架构师训练营

架構師訓練營 week12 總結

ilake

第八周作业

晴空万里

架构师训练营第2期

架构师 01 期,第十二周课后作业

子文

架构师训练营—第十二周学习总结

Geek_shu1988

架构师训练营第 12 周课后练习

薛凯

[架构师训练营第 1 期] 第12周学习总结

猫切切切切切

极客大学架构师训练营

week12学习总结

龙卷风

架构师一期

第八周学习总结

晴空万里

架构师训练营第2期

第十二周作业

Meow

架构师训练营 - 第十二周总结

一个节点

极客大学架构师训练营

安全声明标记语言SAML2.0初探

程序那些事

程序那些事 安全框架 SAML SAML2.0 安全协议

第十二周学习总结

Meow

第十一周 作业2

Yangjing

极客大学架构师训练营

用户观看视频业务出现花屏故障

架构师训练营 - 第十二周作业

一个节点

极客大学架构师训练营

架构之书:出路与《Expert One-on-One J2EE Development without EJB》

lidaobing

Java 架构

链表合并问题

jorden wang

数据库新闻汇总:ActiveRecord数据分片,更快的Postgres IO_Ruby_Mirko Stocker_InfoQ精选文章