본문 바로가기

카테고리 없음

RDBMS vs NoSQL

- NoSQL은 not only SQL 이었다.... 지금까지 no sql 인줄알았던 사람 손들엇 ㅋ......... (잇츠미... 순백의 뇌...)


- couchdb 이미지 충격적ㅋㅋㅋㅋ그냥 소파위에 누워있네 ㅋㅋㅋ

couchdb 특징에 대한 이미지 검색결과


- NoSQL이 지금 왜 인기인가?
: The reason why NoSQL has been so popular the last few years is mainly because, when a relational database grows out of one server, it is no longer that easy to use. In other words, they don't scale out very well in a distributed system. (https://dba.stackexchange.com/a/73) -> RDBMS는 분산시스템에서 사용하기 어렵다. 한 서버 이상에서는 어려움.


- 이걸 검색하다보니 CAP theorem이랑 그런글들이 있네... 

: (CAP 이론에 단점을 설명해주는 한글 글을 찾았다....! 올레! 설명 조금 붙이면 CAP는 분산시스템 설계에서 기술적인 선택을 돕는다. 분산시스템이 모든 것 특성을 만족시킬 수 없음을 인지하게 하고 선택지를 제공해주는 것이다. 하지만 CAP를 명확하게 이해하기 위해서는 다음과 같은 문제들이 해결되어야 한다. ..... 후략


- 근데 또 CAP가 별로라고 PACELC? 이게 더 낫다네...


- NoSQL 카테고리를 나눠보자면.... 대략 (다양한 분야의 NoSQL이라고 지칭되는 DB들이 있는듯)


  • key/value stores
  • Bigtable inspired databases (based on the Google Bigtable paper)
  • Dynamo inspired databases
  • distributed databases
  • document databases

- NoSQL 은 그래서...

* 수평확장에 용이.... 아니 잠깐... 수평확장이 대체 뭐야?????? 말좀 그만만들어... 자식들아.... ㅠㅠ  나랑 공감한 사람이 있었네 ....ㅋㅎ 

https://dba.stackexchange.com/questions/4508/what-does-horizontal-scaling-mean


scaling 에 관한 부분 하나 더 


Both solutions are easy to scale vertically (i.e. by increasing system resources). However, being more modern (and simpler) applications, NoSQL solutions usually offer much easier means to scale horizontally (i.e. by creating a cluster of multiple machines). 



* 구조화되지 않은 방식으로 데이터를 저장. (테이블대로 저장이되는게 아니라는 뜻 같음. )

* 구조화된 데이터를 처리할때는 RDBMS가 편한거같음 

데이터 신뢰성 및 수행 된 트랜잭션의 안전한 보장에 관해서는 SQL 데이터베이스가 더 나은 선택이다!


SQL
NoSQL
Known As
SQL Based database Management System is majorly known as RDBMS or DBMS Systems
Whereas NoSQL database are primarily non-relational database or distributed database
Architecture
SQL Database mainly   architecture surrounded to the Tables
      In Case of NoSQL database there are major four categorization
  • Document base 
  • Key-value pair base 
  •  Graph database 
  • Wide-column Store
Schema
SQL database has its own predefine schema to store structure data
In NoSQL database, there is no predefine schema, here schema is most dynamic element based on the data elements
Scalability
SQL Databases are vertically scalable, means if we want to scale SQL base database, we need to give hardware boost on which the DBMS System is installed. This is where it sometimes goes for the limitation of scalability.
NoSQL database are horizontally scalable, means if we want to scale it, we need to add more nodes and create distribution network based on our own need and required power. This is how it reduce load on the database
Data Retrieval
In SQL based database, to define and manipulate data we can use SQL (Structure Query Language), which is very powerful now a days
In terms of NoSQL database queries are focus on the collection and documents. Sometimes it is called as UnQL (Unstructured Query Language). This is still in the evolution phase, so it is varies from vendor to vendor of the NoSQL database
Systems in Market Place
BigTable
Redis
RavenDb
Classification
     We can classify RDBMS into two major type 
  • Open Source database
  • Close Source database
      We can classify NoSQL DB based on the way of storing data
  • Key-value pair store database 
  •  Graph database 
  •  Document Store 
  •  Column Store 
  •  XML Store
Based Concept
All RDBMS System based on the codes law and ACID Properties
NoSQL database mostly follow “The CAP Theorem”1

출처 http://viratgaywala.blogspot.com/2014/05/difference-between-sql-and-nosql.html





rdbms nosql diff에 대한 이미지 검색결과

출처 https://www.agiratech.com/the-key-differences-between-sql-and-nosql-database/






스택익스체인지의 RDBMS vs NoSQL ? https://dba.stackexchange.com/a/73

CAP보다는... 의 한글 글 http://eincs.com/2013/07/misleading-and-truth-of-cap-theorem/

CAP에대한 다른... 한글.... 글 https://hamait.tistory.com/197

RDBMS vs NoSQL 의 한글 글 https://codingcoding.tistory.com/200

https://www.digitalocean.com/community/tutorials/understanding-sql-and-nosql-databases-and-different-database-models

NoSQL Technology 슬라이드 쉐어 https://www.slideshare.net/fachrybafadal/nosql-technology



----------------------

+ 덧 

ACID(원자성, 일관성, 고립성, 지속성)는 데이터베이스 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질을 가리키는 약어







-----------------------------------------------------------------------------------------------------------------------

솔직히 이런거 보고 잘 이해안갔고

각각 서비스에 맞지않게 DB를 이용해서 *되버린 사례. 이런거 보면 이해가 쉬울텐데.

https://eng.uber.com/mysql-migration/ 이거는 RDBMS 에서 RDBMS 구...

http://blog.nahurst.com/visual-guide-to-nosql-systems 이게 유명한 글인것같은뎁. 

그러면 NoSQL은 은행권에서 쓰일 수 있나?? 나와 같은 질문을 한사람이 잇엇군. 역시 다 비슷한거지?? 

-> https://stackoverflow.com/questions/8977509/nosql-database-for-banking-system

어쨌거나 

In RDBMS-land all transactions should be ACID (Atomic, Consistent, Isolated and Durable). NoSQL databases typically do not have strict ACID requirements

이 내용은 답변으로 보통  기술되는듯


근데 그 밑에 답변에 FIS 사에서 개발한 GT.M이라는 DB가 NoSQL인데 대량 트랜잭션 지원한다고 되어있고 뱅킹 솔루션에도 이용이되었다구 하는걸로보아... 안되는것은 또 아닌듯? https://en.wikipedia.org/wiki/GT.M


맵리듀스... 라는 개념두 많이 나왔는데... https://cskstory.tistory.com/entry/%EB%A7%B5%EB%A6%AC%EB%93%80%EC%8A%A4-MapReduce-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0