WO2024090932A1 - 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법 - Google Patents

수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법 Download PDF

Info

Publication number
WO2024090932A1
WO2024090932A1 PCT/KR2023/016485 KR2023016485W WO2024090932A1 WO 2024090932 A1 WO2024090932 A1 WO 2024090932A1 KR 2023016485 W KR2023016485 W KR 2023016485W WO 2024090932 A1 WO2024090932 A1 WO 2024090932A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
engine
profile
scv
loading
Prior art date
Application number
PCT/KR2023/016485
Other languages
English (en)
French (fr)
Inventor
이동혁
방철호
김동희
도지은
윤진헌
Original Assignee
주식회사 에이데이타
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 에이데이타 filed Critical 주식회사 에이데이타
Publication of WO2024090932A1 publication Critical patent/WO2024090932A1/ko

Links

Images

Definitions

  • the present invention relates to data profiling technology, and more specifically, to data loading profiling technology that collects and processes data according to the purpose of collection based on a profile created through an intuitive UI during the data collection process for data analysis. It's about.
  • An embodiment of the present invention seeks to provide a data loading profiling technology that processes data collection and processing according to the purpose of collection based on a profile created through an intuitive UI during the data collection process for data analysis.
  • a data loading profiling device for automatic processing of collected data includes a profile manager that creates a data profile that defines the flow of data according to the collection purpose through a dedicated interface; An SCV engine that controls execution of data collection modules according to the data collection purpose derived by parsing the data profile; a first data collection module that generates combined data by editing and combining data collected according to the data collection purpose based on the control signal of the SCV engine; and a second data collection module that processes the combined data according to system requirements based on the control signal of the SCV engine to generate load data and stores it in a database.
  • the data loading profiling device may further include a script engine that receives and processes a script from the first data collection module.
  • the profile manager can receive a business domain according to the data type through artificial intelligence (ML) built by pre-learning the collection pattern of the data profile and automatically set the data processing method of the business domain to the data profile.
  • ML artificial intelligence
  • the SCV engine may detect the type of the data collection module from the data profile and control priority execution of the sub-data collection module if the type corresponds to the first type.
  • the first data collection module can receive a value pool address from the SCV engine and search for data necessary for data processing from the data collected in the value pool.
  • the first data collection module may receive intermediate data from the script engine and combine the intermediate data for each group according to user definition or combine the intermediate data according to a recommendation profile.
  • the second data collection module determines the storage location and method of the loaded data, and performs data search, data sorting, removal and grouping of data for the combined data, data connection by item, and loading data generation for the combined data according to the data collection purpose. Processes can be performed.
  • the data loading profiling method for automatically processing collected data includes creating a data profile that defines the flow of data according to the purpose of collection through a dedicated interface by a profile manager. ; Controlling the execution of data collection modules according to a data collection purpose derived by parsing the data profile by an SCV engine; generating combined data by editing and combining data collected according to the data collection purpose based on a control signal of the SCV engine by a first data collection module; And processing the combined data according to system requirements based on the control signal of the SCV engine, by a second data collection module, to generate load data and store it in a database.
  • the disclosed technology can have the following effects. However, since it does not mean that a specific embodiment must include all of the following effects or only the following effects, the scope of rights of the disclosed technology should not be understood as being limited thereby.
  • a data loading profiling device and method for automatically processing collected data processes data collection and processing according to the purpose of collection based on a profile created through an intuitive UI during the data collection process for data analysis. can do.
  • the data collected by the present invention can be processed according to the purpose of collection, the permanence of the collected data can be guaranteed, and a modeling tool that can control the flow of the system can be provided.
  • FIG. 1 is a diagram illustrating a data loading profiling system according to the present invention.
  • FIG. 2 is a diagram explaining the system configuration of the data loading profiling device of FIG. 1.
  • FIG. 3 is a diagram explaining the functional configuration of the data loading profiling device of FIG. 1.
  • Figure 4 is a flowchart explaining the data loading profiling method for automatic processing of collected data according to the present invention.
  • Figure 5 is a diagram explaining the data load profiling architecture according to the present invention.
  • Figure 6 is a diagram explaining the operation process of data load profiling according to the present invention.
  • first and second are used to distinguish one component from another component, and the scope of rights should not be limited by these terms.
  • a first component may be named a second component, and similarly, the second component may also be named a first component.
  • identification codes e.g., a, b, c, etc.
  • the identification codes do not explain the order of each step, and each step clearly follows a specific order in context. Unless specified, events may occur differently from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the opposite order.
  • the present invention can be implemented as computer-readable code on a computer-readable recording medium
  • the computer-readable recording medium includes all types of recording devices that store data that can be read by a computer system.
  • Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. Additionally, the computer-readable recording medium can be distributed across computer systems connected to a network, so that computer-readable code can be stored and executed in a distributed manner.
  • FIG. 1 is a diagram illustrating a data loading profiling system according to the present invention.
  • the data load profiling system 100 may include a user terminal 110, a data load profiling device 130, and a database 150.
  • the user terminal 110 may correspond to a terminal device operated by a user.
  • a user may be understood as one or more users, and each of the one or more users may correspond to one or more user terminals 110.
  • a user may correspond to a person who requests data collection and performs data modeling (i.e., Modeler).
  • Modeler data modeling
  • it is represented as one user terminal 110, but the first user is the first user terminal, the second user is the second user terminal, ..., the nth (where n is a natural number) user is the first user terminal.
  • n may each correspond to a user terminal.
  • the user terminal 110 can be implemented as a device constituting the data loading profiling system 100 according to the present invention, and the data loading profiling system 100 is a data loading profile for automatic processing of collected data.
  • the ring may be modified and implemented in various forms depending on the purpose.
  • the user terminal 110 may be implemented as a smartphone, laptop, or computer that can be operated by being connected to the data loading profiling device 130, but is not necessarily limited thereto, and may also be implemented as a variety of devices, including tablet PCs, etc. You can.
  • the user terminal 110 may be connected to the data load profiling device 130 through a network, and a plurality of user terminals 110 may be simultaneously connected to the data load profiling device 130.
  • the user terminal 110 may request data collection from the data loading profiling device 130 or may create and provide a data profile necessary for data collection.
  • the user terminal 110 can install and execute dedicated programs and applications provided by the data loading profiling device 130.
  • a dedicated program or application may provide a dedicated interface (UI) for creating a data profile.
  • the data load profiling device 130 may be implemented as a server corresponding to a computer or program that performs the data load profiling method for automatically processing collected data according to the present invention.
  • the data loading profiling device 130 may be connected to the user terminal 110 through a wired network or a wireless network such as Bluetooth, WiFi, LTE, etc., and may transmit and receive data with the user terminal 110 through the network. there is.
  • the data loading profiling device 130 may be implemented to operate in connection with an independent external system (not shown in FIG. 1).
  • external systems can be implemented as various DBMS, cloud systems, blockchain systems, etc.
  • the database 150 may correspond to a storage device that stores various information required during the operation of the data loading profiling device 130.
  • the database 150 may store STML data for data collection, or store various values applied to the data collection process and load data according to data collection, but is not necessarily limited thereto, and may store data
  • the load profiling device 130 may store information collected or processed in various forms during the data load profiling process for automatic processing of collected data according to the present invention.
  • the database 150 is shown as a device independent of the data load profiling device 130, but is not necessarily limited thereto, and is included in the data load profiling device 130 as a logical storage device. Of course, it can be implemented. In one embodiment, the database 150 may be implemented as an in-memory DB of the data load profiling device 130.
  • FIG. 2 is a diagram explaining the system configuration of the data loading profiling device of FIG. 1.
  • the data loading profiling device 130 may include a processor 210, a memory 230, a user input/output unit 250, and a network input/output unit 270.
  • the processor 210 can execute a data loading profiling procedure for automatic processing of collected data according to an embodiment of the present invention, and manage the memory 230 that is read or written in this process. You can schedule the synchronization time between volatile memory and non-volatile memory.
  • the processor 210 can control the overall operation of the data loading profiling device 130 and is electrically connected to the memory 230, the user input/output unit 250, and the network input/output unit 270 to facilitate data flow between them. You can control it.
  • the processor 210 may be implemented as a Central Processing Unit (CPU) or a Graphics Processing Unit (GPU) of the data loading profiling device 130.
  • the memory 230 may be implemented as a non-volatile memory such as a solid state disk (SSD) or a hard disk drive (HDD) and may include an auxiliary memory used to store all data required for the data loading profiling device 130. and may include a main memory implemented as volatile memory such as RAM (Random Access Memory). Additionally, the memory 230 can store a set of instructions that are executed by the electrically connected processor 210 to execute the data load profiling method for automatically processing collected data according to the present invention.
  • SSD solid state disk
  • HDD hard disk drive
  • RAM Random Access Memory
  • the user input/output unit 250 includes an environment for receiving user input and an environment for outputting specific information to the user, and includes an input adapter such as, for example, a touch pad, a touch screen, an on-screen keyboard, or a pointing device. It may include an output device including a device and an adapter such as a monitor or touch screen. In one embodiment, the user input/output unit 250 may correspond to a computing device connected through a remote connection, in which case the data loading profiling device 130 may be performed as an independent server.
  • an input adapter such as, for example, a touch pad, a touch screen, an on-screen keyboard, or a pointing device. It may include an output device including a device and an adapter such as a monitor or touch screen.
  • the user input/output unit 250 may correspond to a computing device connected through a remote connection, in which case the data loading profiling device 130 may be performed as an independent server.
  • the network input/output unit 270 provides a communication environment for connection to the user terminal 110 through a network, for example, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), and It may include an adapter for communication such as VAN (Value Added Network). Additionally, the network input/output unit 270 may be implemented to provide short-range communication functions such as WiFi and Bluetooth or wireless communication functions of 4G or higher for wireless transmission of data.
  • LAN local area network
  • MAN metropolitan area network
  • WAN wide area network
  • VAN Value Added Network
  • the network input/output unit 270 may be implemented to provide short-range communication functions such as WiFi and Bluetooth or wireless communication functions of 4G or higher for wireless transmission of data.
  • FIG. 3 is a diagram explaining the functional configuration of the data loading profiling device of FIG. 1.
  • the data loading profiling device 130 includes a profile manager 310, an SCV engine 330, a first data collection module 350, a second data collection module 370, and a script engine 390. and a control unit (not shown in FIG. 3).
  • the data loading profiling device 130 does not have to include all of the above functional configurations at the same time, and depending on each embodiment, some of the above configurations may be omitted, or some or all of the above configurations may be selectively selected. It can also be implemented by including .
  • the data load profiling device 130 may be implemented as an independent module that selectively includes some of the above components, and data load profiling for automatic processing of collected data according to the present invention through linkage between each module. You can also do this method. Hereinafter, the operation of each component will be described in detail.
  • the profile manager 310 can create a data profile that defines the flow of data according to the collection purpose through a dedicated interface.
  • the dedicated interface may correspond to a user interface (UI) for creating a data profile, and may be provided through a dedicated program or application running on the user terminal 110. That is, the user can create a data profile through a dedicated interface, and the profile manager 310 can receive and store the data profile created by the user.
  • UI user interface
  • a data profile may correspond to a settings file created by a user and defining a data flow for data collection.
  • a data profile can be implemented as an STML file (SSI HTML).
  • STML file SSI HTML
  • detailed description of the STML file is omitted.
  • the data profile can be written in HTML format and applied to the process of editing and tying the data to be collected according to the purpose of data collection.
  • the profile manager 310 can determine setting information regarding data collection patterns by creating a data profile in conjunction with the user terminal 110.
  • the profile manager 310 receives a business domain according to the data type through artificial intelligence (ML) built by pre-learning the collection pattern of the data profile and automatically converts the data processing method of the business domain into a data profile. You can set it.
  • artificial intelligence (ML) may correspond to an artificial intelligence model built using the collection pattern of the data profile as learning data.
  • artificial intelligence (ML) can receive information on the type of data to be collected as input and generate the business domain of the data corresponding to the type information as output.
  • the profile manager 310 can provide the user terminal 110 with a data processing method for a business domain recommended by artificial intelligence, allowing the user to automatically set a data profile.
  • the SCV engine 330 can control the execution of data collection modules according to the data collection purpose derived by parsing the data profile.
  • the SCV engine 330 can operate in conjunction with various data collection modules.
  • data collection modules may include Outbound Vehicle, Inbound Vehicle, Weaving Vehicle, etc.
  • the collection module (Vehicle) may correspond to an operation module that individually processes data collection operations
  • the Weaving Vehicle is the first data collection module 350
  • the Outbound Vehicle is the second data collection module 370
  • the Inbound Vehicle is may correspond to the third data collection module.
  • the SCV engine 330 can extract information for data collection from the data profile through an STML parser.
  • the SCV engine 330 may detect the type of the data collection module from the data profile and control priority execution of the sub-data collection module if the type corresponds to the first type.
  • the STML file may include Vehicle type information for data collection.
  • the SCV engine 330 may examine the type of the collection module (Vehicle) in the STML document and determine whether the type is the first data collection module (Weaving Vehicle). In addition, the SCV engine 330 may determine whether there is a sub data collection module (Sub Vehicle) in the case of the first data collection module 350, and in this case, execute the sub data collection module (Sub Vehicle) first to collect the first data. It is possible to collect the values required for the execution of the collection module (Weaving Vehicle). In other words, the sub data collection module is included in the data collection module and may be responsible for collecting preliminary data required in the data collection stage. If there is no sub data collection module or all sub data collection modules are executed, the SCV engine 330 may start the operation of the first data collection module (Weaving Vehicle). At this time, the SCV engine 330 may transmit the value pool address to the first data collection module 350.
  • the SCV engine 330 may start the operation of the first data collection module (Weaving Vehicle). At this time, the SCV engine 330 may transmit the value pool
  • the first data collection module 350 may generate combined data by editing and combining the collected data according to the purpose of data collection based on the control signal of the SCV engine 330.
  • the first data collection module 350 may correspond to a data processing module that edits and bundles the collected data, combines the data to suit the purpose of collection, and then delivers it to the second data collection module 370.
  • the combined data is result data generated by classifying or integrating the collected data according to predetermined conditions and may correspond to data generated by the first data collection module 350.
  • the first data collection module 350 may receive a value pool address from the SCV engine 330 and search for data required for data processing from the data collected in the value pool. That is, the first data collection module 350 can access value values collected in advance and stored in the value pool based on the value pool address. At this time, the value pool can store the collection module value (Composite Collector Value), External Value (External Value), BuiltIn Value, System Value, etc. as value values. The first data collection module 350 may retrieve values required for generating combined data from the value pool and then apply them as input variables (or input parameters) during the data collection process.
  • a value pool address from the SCV engine 330 and search for data required for data processing from the data collected in the value pool. That is, the first data collection module 350 can access value values collected in advance and stored in the value pool based on the value pool address. At this time, the value pool can store the collection module value (Composite Collector Value), External Value (External Value), BuiltIn Value, System Value, etc. as value values.
  • the first data collection module 350 may receive intermediate data from the script engine 390 and combine the intermediate data by group according to user definition or combine the intermediate data according to a recommendation profile. That is, intermediate data is data generated by the script engine 390 and can be used in the creation process of combined data.
  • the first data collection module 350 can edit data by transmitting an SCV Script to the script engine 390 and can receive intermediate data from the script engine 390.
  • the first data collection module 350 may combine intermediate data by group according to user definition or according to a recommended profile that sets the combining method.
  • a recommended profile may be provided by a profiler, and the profiler may create a recommended profile using a recommendation model pre-trained through artificial intelligence.
  • the second data collection module 370 may process the combined data according to system requirements based on the control signal of the SCV engine 330 to generate load data and store it in the database 150.
  • the SCV engine 330 may generate loading data by providing the combined data generated by the first data collection module 350 to the second data collection module 370.
  • the operation of the second data collection module may be started. That is, the second data collection module 370 may prepare to load data to be stored according to data collection.
  • the second data collection module 370 determines the storage location and method of the loaded data, and searches, sorts, removes duplicates, and groups the combined data according to the purpose of data collection. (Group), data connection (Map) for each item, and loading data creation processes can be performed.
  • the second data collection module 370 may be composed of a plurality of modules that independently perform the processes of data search for combined data, data sorting, deduplication and grouping, data connection for each item, and generation of loaded data. there is.
  • the second data collection module 370 may be implemented including a data search module, a data sorting module, a deduplication and grouping module, a data linking module, and a data combining module.
  • the second data collection module 370 may generate loading data as a final result based on the purpose of data collection and store it in the database 150.
  • the script engine 390 may receive a script from the first data collection module 350 and process it. To this end, the script engine 390 may be implemented by being included in the first data collection module 350.
  • the first data collection module 350 can request data processing from the script engine 390 after searching the data, and the script engine 390 generates intermediate data based on the SCV script and It can be provided to the first data collection module 350. Thereafter, the first data collection module 350 may generate combined data based on the intermediate data and provide the combined data to the SCV engine 330.
  • the control unit (not shown in FIG. 3) controls the overall operation of the data loading profiling device 130, and includes the profile manager 310, SCV engine 330, first data collection module 350, and second data collection. Control flow or data flow between the module 370 and the script engine 390 can be managed.
  • Figure 4 is a flowchart explaining the data loading profiling method for automatic processing of collected data according to the present invention.
  • the data loading profiling device 130 can create a data profile defining the flow of data according to the collection purpose through a dedicated interface by the profile manager 310 (step S410).
  • the data loading profiling device 130 can control the execution of data collection modules according to the data collection purpose derived by parsing the data profile by the SCV engine 330 (step S430).
  • the data loading profiling device 130 edits and combines the collected data according to the purpose of data collection based on the control signal of the SCV engine 330 by the first data collection module 350 to generate combined data. It can be done (step S450).
  • the data load profiling device 130 processes the combined data according to system requirements based on the control signal of the SCV engine 330 by the second data collection module 370 to generate load data and stores the data in the database 150. It can be stored in (step S470).
  • Figure 5 is a diagram explaining the data load profiling architecture according to the present invention.
  • the data loading profiling device 130 may be implemented largely including a command center and a task management system.
  • the command center may include a collection module manager (Vehicle Manager), a task manager (Task Manager), and a profile manager (Profile Manager), and the task management system includes a task delegate (Task Delegator) and an SCV Engine (SCV Engine). to third data collection modules (Weaving/Outbound/Inbound Vehicles), a script engine (Compute Engine), etc.
  • the data loading profiling device 130 may include a command center profile manager, data profile storage (STML Storage), and an artificial intelligence (ML) model.
  • the data loading profiling device 130 includes an SCV engine, a first data collection module (Weaving Vehicles), a second data collection module (Outbound Vehicles), a script engine (Compute Engine), and a profile of the task management system. Profiler may be included.
  • -Profile Manager A tool that helps you create STML that defines the flow of data simply through UI work.
  • Profile Manager helps you create STML that edits and binds the data to be collected according to the purpose of collection. can do. Additionally, depending on the type of data to be collected, the data processing method for the business domain recommended by ML can be automatically set.
  • Data Domain ML By learning STML collection patterns, it can recommend the business domain of data to be collected by type and provide a function that allows users to easily create STML.
  • -STML Storage This is a space to store implemented STML created by STML production tools such as Profile Manager and can be stored in a file or DB table.
  • -SCV Engine Can be responsible for parsing STML and executing appropriate Vehicle. Additionally, the performance results can be saved as a log.
  • Outbound Vehicle It is a data processing device that processes data to be loaded according to system requirements.
  • -First data collection module (Weaving Vehicle): It is a data processing device that edits and bundles the collected data, combines the data for the purpose, and delivers it to the Outbound Vehicle.
  • -Script Engine A script engine that processes editing and bundled scripts written by users.
  • -Profiler Automatically classifies data collected by ML and can provide functions to edit and group data according to profiling information.
  • Figure 6 is a diagram explaining the operation process of data load profiling according to the present invention.
  • the data load profiling device 130 may perform a data load profiling method for automatically processing collected data according to the present invention.
  • a data load profiling method for automatically processing collected data according to the present invention will be described in detail.
  • the STML written by the user and the collection data bundle retrieved by the Inbound Vehicle can be transmitted to the SCV engine 330 through a trigger signal.
  • the SCV engine 330 can first check whether the type is a Weaving Vehicle by examining the type of Vehicle in the STML document.
  • the SCV engine 330 can check whether there is a Sub Vehicle, and if a Sub Vehicle exists, execute the Sub Vehicle first to first collect the values required to perform the Weaving Vehicle.
  • the SCV engine 330 can execute the Weaving Vehicle. At this time, the SCV Engine can deliver the Value Pool address.
  • Weaving Vehicle can search for data needed for data processing from the collected data collected in the Value Pool.
  • Data can be edited by transmitting the SCV Script recorded in the Weaving Vehicle to the SCV engine (330).
  • Edited intermediate data can be integrated by group according to user definition. If the user selects the automation option, result data can be generated according to the recommended profile. When all tasks are completed, the combined data bundle can be delivered to the SCV engine 330.
  • the SCV engine 330 can confirm that there is no more Weaving Vehicle.
  • the SCV engine 330 can prepare to load data to be stored by executing the Outbound Vehicle.
  • Outbound Vehicle can determine the location and method of loading the results and collect and final process the combined data for each purpose.
  • Outbound Vehicle can load data into storage when all processing is completed.
  • first data collection module 370 second data collection module

Abstract

본 발명은 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법에 관한 것으로, 상기 장치는 전용 인터페이스를 통해 수집 목적에 따른 데이터의 흐름을 정의하는 데이터 프로파일을 생성하는 프로파일 매니저(Profile Manager); 상기 데이터 프로파일을 파싱하여 도출된 데이터 수집 목적에 따라 데이터 수집모듈들의 실행을 제어하는 SCV 엔진(Engine); 상기 SCV 엔진의 제어 신호를 기초로 상기 데이터 수집 목적에 따라 수집된 데이터를 편집 및 결합하여 결합 데이터를 생성하는 제1 데이터 수집모듈; 및 상기 SCV 엔진의 제어 신호를 기초로 상기 결합 데이터를 시스템 요구사항에 따라 처리하여 적재 데이터를 생성하고 데이터베이스에 저장하는 제2 데이터 수집모듈;을 포함한다.

Description

수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법
본 발명은 데이터 프로파일링 기술에 관한 것으로, 보다 상세하게는 데이터 분석을 위한 데이터 수집 과정에서 직관적인 UI를 통해 작성된 프로파일을 기반으로 수집 목적에 따른 데이터 수집과 가공을 처리하는 데이터 적재 프로파일링 기술에 관한 것이다.
빅데이터 분석, 인공지능 등의 분야에서 데이터 분석을 위해서는 데이터 수집을 통해 방대한 데이터 모집단을 구축하는 과정이 필수적으로 요구되고 있다. 특히, 데이터 수집 목적에 따라 수집 대상이 되는 데이터의 유형이나 범위, 그리고 수집 방법 등이 달라질 수 있다.
또한, 데이터를 수집한 이후에는 데이터 분석 목적에 따라 적절한 전처리 과정이 필요할 수 있다. 한편, 데이터 분석에 사용되는 데이터 양이 증가하면서 데이터를 수집하는 것은 물론 데이터 전처리 과정에서 상당한 비용과 시간이 소요되고 있다.
이에 따라, 데이터 수집 단계에서부터 수집 목적과 수집 방법을 명확히 특정하고 수집 목적에 따라 데이터 수집 및 처리할 수 있는 기술이 요구되고 있다.
[선행기술문헌]
[특허문헌]
한국등록특허 제10-1913591호 (2018.10.25)
본 발명의 일 실시예는 데이터 분석을 위한 데이터 수집 과정에서 직관적인 UI를 통해 작성된 프로파일을 기반으로 수집 목적에 따른 데이터 수집과 가공을 처리하는 데이터 적재 프로파일링 기술을 제공하고자 한다.
실시예들 중에서, 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치는 전용 인터페이스를 통해 수집 목적에 따른 데이터의 흐름을 정의하는 데이터 프로파일(Data Profile)을 생성하는 프로파일 매니저(Profile Manager); 상기 데이터 프로파일을 파싱(parsing)하여 도출된 데이터 수집 목적에 따라 데이터 수집모듈들의 실행을 제어하는 SCV 엔진(Engine); 상기 SCV 엔진의 제어 신호를 기초로 상기 데이터 수집 목적에 따라 수집된 데이터를 편집 및 결합하여 결합 데이터를 생성하는 제1 데이터 수집모듈; 및 상기 SCV 엔진의 제어 신호를 기초로 상기 결합 데이터를 시스템 요구사항에 따라 처리하여 적재 데이터를 생성하고 데이터베이스에 저장하는 제2 데이터 수집모듈;을 포함한다.
상기 데이터 적재 프로파일링 장치는 상기 제1 데이터 수집모듈로부터 스크립트(Script)를 수신하여 처리하는 스크립트 엔진(Script Engine);을 더 포함할 수 있다.
상기 프로파일 매니저는 상기 데이터 프로파일의 수집 패턴을 사전 학습하여 구축된 인공지능(ML)을 통해 데이터 유형에 따른 비즈니스 도메인을 수신하고 해당 비즈니스 도메인의 데이터 처리방법을 상기 데이터 프로파일로 자동 설정할 수 있다.
상기 SCV 엔진은 상기 데이터 프로파일로부터 데이터 수집모듈의 유형을 검출하고 해당 유형이 제1 유형에 해당하는 경우 서브 데이터 수집모듈의 우선 실행을 제어할 수 있다.
상기 제1 데이터 수집모듈은 상기 SCV 엔진으로부터 밸류 풀(Value Pool) 주소를 수신하고 밸류 풀에 수집된 데이터를 대상으로 데이터 가공에 필요한 데이터를 검색할 수 있다.
상기 제1 데이터 수집모듈은 상기 스크립트 엔진으로부터 중간 데이터를 수신하고 상기 중간 데이터를 사용자 정의에 따라 그룹 별로 결합하거나 또는 추천 프로파일에 따라 상기 중간 데이터를 결합할 수 있다.
상기 제2 데이터 수집모듈은 상기 적재 데이터의 저장 위치와 방법을 결정하고, 상기 데이터 수집 목적에 따라 상기 결합 데이터에 대한 데이터 검색, 데이터 정렬, 중복 제거 및 그룹화, 항목별 데이터 연결 및 적재 데이터 생성의 과정들을 수행할 수 있다.
실시예들 중에서, 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법은 프로파일 매니저(Profile Manager)에 의해, 전용 인터페이스를 통해 수집 목적에 따른 데이터의 흐름을 정의하는 데이터 프로파일(Data Profile)을 생성하는 단계; SCV 엔진(Engine)에 의해, 상기 데이터 프로파일을 파싱(parsing)하여 도출된 데이터 수집 목적에 따라 데이터 수집모듈들의 실행을 제어하는 단계; 제1 데이터 수집모듈에 의해, 상기 SCV 엔진의 제어 신호를 기초로 상기 데이터 수집 목적에 따라 수집된 데이터를 편집 및 결합하여 결합 데이터를 생성하는 단계; 및 제2 데이터 수집모듈에 의해, 상기 SCV 엔진의 제어 신호를 기초로 상기 결합 데이터를 시스템 요구사항에 따라 처리하여 적재 데이터를 생성하고 데이터베이스에 저장하는 단계;를 포함한다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법은 데이터 분석을 위한 데이터 수집 과정에서 직관적인 UI를 통해 작성된 프로파일을 기반으로 수집 목적에 따른 데이터 수집과 가공을 처리할 수 있다.
또한, 본 발명에 의해 수집된 데이터는 수집 목적에 따라 처리될 수 있고, 수집된 데이터의 영속성이 보장될 수 있으며, 시스템의 흐름을 제어할 수 있는 모델링 도구가 제공될 수 있다.
도 1은 본 발명에 따른 데이터 적재 프로파일링 시스템을 설명하는 도면이다.
도 2는 도 1의 데이터 적재 프로파일링 장치의 시스템 구성을 설명하는 도면이다.
도 3은 도 1의 데이터 적재 프로파일링 장치의 기능적 구성을 설명하는 도면이다.
도 4는 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법을 설명하는 순서도이다.
도 5는 본 발명에 따른 데이터 적재 프로파일링 아키텍처를 설명하는 도면이다.
도 6은 본 발명에 따른 데이터 적재 프로파일링의 동작 과정을 설명하는 도면이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명에 따른 데이터 적재 프로파일링 시스템을 설명하는 도면이다.
도 1을 참조하면, 데이터 적재 프로파일링 시스템(100)은 사용자 단말(110), 데이터 적재 프로파일링 장치(130) 및 데이터베이스(150)을 포함할 수 있다.
사용자 단말(110)은 사용자에 의해 운용되는 단말 장치에 해당할 수 있다. 본 발명의 실시예에서 사용자는 하나 이상의 사용자로 이해될 수 있으며, 하나 이상의 사용자들 각각은 하나 이상의 사용자 단말(110)에 대응될 수 있다. 예를 들어, 사용자는 데이터 수집을 요청하고 데이터 모델링을 수행하는 사람(즉, Modeler)에 해당할 수 있다. 또한, 도 1에서는 하나의 사용자 단말(110)로 표현되어 있으나, 제1 사용자는 제1 사용자 단말, 제2 사용자는 제2 사용자 단말, ..., 제n(상기 n은 자연수) 사용자는 제n 사용자 단말에 각각 대응될 수 있다.
또한, 사용자 단말(110)은 본 발명에 따른 데이터 적재 프로파일링 시스템(100)을 구성하는 하나의 장치로서 구현될 수 있으며, 데이터 적재 프로파일링 시스템(100)은 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 목적에 따라 다양한 형태로 변형되어 구현될 수 있다.
또한, 사용자 단말(110)은 데이터 적재 프로파일링 장치(130)와 연결되어 동작 가능한 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 포함하여 다양한 디바이스로도 구현될 수 있다.
한편, 사용자 단말(110)은 데이터 적재 프로파일링 장치(130)와 네트워크를 통해 연결될 수 있고, 복수의 사용자 단말(110)들은 데이터 적재 프로파일링 장치(130)와 동시에 연결될 수도 있다.
일 실시예에서, 사용자 단말(110)은 데이터 적재 프로파일링 장치(130)에게 데이터 수집을 요청하거나 데이터 수집에 필요한 데이터 프로파일을 생성하여 제공할 수 있다. 이를 위하여, 사용자 단말(110)은 데이터 적재 프로파일링 장치(130)가 제공하는 전용 프로그램 및 어플리케이션을 설치하여 실행할 수 있다. 이때, 전용 프로그램 또는 어플리케이션은 데이터 프로파일의 작성을 위한 전용 인터페이스(UI)를 제공할 수 있다.
데이터 적재 프로파일링 장치(130)는 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법을 수행하는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 또한, 데이터 적재 프로파일링 장치(130)는 사용자 단말(110)과 유선 네트워크 또는 블루투스, WiFi, LTE 등과 같은 무선 네트워크로 연결될 수 있고, 네트워크를 통해 사용자 단말(110)과 데이터를 송·수신할 수 있다.
또한, 데이터 적재 프로파일링 장치(130)는 독립된 외부 시스템(도 1에 미도시함)과 연결되어 동작하도록 구현될 수 있다. 예를 들어, 외부 시스템은 다양한 DBMS, 클라우드 시스템, 블록체인 시스템 등으로 구현될 수 있다.
데이터베이스(150)는 데이터 적재 프로파일링 장치(130)의 동작 과정에서 필요한 다양한 정보들을 저장하는 저장장치에 해당할 수 있다. 예를 들어, 데이터베이스(150)는 데이터 수집을 위한 STML 데이터를 저장하거나 또는 데이터 수집 과정에 적용되는 다양한 밸류(Value)들 및 데이터 수집에 따른 적재 데이터를 저장할 수 있으며, 반드시 이에 한정되지 않고, 데이터 적재 프로파일링 장치(130)가 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.
또한, 도 1에서, 데이터베이스(150)는 데이터 적재 프로파일링 장치(130)와 독립적인 장치로서 도시되어 있으나, 반드시 이에 한정되지 않고, 논리적인 저장장치로서 데이터 적재 프로파일링 장치(130)에 포함되어 구현될 수 있음은 물론이다. 일 실시예에서, 데이터베이스(150)는 데이터 적재 프로파일링 장치(130)의 인메모리(In-Memory) DB로 구현될 수 있다.
도 2는 도 1의 데이터 적재 프로파일링 장치의 시스템 구성을 설명하는 도면이다.
도 2를 참조하면, 데이터 적재 프로파일링 장치(130)는 프로세서(210), 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)를 포함할 수 있다.
프로세서(210)는 본 발명의 실시예에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 프로시저를 실행할 수 있고, 이러한 과정에서 읽혀지거나 작성되는 메모리(230)를 관리할 수 있으며, 메모리(230)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄 할 수 있다. 프로세서(210)는 데이터 적재 프로파일링 장치(130)의 동작 전반을 제어할 수 있고, 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210)는 데이터 적재 프로파일링 장치(130)의 CPU(Central Processing Unit) 또는 GPU(Graphics Processing Unit)로 구현될 수 있다.
메모리(230)는 SSD(Solid State Disk) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 데이터 적재 프로파일링 장치(130)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다. 또한, 메모리(230)는 전기적으로 연결된 프로세서(210)에 의해 실행됨으로써 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법을 실행하는 명령들의 집합을 저장할 수 있다.
사용자 입출력부(250)은 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함하고, 예를 들어, 터치 패드, 터치 스크린, 화상 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터 또는 터치 스크린과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(250)은 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 데이터 적재 프로파일링 장치(130)는 독립적인 서버로서 수행될 수 있다.
네트워크 입출력부(270)은 네트워크를 통해 사용자 단말(110)과 연결되기 위한 통신 환경을 제공하고, 예를 들어, LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network) 및 VAN(Value Added Network) 등의 통신을 위한 어댑터를 포함할 수 있다. 또한, 네트워크 입출력부(270)는 데이터의 무선 전송을 위해 WiFi, 블루투스 등의 근거리 통신 기능이나 4G 이상의 무선 통신 기능을 제공하도록 구현될 수 있다.
도 3은 도 1의 데이터 적재 프로파일링 장치의 기능적 구성을 설명하는 도면이다.
도 3을 참조하면, 데이터 적재 프로파일링 장치(130)는 프로파일 매니저(310), SCV 엔진(330), 제1 데이터 수집모듈(350), 제2 데이터 수집모듈(370), 스크립트 엔진(390) 및 제어부(도 3에 미도시함)를 포함할 수 있다.
이때, 데이터 적재 프로파일링 장치(130)는 상기의 기능적 구성들을 동시에 모두 포함해야 하는 것은 아니며, 각각의 실시예에 따라 상기의 구성들 중 일부를 생략하거나, 상기의 구성들 중 일부 또는 전부를 선택적으로 포함하여 구현될 수도 있다. 또한, 데이터 적재 프로파일링 장치(130)는 상기 구성들 중 일부를 선택적으로 포함하는 독립된 모듈로서 구현될 수 있으며, 각 모듈들 간의 연동을 통해 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법을 수행할 수도 있다. 이하, 각 구성들의 동작을 구체적으로 설명한다.
프로파일 매니저(310)는 전용 인터페이스를 통해 수집 목적에 따른 데이터의 흐름을 정의하는 데이터 프로파일(Data Profile)을 생성할 수 있다. 여기에서, 전용 인터페이스는 데이터 프로파일을 작성하기 위한 유저 인터페이스(UI)에 해당할 수 있으며, 사용자 단말(110) 상에서 실행되는 전용 프로그램 또는 어플리케이션을 통해 제공될 수 있다. 즉, 사용자는 전용 인터페이스를 통해 데이터 프로파일을 작성할 수 있으며, 프로파일 매니저(310)는 사용자에 의해 작성된 데이터 프로파일을 수신하여 저장할 수 있다.
또한, 데이터 프로파일은 사용자에 의해 작성되고 데이터 수집을 위한 데이터 흐름을 정의하는 설정 파일에 해당할 수 있다. 예를 들어, 데이터 프로파일은 STML 파일(SSI HTML)로 구현될 수 있다. 여기에서, STML 파일에 대한 구체적인 설명은 생략한다. 즉, 데이터 프로파일은 HTML 형식에 따라 작성될 수 있으며, 데이터의 수집 목적에 따라 수집될 데이터를 편집하고 묶어주는 과정에 적용될 수 있다. 결과적으로, 프로파일 매니저(310)는 사용자 단말(110)과 연동하여 데이터 프로파일을 생성함으로써 데이터의 수집 패턴에 관한 설정 정보를 결정할 수 있다.
일 실시예에서, 프로파일 매니저(310)는 데이터 프로파일의 수집 패턴을 사전 학습하여 구축된 인공지능(ML)을 통해 데이터 유형에 따른 비즈니스 도메인을 수신하고 해당 비즈니스 도메인의 데이터 처리방법을 데이터 프로파일로 자동 설정할 수 있다. 여기에서, 인공지능(ML)은 데이터 프로파일의 수집 패턴을 학습 데이터로 사용하여 구축된 인공지능 모델에 해당할 수 있다. 즉, 인공지능(ML)은 수집 대상이 되는 데이터의 유형 정보를 입력으로 수신하여 해당 유형 정보에 대응되는 데이터의 비즈니스 도메인을 출력으로 생성할 수 있다. 프로파일 매니저(310)는 인공지능에 의해 추천된 비즈니스 도메인의 데이터 처리방법을 사용자 단말(110)에 제공하여 사용자로 하여금 데이터 프로파일을 자동 설정하도록 할 수 있다.
SCV 엔진(330)은 데이터 프로파일을 파싱(parsing)하여 도출된 데이터 수집 목적에 따라 데이터 수집모듈들의 실행을 제어할 수 있다. SCV 엔진(330)은 다양한 데이터 수집모듈들과 연동하여 동작할 수 있다. 예를 들어, 데이터 수집모듈에는 Outbound Vehicle, Inbound Vehicle, Weaving Vehicle 등이 포함될 수 있다. 여기에서, 수집모듈(Vehicle)은 데이터 수집 동작을 개별 처리하는 동작 모듈에 해당할 수 있으며, Weaving Vehicle은 제1 데이터 수집모듈(350), Outbound Vehicle은 제2 데이터 수집모듈(370), Inbound Vehicle은 제3 데이터 수집모듈에 대응될 수 있다. 한편, SCV 엔진(330)는 데이터 프로파일이 STML로 구현된 경우 STML 파서(parser)를 통해 데이터 프로파일로부터 데이터 수집을 위한 정보를 추출할 수 있다.
일 실시예에서, SCV 엔진(330)은 데이터 프로파일로부터 데이터 수집모듈의 유형을 검출하고 해당 유형이 제1 유형에 해당하는 경우 서브 데이터 수집모듈의 우선 실행을 제어할 수 있다. 예를 들어, STML 파일은 데이터 수집을 위한 Vehicle 타입(type) 정보를 포함할 수 있다.
구체적으로, SCV 엔진(330)은 STML 문서 내에 수집모듈(Vehicle)의 타입을 조사하여 우선적으로 그 유형이 제1 데이터 수집모듈(Weaving Vehicle)인지 결정할 수 있다. 또한, SCV 엔진(330)은 제1 데이터 수집모듈(350)인 경우 서브 데이터 수집모듈(Sub Vehicle)이 있는지를 결정할 수 있으며, 이 경우 서브 데이터 수집모듈(Sub Vehicle)을 우선 실행하여 제1 데이터 수집모듈(Weaving Vehicle)의 실행에 필요한 밸류(Value)를 수집하도록 할 수 있다. 즉, 서브 데이터 수집모듈은 데이터 수집모듈에 포함되고, 데이터 수집 단계에서 필요한 사전 데이터를 수집하는 역할을 담당할 수 있다. 만약 서브 데이터 수집모듈이 없거나 또는 모두 실행된 경우, SCV 엔진(330)은 제1 데이터 수집모듈(Weaving Vehicle)의 동작을 개시할 수 있다. 이때, SCV 엔진(330)은 밸류 풀(Value Pool) 주소를 제1 데이터 수집모듈(350)에 전달할 수 있다.
제1 데이터 수집모듈(350)은 SCV 엔진(330)의 제어 신호를 기초로 데이터 수집 목적에 따라 수집된 데이터를 편집 및 결합하여 결합 데이터를 생성할 수 있다. 즉, 제1 데이터 수집모듈(350)은 수집한 데이터를 편집하고 묶어 데이터를 수집 목적에 맞게 결합한 다음 제2 데이터 수집모듈(370)에게 전달하는 데이터 처리 모듈에 해당할 수 있다. 결합 데이터는 수집된 데이터를 기반으로 소정의 조건에 따라 분류되거나 통합되어 생성되는 결과 데이터로서 제1 데이터 수집모듈(350)에 의해 생성되는 데이터에 해당할 수 있다.
일 실시예에서, 제1 데이터 수집모듈(350)은 SCV 엔진(330)으로부터 밸류 풀(Value Pool) 주소를 수신하고 밸류 풀에 수집된 데이터를 대상으로 데이터 가공에 필요한 데이터를 검색할 수 있다. 즉, 제1 데이터 수집모듈(350)은 밸류 풀(Value Pool) 주소를 기반으로 사전에 수집되어 밸류 풀에 저장된 밸류 값들에 접근할 수 있다. 이때, 밸류 풀은 수집모듈 값(Composite Collector Value), 외부 값(External Value), 기본 값(BuiltIn Value), 시스템 값(System Value) 등을 밸류 값들로서 저장할 수 있다. 제1 데이터 수집모듈(350)은 결합 데이터의 생성에 필요한 값들을 밸류 풀에서 검색한 후 데이터 수집 과정에서 입력 변수(또는 입력 파라미터)로 적용할 수 있다.
일 실시예에서, 제1 데이터 수집모듈(350)은 스크립트 엔진(390)으로부터 중간 데이터를 수신하고 중간 데이터를 사용자 정의에 따라 그룹 별로 결합하거나 또는 추천 프로파일에 따라 중간 데이터를 결합할 수 있다. 즉, 중간 데이터(intermediate data)는 스크립트 엔진(390)에 의해 생성된 데이터로서 결합 데이터의 생성 과정에 사용될 수 있다. 제1 데이터 수집모듈(350)은 SCV 스크립트(SCV Script)를 스크립트 엔진(390)에 전달하여 데이터를 편집할 수 있으며, 스크립트 엔진(390)으로부터 중간 데이터를 수신할 수 있다.
또한, 제1 데이터 수집모듈(350)은 사용자가 자동화 옵션을 선택한 경우 사용자 정의에 따라 그룹 별로 결합하거나 또는 결합 방법을 설정하는 추천 프로파일에 따라 중간 데이터를 결합할 수 있다. 이때, 추천 프로파일(recommended profile)은 프로파일러(Profiler)에 의해 제공될 수 있으며, 프로파일러는 인공지능을 통해 사전 학습된 추천 모델을 이용하여 추천 프로파일을 생성할 수 있다.
제2 데이터 수집모듈(370)은 SCV 엔진(330)의 제어 신호를 기초로 결합 데이터를 시스템 요구사항에 따라 처리하여 적재 데이터를 생성하고 데이터베이스(150)에 저장할 수 있다. SCV 엔진(330)은 제1 데이터 수집모듈(350)에 의해 생성된 결합 데이터를 제2 데이터 수집모듈(370)에 제공하여 적재 데이터를 생성할 수 있다. 이 경우, SCV 엔진(330)의 제어 신호에 따라 제1 데이터 수집모듈(350)의 동작이 모두 완료된 경우 제2 데이터 수집모듈의 동작이 개시될 수 있다. 즉, 제2 데이터 수집모듈(370)은 데이터 수집에 따라 저장할 데이터의 적재를 준비할 수 있다.
일 실시예에서, 제2 데이터 수집모듈(370)은 적재 데이터의 저장 위치와 방법을 결정하고, 데이터 수집 목적에 따라 결합 데이터에 대한 데이터 검색(Search), 데이터 정렬(Sort), 중복 제거 및 그룹화(Group), 항목별 데이터 연결(Map) 및 적재 데이터 생성의 과정들을 수행할 수 있다. 이를 위하여, 제2 데이터 수집모듈(370)은 결합 데이터에 대한 데이터 검색, 데이터 정렬, 중복 제거 및 그룹화, 항목별 데이터 연결 및 적재 데이터 생성의 과정들을 독립적으로 수행하는 복수의 모듈들로 구성될 수 있다. 예를 들어, 제2 데이터 수집모듈(370)은 데이터 검색 모듈, 데이터 정렬 모듈, 중복 제거 및 묶음 모듈, 데이터 연결 모듈 및 데이터 결합 모듈을 포함하여 구현될 수 있다. 제2 데이터 수집모듈(370)은 데이터 수집 목적을 기초로 최종 생성된 결과물로서 적재 데이터를 생성하여 데이터베이스(150)에 저장할 수 있다.
스크립트 엔진(390)은 제1 데이터 수집모듈(350)로부터 스크립트(Script)를 수신하여 처리할 수 있다. 이를 위하여, 스크립트 엔진(390)은 제1 데이터 수집모듈(350)에 포함되어 구현될 수도 있다. 제1 데이터 수집모듈(350)은 데이터를 검색(search)한 이후 스크립트 엔진(390)에게 데이터 가공을 요청할 수 있으며, 스크립트 엔진(390)은 SCV 스크립트를 기반으로 중간 데이터(intermediate data)를 생성하여 제1 데이터 수집모듈(350)에 제공할 수 있다. 이후, 제1 데이터 수집모듈(350)은 중간 데이터를 기반으로 결합 데이터를 생성한 후 SCV 엔진(330)에게 제공할 수 있다.
제어부(도 3에 미도시함)는 데이터 적재 프로파일링 장치(130)의 전체적인 동작을 제어하고, 프로파일 매니저(310), SCV 엔진(330), 제1 데이터 수집모듈(350), 제2 데이터 수집모듈(370) 및 스크립트 엔진(390) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.
도 4는 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법을 설명하는 순서도이다.
도 4를 참조하면, 데이터 적재 프로파일링 장치(130)는 프로파일 매니저(Profile Manager)(310)에 의해, 전용 인터페이스를 통해 수집 목적에 따른 데이터의 흐름을 정의하는 데이터 프로파일을 생성할 수 있다(단계 S410). 데이터 적재 프로파일링 장치(130)는 SCV 엔진(Engine)(330)에 의해, 데이터 프로파일을 파싱(parsing)하여 도출된 데이터 수집 목적에 따라 데이터 수집모듈들의 실행을 제어할 수 있다(단계 S430).
또한, 데이터 적재 프로파일링 장치(130)는 제1 데이터 수집모듈(350)에 의해, SCV 엔진(330)의 제어 신호를 기초로 데이터 수집 목적에 따라 수집된 데이터를 편집 및 결합하여 결합 데이터를 생성할 수 있다(단계 S450). 데이터 적재 프로파일링 장치(130)는 제2 데이터 수집모듈(370)에 의해, SCV 엔진(330)의 제어 신호를 기초로 결합 데이터를 시스템 요구사항에 따라 처리하여 적재 데이터를 생성하고 데이터베이스(150)에 저장할 수 있다(단계 S470).
도 5는 본 발명에 따른 데이터 적재 프로파일링 아키텍처를 설명하는 도면이다.
도 5를 참조하면, 데이터 적재 프로파일링 장치(130)는 크게 커맨드 센터(Command Center)와 태스크 매니지먼트 시스템(Task Management System)을 포함하여 구현될 수 있다. 커맨드 센터는 수집모듈 관리자(Vehicle Manager), 태스크 관리자(Task Manager) 및 프로파일 매니저(Profile Manager) 등을 포함할 수 있으며, 태스크 매니지먼트 시스템은 태스크 위임자(Task Delegator), SCV 엔진(SCV Engine) 제1 내지 제3 데이터 수집모듈들(Weaving/Outbound/Inbound Vehicles), 스크립트 엔진(Compute Engine) 등을 포함할 수 있다.
이때, 데이터 적재 프로파일링 장치(130)는 커맨드 센터의 프로파일 매니저(Profile Manager), 데이터 프로파일 스토리지(STML Storage) 및 인공지능(ML) 모델을 포함할 수 있다. 또한, 데이터 적재 프로파일링 장치(130)는 태스크 매니지먼트 시스템의 SCV 엔진(SCV Engine), 제1 데이터 수집모듈(Weaving Vehicles), 제2 데이터 수집모듈(Outbound Vehicles), 스크립트 엔진(Compute Engine) 및 프로파일러(Profiler)를 포함할 수 있다.
이하, 도 5의 각 구성에 대해 간략히 설명한다.
-프로파일 매니저(Profile Manager): 데이터의 흐름을 정의하는 STML을 UI작업을 통해 간단히 작성할 수 있도록 도와주는 도구이며, 특별히 Profile Manager는 수집의 목적에 따라 수집될 데이터를 편집하고 묶어주는 STML을 제작하도록 할 수 있다. 또한, 수집될 데이터 유형에 따라 ML이 추천한 비즈니스 도메인의 데이터 처리방법으로 자동 설정할 수 있다.
-인공지능 모델(Data Domain ML): STML의 수집 패턴을 학습하여 수집될 데이터의 비즈니스 도메인을 유형별로 추천하고 사용자가 간편하게 STML을 작성할 수 있는 기능을 제공할 수 있다.
-STML 저장소(STML Storage): Profile Manager 등 STML 제작 도구에서 작성한 구현된 STML을 저장하는 공간이며 파일이나 DB table에 저장할 수 있다.
-SCV 엔진(SCV Engine): STML을 파싱하고 적절한 Vehicle을 수행하는 역할을 담당할 수 있다. 또한, 수행 결과를 로그로 저장할 수 있다.
-제2 데이터 수집모듈(Outbound Vehicle): 적재할 데이터를 시스템 요구사항에 맞게 처리하는 데이터 처리 장치이다.
-제1 데이터 수집모듈(Weaving Vehicle): 수집한 데이터를 편집하고 묶어 데이터를 목적에 맞게 결합하여 Outbound Vehicle에 전달하는 데이터 처리 장치이다.
-스크립트 엔진(SCV Compute Engine): 사용자가 작성한 편집 및 묶음 스크립트를 처리하는 스크립트 엔진이다.
-프로파일러(Profiler): ML에 의해 수집된 데이터를 자동 분류하고 Profiling 정보에 따라 데이터를 편집 및 묶어 주는 기능을 제공할 수 있다.
도 6은 본 발명에 따른 데이터 적재 프로파일링의 동작 과정을 설명하는 도면이다.
도 6을 참조하면, 데이터 적재 프로파일링 장치(130)는 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법을 수행할 수 있다. 이하, 본 발명에 따른 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 과정을 구체적으로 설명한다.
1)사용자는 Profile Manager에서 적재할 데이터를 수집 목적에 맞게 데이터를 편집하고 묶어주는 방법을 UI를 통해 작성할 수 있다. 이때, 사용자는 AI가 추천하는 방법에 따라 좀 더 편리하게 STML을 작성할 수 있다. 한편, STML 생성이 완료되면 Weaving Vehicle이 생성될 수 있다.
2)실행 환경에서 트리거(Trigger) 신호를 통해 사용자가 작성한 STML과 Inbound Vehicle에 의해 가져온 수집 데이터 묶음을 SCV 엔진(330)에 전달할 수 있다.
3)SCV 엔진(330)은 STML 문서 내에 Vehicle의 타입을 조사하여 우선적으로 그 유형이 Weaving Vehicle인지 확인할 수 있다.
4)Weaving Vehicle인 경우, SCV 엔진(330)은 Sub Vehicle이 있는지 확인할 수 있고, Sub Vehicle이 존재하는 경우 Sub Vehicle을 우선 실행하여 Weaving Vehicle을 수행하기 위해 필요한 Value를 우선 수집하도록 할 수 있다.
5)Sub Vehicle이 없거나 모두 실행되었을 경우, SCV 엔진(330)은 Weaving Vehicle을 실행할 수 있다. 이때, SCV Engine는 Value Pool 주소를 전달할 수 있다.
6)Weaving Vehicle은 Value Pool안에 모인 수집 데이터를 대상으로 데이터 가공에 필요한 데이터를 검색할 수 있다.
7)Weaving Vehicle에 기록된 SCV Script SCV 엔진(330)에게 전달하여 데이터를 편집할 수 있다.
8)편집된 중간 단계의 데이터를 사용자의 정의에 따라 그룹별로 통합할 수 있다. 만약 사용자가 자동화 옵션을 선택한 경우 추천 프로파일에 따라 결과 데이터르 생성할 수 있다. 모든 작업이 완료되면 SCV 엔진(330)에게 결합된 데이터 묶음이 전달될 수 있다.
9)SCV 엔진(330)은 더이상 Weaving Vehicle이 없는지 확인할 수 있다.
10)Outbound Vehicle인 경우, SCV 엔진(330)은 Outbound Vehicle을 실행하여 저장할 데이터의 적재를 준비할 수 있다.
11)Outbound Vehicle은 결과물을 적재할 위치와 방법을 결정하고 각각의 목적에 맞게 합쳐진 데이터를 수집하여 최종 가공할 수 있다.
12)Outbound Vehicle은 모든 가공이 완료되면 데이터를 저장소(Storage)에 적재할 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
[부호의 설명]
100: 데이터 적재 프로파일링 시스템
110: 사용자 단말 130: 데이터 적재 프로파일링 장치
150: 데이터베이스
210: 프로세서 230: 메모리
250: 사용자 입출력부 270: 네트워크 입출력부
310: 프로파일 매니저 330: SCV 엔진
350: 제1 데이터 수집모듈 370: 제2 데이터 수집모듈
390: 스크립트 엔진

Claims (8)

  1. 전용 인터페이스를 통해 수집 목적에 따른 데이터의 흐름을 정의하는 데이터 프로파일(Data Profile)을 생성하는 프로파일 매니저(Profile Manager);
    상기 데이터 프로파일을 파싱(parsing)하여 도출된 데이터 수집 목적에 따라 데이터 수집모듈들의 실행을 제어하는 SCV 엔진(Engine);
    상기 SCV 엔진의 제어 신호를 기초로 상기 데이터 수집 목적에 따라 수집된 데이터를 편집 및 결합하여 결합 데이터를 생성하는 제1 데이터 수집모듈; 및
    상기 SCV 엔진의 제어 신호를 기초로 상기 결합 데이터를 시스템 요구사항에 따라 처리하여 적재 데이터를 생성하고 데이터베이스에 저장하는 제2 데이터 수집모듈;을 포함하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치.
  2. 제1항에 있어서,
    상기 제1 데이터 수집모듈로부터 스크립트(Script)를 수신하여 처리하는 스크립트 엔진(Script Engine);을 더 포함하는 것을 특징으로 하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치.
  3. 제1항에 있어서, 상기 프로파일 매니저는
    상기 데이터 프로파일의 수집 패턴을 사전 학습하여 구축된 인공지능(ML)을 통해 데이터 유형에 따른 비즈니스 도메인을 수신하고 해당 비즈니스 도메인의 데이터 처리방법을 상기 데이터 프로파일로 자동 설정하는 것을 특징으로 하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치.
  4. 제1항에 있어서, 상기 SCV 엔진은
    상기 데이터 프로파일로부터 데이터 수집모듈의 유형을 검출하고 해당 유형이 제1 유형에 해당하는 경우 서브 데이터 수집모듈의 우선 실행을 제어하는 것을 특징으로 하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치.
  5. 제1항에 있어서, 상기 제1 데이터 수집모듈은
    상기 SCV 엔진으로부터 밸류 풀(Value Pool) 주소를 수신하고 밸류 풀에 수집된 데이터를 대상으로 데이터 가공에 필요한 데이터를 검색하는 것을 특징으로 하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치.
  6. 제2항에 있어서, 상기 제1 데이터 수집모듈은
    상기 스크립트 엔진으로부터 중간 데이터를 수신하고 상기 중간 데이터를 사용자 정의에 따라 그룹 별로 결합하거나 또는 추천 프로파일에 따라 상기 중간 데이터를 결합하는 것을 특징으로 하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치.
  7. 제1항에 있어서, 상기 제2 데이터 수집모듈은
    상기 적재 데이터의 저장 위치와 방법을 결정하고, 상기 데이터 수집 목적에 따라 상기 결합 데이터에 대한 데이터 검색, 데이터 정렬, 중복 제거 및 그룹화, 항목별 데이터 연결 및 적재 데이터 생성의 과정들을 수행하는 것을 특징으로 하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치.
  8. 데이터 적재 프로파일링 장치에서 수행되는 데이터 적재 프로파일링 방법에 있어서,
    프로파일 매니저(Profile Manager)에 의해, 전용 인터페이스를 통해 수집 목적에 따른 데이터의 흐름을 정의하는 데이터 프로파일(Data Profile)을 생성하는 단계;
    SCV 엔진(Engine)에 의해, 상기 데이터 프로파일을 파싱(parsing)하여 도출된 데이터 수집 목적에 따라 데이터 수집모듈들의 실행을 제어하는 단계;
    제1 데이터 수집모듈에 의해, 상기 SCV 엔진의 제어 신호를 기초로 상기 데이터 수집 목적에 따라 수집된 데이터를 편집 및 결합하여 결합 데이터를 생성하는 단계; 및
    제2 데이터 수집모듈에 의해, 상기 SCV 엔진의 제어 신호를 기초로 상기 결합 데이터를 시스템 요구사항에 따라 처리하여 적재 데이터를 생성하고 데이터베이스에 저장하는 단계;를 포함하는 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 방법.
PCT/KR2023/016485 2022-10-25 2023-10-23 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법 WO2024090932A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2022-0138476 2022-10-25
KR1020220138476A KR102518772B1 (ko) 2022-10-25 2022-10-25 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2024090932A1 true WO2024090932A1 (ko) 2024-05-02

Family

ID=85918376

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/016485 WO2024090932A1 (ko) 2022-10-25 2023-10-23 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102518772B1 (ko)
WO (1) WO2024090932A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102518772B1 (ko) * 2022-10-25 2023-04-06 주식회사 에이데이타 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110106942A1 (en) * 2005-07-05 2011-05-05 Carrier Iq, Inc. Data collection associated with components and services of a wireless communication network
KR20160071166A (ko) * 2014-12-11 2016-06-21 현대자동차주식회사 복수의 수집정책 처리 장치 및 그 방법
KR20210043925A (ko) * 2019-10-14 2021-04-22 주식회사 비디 하드웨어 수집기를 포함하는 데이터 수집 장치
KR102340474B1 (ko) * 2018-04-25 2021-12-20 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
KR102346142B1 (ko) * 2021-04-16 2022-01-03 주식회사 테스트웍스 선택적 데이터 수집 시스템 및 그 동작 방법
KR102518772B1 (ko) * 2022-10-25 2023-04-06 주식회사 에이데이타 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101913591B1 (ko) 2017-08-25 2018-12-28 경희대학교 산학협력단 비정형 데이터를 정형화하여 금융상품을 추천하는 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110106942A1 (en) * 2005-07-05 2011-05-05 Carrier Iq, Inc. Data collection associated with components and services of a wireless communication network
KR20160071166A (ko) * 2014-12-11 2016-06-21 현대자동차주식회사 복수의 수집정책 처리 장치 및 그 방법
KR102340474B1 (ko) * 2018-04-25 2021-12-20 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
KR20210043925A (ko) * 2019-10-14 2021-04-22 주식회사 비디 하드웨어 수집기를 포함하는 데이터 수집 장치
KR102346142B1 (ko) * 2021-04-16 2022-01-03 주식회사 테스트웍스 선택적 데이터 수집 시스템 및 그 동작 방법
KR102518772B1 (ko) * 2022-10-25 2023-04-06 주식회사 에이데이타 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법

Also Published As

Publication number Publication date
KR102518772B1 (ko) 2023-04-06

Similar Documents

Publication Publication Date Title
WO2024090932A1 (ko) 수집 데이터 자동 처리를 위한 데이터 적재 프로파일링 장치 및 방법
WO2023287064A1 (ko) 이상 데이터 자동 검출 및 자동 라벨링 기술을 이용한 학습 데이터베이스 구축 방법 및 시스템
WO2010123168A1 (ko) 데이터베이스 관리 방법 및 시스템
JP2001188765A (ja) 分散コンピューティング環境で複数の関係する障害を表す障害情報を参照する技法
WO2021040166A1 (ko) 소프트웨어 업데이트를 위한 신구 데이터간의 차분 생성 방법 및 그 장치
WO2016111525A1 (ko) 소스코드 이관제어 방법 및 이를 위한 컴퓨터 프로그램, 그 기록매체
WO2013165180A1 (ko) 로그 모니터링 방법, 그 서버 및 기록 매체
WO2021141294A1 (ko) 데이터의 하이브리드 저장을 이용한 데이터 아카이빙 방법 및 시스템
WO2020122291A1 (ko) 인공지능 기반의 공동주택 관리업무지시 자동화 장치 및 방법
WO2020233089A1 (zh) 测试用例生成方法、装置、终端及计算机可读存储介质
WO2011065660A4 (ko) 계산 시뮬레이션 모사 시스템 및 그 방법
WO2021230662A1 (ko) 폼 구조 정의 db를 통한 온라인 보고서 생성방법, 이를 위한 컴퓨터 프로그램
WO2019074155A1 (ko) 데이터베이스 간의 실시간 통합 복제 시스템
CN104571804A (zh) 一种对跨应用程序的文档界面进行关联的方法和系统
WO2021141292A1 (ko) 하이브리드 클라우드 기반의 실시간 데이터 아카이빙 방법 및 시스템
US20100042661A1 (en) Rehosting Method Which Convert Mainframe System into Open System
WO2017052318A1 (ko) 소프트웨어 분석 방법 및 장치
WO2020215680A1 (zh) 自动生成pojo类的方法、装置及存储介质、计算机设备
WO2023033420A1 (ko) 비주얼 스크립트를 이용한 디지털 트윈 구축 시스템, 방법 및 이를 위한 장치
WO2023153558A1 (ko) 구조화 문서에 포함된 자원들에 관한 권한을 관리하는 방법 및 이를 이용한 장치
WO2018080009A1 (en) Electronic apparatus for recording debugging information and control method thereof
JP2003274576A (ja) 電力系統監視制御装置
WO2010093084A1 (ko) 분산 스페이스를 이용하여 분산 프로그래밍 환경을 제공하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
WO2021261901A1 (ko) 함수 호출 패턴 분석을 통한 이상 검출 장치 및 방법
WO2021171366A1 (ja) 業務プロセス識別装置、業務プロセス識別方法及びプログラム