Click here to monitor SSC
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 


No Handwaving Away the DBA


No Handwaving Away the DBA

Author
Message
Steve Jones
Steve Jones
SSC-Dedicated
SSC-Dedicated (36K reputation)SSC-Dedicated (36K reputation)SSC-Dedicated (36K reputation)SSC-Dedicated (36K reputation)SSC-Dedicated (36K reputation)SSC-Dedicated (36K reputation)SSC-Dedicated (36K reputation)SSC-Dedicated (36K reputation)

Group: Administrators
Points: 36280 Visits: 18752
Gary Varga (5/12/2014)


There are but have been deemed too expensive and unnecessary for what NOSQL was originally intended for. Basically, it is a big misunderstanding with the people applying NOSQL paying too much attention to marketing and not enough to technical documentation.


It's not that they are too expensive or unnecessary, though that may be the decision at times.

It's that there is no way to do it at scale. If you get the volume of data that a Facebook or Twitter, or Google get, there is no way to get those machines in sync, physically. The laws of physics would be challenged, even if you were writing that data to memory.

When NoSQL says eventually consistent, it's not that they mean the data won't be the same until tomorrow, or an hour from now. They mean that not this ms. In practice, the consistency often is there sub-second, though it can be minutes when loads are high. It's the same with Service Broker. It doesn't make transactions instantaneous, but often it's so close that it might as well be instantaneous, in a practical sense, for most applications.

Follow me on Twitter: @way0utwest
Forum Etiquette: How to post data/code on a forum to get the best help
My Blog: www.voiceofthedba.com
Gary Varga
Gary Varga
SSCrazy Eights
SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)

Group: General Forum Members
Points: 8376 Visits: 6161
Steve Jones - SSC Editor (5/12/2014)
Gary Varga (5/12/2014)


There are but have been deemed too expensive and unnecessary for what NOSQL was originally intended for. Basically, it is a big misunderstanding with the people applying NOSQL paying too much attention to marketing and not enough to technical documentation.


It's not that they are too expensive or unnecessary, though that may be the decision at times.

It's that there is no way to do it at scale. If you get the volume of data that a Facebook or Twitter, or Google get, there is no way to get those machines in sync, physically. The laws of physics would be challenged, even if you were writing that data to memory.

When NoSQL says eventually consistent, it's not that they mean the data won't be the same until tomorrow, or an hour from now. They mean that not this ms. In practice, the consistency often is there sub-second, though it can be minutes when loads are high. It's the same with Service Broker. It doesn't make transactions instantaneous, but often it's so close that it might as well be instantaneous, in a practical sense, for most applications.


I agree but with regards to "for most applications" is where the professionals should know the difference. Clearly they did not at the BitCoin exchange that got ripped off.

Gaz

-- Stop your grinnin' and drop your linen...they're everywhere!!!
patrickmcginnis59 10839
patrickmcginnis59 10839
SSC Eights!
SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)

Group: General Forum Members
Points: 886 Visits: 5105
Gary Varga (5/13/2014)
Steve Jones - SSC Editor (5/12/2014)
Gary Varga (5/12/2014)


There are but have been deemed too expensive and unnecessary for what NOSQL was originally intended for. Basically, it is a big misunderstanding with the people applying NOSQL paying too much attention to marketing and not enough to technical documentation.


It's not that they are too expensive or unnecessary, though that may be the decision at times.

It's that there is no way to do it at scale. If you get the volume of data that a Facebook or Twitter, or Google get, there is no way to get those machines in sync, physically. The laws of physics would be challenged, even if you were writing that data to memory.

When NoSQL says eventually consistent, it's not that they mean the data won't be the same until tomorrow, or an hour from now. They mean that not this ms. In practice, the consistency often is there sub-second, though it can be minutes when loads are high. It's the same with Service Broker. It doesn't make transactions instantaneous, but often it's so close that it might as well be instantaneous, in a practical sense, for most applications.


I agree but with regards to "for most applications" is where the professionals should know the difference. Clearly they did not at the BitCoin exchange that got ripped off.


MtGox's failures didn't involve what database technology they used. There was a documented shortcoming in the bitcoin protocol that the company ignored. When they cashed out bitcoins, their erroneous use of the protocol meant that in certain cases, they cashed them out more than once. Essentially the txid (transaction id) is able to be modified by third parties, but MtGox didn't allow for this despite being a known issue since 2011, they instead relied on it to actually be immutable and trustyworthy. Developers were told not to rely on this but MtGox did and they got caught out by it.

This mistake could have been made using sql server for all that matters.

to properly post on a forum:
http://www.sqlservercentral.com/articles/61537/
Gary Varga
Gary Varga
SSCrazy Eights
SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)

Group: General Forum Members
Points: 8376 Visits: 6161
patrickmcginnis59 10839 (5/13/2014)
Gary Varga (5/13/2014)
Steve Jones - SSC Editor (5/12/2014)
Gary Varga (5/12/2014)


There are but have been deemed too expensive and unnecessary for what NOSQL was originally intended for. Basically, it is a big misunderstanding with the people applying NOSQL paying too much attention to marketing and not enough to technical documentation.


It's not that they are too expensive or unnecessary, though that may be the decision at times.

It's that there is no way to do it at scale. If you get the volume of data that a Facebook or Twitter, or Google get, there is no way to get those machines in sync, physically. The laws of physics would be challenged, even if you were writing that data to memory.

When NoSQL says eventually consistent, it's not that they mean the data won't be the same until tomorrow, or an hour from now. They mean that not this ms. In practice, the consistency often is there sub-second, though it can be minutes when loads are high. It's the same with Service Broker. It doesn't make transactions instantaneous, but often it's so close that it might as well be instantaneous, in a practical sense, for most applications.


I agree but with regards to "for most applications" is where the professionals should know the difference. Clearly they did not at the BitCoin exchange that got ripped off.


MtGox's failures didn't involve what database technology they used. There was a documented shortcoming in the bitcoin protocol that the company ignored. When they cashed out bitcoins, their erroneous use of the protocol meant that in certain cases, they cashed them out more than once. Essentially the txid (transaction id) is able to be modified by third parties, but MtGox didn't allow for this despite being a known issue since 2011, they instead relied on it to actually be immutable and trustyworthy. Developers were told not to rely on this but MtGox did and they got caught out by it.

This mistake could have been made using sql server for all that matters.


Agghhhh. Grey sources!!! I must find the article that blamed NoSQL. Either it is wrong and needs highlighting or it is right and I should let you know. I am now assuming that it is wrong.

Gaz

-- Stop your grinnin' and drop your linen...they're everywhere!!!
Eric M Russell
Eric M Russell
SSCarpal Tunnel
SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)

Group: General Forum Members
Points: 4647 Visits: 9579
patrickmcginnis59 10839 (5/13/2014)
Gary Varga (5/13/2014)
Steve Jones - SSC Editor (5/12/2014)
Gary Varga (5/12/2014)


There are but have been deemed too expensive and unnecessary for what NOSQL was originally intended for. Basically, it is a big misunderstanding with the people applying NOSQL paying too much attention to marketing and not enough to technical documentation.


It's not that they are too expensive or unnecessary, though that may be the decision at times.

It's that there is no way to do it at scale. If you get the volume of data that a Facebook or Twitter, or Google get, there is no way to get those machines in sync, physically. The laws of physics would be challenged, even if you were writing that data to memory.

When NoSQL says eventually consistent, it's not that they mean the data won't be the same until tomorrow, or an hour from now. They mean that not this ms. In practice, the consistency often is there sub-second, though it can be minutes when loads are high. It's the same with Service Broker. It doesn't make transactions instantaneous, but often it's so close that it might as well be instantaneous, in a practical sense, for most applications.


I agree but with regards to "for most applications" is where the professionals should know the difference. Clearly they did not at the BitCoin exchange that got ripped off.


MtGox's failures didn't involve what database technology they used. There was a documented shortcoming in the bitcoin protocol that the company ignored. When they cashed out bitcoins, their erroneous use of the protocol meant that in certain cases, they cashed them out more than once. Essentially the txid (transaction id) is able to be modified by third parties, but MtGox didn't allow for this despite being a known issue since 2011, they instead relied on it to actually be immutable and trustyworthy. Developers were told not to rely on this but MtGox did and they got caught out by it.

This mistake could have been made using sql server for all that matters.


...When they cashed out bitcoins, their erroneous use of the protocol meant that in certain cases, they cashed them out more than once...


I know next to nothing about the technical implementation or bitcoin or even how it work conceptually, but relational databases typically use unique key constraints to prevent events like "cashing out the same bitcoin twice". Each bitcoin should have a unique id, and a table inserted with one row when it is debited for cash.


"The universe is complicated and for the most part beyond your control, but your life is only as complicated as you choose it to be."
patrickmcginnis59 10839
patrickmcginnis59 10839
SSC Eights!
SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)

Group: General Forum Members
Points: 886 Visits: 5105

I know next to nothing about the technical implementation or bitcoin or even how it work conceptually, but relational databases typically use unique key constraints to prevent events like "cashing out the same bitcoin twice". Each bitcoin should have a unique id, and a table inserted with one row when it is debited for cash.

You do at least know that there is no centralized database for bitcoins right? (Reading your comment, it seems this might not be the case, I keep reading folks who think that bitcoin has some sort of "bank" or federal reserve or something issuing them.)

to properly post on a forum:
http://www.sqlservercentral.com/articles/61537/
Eric M Russell
Eric M Russell
SSCarpal Tunnel
SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)SSCarpal Tunnel (4.6K reputation)

Group: General Forum Members
Points: 4647 Visits: 9579
patrickmcginnis59 10839 (5/13/2014)

I know next to nothing about the technical implementation or bitcoin or even how it work conceptually, but relational databases typically use unique key constraints to prevent events like "cashing out the same bitcoin twice". Each bitcoin should have a unique id, and a table inserted with one row when it is debited for cash.

You do at least know that there is no centralized database for bitcoins right? (Reading your comment, it seems this might not be the case, I keep reading folks who think that bitcoin has some sort of "bank" or federal reserve or something issuing them.)

Yes, I know at least that much about bitcoin, but the distributed nature of the architecture doesn't necessarily excuse the same coin from being cashed out twice. There is latency when it comes to distributed transactions, but did both cash out transactions occur within MtGox's own node?


"The universe is complicated and for the most part beyond your control, but your life is only as complicated as you choose it to be."
Gary Varga
Gary Varga
SSCrazy Eights
SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)SSCrazy Eights (8.4K reputation)

Group: General Forum Members
Points: 8376 Visits: 6161
Eric M Russell (5/13/2014)
patrickmcginnis59 10839 (5/13/2014)

I know next to nothing about the technical implementation or bitcoin or even how it work conceptually, but relational databases typically use unique key constraints to prevent events like "cashing out the same bitcoin twice". Each bitcoin should have a unique id, and a table inserted with one row when it is debited for cash.

You do at least know that there is no centralized database for bitcoins right? (Reading your comment, it seems this might not be the case, I keep reading folks who think that bitcoin has some sort of "bank" or federal reserve or something issuing them.)

Yes, I know at least that much about bitcoin, but the distributed nature of the architecture doesn't necessarily excuse the same coin from being cashed out twice. There is latency when it comes to distributed transactions, but did both cash out transactions occur within MtGox's own node?


Yes. Same node. It was supposedly repeats of the same transaction. A quick search online provides plenty of evidence that suggests that in the public domain no one can be certain what occurred.

Gaz

-- Stop your grinnin' and drop your linen...they're everywhere!!!
patrickmcginnis59 10839
patrickmcginnis59 10839
SSC Eights!
SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)SSC Eights! (886 reputation)

Group: General Forum Members
Points: 886 Visits: 5105
Gary Varga (5/13/2014)
Eric M Russell (5/13/2014)
patrickmcginnis59 10839 (5/13/2014)

I know next to nothing about the technical implementation or bitcoin or even how it work conceptually, but relational databases typically use unique key constraints to prevent events like "cashing out the same bitcoin twice". Each bitcoin should have a unique id, and a table inserted with one row when it is debited for cash.

You do at least know that there is no centralized database for bitcoins right? (Reading your comment, it seems this might not be the case, I keep reading folks who think that bitcoin has some sort of "bank" or federal reserve or something issuing them.)

Yes, I know at least that much about bitcoin, but the distributed nature of the architecture doesn't necessarily excuse the same coin from being cashed out twice. There is latency when it comes to distributed transactions, but did both cash out transactions occur within MtGox's own node?


Yes. Same node. It was supposedly repeats of the same transaction. A quick search online provides plenty of evidence that suggests that in the public domain no one can be certain what occurred.


The reason they were able to be repeated is because of the transaction id getting changed by a third party, and it subsequently looks like a different transaction because MtGox based their system on interpreting it like such, despite it being advised not to do so. This was on the same node, and nosql doesn't seem to have much to do with it, because only one database node is required for this bug to take place, and furthermore, MtGox is (was) an exchange, not an issuer of bitcoin, the actual issuing of bitcoin is through the distributed block chain. Obviously we don't even know this for sure, but other than the mutable transaction id, bitcoin as such doesn't seem to be broken.

to properly post on a forum:
http://www.sqlservercentral.com/articles/61537/
GoofyGuy
GoofyGuy
SSC-Addicted
SSC-Addicted (421 reputation)SSC-Addicted (421 reputation)SSC-Addicted (421 reputation)SSC-Addicted (421 reputation)SSC-Addicted (421 reputation)SSC-Addicted (421 reputation)SSC-Addicted (421 reputation)SSC-Addicted (421 reputation)

Group: General Forum Members
Points: 421 Visits: 971
patrickmcginnis59 wrote:

... other than the mutable transaction id, bitcoin as such doesn't seem to be broken.

Perhaps not in the technical sense, but it is still is subject to the restrictions placed upon it by national governments, which may decide bitcoins are not convertible into the national currency, or (in the case of Silk Road) may shut down entire marketplaces which use bitcoins as an exchange mechanism.

Something tells me technical issues will be the least problem standing in the way of bitcoin's general acceptance as a 'currency'.
Go


Permissions

You can't post new topics.
You can't post topic replies.
You can't post new polls.
You can't post replies to polls.
You can't edit your own topics.
You can't delete your own topics.
You can't edit other topics.
You can't delete other topics.
You can't edit your own posts.
You can't edit other posts.
You can't delete your own posts.
You can't delete other posts.
You can't post events.
You can't edit your own events.
You can't edit other events.
You can't delete your own events.
You can't delete other events.
You can't send private messages.
You can't send emails.
You can read topics.
You can't vote in polls.
You can't upload attachments.
You can download attachments.
You can't post HTML code.
You can't edit HTML code.
You can't post IFCode.
You can't post JavaScript.
You can post emoticons.
You can't post or upload images.

Select a forum

































































































































































SQLServerCentral


Search