由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - database 的线程安全操作
相关主题
需求建议,关于NOSQL如何enumerate线程
越来越讨厌relational database了求教 java.lang.outofMemory
请问几种编程语言的前途线程问题。
听说这里big data大拿多, MongoDB和Cassandra,问个多线程的问题。
mongodb自带的map/reduce跟hadoop的有什么关联吗?多线程搜索同一个文件问题。
现在感觉到为什么大家说mongo有很多问题了[合集] 请教: A question related to thread communication
总结并分享一下工作中学到的各种技术同步的问题
听说HBase很难用问个多线程的问题
相关话题的讨论汇总
话题: 线程话题: t2话题: balance话题: 操作
进入Java版参与讨论
1 (共1页)
b****u
发帖数: 1130
1
是个面试题。问一个账号,两个线程,一个+50 dollar, 一个加100 dollar.
如何保证在数据库上的结果是正确的。
我理解是用CAS的概念去解决这个问题。但对方要我写相关的SQL 语句, 并且详细解释
low-level级的操作。(e.g. Update BankAccount set balance=150 where...)
这应该是一个常见的问题。我对数据库的transaction了解很少。想请教大家,最好给
一点相关链接。
g*****g
发帖数: 34805
2
update account set balance = balance + ? where account_id = ?
Transaction is guarded by write lock on the row. So 2 threads won't do it at
the same time.

【在 b****u 的大作中提到】
: 是个面试题。问一个账号,两个线程,一个+50 dollar, 一个加100 dollar.
: 如何保证在数据库上的结果是正确的。
: 我理解是用CAS的概念去解决这个问题。但对方要我写相关的SQL 语句, 并且详细解释
: low-level级的操作。(e.g. Update BankAccount set balance=150 where...)
: 这应该是一个常见的问题。我对数据库的transaction了解很少。想请教大家,最好给
: 一点相关链接。

p*****2
发帖数: 21240
3
SQL没有类似Mongo incr这样的东西吗?
T*********g
发帖数: 496
4
他想问的是transaction isolation level。
假设同时有Transaction T1, T2试图读取并修改相同的row,ANSI定义了好像有四种,
1) read_uncommitted Trasaction T1修改但是没有commit的data会被同时进行的T2读
取,这个叫dirty_read
2) read_committed 只有在事务提交后,才会对另一个事务产生影响,并且在对表进行
修改时,会对表数据行加上行共享锁
3)repeatable_read T2始终读取的值在T2的范围内不会改变
4)serializable 完全串行
具体这上面四种隔离模式在不同的数据库里是不大一样的。我比较熟悉MYSQL,MYSQL的
2,4都可以保证你说的情况。

【在 b****u 的大作中提到】
: 是个面试题。问一个账号,两个线程,一个+50 dollar, 一个加100 dollar.
: 如何保证在数据库上的结果是正确的。
: 我理解是用CAS的概念去解决这个问题。但对方要我写相关的SQL 语句, 并且详细解释
: low-level级的操作。(e.g. Update BankAccount set balance=150 where...)
: 这应该是一个常见的问题。我对数据库的transaction了解很少。想请教大家,最好给
: 一点相关链接。

1 (共1页)
进入Java版参与讨论
相关主题
问个多线程的问题mongodb自带的map/reduce跟hadoop的有什么关联吗?
问个多线程问题现在感觉到为什么大家说mongo有很多问题了
可以多个线程同时读一个文件吗总结并分享一下工作中学到的各种技术
请教个throughput的问题听说HBase很难用
需求建议,关于NOSQL如何enumerate线程
越来越讨厌relational database了求教 java.lang.outofMemory
请问几种编程语言的前途线程问题。
听说这里big data大拿多, MongoDB和Cassandra,问个多线程的问题。
相关话题的讨论汇总
话题: 线程话题: t2话题: balance话题: 操作