4.3. Data service broker 설정
본 장에서는 data service broker 어플리케이션이 사용하는 설정 파일(.yml
)의 설정 값을 설명합니다.
Property명 | 설명 | Value Example |
---|---|---|
server.port | DataServiceBroker WAS Port | 8082 |
server.timezone | 데이터 적재 시 사용될 timezone | Asia/Seoul |
logging.config | logback 설정 파일 경로 | classpath:logback-spring.xml |
logging.base.dir | log 저장 기본 디렉토리 | logs |
datasource.driverClassName | JDBC 드라이버 | org.postgresql.Driver |
datasource.url | JDBC 접속 주소 | jdbc:postgresql://10.0.0.16:5432/datacore_v2 |
datasource.username | JDBC 연결 사용자명 | datacore |
datasource.password | JDBC 연결 패스워드 | datacore |
datasource.secondary.use.yn | RDBMS Read 성능 향상을 위해 Read 전용 연결을 사용할 지 여부 (DBMS구성 시 Replication 기반 Read 성능 확보 환경 구성 필요) - N : 미적용 - Y : 적용 | N |
datasource.secondary.driverClassName | 조회 전용 JDBC 드라이버 | org.postgresql.Driver |
datasource.secondary.url | 조회 전용 JDBC 접속 주소 | jdbc:postgresql://10.0.0.16:5432/datacore_v2 |
datasource.secondary.username | 조회 전용 JDBC 연결 사용자명 | datacore |
datasource.secondary.password | 조회 전용 JDBC 연결 패스워드 | datacore |
hive.use.yn | Hive 연결 사용 여부 | N |
hive.driverClassName | Hive 연결 드라이버 | org.apache.hive.jdbc.HiveDriver |
hive.url | Hive 연결 주소 | jdbc:hive2://10.0.0.81:10187/default |
hive.username | Hive 연결 아이디 | hive |
hive.password | Hive 연결 패스워드 | hive |
hive.baseDirPath | Hive 적재 기본 디렉토리 | /user/hive/warehouse |
hbase.xmlPath | HBase 연결 정보 파일 | hbase-site.xml |
bulk.processor.thread.count | 데이터 적재 처리 쓰레드 수 | 10 |
bulk.queue.size | 데이터 적재 처리 쓰레드로 데이터를 전송할 메모리 Queue크기 | 10000 |
bulk.interval.millis | 데이터 적재 쓰레드가 Queue에서 데이터를 꺼내는 주기 (묶음처리) | 100 |
kafka.url | Kafka 연결 주소 | k1:9092,k2:9092,k3:9092 |
kafka.message.version | Kafka 메시지 버전 | 1.0 |
kafka.security.yn | kafka 보안 적용 여부 - N : 미적용 - Y : 적용 | N |
kafka.security.protocol | kafka 보안 프로토콜 | SASL_PLAINTEXT |
kafka.sasl.mechanism | kafka 보안 메커니즘 | PLAIN |
kafka.username | kafka 사용자명 | test |
kafka.password | kafka 패스워드 | test |
kafka.ingest.request.consumer.threadcount | kafka 인터페이스 컨슈머 쓰레드 수 | 1 |
kafka.ingest.request.consumer.group.id | kafka 컨슈머 그룹 아이디 | ketiConsumer |
kafka.ingest.request.consumer.enable.auto.commit | kafka auto commit 사용 여부 | true |
kafka.ingest.request.consumer.auto.offset.reset.config | kafka offset 관리 옵션 | latest |
kafka.ingest.request.consumer.poll.duration.millis | kafka polling duration 주기 | 1000 |
notification.processor.thread.count | Notification 발송 처리 Thread 수 | 10 |
notification.queue.size | Notification 발송 처리 Thread Queue 크기 | 100000 |
datacore.data.life.cycle.cron | 데이터 라이프 사이클 관리 스케줄 | 0 0 2 * * * |
datacore.http.binding.response.log.yn | HTTP response INFO 로그 출력 여부 | N |
datacore.http.binding.cause.msg.trace.key | HTTP 요청 에러 시 에러메시지 반환 옵션 Header Key 설정 | x-detail-error-key |
datacore.http.binding.cause.msg.trace.value | HTTP 요청 에러 시 에러 리턴 depth level 설정 | BBBBB |
datacore.http.binding.cause.msg.level | HTTP요청 에러 시 표기할 오류 레벨 | 3 |
eureka.instance.prefer-ip-address | 서비스간 통신 시 hostname 보다 ip 를 우선 사용 함 - true: IP 우선 사용 - false: hostname 우선 사용 | true |
eureka.client.enabled | 유레카 클라이언트 사용 여부 - true: 유레카 클라이언트 사용 - false: 유레카 클라이언트 사용 안함 | false |
eureka.client.register-with-eurka | 자기자신을 서비스로 등록하지 않기 위한 옵션 | true |
eureka.client.fetch-registry | 마이크로서비스인스턴스 목록의 로컬 캐시 여부 - true: 로컬 캐쉬 함 - false: 로컬 캐쉬 안함 | true |
eureka.client.service-url.defaultZone | Discovery server에 대한 접속 정보 | http://10.0.0.81:8888/eureka, http://10.0.0.82:8888/eureka, http://10.0.0.83:8888/eureka |
entity.default.storage | datasetFlow 정보가 없는 요청의 경우 Entity 적재/조회 시 기본 저장소 - rdb - hive - hbase | rdb |
entity.default.history.store.type | datasetFlow 정보가 없는 요청의 경우 Entity 이력 저장 유형 - none : 이력 저장 안함 - partial : partial 이력만 저장 - full : full 이력만 저장 - all : partial, full 이력 모두 저장 | all |
entity.retrieve.default.limit | Entity 조회 시 기본 limit 값 | 10000 |
entity.retrieve.include.datasetid | Entity 조회 시 데이터 셋 아이디 포함여부 | N |
entity.history.retrive.full.yn | 이력 조회시 full이력 조회 여부, N일 경우 partial이력 조회 | Y |
entity.history.delete.yn | Entity 삭제 시 이력까지 삭제할 지 여부 | Y |
geometry.default.attribute | Entity 조회 시 Default location attribute 명 | location |
geometry.default.EPSG | Entity 조회 시 Default location의 EPSG 유형 - 4326 (Default) - 3857 | 4326 |
notification.change.event.use.yn | 엔티티 변경 이벤트 시 HTTP Notification 발송 사용 여부 | Y |
notification.time.interval.use.yn | 스케줄 기반 HTTP Notification 발송 기능 사용 여부 | N |
notification.processor.thread.count | Notification 발송 쓰레드 수 | 10 |
notification.queue.size | 비동기 Notification 처리 Queue 크기 | 10000 |
notification.batch.interval.millis | Notification 스케줄러 동작 주기 | 10000 |
notification.batch.init.delay | 서버 기동 후 Notification 스케줄러 최초 동작 딜레이 시간 | 30000 |
http.pool.max.total | http 커넥션 풀 최대 크기 | 200 |
http.pool.defaultMaxPerRoute | host 당 커넥션 풀에 생성가능한 Connection 수 | 100 |
http.pool.connection.timeout | http 클라이언트 연결타임아웃 | 5000 |
http.pool.connection.request.timeout | http 클라이언트 요청 타임아웃 | 5000 |
http.pool.read.timeout | http 클라이언트 READ 타임아웃 | 10000 |
http.pool.validate.after.inactivity | http 클라이언트 validate after inactivity | 2000 |
security.acl.useYn | 접근제어 사용 여부 | Y |
security.publicKey | 접근제어 공개 키 | -----BEGIN PUBLIC KEY----- 중략 -----END PUBLIC KEY----- |
security.headers.admin.key | 접근제어 admin 헤더 key 값 | x-user-role |
security.headers.admin.value | 접근제어 admin 헤더 value 값 | ADMIN |
service-execution.executor.thread-count | Service Execution Proxy Thread 수 | 10 |
service-execution.executor.queue-size | Service Execution Proxy Queue 크기 | 10000 |