NoSQL이 등장하게된 계기는, 기존 RDBMS는 구조상 분산처리에 적합하지 않았습니다. 데이터베이스를 분산 저장하는 샤딩이라는 기술이 있지만, 어플리케이션 레벨에서 직접 구성해야 했기 때문에 번거로웠고, 다른 방법인 오라클의 공유 디스크 기술의 경우에는 라이선스 문제가 있었습니다. 또한 하드웨어의 성능을 증가시키는 scale-up 확장방식에 적합하였기 때문에 장비수를 늘리는 scale-out 방식을 사용할 수 없어 비용부담이 컸습니다. 두번째로 SNS등의 발전으로 처리할 데이터가 폭발적으로 증가하고, 데이터의 형식은 예측할 수 없어 스키마가 정해져있는 기존 관계형 데이터베이스를 대체할 방법이 필요했습니다. 세번째로, RDBMS 시장은 주로 오라클과 마이크로소프트, IBM같은 상용 DBMS가 대부분 차지하고 있는 상황이여서, Mysql과같은 오픈소스의 선택지가 넓은 NoSQL을 고려하게 되었습니다.
기존의 RDBMS와 NoSQL에 대해 정리한 표 입니다. 가장 큰 차이는 각각 ACID와 BASE특성을 갖고 있다는 점과 schema 구조의 유연성의 차이, 하드웨어 업그레이드 방식의 수직적 확장에 의존하는 RDBMS와는 달리 NoSQL 수평적 확장이 가능하고, noSQL은 데이터를 저장할 때의 형식에 의존하지 않습니다. 또한 NoSQL은 집합 단위로 데이터가 저장됩니다. 그럼 특징을 하나씩 살펴보겠습니다.
우선 기존 RDBMS부터 알아보자면 각각 트랜잭션이 무조건 다 완료되거나 다 실패한다는 ATOMICITY(원자성), 트랜잭션이 데이터의 일관성(공통되는 특징)에 영향을 끼치면 안된다는 CONSISTENCY(일관성) , 트랜잭션이 순차적으로 동시에 한개씩 실행됨을 보장하는 ISOLATION(독립성), 트랜잭션의 결과가 영구히 남아있어야 한다는 DURABILITY(지속성) 4개의 특성 ACID라고 하고, 이 특성을 기반으로 두고 있습니다.
이와 반대로 NoSQL은 기본적으로 시스템이 언제나 사용할 수 있는 상태로 유지될 수 있도록 지원하는 availability, 아래 eventually consistency를 위해 input 없이도 시스템 상태가 바뀔 수 있다는 soft-state, 입력 당시엔 일관성이 유지된 상태가 아니지만, 특정 상황엔 일관성이 유지된 상태가 된다는 Eventually consistency 총 3개의 특성 BASE라 하고, 기반으로 두고 있습니다.
RDBMS와의 가장 큰 차이점은 noSQL같은 경우 무조건적으로 일관성을 보장하지 않습니다.
지금까지의 RDBMS와 다른 특징 데이터에 일관성이 보장되지 않아도 되고, 데이터 타입이 고정되지 않고 유연하며, 확장성이 좋다라는 특징 덕분에 빅데이터 처리에 유리합니다.
NoSQL은 아직 제품군이 제대로 정의되지 않았고, 제품 각각의 특성이 있기에 CAP 이론을 기반으로 제품을 구분합니다. Consistency는 모든 사용자가 서로 같은 시점의 데이터를 볼 수 있어야 한다는 특성, Availability는 시스템이 항상 작동해야 한다는 특성, 세번쨰 Tolerance to Network Partitions는 각각의 분산처리를 위해 나눠진 노드끼리 메시지 손실이 일어날 수 있다는 특성입니다. 1,2번째 특성의 경우 분산 시스템의 특성이지만, 3번째 P의 경우 네트워크 구성에 관련한 특성이고, 장애가 없는 네트워크란 존재하지 않기 때문에 모든 nosql 제품은 P를 택하게 됩니다. 즉, 네트워크 장애 상황(P)가 일어나면 A와 P중 무엇에 가중치를 두느냐의 차이입니다.
아까의 CAP는 P를 포함(즉, 장애가 있다는 상황)을 전제로 계산하기 때문에, 이를 개선하여 장애가 존재할시(partitio일시) Availability와 Consitency를, 일반 상황에선 consistency 와 latency 중 하나에 우선순위를 두어 제품군을 나누도록 권장하고 있습니다.
NoSQL 제품을 큰 범위로 나누자면 집합지향 모델과 그래프 모델로 이루어져 있습니다. 주로 집합지향 모델이 채택되고, 각각 키-밸류 형식, 도큐먼트 형식, 컬럼패밀리 방식으로 나눠집니다. 그래프 모델은 기존 RDBMS와 비슷한 특성을 가지고, 클러스터링에 적합하지 않으며 특수한 상황에만 사용됩니다.
NoSQL은 주로 aggregate이라는 단위를 씁니다. 오른쪽이 기존 관계형 데이터베이스가 값을 저장하는 방식이라면, 왼쪽에는 의미있는 단위로 값을 묶어 한번에 저장합니다. 이 방식으로 인해 여러 큰 클러스터에 값을 저장하는데 유리하고, 질의가 빨라집니다. 또한 하나의 집합이 하나의 노드에 저장됨을 보장합니다.
Agreegate oriented 모델 방식 중 Key-value oriented 방식은 Key값과 value값이 1대1로 매칭되는 가장 간단한 방식입니다. Put,get,delete 정도의 단순한 쿼리만 지원하고, 키로만 값을 찾아올 수 있습니다. value에는 들어가는 값의 형식을 제한하지 않습니다. 이 방식을 사용한 DB로는 aws dynamodb, redis가 있습니다.
Column family stores 방식은 하나의 키에 여러 컬럼을 묶어놓은 column family를 저장하는 방식으로 여러 개의 데이터를 한번에 저장할 수 있습니다. 이 방식을 사용한 db는 Cassandra, apache hbase가 있습니다.
DOCUMENT DATABASE 방식은 키와 – json, xml 등의 구조화된 데이터 형식으로 저장됩니다. 다른 도큐먼트 query languag를 사용시 도큐먼트 안의 데이터도 질의 가능합니다. 이 방식을 사용한 DB로는 mongoDB, CouchDB가 있습니다.
NoSQL은 RDBMS의 데이터 분석 – 테이블 디자인 – 쿼리 디자인 방식과 다르게 데이터 분석 – 쿼리 디자인 – 테이블디자인의 순서로 모델링합니다.
감사합니다.
NoSQL이 등장하게된 계기는, 기존 RDBMS는 구조상 분산처리에 적합하지 않았습니다. 데이터베이스를 분산 저장하는 샤딩이라는 기술이 있지만, 어플리케이션 레벨에서 직접 구성해야 했기 때문에 번거로웠고, 다른 방법인 오라클의 공유 디스크 기술의 경우에는 라이선스 문제가 있었습니다. 또한 하드웨어의 성능을 증가시키는 scale-up 확장방식에 적합하였기 때문에 장비수를 늘리는 scale-out 방식을 사용할 수 없어 비용부담이 컸습니다. 두번째로 SNS등의 발전으로 처리할 데이터가 폭발적으로 증가하고, 데이터의 형식은 예측할 수 없어 스키마가 정해져있는 기존 관계형 데이터베이스를 대체할 방법이 필요했습니다. 세번째로, RDBMS 시장은 주로 오라클과 마이크로소프트, IBM같은 상용 DBMS가 대부분 차지하고 있는 상황이여서, Mysql과같은 오픈소스의 선택지가 넓은 NoSQL을 고려하게 되었습니다.
기존의 RDBMS와 NoSQL에 대해 정리한 표 입니다. 가장 큰 차이는 각각 ACID와 BASE특성을 갖고 있다는 점과 schema 구조의 유연성의 차이, 하드웨어 업그레이드 방식의 수직적 확장에 의존하는 RDBMS와는 달리 NoSQL 수평적 확장이 가능하고, noSQL은 데이터를 저장할 때의 형식에 의존하지 않습니다. 또한 NoSQL은 집합 단위로 데이터가 저장됩니다. 그럼 특징을 하나씩 살펴보겠습니다.
우선 기존 RDBMS부터 알아보자면 각각 트랜잭션이 무조건 다 완료되거나 다 실패한다는 ATOMICITY(원자성), 트랜잭션이 데이터의 일관성(공통되는 특징)에 영향을 끼치면 안된다는 CONSISTENCY(일관성) , 트랜잭션이 순차적으로 동시에 한개씩 실행됨을 보장하는 ISOLATION(독립성), 트랜잭션의 결과가 영구히 남아있어야 한다는 DURABILITY(지속성) 4개의 특성 ACID라고 하고, 이 특성을 기반으로 두고 있습니다.
이와 반대로 NoSQL은 기본적으로 시스템이 언제나 사용할 수 있는 상태로 유지될 수 있도록 지원하는 availability, 아래 eventually consistency를 위해 input 없이도 시스템 상태가 바뀔 수 있다는 soft-state, 입력 당시엔 일관성이 유지된 상태가 아니지만, 특정 상황엔 일관성이 유지된 상태가 된다는 Eventually consistency 총 3개의 특성 BASE라 하고, 기반으로 두고 있습니다.
RDBMS와의 가장 큰 차이점은 noSQL같은 경우 무조건적으로 일관성을 보장하지 않습니다.
지금까지의 RDBMS와 다른 특징 데이터에 일관성이 보장되지 않아도 되고, 데이터 타입이 고정되지 않고 유연하며, 확장성이 좋다라는 특징 덕분에 빅데이터 처리에 유리합니다.
NoSQL은 아직 제품군이 제대로 정의되지 않았고, 제품 각각의 특성이 있기에 CAP 이론을 기반으로 제품을 구분합니다. Consistency는 모든 사용자가 서로 같은 시점의 데이터를 볼 수 있어야 한다는 특성, Availability는 시스템이 항상 작동해야 한다는 특성, 세번쨰 Tolerance to Network Partitions는 각각의 분산처리를 위해 나눠진 노드끼리 메시지 손실이 일어날 수 있다는 특성입니다. 1,2번째 특성의 경우 분산 시스템의 특성이지만, 3번째 P의 경우 네트워크 구성에 관련한 특성이고, 장애가 없는 네트워크란 존재하지 않기 때문에 모든 nosql 제품은 P를 택하게 됩니다. 즉, 네트워크 장애 상황(P)가 일어나면 A와 P중 무엇에 가중치를 두느냐의 차이입니다.
아까의 CAP는 P를 포함(즉, 장애가 있다는 상황)을 전제로 계산하기 때문에, 이를 개선하여 장애가 존재할시(partitio일시) Availability와 Consitency를, 일반 상황에선 consistency 와 latency 중 하나에 우선순위를 두어 제품군을 나누도록 권장하고 있습니다.
NoSQL 제품을 큰 범위로 나누자면 집합지향 모델과 그래프 모델로 이루어져 있습니다. 주로 집합지향 모델이 채택되고, 각각 키-밸류 형식, 도큐먼트 형식, 컬럼패밀리 방식으로 나눠집니다. 그래프 모델은 기존 RDBMS와 비슷한 특성을 가지고, 클러스터링에 적합하지 않으며 특수한 상황에만 사용됩니다.
NoSQL은 주로 aggregate이라는 단위를 씁니다. 오른쪽이 기존 관계형 데이터베이스가 값을 저장하는 방식이라면, 왼쪽에는 의미있는 단위로 값을 묶어 한번에 저장합니다. 이 방식으로 인해 여러 큰 클러스터에 값을 저장하는데 유리하고, 질의가 빨라집니다. 또한 하나의 집합이 하나의 노드에 저장됨을 보장합니다.
Agreegate oriented 모델 방식 중 Key-value oriented 방식은 Key값과 value값이 1대1로 매칭되는 가장 간단한 방식입니다. Put,get,delete 정도의 단순한 쿼리만 지원하고, 키로만 값을 찾아올 수 있습니다. value에는 들어가는 값의 형식을 제한하지 않습니다. 이 방식을 사용한 DB로는 aws dynamodb, redis가 있습니다.
Column family stores 방식은 하나의 키에 여러 컬럼을 묶어놓은 column family를 저장하는 방식으로 여러 개의 데이터를 한번에 저장할 수 있습니다. 이 방식을 사용한 db는 Cassandra, apache hbase가 있습니다.
DOCUMENT DATABASE 방식은 키와 – json, xml 등의 구조화된 데이터 형식으로 저장됩니다. 다른 도큐먼트 query languag를 사용시 도큐먼트 안의 데이터도 질의 가능합니다. 이 방식을 사용한 DB로는 mongoDB, CouchDB가 있습니다.
NoSQL은 RDBMS의 데이터 분석 – 테이블 디자인 – 쿼리 디자인 방식과 다르게 데이터 분석 – 쿼리 디자인 – 테이블디자인의 순서로 모델링합니다.
감사합니다.
2. 팬옵티콘 (panopticon)
• 1791년 영국의 철학자 제러미 벤담이 죄수를 효과적으로 감시할 목적으로 고안한 원형 감옥을 말한다.
팬옵티콘은 '모두'를 뜻하는 'pan'과 '본다'는 뜻의 'opticon'을 합성한 것이다. 번역하면 '모두 다 본다'는 뜻이다. 원래는 죄수
를 감시할 목적으로 영국의 철학자이자 법학자인 제르미 벤담(Jeremy Bentham)이 1791년 처음으로 설계하였다.
이 감옥은 중앙의 원형공간에 높은 감시탑을 세우고, 중앙 감시탑 바깥의 원 둘레를 따라 죄수들의 방을 만들도록 설계되었
다. 또 중앙의 감시탑은 늘 어둡게 하고, 죄수의 방은 밝게 해 중앙에서 감시하는 감시자의 시선이 어디로 향하는지를 죄수들
이 알 수 없도록 되어 있다. 이렇게 되면 죄수들은 자신들이 늘 감시받고 있다는 느낌을 가지게 되고, 결국은 죄수들이 규율
과 감시를 내면화해서 스스로를 감시하게 된다는 것이다.
팬옵티콘은 감시자 없이도 죄수들 자신이 스스로를 감시하는 감옥을 말한다. 그러나 벤담이 설계한 뒤 주목을 받지 못하다
가 1975년 프랑스의 철학자 푸코(Michel Foucault)가 그의 저서 《감시와 처벌 Discipline and Punish》에서 팬옵티콘의 감시
체계 원리가 사회 전반으로 파고들어 규범사회의 기본 원리인 팬옵티시즘(panopticism)으로 바뀌었음을 지적하면서 새로운
주목을 받기 시작하였다.
한편, 이러한 팬옵티콘의 개념은 전 사회적으로 확장된 감시국가를 묘사하면서, 절대권력을 가진 통치자 '빅브라더'가 첨단
감시장치와 권력을 동원해 사람들의 사생활을 철저히 감시하는 가상국가로 묘사한 조지 오웰의 소설 <1984>에서 더욱 극
대화되었다.
그 뒤 정보기술이 빠르게 발전하면서 전자주민카드·전자건강보험증서 등 각종 전자증서를 통해 권력기관이 사람들을 마음
대로 통제할 수 있다는 가능성도 제기되고 있다.
출처 : http://terms.naver.com/entry.nhn?docId=1222068&cid=40942&categoryId=31721
3. Privacy
• Privacy의 고전적 정의
• “혼자 있을 권리(The right to be let alone)”
- Thomas Cooley, 1888
• CPM(Communication Privacy Management)
• 사람들이 대인 관계에 있어 사적 정보(Private information)를 어떻게
관리하는가에 대해 분석.
- Sandra Petronio and Wesley t. Durham, 2014
• 정보사회학
• 프라이버시를 민주주의, 복지, 감시, 통제, 위험(Risk) 등과 관련해서 분
석.
4. 정보사회학
• 국가에 의한 감시가 근대 복지국가의 속성이다. 복지국가가 되
기 위해서는 개인정보를 수집하는 일종의 감시(Surveillance)활
동을 국가가 수행하지 않을 수 없다.
- Anthony Giddens
• 전제 국가에서든 민주 국가에서든 국가기관에 의한 감시는 합
법적 수준을 넘어가는 경향이 있음.
• 분석
• 프라이버시를 민주주의나 사회통제와 관련하여 분석
• 보안(정보보호)과 프라이버시 사이의 긴장에 관련하여 분석
5. 맥도날드화(McDonaldization)
• =합리화(Rationalization) 이론
• 패스트푸드점의 원리가 미국 사회를 비롯해서 세계의 더 많은
부분들을 지배하게 되는 과정.
• 특성(현대 관료제의 장점)
• 효율성(Efficiency) : 절차간소화, 제품단순화, 고객에게 일시키기
• 계산가능성(Calculability) : 질보다 양, 생산과 서비스를 숫자로 제공
• 예측가능성(Predictability) : 예측가능하게 하기(불확실성 줄이기)
각본에 의한 고객과의 상호작용, 위험과 불쾌감 최소화
• 통제(Control) : 사람에 의한 통제 기술에 의한 통제
직원 통제, 고객 통제, 생산과정과 제품 통제
현대 시대는 더
예측하기 어려워짐.
이전 시대들 보다 더
불확실해짐
6. 맥도날드화의 미래
• 수익증대
• 비용절감
• 자체가 하나의 가치
• 고비용
• 가식, 비인간적
• 창의성 결여
• 품질 문제 의문
7. 추천도서
• 맥도날드화(McDonaldization)
• 맥도날드 그리고 맥도날드화(유토피아인가,디스토피아인가)
((The)McDonaldization of society)
• 조지 리처 | 김종덕 | 시유시 | 2003.04.18
• ISBN : 9788981620097
• 불확실성(Uncertainty)
• 불확실성의 시대
((The)age of uncertainty)
• 존 케네스 갤브레이스 | 원창화 | 홍신문화사 | 2011.05.11
• ISBN : 9788970557014
8. 추가
• 비판적으로 적극적으로 개입하지 않으면
• 자율성을 잃게 됨
• 창의성과 판단력 약화
• 이해도 저하
• 삶의 의미까지 상실 할 수 있음
• 고도의 통제 = 비인간화
• 만족감을 느낄 수 없음
• 안정성을 느낄 수 없음
높은 이직률
9. 위험사회(=근대적 사회)
• 통제가 불가능한 세상
• 위험(Risk)은
• 근대화(산업화)의 부산물
• 자발적 선택의 결과
• 필연적이고 반복적.
• 비가시적(계산 불가)
• 기존 제도로 통제 불가
• 새로운 근대(New Modernity)를 낳음
• 개인은 신분과 계급이 아니라 시장(Market)에 속박됨
• 위해와 불안을 다루는 체계적인 방식
10. 결핍
• 발전 및 성장을 추동 하는 힘
• 결핍의 독재(Tyranny of scarcity)