SlideShare une entreprise Scribd logo
1  sur  40
Télécharger pour lire hors ligne
Web server
Database
(RDBMS)
초창기에는 거의 모든 서비스가 Web server <-> RDBMS server의 2 tier 구조
Cache
(Redis,
ARCUS)
서비스가 점점 커지면서, DB Query는 점점 복잡하고 무거워 짐
빠른 응답을 보장하기 위해, DB 앞에 Cache 추가
Web server
Database
(RDBMS)
지표를 저장하기에는 RDBMS 는 공간과 비용에서 문제가 발생
원활한 데이터 처리를 위해 HBase 사용
Cache
(Redis,
ARCUS)
Web server
Database
(RDBMS)
기존에 저희가 지원하고 있던 Data Platform에서는 Cover 되지 않는 영역이 필요해 짐
MongoDB를 설치해서 자체적으로 운영하는 개발팀이 늘어남
 schema-less 하고 sharding과 secondary Index ,Transaction 처리가 가능한
Data Platform MongoDB도 지원하게 됨
Schemaless : 사전에 데이터에 대한 구조나 정의를 하지 않아도 됨
서비스의 종류가 많아지면서 공통적인 부분을 플랫폼화
공통 플랫폼은 각 서비스의 요구사항에 따른 스키마 처리와 데이터 처리가 고민이 됨
 RDBMS 라면, 각 서비스 별 별도의 table 로 관리해야 하거나, column 추가& 삭제 등의
서비스 중 overhead 발생
공통
플랫폼
tableA {
userNumber int
,userCellPhoneNumber char(13) }
RDBMS
MongoDB
1row 당 17 byte
1document 당 46 byte
(_id 포함 시 58byte)
RDBMS 에 비해서 disk read /write ( IO) 가 큰 폭으로 증가할 수 있으며,
DB Memory Buffer 에도 상대적으로 적은 수의 document 가 존재
-> 성능상 취약해 질 가능성 큼
서비스 규모가 커지면서 데이터 사이즈가 증가하며, Scale up의 한계가 대두됨
RDBMS는 응용에서 샤딩으로 Scale out 구현 할 수 있지만 확장성이 떨어지며,
개발 및 관리의 overhead 발생  Auto Sharding이 가능한 Data Platform이 필요
단순 bigdata성 데이터는 HBase를 사용하고 있음 ( 인프라 운영비용 절감 )
조회 조건이 다양해짐에 따라 Secondary Index에 대한 기능이 필요해짐
HBase는 제품 자체에서 Secondary Index를 제공해주지 않음
Coprocessor, hIndex , Phoenix 을 통해 secondary Index와 비슷하게 구현은 가능
HBase Rowid 가 아닌 조건으로의 조회는 전제 region full scan 으로 처리되어야 함
MongoDB Chunk 논리적 분리
Collection A
DATA FILE
ChunkHFile
방식 장점 단점
HBase
각 리전별로 별도의 HFile 로 존재->
HDFS 에 별도의 물리적 File로 리전별 할당
리전간 HFile move가 용이 secondary index 불가능
MongoDB
청크별로 별도 file 이 있는 것이 아니며,
하나의 collection 에서 샤딩키에 따른 논리적 할당
secondary index 가능 chunk migration시 부하가 있음
NoSQL을 사용하면서, Transaction 기능을 원하는 경우가 있음
MongoDB는 WiredTiger storage 엔진을 사용할 경우 높은 수준의 ACID 지원
 ~ 3.6 까지 1 document ( row level lock )
 4.0 부터 단일 replica set에서 Multi-Document Transaction
s.start_transaction()
orders.insert_one(order, session=s)
stock.update_one(item, stockUpdate, session=s)
s.commit_transaction()
REST API 사용이 확대되면서, 메시지 포맷을 JSON으로 사용할 경우
Web Server와 DB Server간 데이터 주고받는 과정에서 JSON 을 선호
 JSON 포맷을 편하게 지원해줄 Data Platform이 필요
{
"name": " ",
"country": "ko",
“job": "dba",
}
서비스 커지고, 중요도가 높아짐에 따라 IDC 이중화 (DR: disaster recovery) 요구됨
 MongoDB는 IDC 간 Auto failover가 가능한 Data Platform
 IDC DR을 필요로 하는 서비스에 도입할 수 있음
-> MongoDB 충족 -> 주요 서비스에 도입 되려고 시도 되는 편 (아직은 아님)
제조사 권장은 Mongos (router) 를 client 와 같이 배포 권장 -> 사용하고 있지 않음
MongoDB 가 Main Data Platform 이 아닌 경우 배포/관리 의 어려움 때문 (& 권한관리)
Web server
mongos
Web server
mongos
Web server
mongos
config
mongod
primary
mongod
secondary
mongod
secondary
config
mongod
primary
mongod
secondary
mongod
secondary
Sharding 에서의 L4 (network switch) 사용을 초기에는 권장했으나 getmore 이슈로 제거
Getmore - 20건 단위로 데이터 전달하는 과정
mongod
primary
mongod
secondary
mongod
secondary
mongod
primary
mongod
secondary
mongod
secondary
Web server
Web server
Web server
mongos
L4
Config Server
Mongos 와 shard server 사이에 커넥션 관리에 문제가 있음
다음과 같은 옵션을 적용하여 사용
shardingTaskExecutorPoolHostTimeoutMS : 3600000
ShardingTaskExecutorPoolMaxSize : 20
ShardingTaskExecutorPoolMinSize : 10
Web server mongos mongod
primary
mongod
secondary
mongod
secondary
[default]
Max: Unlimited
Min: 1개 (per core)
[tuning]
Max: 20개 (per core)
Min: 10개 (per core)
Config
Server
Node.js 모듈인 mongoose 는 성능 이슈로 인해 권장하지 않음
Node.js 드라이버 3.X 버전은 커넥션 반환 관련 이슈가 있음
 Node.js 드라이버 2.X 사용 권장
WiredTiger 스토리지 엔진만 사용,
MMAPV1 및 3rd party ( mongo rocks , tokumx ) 지원하지 않음
MMAPv1  성능상 문제 ( document level lock 등)
3rd party  트러블 슈팅 문제 등
하위 버전에서 발생된 이슈가 해결된 안정화된 최신버전을 사용
아직 하위 버전을 사용하고 있다면 다음의 경우 업그레이드를 고려해주시기 바랍니다.
3.0, 3.2.x 이하버전에서 WiredTiger 엔진 사용시에 문제 발생 할 수 있습니다.
eviction : Memory Buffer 에서 오래된 data 삭제하는 작업
이슈가 어느정도 해결된 3.2.11 또는 3.4 이상 버전을 사용하길 권장하며,
버전을 올린 이후 안정적으로 운영되고 있습니다.
bytes currently in the cache / maximum bytes configured
pages evictied by application threads
pages walked for eviction
checkpoint : memory buffer 와 disk 사이의 데이터 불일치를 해소하기 위해서
memory -> disk 로 data sync 하는 작업
WiredTiger 스토리지 엔진, 샤프 체크포인트 방식
체크포인트가 실행되는 시점에 한번에 디스크 쓰기 발생
Write heavy 한 환경에서 Checkpoint시 성능이 하락됨
주기적으로 Disk IO가 높아진다면 checkpoint가 문제일 가능성이 있음
Mongodb는 background index 생성 가능 ( = RDBMS 의 online index create )
내부적으로 매우 짧은 시간을 주기로 인덱스 생성 / 생성 중단 / 쿼리 수행 과정을 반복
인덱스 생성 process 시, db lock 이 유발되어 쓰기 쿼리 지연이 발생
 Background Index 생성은 새벽에 진행
컬렉션의 모든 데이터와 인덱스를 다시 작성하고 조각모음을 수행하여, 불필요한 디스크
공간을 해제하는 작업
작업 중 질의 수행이 안되기 때문에 서비스에서 제외하고 진행해야 함
secondary DB를 재구성하는 것으로 공간을 확보하고 있음
MongoDB의 Chunk Migration은 많은 비용이 듦
여러 이유로 Balancing작업이 실패할 수 있음
 Config server에서 changelog 를 자주 살펴봄
 응답 속도에 민감한 서비스는 새벽시간에만 수행되도록 조절
Clusterd index : 해당 key 값 기준으로 실제 데이터가 정렬되어 있음
Clustered Index 가 없어서,
Clustered Index 방식을 활용한 범위 검색 등에는 MongoDB 권장 하고 있지 않습니다.
data File
Internal Index (clustered type) Secondary Index (B-tree type)
Index File
Index entries
data
Index entries
data
Index key ,
pointer
_id, data
random I/O 발생
Sharding 환경에서 unique Index는 전체 shard 내에서 유니크 하지 않음
 인덱스가 local 기반이라, 각 shard 별로 유니크 함
 전체 DB내에서의 Unique를 보장하기 위해서는 sharding key 에 포함 필요
Collection A
Data File
Collection B
Data File
Collection A
Data File
Collection B
Data File
법적 조치 대상에 해당 하는 Data Platform 으로 MongoDB 사용하고 있음
법적 요건을 지키기 위해서는 여러 영역을 확인해야 함.
DB영역의 법적 요건 ( IP 기반 access control) 을 지키기 위해서
MongoDB 3.6 버전의 authenticationRestrictions 기능 사용 중
bind_ip 는 DB ACL을 제한하는 기능이 아님
NoSQL 의 특징과 RDBMS 의 특징을 고루 가지고 있는 DBMS
Checkpoint 등 일부 성능상 문제점 해결 시급
Mongos <-> shard 사이에 커넥션 안정화
한글 전문 검색 문제 해결 필요 등등 아직까지 문제점 많음…
WiredTiger 엔진에서 B-tree 이외에 LSM 도 지원이 됐으면…
NoSQL특성상 RDBMS만큼의 ACID와 안정성을 보장해주지 않기 때문에,
우리나라에서 Main Stream 으로 도입될 가능성은 높지 않다고 보여집니다.
다만 사용처는 점점 확대될 것으로 보이고 있으며, 저희 회사에서도 적극 지원하려고
합니다.
NBP는 네이버 클라우드 플랫폼을 통해
네이버의 인프라 기술을 클라우드로 제공하고 있습니다.
완전 관리형 DB 상품인 Cloud DB for MySQL / MSSQL / Redis,
Cloud Hadoop 상품에 이어 MongoDB 상품도 준비중입니다.
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB

Contenu connexe

Tendances

데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...Amazon Web Services Korea
 
Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )
Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )
Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )SANG WON PARK
 
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with KubernetesKubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with KubernetesSeungYong Oh
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon Web Services Korea
 
데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...
데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...
데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...Amazon Web Services Korea
 
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유Hyojun Jeon
 
Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018
Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018
Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018Amazon Web Services Korea
 
[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)NAVER D2
 
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?Juhong Park
 
Performance Troubleshooting Using Apache Spark Metrics
Performance Troubleshooting Using Apache Spark MetricsPerformance Troubleshooting Using Apache Spark Metrics
Performance Troubleshooting Using Apache Spark MetricsDatabricks
 
Optimizing Apache Spark SQL Joins
Optimizing Apache Spark SQL JoinsOptimizing Apache Spark SQL Joins
Optimizing Apache Spark SQL JoinsDatabricks
 
Airflow를 이용한 데이터 Workflow 관리
Airflow를 이용한  데이터 Workflow 관리Airflow를 이용한  데이터 Workflow 관리
Airflow를 이용한 데이터 Workflow 관리YoungHeon (Roy) Kim
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016Amazon Web Services Korea
 
Data pipeline and data lake
Data pipeline and data lakeData pipeline and data lake
Data pipeline and data lakeDaeMyung Kang
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)SANG WON PARK
 
Presto, Zeppelin을 이용한 초간단 BI 구축 사례
Presto, Zeppelin을 이용한 초간단 BI 구축 사례Presto, Zeppelin을 이용한 초간단 BI 구축 사례
Presto, Zeppelin을 이용한 초간단 BI 구축 사례Hyoungjun Kim
 
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...Amazon Web Services Korea
 
아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...
아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...
아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...Amazon Web Services Korea
 
Amazon S3 Best Practice and Tuning for Hadoop/Spark in the Cloud
Amazon S3 Best Practice and Tuning for Hadoop/Spark in the CloudAmazon S3 Best Practice and Tuning for Hadoop/Spark in the Cloud
Amazon S3 Best Practice and Tuning for Hadoop/Spark in the CloudNoritaka Sekiyama
 

Tendances (20)

데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
 
Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )
Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )
Cloud dw benchmark using tpd-ds( Snowflake vs Redshift vs EMR Hive )
 
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with KubernetesKubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
 
데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...
데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...
데이터 분석가를 위한 신규 분석 서비스 - 김기영, AWS 분석 솔루션즈 아키텍트 / 변규현, 당근마켓 소프트웨어 엔지니어 :: AWS r...
 
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
 
Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018
Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018
Amazon Redshift 아키텍처 및 모범사례::김민성::AWS Summit Seoul 2018
 
[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)
 
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
 
Performance Troubleshooting Using Apache Spark Metrics
Performance Troubleshooting Using Apache Spark MetricsPerformance Troubleshooting Using Apache Spark Metrics
Performance Troubleshooting Using Apache Spark Metrics
 
Optimizing Apache Spark SQL Joins
Optimizing Apache Spark SQL JoinsOptimizing Apache Spark SQL Joins
Optimizing Apache Spark SQL Joins
 
Airflow를 이용한 데이터 Workflow 관리
Airflow를 이용한  데이터 Workflow 관리Airflow를 이용한  데이터 Workflow 관리
Airflow를 이용한 데이터 Workflow 관리
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
Data pipeline and data lake
Data pipeline and data lakeData pipeline and data lake
Data pipeline and data lake
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
 
Presto, Zeppelin을 이용한 초간단 BI 구축 사례
Presto, Zeppelin을 이용한 초간단 BI 구축 사례Presto, Zeppelin을 이용한 초간단 BI 구축 사례
Presto, Zeppelin을 이용한 초간단 BI 구축 사례
 
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
 
아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...
아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...
아름답고 유연한 데이터 파이프라인 구축을 위한 Amazon Managed Workflow for Apache Airflow - 유다니엘 A...
 
Amazon S3 Best Practice and Tuning for Hadoop/Spark in the Cloud
Amazon S3 Best Practice and Tuning for Hadoop/Spark in the CloudAmazon S3 Best Practice and Tuning for Hadoop/Spark in the Cloud
Amazon S3 Best Practice and Tuning for Hadoop/Spark in the Cloud
 

Similaire à [124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB

손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)Devgear
 
Hadoop Overview 1
Hadoop Overview 1Hadoop Overview 1
Hadoop Overview 1Kay Kim
 
Introduction to scalability
Introduction to scalabilityIntroduction to scalability
Introduction to scalabilitypolabear
 
Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability흥배 최
 
폴라리스오피스 운영시스템
폴라리스오피스 운영시스템폴라리스오피스 운영시스템
폴라리스오피스 운영시스템SANGGI CHOI
 
Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개흥배 최
 
Mongo db 2.x to 3.x
Mongo db 2.x to 3.xMongo db 2.x to 3.x
Mongo db 2.x to 3.xInBum Kim
 
BigData Overview
BigData OverviewBigData Overview
BigData OverviewHoryun Lee
 
넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...
넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...
넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...Amazon Web Services Korea
 
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)InBum Kim
 
Pg day seoul 2016 session_02_v1.0_ff
Pg day seoul 2016 session_02_v1.0_ffPg day seoul 2016 session_02_v1.0_ff
Pg day seoul 2016 session_02_v1.0_ffPgDay.Seoul
 
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)Amazon Web Services Korea
 
CoreDot TechSeminar 2018 - Session2 Ji Donghyun
CoreDot TechSeminar 2018 - Session2 Ji DonghyunCoreDot TechSeminar 2018 - Session2 Ji Donghyun
CoreDot TechSeminar 2018 - Session2 Ji DonghyunCore.Today
 
주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기Yeonhee Kim
 
[TD 2015] Microsoft Azure IaaS v2(최정현)
[TD 2015] Microsoft Azure IaaS v2(최정현)[TD 2015] Microsoft Azure IaaS v2(최정현)
[TD 2015] Microsoft Azure IaaS v2(최정현)Sang Don Kim
 
MongoDB 신제품 및 신기능 소개
MongoDB 신제품 및 신기능 소개MongoDB 신제품 및 신기능 소개
MongoDB 신제품 및 신기능 소개MongoDB
 
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016Amazon Web Services Korea
 
[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기
[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기
[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기sung ki choi
 
Azure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDBAzure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDBrockplace
 

Similaire à [124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB (20)

손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)
 
Hadoop Overview 1
Hadoop Overview 1Hadoop Overview 1
Hadoop Overview 1
 
Introduction to scalability
Introduction to scalabilityIntroduction to scalability
Introduction to scalability
 
Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability
 
폴라리스오피스 운영시스템
폴라리스오피스 운영시스템폴라리스오피스 운영시스템
폴라리스오피스 운영시스템
 
Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개
 
Mongo db 2.x to 3.x
Mongo db 2.x to 3.xMongo db 2.x to 3.x
Mongo db 2.x to 3.x
 
BigData Overview
BigData OverviewBigData Overview
BigData Overview
 
넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...
넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...
넥슨 글로벌 플랫폼 구축 이야기 : DB Migration case study (임현수 플랫폼인프라실 Technical Manager, 넥...
 
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)
 
Pg day seoul 2016 session_02_v1.0_ff
Pg day seoul 2016 session_02_v1.0_ffPg day seoul 2016 session_02_v1.0_ff
Pg day seoul 2016 session_02_v1.0_ff
 
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
 
CoreDot TechSeminar 2018 - Session2 Ji Donghyun
CoreDot TechSeminar 2018 - Session2 Ji DonghyunCoreDot TechSeminar 2018 - Session2 Ji Donghyun
CoreDot TechSeminar 2018 - Session2 Ji Donghyun
 
CouchDB - Introduction - Korean
CouchDB - Introduction - KoreanCouchDB - Introduction - Korean
CouchDB - Introduction - Korean
 
주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기
 
[TD 2015] Microsoft Azure IaaS v2(최정현)
[TD 2015] Microsoft Azure IaaS v2(최정현)[TD 2015] Microsoft Azure IaaS v2(최정현)
[TD 2015] Microsoft Azure IaaS v2(최정현)
 
MongoDB 신제품 및 신기능 소개
MongoDB 신제품 및 신기능 소개MongoDB 신제품 및 신기능 소개
MongoDB 신제품 및 신기능 소개
 
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
 
[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기
[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기
[아꿈사/111105] html5 9장 클라이언트측 데이터로 작업하기
 
Azure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDBAzure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDB
 

Plus de NAVER D2

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다NAVER D2
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...NAVER D2
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발NAVER D2
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈NAVER D2
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&ANAVER D2
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기NAVER D2
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep LearningNAVER D2
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applicationsNAVER D2
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingNAVER D2
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지NAVER D2
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기NAVER D2
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화NAVER D2
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)NAVER D2
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기NAVER D2
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual SearchNAVER D2
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화NAVER D2
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지NAVER D2
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터NAVER D2
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?NAVER D2
 
[231] Clova 화자인식
[231] Clova 화자인식[231] Clova 화자인식
[231] Clova 화자인식NAVER D2
 

Plus de NAVER D2 (20)

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual Search
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
 
[231] Clova 화자인식
[231] Clova 화자인식[231] Clova 화자인식
[231] Clova 화자인식
 

Dernier

Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'Hyundai Motor Group
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 
[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and Adoption[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and AdoptionSeung-chan Baeg
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 
Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Wonjun Hwang
 

Dernier (7)

Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 
[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and Adoption[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and Adoption
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 
Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)
 

[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB

  • 1.
  • 2.
  • 3.
  • 4.
  • 5. Web server Database (RDBMS) 초창기에는 거의 모든 서비스가 Web server <-> RDBMS server의 2 tier 구조
  • 6. Cache (Redis, ARCUS) 서비스가 점점 커지면서, DB Query는 점점 복잡하고 무거워 짐 빠른 응답을 보장하기 위해, DB 앞에 Cache 추가 Web server Database (RDBMS)
  • 7. 지표를 저장하기에는 RDBMS 는 공간과 비용에서 문제가 발생 원활한 데이터 처리를 위해 HBase 사용 Cache (Redis, ARCUS) Web server Database (RDBMS)
  • 8.
  • 9. 기존에 저희가 지원하고 있던 Data Platform에서는 Cover 되지 않는 영역이 필요해 짐 MongoDB를 설치해서 자체적으로 운영하는 개발팀이 늘어남  schema-less 하고 sharding과 secondary Index ,Transaction 처리가 가능한 Data Platform MongoDB도 지원하게 됨
  • 10. Schemaless : 사전에 데이터에 대한 구조나 정의를 하지 않아도 됨 서비스의 종류가 많아지면서 공통적인 부분을 플랫폼화 공통 플랫폼은 각 서비스의 요구사항에 따른 스키마 처리와 데이터 처리가 고민이 됨  RDBMS 라면, 각 서비스 별 별도의 table 로 관리해야 하거나, column 추가& 삭제 등의 서비스 중 overhead 발생 공통 플랫폼
  • 11. tableA { userNumber int ,userCellPhoneNumber char(13) } RDBMS MongoDB 1row 당 17 byte 1document 당 46 byte (_id 포함 시 58byte) RDBMS 에 비해서 disk read /write ( IO) 가 큰 폭으로 증가할 수 있으며, DB Memory Buffer 에도 상대적으로 적은 수의 document 가 존재 -> 성능상 취약해 질 가능성 큼
  • 12. 서비스 규모가 커지면서 데이터 사이즈가 증가하며, Scale up의 한계가 대두됨 RDBMS는 응용에서 샤딩으로 Scale out 구현 할 수 있지만 확장성이 떨어지며, 개발 및 관리의 overhead 발생  Auto Sharding이 가능한 Data Platform이 필요
  • 13. 단순 bigdata성 데이터는 HBase를 사용하고 있음 ( 인프라 운영비용 절감 ) 조회 조건이 다양해짐에 따라 Secondary Index에 대한 기능이 필요해짐 HBase는 제품 자체에서 Secondary Index를 제공해주지 않음 Coprocessor, hIndex , Phoenix 을 통해 secondary Index와 비슷하게 구현은 가능 HBase Rowid 가 아닌 조건으로의 조회는 전제 region full scan 으로 처리되어야 함
  • 14. MongoDB Chunk 논리적 분리 Collection A DATA FILE ChunkHFile 방식 장점 단점 HBase 각 리전별로 별도의 HFile 로 존재-> HDFS 에 별도의 물리적 File로 리전별 할당 리전간 HFile move가 용이 secondary index 불가능 MongoDB 청크별로 별도 file 이 있는 것이 아니며, 하나의 collection 에서 샤딩키에 따른 논리적 할당 secondary index 가능 chunk migration시 부하가 있음
  • 15. NoSQL을 사용하면서, Transaction 기능을 원하는 경우가 있음 MongoDB는 WiredTiger storage 엔진을 사용할 경우 높은 수준의 ACID 지원  ~ 3.6 까지 1 document ( row level lock )  4.0 부터 단일 replica set에서 Multi-Document Transaction s.start_transaction() orders.insert_one(order, session=s) stock.update_one(item, stockUpdate, session=s) s.commit_transaction()
  • 16. REST API 사용이 확대되면서, 메시지 포맷을 JSON으로 사용할 경우 Web Server와 DB Server간 데이터 주고받는 과정에서 JSON 을 선호  JSON 포맷을 편하게 지원해줄 Data Platform이 필요 { "name": " ", "country": "ko", “job": "dba", }
  • 17. 서비스 커지고, 중요도가 높아짐에 따라 IDC 이중화 (DR: disaster recovery) 요구됨  MongoDB는 IDC 간 Auto failover가 가능한 Data Platform  IDC DR을 필요로 하는 서비스에 도입할 수 있음 -> MongoDB 충족 -> 주요 서비스에 도입 되려고 시도 되는 편 (아직은 아님)
  • 18.
  • 19. 제조사 권장은 Mongos (router) 를 client 와 같이 배포 권장 -> 사용하고 있지 않음 MongoDB 가 Main Data Platform 이 아닌 경우 배포/관리 의 어려움 때문 (& 권한관리) Web server mongos Web server mongos Web server mongos config mongod primary mongod secondary mongod secondary config mongod primary mongod secondary mongod secondary
  • 20. Sharding 에서의 L4 (network switch) 사용을 초기에는 권장했으나 getmore 이슈로 제거 Getmore - 20건 단위로 데이터 전달하는 과정 mongod primary mongod secondary mongod secondary mongod primary mongod secondary mongod secondary Web server Web server Web server mongos L4 Config Server
  • 21. Mongos 와 shard server 사이에 커넥션 관리에 문제가 있음 다음과 같은 옵션을 적용하여 사용 shardingTaskExecutorPoolHostTimeoutMS : 3600000 ShardingTaskExecutorPoolMaxSize : 20 ShardingTaskExecutorPoolMinSize : 10 Web server mongos mongod primary mongod secondary mongod secondary [default] Max: Unlimited Min: 1개 (per core) [tuning] Max: 20개 (per core) Min: 10개 (per core) Config Server
  • 22. Node.js 모듈인 mongoose 는 성능 이슈로 인해 권장하지 않음 Node.js 드라이버 3.X 버전은 커넥션 반환 관련 이슈가 있음  Node.js 드라이버 2.X 사용 권장
  • 23. WiredTiger 스토리지 엔진만 사용, MMAPV1 및 3rd party ( mongo rocks , tokumx ) 지원하지 않음 MMAPv1  성능상 문제 ( document level lock 등) 3rd party  트러블 슈팅 문제 등 하위 버전에서 발생된 이슈가 해결된 안정화된 최신버전을 사용 아직 하위 버전을 사용하고 있다면 다음의 경우 업그레이드를 고려해주시기 바랍니다.
  • 24. 3.0, 3.2.x 이하버전에서 WiredTiger 엔진 사용시에 문제 발생 할 수 있습니다. eviction : Memory Buffer 에서 오래된 data 삭제하는 작업 이슈가 어느정도 해결된 3.2.11 또는 3.4 이상 버전을 사용하길 권장하며, 버전을 올린 이후 안정적으로 운영되고 있습니다. bytes currently in the cache / maximum bytes configured pages evictied by application threads pages walked for eviction
  • 25. checkpoint : memory buffer 와 disk 사이의 데이터 불일치를 해소하기 위해서 memory -> disk 로 data sync 하는 작업 WiredTiger 스토리지 엔진, 샤프 체크포인트 방식 체크포인트가 실행되는 시점에 한번에 디스크 쓰기 발생 Write heavy 한 환경에서 Checkpoint시 성능이 하락됨 주기적으로 Disk IO가 높아진다면 checkpoint가 문제일 가능성이 있음
  • 26.
  • 27. Mongodb는 background index 생성 가능 ( = RDBMS 의 online index create ) 내부적으로 매우 짧은 시간을 주기로 인덱스 생성 / 생성 중단 / 쿼리 수행 과정을 반복 인덱스 생성 process 시, db lock 이 유발되어 쓰기 쿼리 지연이 발생  Background Index 생성은 새벽에 진행
  • 28. 컬렉션의 모든 데이터와 인덱스를 다시 작성하고 조각모음을 수행하여, 불필요한 디스크 공간을 해제하는 작업 작업 중 질의 수행이 안되기 때문에 서비스에서 제외하고 진행해야 함 secondary DB를 재구성하는 것으로 공간을 확보하고 있음
  • 29. MongoDB의 Chunk Migration은 많은 비용이 듦 여러 이유로 Balancing작업이 실패할 수 있음  Config server에서 changelog 를 자주 살펴봄  응답 속도에 민감한 서비스는 새벽시간에만 수행되도록 조절
  • 30. Clusterd index : 해당 key 값 기준으로 실제 데이터가 정렬되어 있음 Clustered Index 가 없어서, Clustered Index 방식을 활용한 범위 검색 등에는 MongoDB 권장 하고 있지 않습니다. data File Internal Index (clustered type) Secondary Index (B-tree type) Index File Index entries data Index entries data Index key , pointer _id, data random I/O 발생
  • 31. Sharding 환경에서 unique Index는 전체 shard 내에서 유니크 하지 않음  인덱스가 local 기반이라, 각 shard 별로 유니크 함  전체 DB내에서의 Unique를 보장하기 위해서는 sharding key 에 포함 필요 Collection A Data File Collection B Data File Collection A Data File Collection B Data File
  • 32. 법적 조치 대상에 해당 하는 Data Platform 으로 MongoDB 사용하고 있음 법적 요건을 지키기 위해서는 여러 영역을 확인해야 함. DB영역의 법적 요건 ( IP 기반 access control) 을 지키기 위해서 MongoDB 3.6 버전의 authenticationRestrictions 기능 사용 중 bind_ip 는 DB ACL을 제한하는 기능이 아님
  • 33.
  • 34. NoSQL 의 특징과 RDBMS 의 특징을 고루 가지고 있는 DBMS
  • 35. Checkpoint 등 일부 성능상 문제점 해결 시급 Mongos <-> shard 사이에 커넥션 안정화 한글 전문 검색 문제 해결 필요 등등 아직까지 문제점 많음… WiredTiger 엔진에서 B-tree 이외에 LSM 도 지원이 됐으면…
  • 36. NoSQL특성상 RDBMS만큼의 ACID와 안정성을 보장해주지 않기 때문에, 우리나라에서 Main Stream 으로 도입될 가능성은 높지 않다고 보여집니다. 다만 사용처는 점점 확대될 것으로 보이고 있으며, 저희 회사에서도 적극 지원하려고 합니다.
  • 37. NBP는 네이버 클라우드 플랫폼을 통해 네이버의 인프라 기술을 클라우드로 제공하고 있습니다. 완전 관리형 DB 상품인 Cloud DB for MySQL / MSSQL / Redis, Cloud Hadoop 상품에 이어 MongoDB 상품도 준비중입니다.