검색 상세

자바 쓰레드와 내장형 질의어를 이용한 오라클 데이터베이스에서의 개선된 대용량 데이터 처리 모듈 설계 및 구현

Design and Implementation Of Processing Module Of Massive volume Data On Oracle Database Using Java Thread and Embedded SQL

초록/요약

오늘날의 우리는 크고 작은 내부 시스템과 잘 구축된 Web Site 등에서 체계화된 업무처리와 많은 정보를 얻으며 편리한 생활을 영위하고 있다. 그 중 Database는 내부 시스템의 업무처리 정보와 Web Site 등에서 제공하는 많은 유용한 정보를 제공하기 위한 필수적인 도구이다. Data 저장소로서 우리에게 많은 편리함을 제공해주지만, 한편으로는 갈수록 방대해지는 대용량 Data처리에 있어서는 Client의 요구에 대한 느린 응답시간으로 인해 고객의 불편을 초래하는 것도 사실이다. ERP나 Web Application을 운영하는 많은 업체 등에서 이러한 대용량 Data처리의 느린 응답시간을 개선코자 배열변수에 의한 빠른 Data처리 속도를 제공하는 Pro*C와 같은 Embedded SQL의 활용 등에 대해 많은 노력을 기울이고 있다. 하지만, Database와의 연동을 위해 필요한 ADO, ADO.NET, ODP.NET 등의 DB 연동 객체들은 Database 내의 스키마 객체들 즉 테이블, 뷰, 인덱스, 클러스터, 시퀀스, 저장 프로시져 등의 연동만을 지원할 뿐, Embedded SQL을 포함하는 Pro*C의 실행과 그 처리결과에 대한 Return에 대해서는 어떠한 Method도 제공하지 않기에, Database와 연동하는 ERP나 Web Application 등에서 Pro*C는 Stored Procedure 에 비해 사실상 그 사용이 배제되고 있는 것이 현실이다. 이에 본 논문에서는 Pro*C를 활용하기 위한 Method를 제공하기 위해 기존의 3-tier 방식의 구조 중 Middle Ware와 Database 사이에 Java Thread Demon과 Embedded SQL을 포함하는 Pro*C를 추가하는 형태의 대용량 Data처리 방안을 제안하였다. 우선, 3-tier 구조와 Java Thread, Pro*C의 Background에 대해 기술하였고, 그 Background를 바탕으로 대용량 Data처리 모듈을 설계하고 구현하였다. 구현된 대용량 Data처리 방안과 기존의 3-tier방식과의 Data처리량에 따른 테스트 수행 및 결과분석을 통해, Data처리량이 특정 기준 이상일 경우 기존의 3-tier방식을 고집하는 것보다, 본 논문에서 제안한 대용량 Data처리 방안을 활용하는 것이 Data처리 수행성능 면에서 우수함을 증명하였다. 본 논문의 결과는 대용량 Data처리 방안 연구로서, 많은 ERP나 Web Application 개발자 또는 시스템 운영자들에게 참고되고 활용될 수 있을 것이다.

more

초록/요약

Today, We are operating convenient life as get many task processing and information to be organized from Website to be constructed well with small and big inside system. Database among them is essential tool to offer many useful information provided from a task processing information of an inside system and Website. Database offer to be convenient many to us as Data pool, but that bring about the inconvenience of the customer because of slow response time as time goes by in huge massive a volume Data processing about the requirement of Client. We are making much efforts in ERP or company which manages Web Application about the practical use of Embedded SQL like Pro*C that offering fast Data processing speed by the arrangement variable to improve slow response time of massive a volume Data processing. But, Pro*C is thing which the utility have been excluded actually is reality than Stored Procedure on ERP to creep with Database and Web Application, because any Method does not offer about an execution of Pro*C and Return about the processing result, because the ADO and ADO.NET and ODP.NET that Database gear objects which need for the gear of Database just support only Table, View, Index, Cluster, Sequence, Stored Procedure that schema objects inside Database. So, The writer proposed massive a volume data processing plan in this paper to offer Method to apply Pro*C as add Pro*C including Embedded SQL with Java Thread Demon between Middleware and Database among the structure of existing mode of the 3-tier. First of all the writer described about backgrounds of 3-tier structure and Java Thread and Pro*C, drew a plan and implemented massive volume Data processing module from Backgrounds. If Data throughput is over any criteria through Test processing and result course according to Data throughput of massive a volume Data processing plan to be implemented and Existing mode of a 3-tier, proved superior of thing to use massive volume Data processing plan which proposes in the paper than existing mode of the 3-tier. The result of this paper may be refered to and utilized for many ERP and the developer Web Application or system operator as Massive volume Data a processing plan research.

more

목차

1. 서론 = 13
1.1. 연구 배경 및 목적 = 13
1.2. 연구의 타당성 및 연구방법 = 16
2. 관련연구 및 Backgrounds = 22
2.1. 3-tier 방식과 Middle Ware = 22
2.1.1. 3-tier 구조와 장점 = 22
2.1.2. 3-tier 방식에 있어서 Middle Ware의 중요성 = 24
2.2. Java의 이해와 Thread Programming = 26
2.2.1. Java의 정의와 특징 = 26
2.2.2. Thread Programming = 27
2.3. Pro*C의 개요 및 응용 프로그램의 개발절차 = 28
2.3.1. Pro*C의 개요 및 특징 = 28
2.3.2. Pro*C를 이용한 응용 프로그램의 개발 절차 = 30
3. 대용량 Data처리 모듈의 설계 및 구현 = 31
3.1. 대용량 Data처리 모듈의 구조 = 31
3.2. Com+ Dll 의 구성과 구현 = 32
3.2.1. Com+ Dll의 구성 = 32
3.2.2. Com+ Dll의 참조 구성과 프로젝트 구조 = 35
3.3. Socket 통신용 ActiveX Exe의 구성과 구현 = 36
3.3.1. ActiveX Exe의 구성 및 각 객체들의 역할 = 36
3.3.2. 표준 정보관리 Table의 목록 및 구조 = 38
3.3.3. 대용량 Data 저장처리 Function = 42
3.3.4. 대용량 Data 조회처리 Function = 44
3.4. Com+환경설정 및 Client에서의 소(중), 대용량 Function 호출 = 46
3.4.1. Com+ Middle Ware에 Dll등록, 레지스트리등록 및 Ftp 설정 = 46
3.4.2. Client에서의 소(중), 대용량 Function 호출 = 48
3.5. Java Thread Demon의 구성과 구현 = 48
3.6. Pro*C의 구성과 구현 = 51
3.6.1. 저장 Process의 구성과 구현 = 51
3.6.2. 조회 Process의 구성과 구현 = 55
3.6.3. Pro*C 컴파일러와 C 컴파일러에 의한 응용프로그램의 생성 = 56
4. 테스트 수행 및 결과 = 59
4.1. 테스트 전략의 수립 = 59
4.1.1. 테스트 수행 속도 Check를 위한 Log Table 생성 = 59
4.1.2. 테스트 케이스의 작성 = 60
4.2. 테스트 수행 및 결과 = 62
4.2.1. 일반적인 Case의 저장처리 테스트 수행 및 결과 = 62
4.2.2. 비일반적인 Case의 저장처리 테스트 수행 및 결과 = 66
4.2.3. 조회처리 테스트 수행 및 결과 = 69
4.2.4. 테스트 결과 종합 = 72
5. 결론 및 추후 연구과제 = 74
5.1. 결론 = 74
5.2. 추후 연구과제 = 75
참고문헌 = 76
부록 - A. Java Thread Demon의 Main Class = 77
그림목차
[그림 1] 3-tier 방식의 전체 구성도 = 22
[그림 2] Middle Ware의 종류 및 발전과정 = 25
[그림 3] Pro*C를 이용한 응용프로그램의 개발 절차 = 30
[그림 4] 대용량 Data처리 모듈의 구조 = 31
[그림 5] Com+ Dll의 참조 구성과 프로젝트 구조 = 35
[그림 6] ActiveX Exe의 프로젝트 구조 = 36
[그림 7] 'BIGDATAFILE_SEQ' Table의 구조 및 Sample Data = 39
[그림 8] 'EXECPROC_RESULT' Table의 구조 및 Sample Data = 40
[그림 9] 'FTP_INFORMATION' Table의 구조 및 Sample Data = 41
[그림 10] 대용량 Data 저장처리 Process = 42
[그림 11] 대용량 Data 조회처리 Process = 44
[그림 12] Com+ Dll 의 메서드 = 46
[그림 13] Com+ 구성요소의 레지스트리 등록 = 47
[그림 14] Ftp 서비스 등록 = 48
[그림 15] Java Thread Demon의 호출과 Pro*C 실행 = 49
[그림 16] Java Thread Demon의 위치와 Compile & Run Script = 50
[그림 17] 일반적인 Case의 Pro*C 저장 Process 구조 = 51
[그림 18] 비일반적인 Case의 Pro*C 저장 Process 구조 = 53
[그림 19] Pro*C 조회 Process 구조 = 55
[그림 20] Pro*C 컴파일러의 컴파일 과정 = 56
[그림 21] "Exec_Proc.mk" 컴파일 file의 구성 = 57
[그림 22] "Exec_Proc.mk" 컴파일 file에 의해 생성된 file들 = 58
[그림 23] 수행속도 Check를 위한 프로세스 Log관리 = 59
[그림 24] 일반적인 Case의 저장 테스트 Log = 63
[그림 25] 일반적인 Case의 저장 테스트 비교 = 64
[그림 26] 비일반적인 Case의 저장 테스트 Log = 66
[그림 27] 비일반적인 Case의 저장 테스트 비교 = 68
[그림 28] 조회 테스트 Log = 69
[그림 29] 조회처리 테스트 비교 = 71
표목차
[표 1] 3-tier 방식과 제안한 방식의 구조 및 네트워크 트래픽 = 17
[표 2] Com+ Dll을 구성하는 변수 및 Function과 그 역할 = 33
[표 3] Com+ Dll 내의 Data 처리 Main Function = 34
[표 4] ActiveX Exe의 객체들과 그 역할 = 37
[표 5] 대용량 Data처리의 정보관리 표준 Table 목록 = 38
[표 6] 테스트 Activity의 구성 = 61
[표 7] 테스트 수행을 위한 Data 처리량 = 61
[표 8] 일반적인 Case의 저장 테스트 비교 = 64
[표 9] 비일반적인 Case의 저장 테스트 비교 = 67
[표 10] 조회처리 테스트 비교 = 70
[표 11] 대용량 Data처리 방안의 Data처리 기준 = 74

more