马克-to-win:本 部分我们还是沿用上面的买车票的例子。不过这次的车票不是放在数据库当中,而是放在内存(缓存)当中。为了车票数这个变量不能被两个线程同时改变,我们或者可以用synchronized冠以买票的方法,或者可以加锁。在...
马克-to-win:我们前面讲过 了n-tier架构。在我们的程序当中,还可以设计一个缓存层。在去访问数据库之前,先看看缓存层中有没有数据,如果没有的话,从数据库取完数据回来,一 定要放在缓存层当中一份,下次就不用去数据库了。马...
马克-to-win @ 马克java社区:map 端做join和reduce端做join有何区别?我们前面讲的是Reduce端join,因为Reduce端join需要把所有的数据都经过 Shuffle,非常消耗资源,效率要远远低于Map端join。Map端join是指只有map工作,reduc...
马克-to-win @ 马克java社区:什么叫数据倾斜(data skew)?假如,你有两个reduce节点,数据都跑到第一个节点,(比如p_id=p1的数据非常多)第二个节点没什么数据, 结果第一个节点,工作完成总是卡在99.99%,一直99.99%不能结束。...
马克-to-win:有 的同学说了,如果突然掉电怎么办?这,我们就需要观察数据库是怎么处理的。对,日志。数据库为了保证正确性,在真正改变数据库之前,都是先存入日志,如果 存入日志时掉电,那简单忽略就行。如果日志存好了,往数据库当...
马克-to-win:上 面我们学习了数据库的并发安全。但是每次要更新数据,都需要访问数据库,这会耗费大量的时间。一万个人的更新数据,需要访问一万次数据库,这样做效率太低 了。马克-to-win:如果要能变成,最开始的时候访问一次数...