KR101543377B1 - Apparatus and method for analyzing data using mapreduce based on nosql - Google Patents
Apparatus and method for analyzing data using mapreduce based on nosql Download PDFInfo
- Publication number
- KR101543377B1 KR101543377B1 KR1020130091053A KR20130091053A KR101543377B1 KR 101543377 B1 KR101543377 B1 KR 101543377B1 KR 1020130091053 A KR1020130091053 A KR 1020130091053A KR 20130091053 A KR20130091053 A KR 20130091053A KR 101543377 B1 KR101543377 B1 KR 101543377B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- output data
- generate
- database
- fields
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
NoSQL(Not Only SQL(Structureed Query Language)) 기반의 맵리듀스(MapReduce)를 이용한 데이터 분석 장치는, 하나 이상의 필드 및 상기 하나 이상의 필드 각각에 대응되는 값을 갖는 입력 데이터를 저장하도록 구성된 NoSQL 기반 데이터베이스; 상기 입력 데이터로부터 미리 결정된 필드의 내용을 추출하여 파싱(parsing)된 데이터를 생성하며, 상기 파싱된 데이터를 미리 결정된 규칙에 기초하여 필터링한 제1 출력 데이터를 생성하도록 구성된 맵(Map) 모듈; 및 상기 맵 모듈로부터 상기 제1 출력 데이터를 수신하고, 상기 제1 출력 데이터를 상기 미리 결정된 필드의 내용에 따라 병합하여 제2 출력 데이터를 생성하도록 구성된 리듀스(Reduce) 모듈을 포함할 수 있다. A data analysis apparatus using MapReduce based on NoSQL (Structure Only Query Language) is a NoSQL based database configured to store input data having one or more fields and values corresponding to each of the one or more fields; A map module configured to extract the contents of a predetermined field from the input data to generate parsed data and generate first output data obtained by filtering the parsed data based on a predetermined rule; And a Reduce module configured to receive the first output data from the map module and generate the second output data by merging the first output data according to the contents of the predetermined field.
Description
실시예들은 NoSQL(Not Only SQL(Structureed Query Language)) 기반의 맵리듀스(MapReduce)를 이용한 데이터 분석 장치 및 방법 에 관한 것이다. Embodiments relate to an apparatus and method for analyzing data using MapReduce based on NoSQL (Not-Only Structured Query Language (SQL)).
최근 컴퓨터와 인터넷 이용의 확산, 스마트폰을 포함한 스마트 기기의 보급, 신용카드와 온라인 상거래의 증가 등 네트워크를 이용한 서비스 산업의 영역이 확대되면서 많은 기업들이 정보보호 시스템에 관심을 갖고 이에 대한 구축을 확장 시켜나가고 있다. 기업들은 정보보호 시스템이 늘어남에 따라 운영관리 및 일관성 있는 정보보호 정책 구현에 어려움을 겪고 있는데, 지능적으로 변화하는 정보보호 침해사고에 대한 조기 분석을 원하는 곳들에서 통합 보안관제 시스템이 효과적인 역할을 해왔다. Recently, as the scope of the service industry using networks has expanded, such as the spread of computers and the Internet, the spread of smart devices including smart phones, and the increase of credit cards and online commerce, many companies are interested in information protection system It is going out. Organizations are struggling with operational management and the implementation of consistent information protection policies as the information protection system grows. Integrated security control systems have played an effective role in those areas where early analysis of intelligently changing information security breaches is needed.
보안관제 시스템은 기업 시스템의 효율적인 운영을 위해 시스템 상태, 유입되는 트래픽(traffic) 및 데이터 등의 모니터링을 통해 장애 발생의 근원을 신속하게 파악하고, 다양한 데이터들에 여러 가지 형태의 분석 룰(Rule)을 적용하여 이들의 유해성 판단, 보안 위협에 대한 대응 및 경보체계의 구축을 가능하게 한다. 기업뿐만 아니라 다양한 조직 형태의 국가전산망과 IT 융합 시스템의 전반적인 운영과 판단에 있어서도, 종합적인 분석 및 모니터링을 통해 시기적절한 조치, 사고 예방 및 사후 추적을 실시간으로 해결하기 위해 보안관제 시스템을 구축하고 있다. In order to efficiently operate the enterprise system, the security control system quickly grasps the source of the failure by monitoring the system state, the incoming traffic and the data, and various kinds of analysis rules (Rule) , It is possible to judge their hazard, to respond to security threats, and to build an alarm system. In addition to corporations, we are building a security control system to solve the problems of timely action, accident prevention and follow-up in real-time through comprehensive analysis and monitoring in the overall operation and judgment of national computer networks and IT convergence systems in various organizational forms .
이처럼, ICT(Information & Communication Technology) 기술이 발달하고 여러 분야의 산업들과 융합되면서 보안 장비에 대한 수요는 점차 늘어나고 있다. 이에 다양한 장비들에서 발생하는 데이터의 양 또한 점차 늘어나고 있어 기존의 관리 체계로는 감당할 수 없는 거대한 데이터인 빅데이터(Big Data) 규모로 확대되어 가고 있다.As such, with the development of ICT (Information & Communication Technology) technology and convergence with various industries, demand for security equipment is increasing. As a result, the amount of data that is generated in various devices is also increasing, and it is expanding to the size of big data, which is huge data that can not be covered by the existing management system.
빅데이터란 "Very Large data", "Extreme data", "Total data" 등으로 불리기도 하며, 초기에는 데이터의 양이 기준이 되어, 수십 테라에서 향후 페타, 엑사 바이트 정도 크기의 방대한 데이터를 의미하였다. 그러나 현재에는 IT 기술의 발달과 함께 각종 IT 기기에서 발생하는 데이터의 종류 또한 다양해져 기존 방식으로 데이터를 수집/저장/분석/관리하기 어려울 정도로 방대한 정형(structured) 또는 비정형(untructured) 데이터 집합을 의미하기도 한다.Big data is sometimes referred to as "Very Large data", "Extreme data", or "Total data". In the beginning, the amount of data was used as a standard, . However, nowadays, with the development of IT technology, various kinds of data generated in various IT devices are also diversified, which means a large amount of structured or untructured data sets that are difficult to collect / store / analyze / do.
이러한 빅데이터 기술의 핵심 이슈는 기존 데이터베이스의 성능적 한계를 보완하여 저장, 분석, 체계화를 위한 플랫폼(platform)에 대한 기술과 수집되는 방대한 양의 데이터들을 적시 적소에 효율적으로 사용할 수 있도록 필요한 정보만 수집할 수 있는 데이터 정제 기술이 대표적으로 다뤄지고 있다. 통합 보안관제 시스템에서도, 빅데이터 기술을 도입하여 실시간으로 유입되는 빅데이터급의 보안 로그(log)들을 보다 효율적으로 처리할 수 있게끔 하고, 이에 따른 시간적 처리 비용과 에러(error) 비율을 낮추고 정확한 탐색율을 보장할 수 있는 기술이 필요하다.The key issue of this big data technology is that it complements the performance limitations of the existing database and provides the platform with a platform for storage, analysis and systematization, and the information necessary to efficiently use the vast amount of data collected at the right time Data cleansing techniques that can be collected are described as representative. In the integrated security control system, big data technology is introduced to handle the big data class security logs that flow in real time more efficiently, thereby lowering the temporal processing cost and error ratio, We need technology that can guarantee rate.
그러나 이렇게 방대해지고 있는 데이터들은 기존 시스템들에서 처리하고 관리하는 데 여러 가지 어려움이 있다. 가장 대표적인 것이 데이터를 처리하는 성능 문제인데, 관계형 데이터베이스(예컨대, RDBMS 방식의 데이터베이스)를 사용하는 종래의 시스템들에서는 방대해진 데이터를 처리할 시 자체적인 스케일-아웃(Scale-Out) 방식의 확장이 어려워 저장 공간 부족 및 이에 따른 속도 저하 문제가 발생하며, 이는 원활한 서비스를 저해하는 요인이 될 수 있다. 이에 대한 방안으로 별도의 데이터 저장 및 처리 솔루션을 구입하여 장착하거나, 시스템 내부적으로는 바이너리 형태로 저장하는 방식을 이용하여 늘어난 데이터를 경량화하는 방안 등이 제시되고 있다. 그러나 현재 대부분의 IT 융합 시스템에서 이용되고 있는 데이터들은 고가의 데이터관리 솔루션을 이용할 만큼 중요도가 높지 않으므로 비용적인 측면에서 효율적이지 못하다. 또한, 바이너리 형태로 변환할 시 별도의 파일 변환 과정이 필요하기 때문에 실시간으로 분석하고 이를 처리해야 하는 시스템들에는 적절하지 못하다. However, there are many difficulties in processing and managing data in such existing systems. In the conventional systems using a relational database (for example, an RDBMS-based database), the scale-out of the system itself is expanded in processing large data. The storage space is insufficient and the speed reduction problem occurs, which may hinder smooth service. As a solution to this problem, a method of reducing the amount of data that has been increased by purchasing and installing a separate data storage and processing solution or storing the data in a binary form within the system is proposed. However, the data currently used in most IT convergence systems is not as costly as it is not as important as using expensive data management solutions. In addition, it is not suitable for systems that need to analyze and process in real time because it requires a separate file conversion process when converting to binary form.
따라서, 저가의 비용으로도 많은 양의 데이터들을 저장하고, 이렇게 수집된 데이터들을 보다 신속하고 효율적으로 정제하여 최적화된 데이터 집합을 구축 할 수 있는 새로운 패러다임의 기술이 필요하다. 즉, 수많은 시스템 장비의 상태를 실시간으로 분석 및 모니터링하고, 장애 및 응급 상황에 긴급히 대처할 수 있으며, 여러 경로를 통해 유입되는 로그, 데이터, 이벤트(event), 트래픽 등 대량의 데이터를 대상으로 사고 예방, 유해성 판단 및 실시간 대응이 가능한 종합적인 대응체계와 경보체계 구축을 가능하게 하는, 빅데이터 환경에 맞는 분석 기술이 요구된다. Therefore, there is a need for a new paradigm capable of storing a large amount of data at a low cost and quickly and efficiently refining the collected data to construct an optimized data set. In other words, it can analyze and monitor the status of many system equipments in real time, cope with emergency and emergency situations, and prevent mass accidents such as logs, data, events, , Analysis technology suitable for big data environment is needed which enables construction of comprehensive response system and alarm system capable of judging harmfulness and real time response.
본 발명의 일 측면에 따르면, 대량의 보안 로그(log)들을 보다 효율적으로 처리할 수 있는 NoSQL(Not Only SQL(Structureed Query Language)) 기반의 데이터베이스 및 대량의 데이터를 대상으로 불필요한 정보들은 제거하고 필요한 정보만을 추출하여 적시적소에 사용하게 할 수 있는 맵리듀스(MapReduce) 설계를 이용한 전처리 알고리즘 기법에 의해, 빅데이터(Big Data) 시대에 대응할 수 있는 통합 보안관제 기술을 제공할 수 있다.According to an aspect of the present invention, there is provided a database based on NoSQL (Structured Query Language (NoSQL)) capable of processing a large number of security logs more efficiently, and a system for removing unnecessary information It is possible to provide an integrated security control technology capable of coping with the Big Data era by the preprocessing algorithm technique using the MapReduce design which can extract information only and use it in a timely manner.
일 실시예에 따른 데이터 분석 장치는, 하나 이상의 필드 및 상기 하나 이상의 필드 각각에 대응되는 내용을 갖는 입력 데이터를 저장하도록 구성된 NoSQL(Not Only SQL(Structureed Query Language)) 기반 데이터베이스; 상기 입력 데이터로부터 미리 결정된 필드의 내용을 추출하여 파싱(parsing)된 데이터를 생성하며, 상기 파싱된 데이터를 미리 결정된 규칙에 기초하여 필터링한 제1 출력 데이터를 생성하도록 구성된 맵(Map) 모듈; 및 상기 맵 모듈로부터 상기 제1 출력 데이터를 수신하고, 상기 제1 출력 데이터를 상기 미리 결정된 필드의 내용에 따라 병합하여 제2 출력 데이터를 생성하도록 구성된 리듀스(Reduce) 모듈을 포함할 수 있다. A data analysis apparatus according to an embodiment includes: a NoSQL (Structured Query Language (NoSQL) -based database configured to store input data having one or more fields and contents corresponding to each of the one or more fields; A map module configured to extract the contents of a predetermined field from the input data to generate parsed data and generate first output data obtained by filtering the parsed data based on a predetermined rule; And a Reduce module configured to receive the first output data from the map module and generate the second output data by merging the first output data according to the contents of the predetermined field.
일 실시예에 따른 데이터 분석 방법은, NoSQL 기반 데이터베이스에, 하나 이상의 필드 및 상기 하나 이상의 필드 각각에 대응되는 내용을 갖는 입력 데이터를 저장하는 단계; 상기 입력 데이터로부터 미리 결정된 필드의 내용을 추출하여 파싱된 데이터를 생성하는 단계; 상기 파싱된 데이터를 상기 미리 결정된 필드의 내용에 기초하여 필터링하여 제1 출력 데이터를 생성하는 단계; 상기 제1 출력 데이터를 상기 미리 결정된 필드의 내용에 기초하여 병합하여 제2 출력 데이터를 생성하는 단계; 및 상기 제2 출력 데이터를 출력하는 단계를 포함할 수 있다. According to an embodiment, a method of analyzing data includes storing input data in a NoSQL-based database having one or more fields and contents corresponding to each of the one or more fields; Extracting contents of a predetermined field from the input data to generate parsed data; Filtering the parsed data based on the content of the predetermined field to generate first output data; Merging the first output data based on the contents of the predetermined field to generate second output data; And outputting the second output data.
일 실시예에 따른 컴퓨터로 판독 가능한 저장 매체에는, 컴퓨터에 의하여 실행됨으로써 컴퓨터에 의하여 상기 데이터 분석 방법을 수행하기 위한 명령이 저장될 수 있다. A computer-readable storage medium, according to one embodiment, may store instructions for performing the method of data analysis by a computer, executed by a computer.
본 발명의 일 측면에 따른 데이터 분석 장치 및 방법에 의하면, 대용량 로그(log) 수집 분석 시스템에서 필요한 원본(Raw Data) 자체를 데이터베이스에 저장할 수 있을만한 빅데이터 저장 엔진을 구축할 수 있다. 또한, IT 융합 시스템에서 빅데이터의 전처리 과정을 통해 필수적인 특징만을 추출 및 선택함으로써 연산 및 처리 효율을 향상시키고 실시간으로 유입되는 빅데이터에 적용할 수 있다. 이상과 같은 기술은 IT 융? 시스템에 있어서 데이터, 이벤트(event), 또는 트래픽(traffic)을 실시간 검색, 인덱싱(indexing) 및/또는 상관 분석하기 위한 기반을 제공할 수 있다. 또한, 최적화된 특징들로 구성된 정제 데이터를 통하여 데이터에서 특정 공격을 탐지 가능하도록 할 수 있고, 데이터의 검색 및 인덱싱 처리 시 정확도를 향상시키고 에러(error)율을 감소시킬 수 있다. According to the apparatus and method for analyzing data according to an aspect of the present invention, it is possible to construct a big data storage engine capable of storing raw data itself in a database in a large volume log collection and analysis system. Also, by extracting and selecting essential features through preprocessing of big data in IT convergence system, it is possible to improve computation and processing efficiency and apply it to big data flowing in real time. The above technology is IT fusion? The system can provide a basis for real-time searching, indexing, and / or correlation analysis of data, events, or traffic. In addition, it is possible to detect a specific attack from the data through the refined data composed of the optimized features, improve the accuracy in data retrieval and indexing processing, and reduce the error rate.
도 1은 일 실시예에 따른 데이터 분석 장치의 개략적인 블록도이다.
도 2는 일 실시예에 따른 데이터 분석 방법의 순서도이다.
도 3은 일 실시예에 따른 데이터 분석 방법에 의한 데이터 수집 및 정제 과정을 설명하기 위한 개략도이다.
도 4는 일 실시예에 따른 데이터 분석 방법에 의한 데이터 수집 속도를 종래의 기술과 비교하여 나타내는 그래프이다.
도 5는 일 실시예에 따른 데이터 분석 방법에 의한 데이터 검색 속도를 종래의 기술과 비교하여 나타내는 그래프이다.1 is a schematic block diagram of a data analysis apparatus according to one embodiment.
2 is a flowchart of a data analysis method according to an embodiment.
FIG. 3 is a schematic diagram for explaining a data collection and refinement process according to a data analysis method according to an embodiment.
FIG. 4 is a graph illustrating a data collection rate according to a data analysis method according to an exemplary embodiment in comparison with a conventional technique.
FIG. 5 is a graph illustrating a data retrieval speed according to a data analysis method according to an exemplary embodiment in comparison with a conventional technique.
이하에서, 도면을 참조하여 본 발명의 실시예들에 대하여 상세히 살펴본다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
도 1은 일 실시예에 따른 데이터 분석 장치의 개략적인 블록도이다.1 is a schematic block diagram of a data analysis apparatus according to one embodiment.
도 1을 참조하면, 데이터 분석 장치는 NoSQL(Not Only SQL(Structureed Query Language)) 기반의 데이터베이스(10), 및 맵리듀스(MapReduce) 기반의 데이터 분석을 수행하기 위한 맵(Map) 모듈(20)과 리듀스(Reduce) 모듈(30)을 포함할 수 있다. 본 명세서에서 "데이터베이스", "모듈" 또는 "장치" 등의 용어는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭하는 것으로 의도된다. 예를 들어, 하드웨어는 CPU 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 하드웨어에 의해 구동되는 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다.1, the data analysis apparatus includes a
데이터베이스(10)에는 분석을 위한 입력 데이터가 수신된다. 본 명세서에서는, 데이터 분석 장치를 이용하여 방화벽 로그(log)를 분석하는 실시예를 기준으로 본 발명에 대하여 설명한다. 본 실시예에서, 데이터베이스(10)는 파이어월(firewall), 웹 파이어월(web firewall), VPN(Virtual Private Network), IDS(Intrusion Detection System), IPS(Intrusion Prevention System), NMS(Network Management System), SMS(System Management Solution) 또는 다른 상이한 종류의 보안 장비들로부터 입력 데이터로서 로그 데이터를 수신할 수 있다. 그러나, 이는 예시적인 것으로서, 다른 실시예에서 데이터 분석 장치는 방화벽 로그 분석 외에 다른 상이한 종류의 빅 데이터(Big Data) 분석 및 처리에 활용될 수도 있다. In the
실시예들에서 데이터베이스(10)는 NoSQL 기반의 데이터베이스로서, 예컨대, HBase, 카산드라(Cassandra), 몽고DB(MongoDB) 등일 수 있다. 종래의 관계형 데이터베이스(예컨대, MySQL 또는 RDBMS)를 기반으로 데이터를 처리하는 방식은, 빠르게 변화하고 거대화되어 가고 있는 보안 로그 데이터들의 현 특성을 반영하지 못하며 분석에 있어 한계가 있다. 관계형 데이터베이스는 각 로그 데이터 테이블간의 복잡한 관계를 설정하여 이를 분석하여야 하므로 변화하는 공객의 패턴이나 새로운 공격 유형의 반영에 어려움이 있다. 즉, 변화된 공객 패턴이나 신규 공격의 발생 시에 이를 수정하거나 추가하기 위해 매번 관계를 재설정해야 한다. In embodiments, the
이에 본 발명의 실시예들에서는, 관계형 데이터베이스가 아닌 NoSQL 기반의 데이터베이스(10)를 이용한다. NoSQL 기반의 데이터베이스(10)를 이용한 결과, 맵 모듈(20) 및 리듀스 모듈(30)은 고정된 데이터 스키마(Schema) 없이 키(key) 값을 이용하여 데이터베이스(10) 내의 다양한 형태의 데이터에 접근할 수 있다. 따라서, 공격을 탐지하기 위한 규칙을 수정함으로써 새로운 공격 유형을 신속하게 반영할 수 있다. Therefore, in the embodiments of the present invention, the NoSQL-based
맵 모듈(20)과 리듀스 모듈(30)은, 데이터베이스(10)에 저장된 입력 데이터의 일부 또는 전부를 대상으로 맵리듀스(MapReduce) 기반 데이터 처리를 수행함으로써 데이터를 분석하기 위한 부분이다. 실시예들에 따른 데이터 분석 장치를 보안 로그 데이터 분석에 사용하는 경우, 맵 모듈(20)은 데이터베이스(10)에 저장된 로그 데이터를 파싱(parsing)하고, 파싱된 데이터로부터 소정의 규칙에 따라 공격을 탐지할 수 있다. 또한, 리듀스 모듈(30)은 맵 모듈(20)에서 출력된 데이터를 입력받고 데이터들을 기준에 따라 병합한 집합을 출력함으로써 출력 데이터를 구축할 수 있다. The
도 2는 일 실시예에 따른 데이터 분석 방법의 순서도이다. 도 1 및 도 2를 참조하여, 일 실시예에 따른 데이터 분석 방법에 대하여 아래에서 설명한다. 2 is a flowchart of a data analysis method according to an embodiment. 1 and 2, a data analysis method according to an embodiment will be described below.
먼저, NoSQL 기반 데이터베이스(10)에 입력 데이터를 수집할 수 있다(S1). 실시예들에 따른 데이터 분석 방법을 방화벽 로그 분석에 적용하는 경우, NoSQL 기반 데이터베이스(10)는 파이어월, 웹 파이어월, VPN, IDS/IPS, NMS/SMS 또는 다른 상이한 종류의 보안 장비들로부터 입력 데이터로서 로그 데이터를 수신할 수 있다. 데이터베이스(10)에 수집되는 입력 데이터는 하나 이상의 필드 및 각 필드에 대응되는 내용을 포함할 수 있다. 데이터의 필드 및 각 필드의 내용은 데이터 분석의 적용 대상에 따라 다양한 형태로 구현될 수 있다. 예컨대, 입력 데이터가 로그 데이터일 경우 입력 데이터는 하기 표 1과 같은 형태로 구성될 수도 있다. First, input data may be collected in the NoSQL-based database 10 (S1). When applying the data analysis method according to the embodiments to the firewall log analysis, the NoSQL-based
(Y: 연도, M:월, D:일, H:시간, M: 분, S: 초)YYYYMMDD HHMMSS format
(Y: year, M: month, D: day, H: hour, M: minute, S: second)
(Destination Port)Destination port
(Destination Port)
EGP : 8 / PUP : 12 / UDP : 17IP: 0 / ICMP: 1 / CGP: 3 / TCP: 6
EGP: 8 / PUP: 12 / UDP: 17
2 (거부) : Drop/Reject1 (Allowed): Allow / Accept / Close
2 (Deny): Drop / Reject
그러나, 상기 표 1에 기재된 것은 단지 예시적인 것으로서, 실시예들에 따른 데이터베이스(10)에 수집되는 데이터의 형태는 전술한 것에 한정되는 것은 아니다. However, what is described in Table 1 is merely an example, and the form of data collected in the
다음으로, 데이터베이스(10)에 수집된 입력 데이터를 맵 모듈(20)에 의하여 파싱(parsing)할 수 있다. 맵 모듈(20)은 키(key)와 값(value)의 쌍을 입력받고 이를 이용하여 파싱된 데이터를 새로운 키-값의 쌍으로 출력하는 Map () 함수를 이용하여 동작될 수 있다. 예를 들어, 일 실시예에서 맵 모듈(20)을 구동하는 Map() 함수의 의사 코드는 하기 표 2와 같다. Next, the input data collected in the
mapmap
::
functionfunction
(){() {
thisthis
..
attackattack
.forEach(.forEach (
functionfunction
((
attackattack
__
typetype
){) {
emit( emit (
attackattack
,{ , {
datedate
, ,
countcount
: 1});: One});
}}
그러나, 위에 기재한 Map() 함수의 의사 코드는 단지 예시적인 것이며, 실시예들에 따른 데이터 분석 장치에서 맵 모듈(20)은 다른 상이한 형태로 작성되거나 다른 상이한 언어로 작성된 함수를 이용하여 동작하도록 구성될 수도 있다. However, the pseudo-code of the Map () function described above is merely exemplary, and in the data analysis apparatus according to embodiments, the
맵 모듈(20)은, 입력 데이터에 포함된 하나 이상의 필드 중 공격 탐지에 이용될 미리 결정된 필드를 Map() 함수의 키(key)로 이용하며 해당 필드의 내용을 Map() 함수의 값(value)으로 이용하여 입력 데이터의 파싱을 수행할 수 있다. 파싱의 기준이 되는 미리 결정된 필드는 하나 또는 복수 개일 수 있으며, 사용자에 의하여 공격 유형에 따라 적절히 결정되어 맵 모듈(20)에 입력될 수 있다. 일 실시예에서, 데이터 분석 장치는 미리 결정된 필드 및 공격 탐지 규칙 등을 사용자가 입력하기 위한 입력 모듈(미도시)을 더 포함할 수도 있다. The
다음으로, 맵 모듈(20)은 파싱된 데이터에 미리 결정된 공격 탐지 규칙을 적용함으로써, 파싱된 데이터 중 공격으로 판별되는 데이터들을 필터링할 수 있다. 필터링을 수행하기 위한 기준이 되는 공격 탐지 규칙은 사용자에 의해 적절히 결정되어 맵 모듈(20)에 입력될 수 있으며, 공격 유형의 변화에 맞추어 수정되거나 새롭게 생성될 수도 있다. 공격 탐지 규칙의 몇몇 예시에 대해서는 도 4 및 도 5를 참조하여 상세히 후술한다. 종래와 달리 맵 모듈(20) 내에서 데이터의 파싱 및 이상 데이터의 탐지가 한번에 처리되므로, 분석 단계를 감소시킬 수 있으며, 이는 장치로 구현될 경우 비용 절감에 기여할 수 있다. Next, the
맵 모듈(20)에 의하여 파싱된 데이터 중 공격으로 판별된 데이터들은 제1 출력 데이터로서 맵 모듈(20)로부터 출력되어 리듀스 모듈(30)에 전달될 수 있다. 제1 출력 데이터는, 리듀스 모듈(30)에서 이용될 새로운 키와 값의 쌍으로 이루어질 수 있다. 예컨대, 제1 출력 데이터는 입력 데이터 중 공격 탐지에 사용된 특정 필드(예컨대, 일시(Date Time))의 내용 및 공격으로 탐지된 데이터의 집계 정보(count)를 포함할 수 있다. Among the data parsed by the
리듀스 모듈(30)은 맵 모듈(20)로부터 제1 출력 데이터를 수신하고, 제1 출력 데이터를 키를 기준으로 병합하여 제2 출력 데이터를 생성할 수 있다. 리듀스 모듈(30)은 키(key)와 값(value)의 쌍을 입력받고 이를 이용하여 데이터를 병합하는 Reduce () 함수를 이용하여 동작될 수 있다. 예를 들어, 일 실시예에서 리듀스 모듈(30)을 구동하는 Reduce() 함수의 의사 코드는 하기 표 3과 같다. The
reducereduce
::
function( function (
keykey
, ,
valuesvalues
){ //() {// (
datedate
, ,
countcount
))
totaltotal
= 0; = 0;
for(n = 0; n< for (n = 0; n <
valuesvalues
..
lengthlength
; n++){; n + +) {
totaltotal
+= + =
valuesvalues
[n].[n].
countcount
;};}
returnreturn
{ {
attackattack
: :
totaltotal
};}};
그러나, 위에 기재한 Reduce() 함수의 의사 코드는 단지 예시적인 것이며, 실시예들에 따른 데이터 분석 장치에서 리듀스 모듈(30)은 다른 상이한 형태로 작성되거나 다른 상이한 언어로 작성된 함수를 이용하여 동작하도록 구성될 수도 있다. However, the pseudo-code of the Reduce () function described above is merely exemplary, and in the data analysis apparatus according to the embodiments, the
리듀스 모듈(30)은, 맵 모듈(20)로부터 출력된 제1 출력 데이터 중 공격 탐지에 사용된 특정 필드(예컨대, 일시(Date Time))의 내용을 Reduce() 함수의 키(key)로 이용하며 공격으로 탐지된 데이터의 집계 정보(count)를 Reduc() 함수의 값(value)으로 이용하여 데이터를 병합할 수 있다. 병합된 데이터는 공격이 일어난 로그 데이터에 대한 집계를 포함하며, 이는 제2 출력 데이터로서 리듀스 모듈(30)로부터 출력될 수 있다. The
일 실시예에서, 데이터 분석 장치는 제2 출력 데이터를 사용자가 볼 수 있도록 표시하기 위한 표시 모듈(미도시)을 더 포함할 수도 있다. 사용자는 표시 모듈을 통하여 제2 출력 데이터를 확인하고, 특정 시간에 집계된 공격 횟수나 공격 유형 등을 통하여 방화벽 로그에 대한 다양한 분석을 수행할 수 있다. In one embodiment, the data analysis device may further comprise a display module (not shown) for displaying the second output data for viewing by the user. The user can confirm the second output data through the display module and perform various analyzes on the firewall logs through the number of attacks or attack types counted at a specific time.
도 3은 일 실시예에 따른 데이터 분석 방법에 의한 데이터 수집 및 정제 과정을 설명하기 위한 개략도이다. FIG. 3 is a schematic diagram for explaining a data collection and refinement process according to a data analysis method according to an embodiment.
도 3에 도시된 예에서, 입력 데이터는 일시(Date), 근원지 IP(Src IP), 목적지 IP(Dst IP), 프로토콜(예컨대, ICMP)의 필드를 가지며, 입력 데이터 중에는 공격에 해당하는 일련의 데이터 그룹(Attack1-3)이 포함된다. Map() 함수는 일시(Date) 필드 및 이에 해당하는 내용을 각각 키(key) 및 값(value)으로 사용하여 파싱을 수행한다. 파싱 결과, 입력 데이터는 일시(Date) 필드의 내용(예컨대, "2012706 134", "2012706 164", "2012706 165") 및 해당하는 집계 정보(예컨대, count(1))의 쌍을 포함하는 파싱된 데이터로 변환된다. Map() 함수는 파싱된 데이터 중 공격으로 판별된 것을 제1 출력 데이터로 생성하여 Reduce() 함수에 전달한다. In the example shown in Fig. 3, the input data has fields of Date, Source IP (Src IP), Destination IP (Dst IP), Protocol (for example, ICMP) And a data group (Attacks 1-3). The Map () function performs parsing using the Date field and corresponding contents as keys and values, respectively. As a result of parsing, the input data is parsed including the pair of the contents of the Date field (e.g., 2012706 134, 2012706 164, 2012706 165) and the corresponding aggregation information (e.g., count (1) Lt; / RTI > The Map () function generates the first output data that has been determined to be an attack among the parsed data, and transmits it to the Reduce () function.
Reduce() 함수는, 제1 출력 데이터에서 일시(Date) 필드의 내용(예컨대, "2012706 134", "2012706 164", "2012706 165") 및 해당하는 집계 정보(예컨대, count(1))를 각각 키(key) 및 값(value)으로 사용하여 데이터를 병합한다. 예를 들어, Reduce() 함수에 의해 로그 발생 일시가 동일한 데이터들이 하나로 병합되며, Reduce() 함수는 로그 발생 일시가 동일한 데이터들의 집계 정보를 합산하여 합산된 개수를 포함하는 제2 출력 데이터를 생성한다. 도 3에서는 로그 발생 일시가 "2012706 164"인 데이터가 5개, 로그 발생 일시가 "2012706 165"인 데이터가 2개인 것으로 출력되는 것이 예시적으로 도시되었다.The Reduce () function returns the contents (e.g., "2012706 134", "2012706 164", "2012706 165") and corresponding aggregation information (eg, count The data are merged using key and value, respectively. For example, the Reduce () function merges the data having the same log generation date and time, and the Reduce () function generates second output data including the sum of the aggregation information of the data having the same log generation date and time, do. In FIG. 3, it is exemplarily shown that there are five data having the log generation date and time "2012706 164" and two data having the log generation date and time "2012706 165".
도 4는 일 실시예에 따른 데이터 분석 방법에 의한 데이터 수집 속도를 종래의 기술과 비교하여 나타내는 그래프이다. FIG. 4 is a graph illustrating a data collection rate according to a data analysis method according to an exemplary embodiment in comparison with a conventional technique.
도 4에 도시된 결과에서, 종래의 기술에서 데이터베이스로는 관계형 데이터베이스에서 가장 많이 이용되는 MySQL-5.6.10 버전을 사용하였다. 본 발명의 실시예에 따른 NoSQL 기반 데이터베이스로는 MongoDB-2.4.1 버전을 사용하였다. 실험에 사용된 데이터는 실제 기업의 보안 로그 데이터 12,847,649 건 중 10,000,000건을 추출하여 이용하였으며, 실험에 사용된 공격 탐지 규칙은 다음과 같다. In the result shown in Fig. 4, the conventional technique used the MySQL-5.6.10 version, which is the most used database in the relational database. As the NoSQL-based database according to the embodiment of the present invention, MongoDB-2.4.1 version was used. The data used in the experiment is 10,000,000 out of the 12,847,649 security log data of the actual company. The rules of attack detection used in the experiment are as follows.
i. 공격1 : 동일 근원지에서 동일 목적지로 5분간 5회 이상의 ICMP 메시지 발생i. Attack 1: More than 5 ICMP messages for 5 minutes from the same source to the same destination
ii. 공격2 : 50개 이상의 근원지에서 동일 목적지로 5분간 50회 이상의 ICMP 메시지 발생ii. Attack 2: More than 50 ICMP messages in 5 minutes from 50 sources to the same destination
iii. 공격3 : 동일 근원지에서 동일 목적지로 1분간 10000회, 이상의 통신 발생. iii. Attack 3: Over 10000 communication occurrences per minute from the same source to the same destination.
상기 공격1 내지 공격3 중 하나 이상에 해당하는 데이터를 공격으로 판단하도록 규칙을 설정하고, 이를 이용하여 SQL 질의 성능을 테스트하고, 공격 의심 시나리오에 대한 탐지 및 분석을 수행하였다. The rule is set to judge that the data corresponding to one or more of
도 4는 삽입 테스트에 대한 결과를 나타내는 것으로서, 삽입 테스트는 로그 데이터를 얼마나 빠른 시간 안에 수집할 수 있는가, 혹은 이미 수집된 로그 데이터를 얼마나 빠르게 가져올 수 있는가를 시험하는 테스트이다. 도 4의 그래프(410)는 MySQL 데이터베이스 기반 종래 기술에 의한 결과를 나타내며, 그래프(420)는 본 발명의 MongoDB 기반 실시예에 의한 결과를 나타낸다. 도시되는 바와 같이, 입력 데이터의 수가 증가할수록 종래 기술과 본 발명의 실시예의 속도 차이가 눈에 띄게 증가하는 것을 확인할 수 있다.Figure 4 shows the results of an insertion test, which is a test that tests how quickly log data can be collected, or how quickly the collected log data can be retrieved. The
도 4에 도시된 결과를 정리한 것이 하기의 표 4로서, 200만 건의 데이터를 삽입할 경우 종래 기술과 본 실시예의 속도 차이는 936.275초이고, 1000만 건의 데이터를 삽입할 경우에는 상기 속도 차이는 4946.733초로서 속도차가 약 5배 정도 증가하였다. 이는 데이터가 늘어날수록 데이터를 삽입하는 속도 간의 차이도 비례적으로 증가하는 것을 나타낸다. The results shown in FIG. 4 are summarized in Table 4 below. When 2 million data are inserted, the speed difference between the conventional technique and the present embodiment is 936.275 seconds, and when 10 million data are inserted, 4946.733 seconds, and the speed difference was increased about 5 times. This indicates that the difference between the speed of inserting data as the data is increased proportionally increases.
도 5는 일 실시예에 따른 데이터 분석 방법에 의한 데이터 검색 속도를 종래의 기술과 비교하여 나타내는 그래프이다.FIG. 5 is a graph illustrating a data retrieval speed according to a data analysis method according to an exemplary embodiment in comparison with a conventional technique.
도 5는 데이터베이스에 저장된 데이터에서 사용자가 원하는 정보를 얼마나 빠르고 정확하게 수집할 수 있는지에 대한 검색 테스트 결과를 나타낸다. 도 4와 마찬가지로, 도 5에서도 데이터의 건 수를 200만, 500만 및 1000만으로 증가시켜가면서 본 발명의 실시예와 종래 기술을 비교하였다. 도 5에서 그래프(510, 520)는 본 발명의MongoDB 기반 실시예들에 의한 결과를 나타내며, 그래프(530, 540)는 MySQL 기반 종래 기술에 의한 결과를 나타낸다. 또한, 그래프(510, 530)는 검색 쿼리의 개수가 3개인 경우의 결과에 해당하며, 그래프(530, 540)는 검색 쿼리의 개수가 4개인 경우의 결과에 해당한다. 5 shows a result of a search test as to how quickly and accurately the user can collect desired information from the data stored in the database. As in FIG. 4, FIG. 5 also compares the prior art with the embodiment of the present invention while increasing the number of data to 2 million, 5 million and 10 million. The
도시되는 바와 같이, 본 발명의 실시예들이 검색 쿼리(query) 조건의 개수 또는 데이터의 개수와 상관 없이 종래 기술에 비해 빠른 수행 속도를 나타냈다. 도 5에 도시된 결과를 정리한 것이 하기의 표 5로서, 본 발명의 실시예들의 경우 데이터의 개수나 조건 등에 크게 영향을 받지 않고 검색 쿼리의 전체적 평균은 0.0027초로 빠른 검색 성능 및 검색 쿼리에 대한 안정성을 보인다. 반면, MySQL 기반 종래 기술의 경우 데이터의 개수가 증가할수록 검색 속도도 함께 증가하고 있으며, 데이터의 증가뿐만 아니라 검색 쿼리 조건의 개수 증가에 따라서도 검색 쿼리 속도가 증가하는 등 안정적이지 못하고 낮은 성능을 보였다. As shown, embodiments of the present invention exhibit faster performance rates than the prior art, regardless of the number of query conditions or the number of data. The results shown in FIG. 5 are summarized in Table 5 below. In the embodiments of the present invention, the overall average of search queries is 0.0027 seconds, Stability. On the other hand, in the case of the conventional technology based on MySQL, as the number of data increases, the search speed also increases, and the search query speed increases not only with the increase in data but also with the increase in the number of search query conditions, .
(검색 쿼리 3)Examples of the present invention
(Search query 3)
(검색 쿼리 4)Examples of the present invention
(Search query 4)
(검색 쿼리 3)Conventional technology
(Search query 3)
(검색 쿼리 4)Conventional technology
(Search query 4)
이상에서 설명한 실시예들에 따른 데이터 분석 방법은 적어도 부분적으로 컴퓨터 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 실시예들에 따른 데이터 분석 방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(carrier wave)(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. The data analysis method according to the embodiments described above can be at least partially implemented in a computer program and recorded in a computer-readable recording medium. The computer-readable recording medium on which the program for implementing the data analysis method according to the embodiments is recorded includes all kinds of recording apparatuses in which data that can be read by the computer is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and a carrier wave (for example, And the like. The computer readable recording medium may also be distributed over a networked computer system so that computer readable code is stored and executed in a distributed manner.
이상에서 살펴본 본 발명은 도면에 도시된 실시예들을 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위 내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.While the invention has been shown and described with reference to certain embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. However, it should be understood that such modifications are within the technical scope of the present invention. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.
Claims (11)
상기 입력 데이터로부터 미리 결정된 필드의 내용을 추출함으로써 파싱된 데이터를 생성하며, 상기 파싱된 데이터를 미리 결정된 규칙에 기초하여 필터링한 제1 출력 데이터를 생성하도록 구성된 맵 모듈; 및
상기 맵 모듈로부터 상기 제1 출력 데이터를 수신하고, 상기 제1 출력 데이터를 상기 미리 결정된 필드의 내용에 따라 병합하여 제2 출력 데이터를 생성하도록 구성된 리듀스 모듈을 포함하되,
상기 데이터베이스는 몽고DB(MongoDB)인 것을 특징으로 하는 데이터 분석 장치.
A NoSQL based database configured to store input data having one or more fields and contents corresponding to each of the one or more fields;
A map module configured to generate parsed data by extracting contents of a predetermined field from the input data, and generate first output data that is filtered based on a predetermined rule; And
A redistribution module configured to receive the first output data from the map module and to combine the first output data with the contents of the predetermined field to generate second output data,
Wherein the database is a MongoDB (DB).
상기 입력 데이터는 로그 데이터이며,
상기 하나 이상의 필드는, 일시, 근원지 IP, 목적지 IP, 목적지 포트, 프로토콜 및 액션코드 중 하나 이상을 포함하는 것을 특징으로 하는 데이터 분석 장치.
The method according to claim 1,
Wherein the input data is log data,
Wherein the one or more fields comprise at least one of a date and time, a source IP, a destination IP, a destination port, a protocol and an action code.
상기 미리 결정된 규칙은 일시, 근원지 IP, 목적지 IP, 목적지 포트, 프로토콜 및 액션코드 중 하나 이상에 기초한 공격 탐지 규칙을 포함하며,
상기 제1 출력 데이터는, 상기 파싱된 데이터 중 상기 공격 탐지 규칙에 의해 공격으로 판별된 데이터를 포함하는 것을 특징으로 하는 데이터 분석 장치.
3. The method of claim 2,
The predetermined rule includes an attack detection rule based on at least one of a date and time, a source IP, a destination IP, a destination port, a protocol, and an action code,
Wherein the first output data includes data determined as an attack by the attack detection rule among the parsed data.
상기 제2 출력 데이터는, 상기 제1 출력 데이터에서 상기 미리 결정된 필드의 내용이 동일한 데이터의 개수를 포함하는 것을 특징으로 하는 데이터 분석 장치.
The method according to claim 1,
Wherein the second output data includes a number of data in which the content of the predetermined field is the same in the first output data.
상기 데이터 분석 장치가, 상기 입력 데이터로부터 미리 결정된 필드의 내용을 추출하여 파싱된 데이터를 생성하는 단계;
상기 데이터 분석 장치가, 상기 파싱된 데이터를 상기 미리 결정된 필드의 내용에 기초하여 필터링하여 제1 출력 데이터를 생성하는 단계;
상기 데이터 분석 장치가, 상기 제1 출력 데이터를 상기 미리 결정된 필드의 내용에 기초하여 병합하여 제2 출력 데이터를 생성하는 단계; 및
상기 데이터 분석 장치가 상기 제2 출력 데이터를 출력하는 단계를 포함하되,
상기 데이터베이스는 몽고DB(MongoDB)인 것을 특징으로 하는 데이터 분석 방법.
Storing, in a NoSQL-based database, input data having one or more fields and values corresponding to each of the one or more fields;
Extracting contents of a predetermined field from the input data to generate parsed data;
The data analysis apparatus comprising: filtering the parsed data based on contents of the predetermined field to generate first output data;
The data analysis apparatus comprising: merging the first output data based on the contents of the predetermined field to generate second output data; And
And the data analysis apparatus outputting the second output data,
Wherein the database is a MongoDB database.
상기 입력 데이터는 로그 데이터이며,
상기 하나 이상의 필드는, 일시, 근원지 IP, 목적지 IP, 목적지 포트, 프로토콜 및 액션코드 중 하나 이상을 포함하는 것을 특징으로 하는 데이터 분석 방법.
The method according to claim 6,
Wherein the input data is log data,
Wherein the one or more fields comprise at least one of a date and time, a source IP, a destination IP, a destination port, a protocol and an action code.
상기 미리 결정된 규칙은 일시, 근원지 IP, 목적지 IP, 목적지 포트, 프로토콜 및 액션코드 중 하나 이상에 기초한 공격 탐지 규칙을 포함하며,
상기 제1 출력 데이터는, 상기 파싱된 데이터 중 상기 공격 탐지 규칙에 의해 공격으로 판별된 데이터를 포함하는 것을 특징으로 하는 데이터 분석 방법.
8. The method of claim 7,
The predetermined rule includes an attack detection rule based on at least one of a date and time, a source IP, a destination IP, a destination port, a protocol, and an action code,
Wherein the first output data includes data determined to be attacked by the attack detection rule among the parsed data.
상기 제2 출력 데이터는, 상기 제1 출력 데이터에서 상기 미리 결정된 필드의 내용이 동일한 데이터의 개수를 포함하는 것을 특징으로 하는 데이터 분석 방법.
The method according to claim 6,
Wherein the second output data includes a number of data in which the content of the predetermined field is the same in the first output data.
NoSQL 기반 데이터베이스에, 하나 이상의 필드 및 상기 하나 이상의 필드 각각에 대응되는 값을 갖는 입력 데이터를 저장하는 단계;
상기 입력 데이터로부터 미리 결정된 필드의 내용을 추출하여 파싱된 데이터를 생성하는 단계;
상기 파싱된 데이터를 상기 미리 결정된 필드의 내용에 기초하여 필터링하여 제1 출력 데이터를 생성하는 단계;
상기 제1 출력 데이터를 상기 미리 결정된 필드의 내용에 기초하여 병합하여 제2 출력 데이터를 생성하는 단계; 및
상기 제2 출력 데이터를 출력하는 단계를 포함하는 데이터 분석 방법을 수행하기 위한 명령어가 저장되며,
상기 데이터베이스는 몽고DB(MongoDB)인, 컴퓨터로 판독 가능한 기록 매체. By being executed by a computer,
Storing, in a NoSQL-based database, input data having one or more fields and values corresponding to each of the one or more fields;
Extracting contents of a predetermined field from the input data to generate parsed data;
Filtering the parsed data based on the content of the predetermined field to generate first output data;
Merging the first output data based on the contents of the predetermined field to generate second output data; And
And outputting the second output data, wherein instructions for performing a data analysis method are stored,
Wherein the database is a MongoDB (DB).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130091053A KR101543377B1 (en) | 2013-07-31 | 2013-07-31 | Apparatus and method for analyzing data using mapreduce based on nosql |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130091053A KR101543377B1 (en) | 2013-07-31 | 2013-07-31 | Apparatus and method for analyzing data using mapreduce based on nosql |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150016420A KR20150016420A (en) | 2015-02-12 |
KR101543377B1 true KR101543377B1 (en) | 2015-08-11 |
Family
ID=52573242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130091053A KR101543377B1 (en) | 2013-07-31 | 2013-07-31 | Apparatus and method for analyzing data using mapreduce based on nosql |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101543377B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107404473A (en) * | 2017-06-06 | 2017-11-28 | 西安电子科技大学 | Based on Mshield machine learning multi-mode Web application means of defences |
CN109218288A (en) * | 2018-08-01 | 2019-01-15 | 北京科技大学 | A kind of Network Intrusion Detection System for industrial robot control system |
-
2013
- 2013-07-31 KR KR1020130091053A patent/KR101543377B1/en active IP Right Grant
Non-Patent Citations (1)
Title |
---|
MapReduce를 이용한 대용량 보안 로그 분석(한국정보기술학회논문지 제9권 제8호 2011.08.11.) |
Also Published As
Publication number | Publication date |
---|---|
KR20150016420A (en) | 2015-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200389495A1 (en) | Secure policy-controlled processing and auditing on regulated data sets | |
US10148685B2 (en) | Event correlation across heterogeneous operations | |
CN109902297B (en) | Threat information generation method and device | |
US11196756B2 (en) | Identifying notable events based on execution of correlation searches | |
US9742788B2 (en) | Event correlation across heterogeneous operations | |
US10885185B2 (en) | Graph model for alert interpretation in enterprise security system | |
EP4099170A1 (en) | Method and apparatus of auditing log, electronic device, and medium | |
CN110740141A (en) | integration network security situation perception method, device and computer equipment | |
JP7120350B2 (en) | SECURITY INFORMATION ANALYSIS METHOD, SECURITY INFORMATION ANALYSIS SYSTEM AND PROGRAM | |
US11074652B2 (en) | System and method for model-based prediction using a distributed computational graph workflow | |
CN102790706A (en) | Safety analyzing method and device of mass events | |
CN112347501A (en) | Data processing method, device, equipment and storage medium | |
CN106254137A (en) | The alarm root-cause analysis system and method for supervisory systems | |
CN110620690A (en) | Network attack event processing method and electronic equipment thereof | |
Fetjah et al. | Toward a big data architecture for security events analytic | |
KR101543377B1 (en) | Apparatus and method for analyzing data using mapreduce based on nosql | |
CN112910842B (en) | Network attack event evidence obtaining method and device based on flow reduction | |
CN115473675A (en) | Network security situation sensing method and device, electronic equipment and medium | |
CN115481166A (en) | Data storage method and device, electronic equipment and computer storage medium | |
CN113032774B (en) | Training method, device and equipment of anomaly detection model and computer storage medium | |
Park | Efficient Analysis and Detection of Intelligent Security Threats in Cloud Environment | |
CN112738087A (en) | Attack log display method and device | |
WO2021055964A1 (en) | System and method for crowd-sourced refinement of natural phenomenon for risk management and contract validation | |
Kawakani et al. | Discovering attackers past behavior to generate online hyper-alerts | |
US20240195841A1 (en) | System and method for manipulation of secure data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180731 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190730 Year of fee payment: 5 |