240 发简信
IP属地:山东
  • Resize,w 360,h 240
    如何高效学习

    这篇 Blog 会写很多废话,因为我不是把它当作一篇正式的分享写的,我是把它当作对自己过去一段时间日记式的回顾与分享的结合体去写的,一点不正式,...

  • Resize,w 360,h 240
    Google Spanner事务机制解析: 我的事务为什么被中止?Transaction was aborted

    目前公司几乎所有的项目都使用Spanner,在我们部署的项目中发现偶尔会有Transaction was aborted的情况,报错如下: 很多...

  • Resize,w 360,h 240
    理解Google Spanner(4): 看懂查询计划

    Spanner会为每条SQL生成一个或多个查询计划,并选择数据库认为最优的那个查询计划去执行,同一个SQL,不同的查询计划最终的效率可能是千差万...

  • Resize,w 360,h 240
    理解Google Spanner(3):分布式事务原理与实现

    本篇涉及到分布式事务的原理与Spanner事务实现,需要大概理解单机数据库事务,如果还不理解,可以先看看之前的两篇: 《从0到1理解数据库事务(...

    0.8 6230 0 10
  • 从0到1理解数据库事务(下):隔离级别实现——MVCC与锁

    这是数据库事务分享的第二篇,上一篇讲解数据库事务并发会产生的问题,这篇会详细讲数据库如何避免这些问题,也就是如何实现隔离,主要是讲两种主流技术方...

  • Resize,w 360,h 240
    从0到1理解数据库事务(上):并发问题与隔离级别

    最近准备写一篇关于Spanner事务的分享,所以先分享一些基础知识,涉及ACID、隔离级别、MVCC、锁,由于太长,只好拆分成上下两篇: 上:并...

  • Resize,w 360,h 240
    理解Google Spanner(2):数据是如何存储的

    阅读本文之前,最好已经阅读过Spanner官方文档。本文适合以下两类人:A. 如果你读完官方文档完全没能举一反三,还是一头雾水,不知道使用Spa...

    0.5 6375 2 22 1
  • Resize,w 360,h 240
    程序员如何培养解决复杂问题的能力

    程序员大致可以分为三类:码农、工程师、高级工程师 Level 1 - 码农能做事,但缺乏思考,Coding只是体力活。 Level 2 - 工程...

    0.9 8727 6 23
  • Resize,w 360,h 240
    理解Google Spanner(1):数据复制与分片

    现在工作中有很多项目开始转到Google Spanner,虽然是很牛逼的分布式数据库,但由于太新了,并且是闭源的,网上几乎没有什么资料可查,为了...