위 처럼 설정하면 10분 마다 idle 상태인 connection의 유효성 검사를 수행합니다.10개의 커넥션이 연결되어 있을 경우, 10분마다 디폴트 값에 의해서 3개의 connection이 유효성 검사를 수행됩니다.오라클 DBMS를 사용할 경우에 v$session에 있는 값을 통해서 확인할 수 있습니다. SELECT SID, PREV_EXEC_STARTFROM V$SESSIONWHERE USERNAME = '' AND OSUSER = ''
데이터베이스에서 특정 조건에 맞는 데이터를 조회해서 Json 형식으로 변환하고, 변환된 데이터에값을 추가하거나 변환하는 작업을 거친 후에, RestAPI로 전달하고 응답 결과를 파일로 저장하는 예제를만들어 보았습니다.Jolt Transform을 처음 사용해 보았는데, 아래 사이트가 많은 도움이 되었습니다.아래 예제는 Json에 디폴트 값을 추가하고, Json 데이터의 Key Name을 대문자에서 카멜 형식으로 변환하는 작업을 2개의 프로세서로 했는데, Jolt 문법으로 한번에 할 수도 있습니다.https://jolt-demo.appspot.com/#inception
import groovy.json.JsonOutputimport org.apache.commons.text.StringEscapeUtilsdef data = [message: '안녕하세요']def json = JsonOutput.toJson(data)// 유니코드 이스케이프 시퀀스를 UTF-8로 직접 변환def decodedJson = StringEscapeUtils.unescapeJson(json)println "Decoded JSON: $decodedJson"// 파일에 UTF-8로 저장new File('output.json').write(decodedJson, 'UTF-8')
특정 테이블 (tc_ymd)를 조회한 결과를 json으로 BATCH_SIZE (100건) 씩 Flow File로 만들어서 다음 프로세서로전달하는 예제입니다.지난번에 포스팅 했던 Json 데이터를 Oracle Merge문으로 변환하는 프로세서로 전달하기 위해서 만들어 봤습니다.Groovy Script로 작성한 이유는 조회한 데이터 일부를 특정 처리 (ex. 암호화)를 한 후에 다음 프로세서에 전달하기위해서 입니다. * tc_ymd.groovyimport org.apache.nifi.dbcp.DBCPServiceimport org.apache.nifi.processor.io.StreamCallbackimport org.apache.nifi.processor.io.OutputStreamCallbackimp..
import org.apache.nifi.controller.ControllerService def lookup = context.controllerServiceLookup def dbcpServiceId = lookup.getControllerServiceIdentifiers(ControllerService).find { cs -> lookup.getControllerServiceName(cs) == "HF_TSTDB" } def dbcpService = lookup.getControllerService(dbcpServiceId) //def dbcpService = context.controllerServiceLookup.getControllerService("43c54e78-0191-1000-9a98..
ConvertJSONToSQLWithMerge.java최근에 Oracle 데이터베이스를 목적지로 데이터를 이관하기 위해서 Nifi를 검토하던 중에, Nifi에는 Oracle Merge을 지원하는프로세서가 없다는 걸 알게되었습니다.Upsert 형식을 지원하는 프로세서가 있지만, 대상 데이터베이스에는 Oracle이 없습니다.그래서 구글링 해보니 Github에 커스텀 프로세서 코드가 있어서 사용해 보았습니다.출처: https://github.com/dawsongzhao1104/nifi출처: https://mdnice.com/writing/1e7798958878469cbd54e1dfe85126a7 그런데 실제로 테스트를 해보니, 커스컴 프로세서을 인식해서 사용할 수는 있는데, Merge문이 온전하게생성이 되지 ..
동일한 노트북에서 도커 환경으로 각각 테스트한 결과입니다. MariaDB ColumnStore 10.5.12 1. 테이블 생성 CREATE TABLE `tt_trade` ( `a` varchar(10) DEFAULT NULL, `b` varchar(10) DEFAULT NULL, `c` varchar(10) DEFAULT NULL, `d` varchar(10) DEFAULT NULL, `e` integer ) ENGINE=ColumnStore DEFAULT CHARSET=latin1; 2. 데이터 50만건 넣기 2-1. jdbc option = jdbc:mariadb://127.0.0.1:3306/mobdw?rewriteBatchedStatements=true 2-2. Batch처리로 1000건 식 입력..
첫 번째 책 - 오라클 튜닝 에센셜 DBMS_XPLAN으로 실행계획 뽀개기 SQL 튜닝을 배우고 싶은 개발자 또는 DBA 분들이 보면 좋을 것 같아서 추천드립니다. 무엇보다도 일반적인 SQL 작성보다는 어렵게 느끼기 때문에 비교적 적은 분량으로 알차게 구성된 책으로 먼저 공부하는 것도 좋은 선택입니다. SQL 튜닝의 짜릿한 경험을 느껴보고 싶은 분들에게 권해 드립니다. 두 번째 책 - 불친절한 SQL 프로그래밍 기본 개념에서 고급 기능까지 오라클 SQL의 바이블 오라클 SQL 문법이 비교적 자세하게 설명되어 있어, 초급부터 중금 개발자에게 도움이 될 것 같아 추천드립니다. 특히 Oracle 11g까지만 사용해 본 개발자라면, 12c부터 추가된 문법을 배울 수 있어서 더욱 좋습니다. "LATERAL 인라인..
- Total
- Today
- Yesterday
- yugabyteDB
- 루미큐브 종류
- 파나소닉 비데 DL-EH10KWS
- 빈센트 반 고흐
- 화분벌레
- 르세라핌
- 증권정보포털
- 배당급
- node.js
- 별이 빚나는 밤
- 브리다 정수기
- weka
- 남설 팔찌
- 고체 향수
- JMW 헤어드라이기기
- 카카오 에드
- 솔리드 쿨론
- 톡토기
- GKRS
- Life Chair
- Pixel Pals
- 코라나 19
- 매직 트랙패드2
- Sybase IQ
- 로니카 BCS
- 별잉 빛나는 밤
- 오미크론
- 홈 오피스
- 유가바이트디비
- VARIDESK
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |