• 제목/요약/키워드: MongoDB

검색결과 64건 처리시간 0.029초

MongoDB에서 B-트리 인덱스와 Fractal 트리 인덱스를 이용한 성능 비교 (Performance Comparisons on MongoDB with B-Tree Indexes and Fractal Tree Indexes)

  • 장성호;김수희
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2014년도 춘계학술대회
    • /
    • pp.622-625
    • /
    • 2014
  • 빅데이터가 다양한 가치를 만들어내기 시작하면서, 더 다양하면서도 막대한 량의 데이터를 수용할 수 있는 데이터베이스가 필요하게 되었다. 그래서 기존 RDBMS의 복잡도와 용량 한계를 극복하기 위한 목적으로 NoSQL 데이터베이스가 등장하게 되었고, 그 중 대표적으로 MongoDB가 많이 사용되며, 오픈 소스로 제공되고 있다. MongoDB에서 사용되는 B-트리 인덱스는 데이터양이 증가함에 따라 그 성능이 현저히 떨어진다. Fractal 트리 인덱스는 B-트리의 삽입 알고리즘을 개선하여 상당한 성능향상을 가능하게 한다. 이 논문에서는 MongoDB에서 B-트리 인덱스를 사용하는 경우와 Fractal 트리 인덱스를 사용하는 경우를 구별하여 그 성능을 비교해 본다.

  • PDF

MongoDB 기반의 분산 침입탐지시스템 성능 평가 (Evaluation of Distributed Intrusion Detection System Based on MongoDB)

  • 한효준;김혁호;김양우
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제8권12호
    • /
    • pp.287-296
    • /
    • 2019
  • IoT, 클라우드 컴퓨팅과 같은 인터넷 서비스의 발전과 사용량의 증가로 인해 수많은 패킷들이 인터넷상에서 빠르게 생성되고 있다. 안전한 인터넷 사용 환경을 만들기 위해서는 이 수많은 패킷 중에 존재할 수 있는 악성 데이터의 빠른 처리가 이뤄져야 한다. 본 논문에서는 빅데이터 보안 이벤트의 신속한 처리를 위해 비정형 데이터 분석과 빅데이터 처리에 특화된 MongoDB를 침입탐지시스템에 적용하였다. 또한 보호 대상인 사설 클라우드의 일부 자원을 이용하여 침입탐지시스템을 구축함으로써 증가 또는 감소하는 보안 이벤트 수에 따라 탄력적으로 컴퓨팅 자원 재구성이 가능하도록 하였다. 본 논문에서 제안하는 MongoDB 기반 침입탐지시스템의 성능을 평가하기 위하여 MongoDB 기반의 침입탐지시스템과 기존의 관계형 데이터 베이스를 기반으로 한 침입탐지시스템의 프로토타입을 구축하고 성능을 비교하였다. 또한 분산화 구성에 따른 성능 변화를 확인하기 위하여 가상머신의 수를 변경하며 성능 변화를 확인하였다. 그 결과 전체적으로 MongoDB 환경에서 동일한 성능의 시스템을 분산화시켜 가상 머신의 수를 증가시킬수록 침입탐지시스템의 성능이 향상되는 것을 확인하였다. 분산 MongoDB 기반의 보안 이벤트 저장 속도가 관계형 데이터베이스 기반에 비해 최대 60%, 그리고 분산 MongoDB 기반의 침입 데이터 탐지 속도가 관계형 데이터베이스 기반에 비해 최대 100% 빠른 결과를 얻었다.

NodeJS와 MongoDB를 활용한 모터 동작 제어시스템 구현 (Implementation of motor control system using NodeJS and MongoDB)

  • 강진영;이영동
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2017년도 추계학술대회
    • /
    • pp.748-750
    • /
    • 2017
  • 사물인터넷이 고도의 지능화가 됨에 따라 다양한 분야로 적용되고 있다. 그중에 센서-서버-DB를 결합해 하나의 플랫폼을 만들어서 다양한 분야에 접목하면 데이터를 쉽게 관리 할 수 있는 사물인터넷 기반의 시스템이 구현 가능하다. 이에 따라, 본 논문에서는 사물인터넷 기반 NodeJS와 MongoDB를 활용하여 스마트폰 기울기에 따른 서보모터 동작 제어 시스템 구현을 위해 Rasberry Pi, 서보모터, 스마트폰으로 시스템을 구성하고, NodeJS, MongoDB, npm모듈, HTML을 활용한 서보모터 센서 값이 발생하면 NodeJS로 전송하여 데이터를 저장 관리 할 수 있도록 하였다.

  • PDF

MongoDB를 활용한 Jena 프레임워크 기반의 분산 트리플 저장소 구현 (An implementation of MongoDB based Distributed Triple Store on Jena Framework)

  • 안진현;양성권;이문환;정진욱;김응희;임동혁;김홍기
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2015년도 추계학술발표대회
    • /
    • pp.1615-1617
    • /
    • 2015
  • 웹을 통한 데이터 공유에 대한 관심의 증가로 RDF 트리플 형태의 데이터가 폭발적으로 증가하고 있다. 대용량 RDF 데이터를 저장하고 빠른 SPARQL 질의 처리를 지원하는 트리플 저장소의 개발이 중요하다. 아파치 프로젝트 중 하나인 Jena-TDB는 가장 잘 알려진 오픈소스 트리플 저장소 중 하나로서 Jena 프레임워크 기반으로 구현됐다. 하지만 Jena-TDB 의 경우 단일 컴퓨터에서 작동하기 때문에 대용량 RDF 데이터를 다룰 수 없다는 문제점이 있다. 본 논문에서는 MongoDB를 활용한 Jena 프레임워크 기반의 트리플 저장소인 Jena-MongoDB를 제안한다. Jena 프레임워크를 사용했기 때문에 기존 Jena-TDB와 동일한 인터페이스로 사용할 수 있고 최신 표준 SPARQL 문법도 지원한다. 또한 MongoDB를 사용했기 때문에 분산환경에서도 작동할 수 있다. 대용량 LUBM 데이터셋에 대한 SPARQL 질의 처리 실험결과 Jena-MongoDB가 Jena-TDB 보다 빠른 질의 응답 속도를 보여줬다.

Celery-MongoDB 를 활용한 센서정보 관리시스템 설계 및 구현 (Design and Implementation of Sensor Information Management System based on Celery-MongoDB)

  • 강윤희
    • Journal of Platform Technology
    • /
    • 제9권2호
    • /
    • pp.3-9
    • /
    • 2021
  • 센서정보 관리를 위해서는 다양하고 수많은 센서의 정보를 신속하게 저장, 수정, 삭제 할 수 있는 기능을 제공해야 한다. 본 연구에서는 Celery 와 MongoDB 를 활용하여 위의 조건에 부합한 센서정보 관리 시스템을 설계 및 구현하였다. Celery 는 파이썬으로 개발된 비동기 통신을 기반으로 하는 큐구조를 제공하고 있다. 그리고 이것은 분산된 작업 큐 구조이고 단순하지만 많은 양의 메시지를 처리하기에 적합한 신뢰성 있는 분산 시스템이다. MongoDB 는 NoSQL 데이터베이스로써 다양한 정보 표현을 저장할 수 있고 검색할 수 있다. 본 연구에서는 개발한 시스템을 활용한 실험을 통해 IoT 환경에서 제공되는 다양한 센서를 관리할 수 있음을 확인할 수 있었다. 센서데이터를 갖는 메시지를 처리하기 위한 성능을 개선하기 위해 본 시스템은 클라우드 하부구조의 에지단에 배치되어 사용한다.

MongoDB를 활용한 실시간 응급실 위치 정보 서비스 (Information Service of Real-time Emergency Room Location using MongoDB)

  • 신동진;황승연;장석우
    • 한국인터넷방송통신학회논문지
    • /
    • 제22권6호
    • /
    • pp.63-68
    • /
    • 2022
  • 현재 대한민국의 서울특별시를 기준으로 응급실은 총 68개가 있으며, 응급실의 위치를 조회할 수 있는 포털 사이트가 존재하지만, 구와 자치동을 선택하는 방법으로 구성되어 실제 응급 상황에서는 활용하기가 어렵다. 또한, 119 구조대를 요청하고, 기다리는 상황에서 생존에 필요한 골든타임을 놓칠 수 있기 때문에 직접 응급실로 이동하는 방안이 더 효율적일 수도 있다. 따라서 본 논문에서는 MongoDB에서 지원되는 다양한 기능을 통해 특정 위치를 기준으로 빠르게 응급실의 위치를 조회할 수 있는 서비스를 제안한다. 서울특별시를 기준으로 응급실 위치 데이터를 다운로드하고, MongoDB에 저장한 후 다양한 처리 기술을 통해 데이터를 처리하고, 공간 인덱스를 적용하여 특정 위치에서 거리를 기준으로 응급실을 실시간으로 조회할 수 있다.

MongoDB를 활용한 풀 스택 플랫폼 설계 (Full Stack Platform Design with MongoDB)

  • 홍선학;조경순
    • 전자공학회논문지
    • /
    • 제53권12호
    • /
    • pp.152-158
    • /
    • 2016
  • 본 논문에서는 오픈소스 플랫폼 라즈베리파이 3 모델을 기반으로 몽고DB 데이터베이스를 활용하여 풀 스택 플랫폼을 구현하였다. 가속도 센서를 사용하여 무선 통신으로 데이터를 로깅하는 도구로써 이벤트 구동 방식을 사용하였으며, 리눅스 라즈비안 Jessie 버전으로 초당 28 프레임으로 USB 카메라(MS LifeCam 시네마) 이미지를 획득하며, 안드로이드 모바일 기기와 인터페이스를 구축하기 위하여 블루투스 통신 기술을 확장하였다. 따라서 본 논문에서는 가속도 센서 동작을 검출하여 이벤트 트리거링을 감지하는 풀 스택 플랫폼 기능을 구현하고, IoT 환경에서 온도와 습도 센서 데이터를 수집한다. 특히 몽고 DB가 MEAN 스택과 가장 좋은 데이터 연결성을 갖고 있기 때문에 풀 스택 플랫폼 성능을 개발 향상시키는데 MEAN 스택을 사용하였다. 향후 IoT 클라우드 환경에서 풀 스택 성능을 향상시키고, 몽고 DB를 활용하여 보다 쉽게 웹 설계 성능을 향상시키도록 기술을 개발하겠다.

빅데이터 분석 시스템 구현을 위한 데이터 구조의 복잡성에 따른 MongoDB 환경 구성 연구 (Study of MongoDB Architecture by Data Complexity for Big Data Analysis System)

  • 이협건;김영운;이진우;이승현
    • 한국정보전자통신기술학회논문지
    • /
    • 제16권5호
    • /
    • pp.354-361
    • /
    • 2023
  • 빅데이터 분석 시스템들은 다양한 형태의 방대한 데이터를 저장 및 처리, 분석을 위해 MongoDB와 같은 NoSQL 데이터베이스를 적용한다. MongoDB는 환경 구성에 따라 분산 처리 및 데이터 복제를 통해 확장성과 빠른 데이터 처리 속도를 제공한다. 본 논문에서는 구현하는 빅데이터 분석 시스템에 적합한 MongoDB 환경 구성에 대해 연구한다. 성능 평가를 위한 환경은 크게 싱글 노드와 다중 노드 환경으로 구성하였으며, 다중 노드 환경은 데이터 노드의 수를 2대에서 3대까지 확장하여 각 환경별 성능을 측정하였다. 분석 결과, 3차원 이상의 복잡한 데이터 구조의 데이터 처리 속도는 싱글 노드 환경이 2개의 데이터 노드 환경에 비해 약 5.75% 빠르게 처리하지만,3개의 데이터 노드 환경은 싱글 노드 환경에 비해 약 25.15% 이상 빠르게 처리한다. 그러나 데이터 구조가 단순한 1차원 데이터 구조는 다중 노드 환경이 싱글 노드 환경에 비해 약 28.63% 빠르게 처리한다. 향후 본 연구를 기반으로 다양한 데이터 구조 및 방대한 양의 데이터를 통한 실질적인 검증이 필요하다.

빅데이터 플랫폼 환경에서의 워크로드별 암호화 알고리즘 성능 분석 (Analysis of Encryption Algorithm Performance by Workload in BigData Platform)

  • 이선주;허준범
    • 정보보호학회논문지
    • /
    • 제29권6호
    • /
    • pp.1305-1317
    • /
    • 2019
  • 공공기관 및 기업의 빅데이터 플랫폼 환경에서 데이터 보호를 위한 암호화는 필수적인 요소이나 실제 빅데이터 워크로드를 고려한 암호화 알고리즘에 대한 성능 검증 연구는 많이 진행되지 않았다. 본 논문에서는 몽고 DB(MongoDB) 환경에서 데이터와 노드를 추가하여 빅데이터의 6가지 워크로드별로 AES, ARIA, 3DES별로 성능 변화 추이를 분석하였다. 이를 통해 빅데이터 플랫폼 환경에서 각 워크로드 별 최적의 블록기반 암호 알고리즘이 무엇인지 확인하고, NoSQL 데이터베이스 벤치마크(YCSB)를 사용하여 데이터와 노드 구성환경에서 다양한 워크로드별로 테스트를 통해 MongoDB의 성능을 고려한 최적화된 아키텍처를 제안한다.

클라우드 환경에서 MongoDB 기반의 비정형 로그 처리 시스템 설계 및 구현 (Design and Implementation of MongoDB-based Unstructured Log Processing System over Cloud Computing Environment)

  • 김명진;한승호;최운;이한구
    • 인터넷정보학회논문지
    • /
    • 제14권6호
    • /
    • pp.71-84
    • /
    • 2013
  • 컴퓨터 시스템 운용 간에 발생하는 많은 정보들이 기록되는 로그데이터는 컴퓨터 시스템 운용 점검, 프로세스의 최적화, 사용자 최적화 맞춤형 제공 등 다방면으로 활용되고 있다. 본 논문에서는 다양한 종류의 로그데이터들 중에서 은행에서 발생하는 대용량의 로그데이터를 처리하기 위한 클라우드 환경 하에서의 MongoDB 기반 비정형 로그 처리시스템을 제안한다. 은행업무간 발생하는 대부분의 로그데이터는 고객의 업무처리 프로세스 간에 발생하며, 고객 업무 프로세스 처리에 따른 로그데이터를 수집, 저장, 분류, 분석하기 위해서는 별도로 로그데이터를 처리하는 시스템을 구축해야만 한다. 하지만 기존 컴퓨팅환경 하에서는 폭발적으로 증가하는 대용량 비정형 로그데이터 처리를 위한 유연한 스토리지 확장성 기능, 저장된 비정형 로그데이터를 분류, 분석 처리할 수 있는 기능을 구현하기가 매우 어렵다. 이에 따라 본 논문에서는 클라우드 컴퓨팅 기술을 도입하여 기존 컴퓨팅 인프라 환경의 분석 도구 및 관리체계에서 처리하기 어려웠던 비정형 로그데이터를 처리하기 위한 클라우드 환경기반의 로그데이터 처리시스템을 제안하고 구현하였다. 제안한 본 시스템은 IaaS(Infrastructure as a Service) 클라우드 환경을 도입하여 컴퓨팅 자원의 유연한 확장성을 제공하며 실제로, 로그데이터가 장기간 축적되거나 급격하게 증가하는 상황에서 스토리지, 메모리 등의 자원을 신속성 있고 유연하게 확장을 할 수 있는 기능을 포함한다. 또한, 축적된 비정형 로그데이터의 실시간 분석이 요구되어질 때 기존의 분석도구의 처리한계를 극복하기 위해 본 시스템은 하둡 (Hadoop) 기반의 분석모듈을 도입함으로써 대용량의 로그데이터를 빠르고 신뢰성 있게 병렬 분산 처리할 수 있는 기능을 제공한다. 게다가, HDFS(Hadoop Distributed File System)을 도입함으로써 축적된 로그데이터를 블록단위로 복제본을 생성하여 저장관리하기 때문에 본 시스템은 시스템 장애와 같은 상황에서 시스템이 멈추지 않고 작동할 수 있는 자동복구 기능을 제공한다. 마지막으로, 본 시스템은 NoSQL 기반의 MongoDB를 이용하여 분산 데이터베이스를 구축함으로써 효율적으로 비정형로그데이터를 처리하는 기능을 제공한다. MySQL과 같은 관계형 데이터베이스는 복잡한 스키마 구조를 가지고 있기 때문에 비정형 로그데이터를 처리하기에 적합하지 않은 구조를 가지고 있다. 또한, 관계형 데이터베이스의 엄격한 스키마 구조는 장기간 데이터가 축적되거나, 데이터가 급격하게 증가할 때 저장된 데이터를 분할하여 여러 노드에 분산시키는 노드 확장이 어렵다는 문제점을 가지고 있다. NoSQL은 관계형 데이터베이스에서 제공하는 복잡한 연산을 지원하지는 않지만 데이터가 빠르게 증가할 때 노드 분산을 통한 데이터베이스 확장이 매우 용이하며 비정형 데이터를 처리하는데 매우 적합한 구조를 가지고 있는 비관계형 데이터베이스이다. NoSQL의 데이터 모델은 주로 키-값(Key-Value), 컬럼지향(Column-oriented), 문서지향(Document-Oriented)형태로 구분되며, 제안한 시스템은 스키마 구조가 자유로운 문서지향(Document-Oriented) 데이터 모델의 대표 격인 MongoDB를 도입하였다. 본 시스템에 MongoDB를 도입한 이유는 유연한 스키마 구조에 따른 비정형 로그데이터 처리의 용이성뿐만 아니라, 급격한 데이터 증가에 따른 유연한 노드 확장, 스토리지 확장을 자동적으로 수행하는 오토샤딩 (AutoSharding) 기능을 제공하기 때문이다. 본 논문에서 제안하는 시스템은 크게 로그 수집기 모듈, 로그 그래프생성 모듈, MongoDB 모듈, Hadoop기반 분석 모듈, MySQL 모듈로 구성되어져 있다. 로그 수집기 모듈은 각 은행에서 고객의 업무 프로세스 시작부터 종료 시점까지 발생하는 로그데이터가 클라우드 서버로 전송될 때 로그데이터 종류에 따라 데이터를 수집하고 분류하여 MongoDB 모듈과 MySQL 모듈로 분배하는 기능을 수행한다. 로그 그래프생성 모듈은 수집된 로그데이터를 분석시점, 분석종류에 따라 MongoDB 모듈, Hadoop기반 분석 모듈, MySQL 모듈에 의해서 분석되어진 결과를 사용자에게 웹 인터페이스 형태로 제공하는 역할을 한다. 실시간적 로그데이터분석이 필요한 로그데이터는 MySQL 모듈로 저장이 되어 로그 그래프생성 모듈을 통하여 실시간 로그데이터 정보를 제공한다. 실시간 분석이 아닌 단위시간당 누적된 로그데이터의 경우 MongoDB 모듈에 저장이 되고, 다양한 분석사항에 따라 사용자에게 그래프화해서 제공된다. MongoDB 모듈에 누적된 로그데이터는 Hadoop기반 분석모듈을 통해서 병렬 분산 처리 작업이 수행된다. 성능 평가를 위하여 로그데이터 삽입, 쿼리 성능에 대해서 MySQL만을 적용한 로그데이터 처리시스템과 제안한 시스템을 비교 평가하였으며 그 성능의 우수성을 검증하였다. 또한, MongoDB의 청크 크기별 로그데이터 삽입 성능평가를 통해 최적화된 청크 크기를 확인하였다.