V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Tornado Documentation
http://www.v2ex.com/tornado/
Tornado on GitHub
https://github.com/facebook/tornado/
Tornado Gists
http://tornadogists.org/
kernel1983
V2EX  ›  Tornado

NoSQL on MySQL on Tornado

  •  
  •   kernel1983 · 2012-08-16 23:31:07 +08:00 · 5632 次点击
    这是一个创建于 4479 天前的主题,其中的信息可能已经有所发展或是发生改变。
    根据Bret Taylor的blog: http://backchannel.org/blog/friendfeed-schemaless-mysql

    实现了一套NoSQL on MySQL, 基于tornado, 其实只用到它的database.py
    无ORM, 纯SQL, 纯函数

    自己试用了一下, 觉得非常强大, MySQL在这种模式下使用, 不再有花半个小时索引数据的需求, 并且可以通过增加机器数量快速的scale up

    不知道有没有必要将这套东西整理开放出来, 做出一种标准化的东西, 以便快速应用到各种业务的实现上面

    有朋友对此感兴趣吗?
    5 条回复    1970-01-01 08:00:00 +08:00
    ipconfiger
        1
    ipconfiger  
       2012-08-17 00:09:46 +08:00   ❤️ 1
    我已经开源出来一个实现了 https://github.com/ipconfiger/free4my
    kernel1983
        2
    kernel1983  
    OP
       2012-08-17 09:33:38 +08:00
    Wow, very nice!
    读了一下, 很不错.

    不过最近我在尝试FP的东西, 我写的一大堆也全部都是函数, 一个类都没有.
    目前正在努力减少代码行数.
    Zhongwei
        3
    Zhongwei  
       2012-08-17 09:37:56 +08:00
    非常有兴趣啊!

    最近在做的几个系统都开始尝试使用这种数据库设计。

    目前数据量比较小,想偷偷使用事务。。。
    ghoulr
        4
    ghoulr  
       2012-08-17 16:02:26 +08:00
    既然这么别扭了已经,为啥不用postgresql呢,有一个字段类型叫hstore...
    mysql已经变成了锤子了么
    kernel1983
        5
    kernel1983  
    OP
       2012-08-23 23:40:06 +08:00
    PostgreSQL如果能解决问题, MySQL早就被抛弃了

    讨论中这种编程方式事实上最后变成一个key/value数据库编程的问题, 偶尔利用一下mysql的索引功能, 数据存储部分其实可以用BDB引擎代替了(暂时不打算分开折腾)

    另外自己的工作效率在使用schemaless的数据结构以后, 有了很大的提升.

    数据库结构的设计和修改往往占用了很多的编码时间和团队沟通时间, 现在团队则会花更多时间讨论数据块粒度对于整个系统性能的影响, 以及读取算法的优化, 而不是花时间决定应该怎样命名某个字段.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3176 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:19 · PVG 20:19 · LAX 04:19 · JFK 07:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.