728x90
728x90

PostgreSQL 17

Apache NiFi: 데이터 흐름 관리의 강력한 오픈소스 도구 완벽 분석

데이터 흐름 관리와 ETL(Extract, Transform, Load) 작업을 위한 강력한 도구, Apache NiFi에 대해  파헤쳐보는 시간을 가져보겠습니다. 데이터 엔지니어, 개발자, 또는 데이터 관리에 관심 있는 분이라면 NiFi가 무엇인지, 어떻게 동작하며, 어떤 상황에서 빛을 발하는지 상세히 알아갈 수 있을 겁니다. 자, 커피 한 잔 들고 편안히 앉아서 함께 탐구 시작해 볼까요?Apache NiFi란 무엇인가?Apache NiFi는 데이터를 다양한 소스에서 추출해 변환하고 목적지로 전달하는 과정을 실시간으로 관리할 수 있는 오픈소스 플랫폼입니다. 이 도구는 원래 미국 국가안보국(NSA)이 내부적으로 "NiagaraFiles"라는 이름으로 개발한 것으로, 2014년에 Apache 재단에 기증되..

오라클에서 PostgreSQL로 데이터베이스 연결하기: 상세 가이드 (DB 링크 활용)

네, 오라클 데이터베이스(DB)에서 포스트그레SQL(PostgreSQL)을 링크로 연결하는 것은 가능합니다. 오라클의 DB 링크(Database Link)는 기본적으로 오라클과 오라클 간의 데이터베이스 연결을 지원하지만, Oracle Database Gateway 또는 Oracle Heterogeneous Services를 이용하면 이종 데이터베이스와도 연결할 수 있습니다.아래에 PostgreSQL과 Oracle을 DB 링크로 연결하는 방법을 설명드리겠습니다.1. 오라클과 PostgreSQL을 연결하는 기본 개념오라클에서 PostgreSQL 데이터를 읽으려면 아래의 매개체를 사용해야 연결됩니다:Oracle Database Gateway for ODBC (Heterogeneous Services를 사용)오..

PostgreSQL 2025.02.13

PostgreSQL에서 안전한 비밀번호 관리: pgcrypto를 활용한 해싱

PostgreSQL 데이터베이스에서 사용자의 비밀번호를 안전하게 관리하는 것은 매우 중요합니다. 만약 비밀번호가 평문으로 저장된다면, 데이터베이스가 해킹될 경우 모든 사용자의 비밀번호가 노출될 수 있는 심각한 문제가 발생할 수 있습니다. 이러한 위험을 방지하기 위해 PostgreSQL에서는 pgcrypto라는 확장 기능을 제공하여 비밀번호를 안전하게 해싱하는 기능을 지원합니다.pgcrypto 확장 설치pgcrypto 확장을 설치하면 PostgreSQL은 강력한 암호화 기능을 사용할 수 있게 됩니다. 설치는 다음과 같은 SQL 문장으로 간단하게 수행됩니다.CREATE EXTENSION IF NOT EXISTS pgcrypto;비밀번호 해싱 및 저장pgcrypto를 설치한 후에는 crypt 함수와 gen_s..

PostgreSQL 2024.12.21

PostgreSQL에서 Java를 활용한 강력한 프로시저 개발: PL/Java 완벽 가이드

PostgreSQL은 강력한 오픈 소스 관계형 데이터베이스 시스템이지만, 때로는 SQL만으로는 해결하기 어려운 복잡한 비즈니스 로직이나 고성능이 요구되는 작업이 필요할 때가 있습니다. 이러한 경우 Java의 풍부한 라이브러리와 객체 지향 프로그래밍의 장점을 활용하여 PostgreSQL 내에서 직접 실행할 수 있는 PL/Java 확장 모듈이 매우 유용합니다.PL/Java란 무엇인가?PL/Java는 PostgreSQL에서 Java 코드를 직접 실행할 수 있도록 지원하는 언어 핸들러입니다. 즉, Java로 작성된 함수나 프로시저를 PostgreSQL 데이터베이스 내에서 마치 SQL 함수처럼 호출하고 사용할 수 있다는 의미입니다. 이를 통해 PostgreSQL의 강력한 데이터 관리 기능과 Java의 유연성을 결..

PostgreSQL 2024.12.21

PostgreSQL에서 두 데이터베이스의 테이블 간에 데이터를 복사하려면 두 가지 주요 방법이 있습니다:

파일로 내보내고 가져오기COPY 명령을 사용하여 데이터를 파일로 내보내고, 이를 다른 데이터베이스에 가져옵니다.dblink을 사용하여 직접 전송PostgreSQL의 확장 기능인 dblink를 활용하여 데이터베이스 간 직접 복사합니다.아래 각각의 방법을 예제로 설명드리겠습니다.1. 파일로 내보내고 가져오기첫 번째 데이터베이스에서 파일로 내보내기\c source_database_name; -- 소스 데이터베이스 연결COPY source_table TO '/tmp/data.csv' DELIMITER ',' CSV HEADER;두 번째 데이터베이스로 가져오기\c target_database_name; -- 대상 데이터베이스 연결COPY target_table FROM '/tmp/data.csv' DELIMITE..

PostgreSQL 2024.12.05

Node.js를 활용한 Oracle과 PostgreSQL 간 데이터 이동: 실전 가이드

Node.js의 비동기 처리 특성은 다양한 데이터베이스와의 연동을 효율적으로 수행하는 데 큰 장점을 제공합니다. 이번 글에서는 Node.js를 이용하여 Oracle 데이터베이스에서 데이터를 조회하고, PostgreSQL 데이터베이스에 삽입 또는 업데이트하는 방법을 상세히 알아보겠습니다.1. 환경 설정 및 라이브러리 설치Node.js 설치: Node.js 공식 홈페이지에서 LTS 버전을 다운로드하여 설치합니다.npm(Node Package Manager) 설치: Node.js 설치와 함께 자동으로 설치됩니다.라이브러리 설치:Oracle: node-oracledb 패키지를 설치합니다. npm install oracledbPostgreSQL: pg 패키지를 설치합니다. npm install pg2. Node...

Windows 환경에서 PostgreSQL에 여러 SQL 파일을 일괄적으로 임포트하는 방법: 상세 가이드

PostgreSQL 데이터베이스에 다수의 SQL 파일을 효율적으로 임포트하는 것은 데이터베이스 관리 작업에서 자주 발생하는 일입니다. 이 글에서는 Windows, Linux/macOS 환경에서 다양한 방법으로 PostgreSQL에 SQL 파일을 일괄적으로 임포트하는 방법을 상세히 설명합니다.1. psql 명령어를 이용한 일괄 실행가장 기본적이고 널리 사용되는 방법입니다. psql 명령어를 활용하여 각 SQL 파일을 순차적으로 실행합니다.Windows 환경:for %f in (*.sql) do psql -U 사용자명 -d 데이터베이스명 -f "%f"Linux/macOS 환경:for f in *.sql; do psql -U 사용자명 -d 데이터베이스명 -f "$f"; done장점: 간단하고 직관적이며, 모든..

PostgreSQL 2024.12.04

dumpfile.dmp 에서 convertes_file.sql 이 생성되는 과정을 자세히 알고 싶어!

dumpfile.dmp에서 converted_file.sql을 생성하는 과정은 Oracle Datapump의 메타데이터를 추출하고, 이를 PostgreSQL에서 사용할 수 있는 SQL 형식으로 변환하는 작업을 포함합니다. 이 작업은 EXPDP로 생성된 .dmp 파일의 내용을 분석하고 변환하는 스크립트나 도구를 통해 이루어질 수 있습니다. 아래는 이를 단계별로 설명한 과정입니다.1. .dmp 파일에서 메타데이터 추출Oracle Datapump는 데이터와 메타데이터를 .dmp 형식으로 저장합니다. converted_file.sql을 생성하려면 다음 작업을 수행해야 합니다.A. 메타데이터 추출Oracle에서 .dmp 파일을 내보낼 때 메타데이터만 추출하도록 설정할 수 있습니다.expdp username/pas..

PostgreSQL 2024.12.03

오라클 Datapump 로 오라클에서 포스트그레sql로 마이그레이션 하는 과정

Oracle Datapump를 사용하여 Oracle에서 PostgreSQL로 데이터를 마이그레이션하는 과정은 데이터의 구조 및 데이터를 적절히 추출, 변환, 로드(ETL)하는 작업을 포함합니다. 전체적인 과정을 단계별로 아래에 설명드리겠습니다.1. 사전 준비환경 점검Oracle 데이터베이스와 PostgreSQL 데이터베이스 모두 사용 가능한 상태인지 확인합니다.필요한 네트워크 연결 및 권한이 설정되어 있는지 확인합니다.호환성 확인Oracle과 PostgreSQL 간 데이터 타입의 차이를 분석합니다.테이블 구조, 인덱스, 제약 조건, 트리거, 뷰 등 이식 가능한 요소와 그렇지 않은 요소를 식별합니다.PostgreSQL 환경 구성PostgreSQL에서 Oracle 데이터를 수용할 수 있도록 필요한 스키마와 ..

PostgreSQL 2024.12.03

Oracle Stored Procedure 샘플로 ora2pg 사용예

Oracle의 Stored Procedure를 PostgreSQL로 변환할 때, 실제 샘플 코드와 변환 결과를 단계별로 상세히 설명드리겠습니다.Oracle Stored Procedure 샘플아래는 Oracle에서 사용되는 간단한 Stored Procedure입니다.Oracle 코드CREATE OR REPLACE PROCEDURE calculate_bonus ( p_employee_id IN NUMBER, p_bonus OUT NUMBER) AS v_salary NUMBER;BEGIN -- 사원의 급여 조회 SELECT salary INTO v_salary FROM employees WHERE employee_id = p_employee_id; -- 보너스 계..

PostgreSQL 2024.12.02
728x90
728x90