본문 바로가기
DBA의 맛있는 기록Database · IT · Food

WORK SMART · EAT WELL

데이터를 다루고,
맛있는 순간을 기록합니다.

현장에서 얻은 DBA 노하우와 직접 경험한 맛집 이야기를 정직하게 담습니다.

ARCHIVE

전체 글

136개의 기록
DBMS/SQL Server

[감사 대응] Windows Server EA Core CAL과 SQL Server CAL 관계 - 이름이 비슷해서 더 헷갈렸던 라이선스

Windows Server EA Core CAL과 SQL Server CAL 관계 - 이름이 비슷해서 더 헷갈렸던 라이선스Microsoft 라이선스 감사를 대응하면서 이름 때문에 가장 헷갈렸던 것 중 하나가 Core CAL이었다.특히 SQL Server Core License, Windows Server Core License, Core CAL Suite가 한 자료 안에 같이 나오면 처음에는 같은 Core 계열 라이선스처럼 보인다.실제로는 전혀 다른 개념이다.먼저 세 가지 Core를 분리해야 한다1. SQL Server Core License → SQL Server를 CPU Core 기준으로 라이선스2. Windows Server Core License → Windows Server를 CPU Co..

DBMS/SQL Server

[감사 대응]SQL Server 2019 vs 2022 VM 라이선스 차이 - 왜 SA를 다시 확인해야 하나

SQL Server 2019 vs 2022 VM 라이선스 차이 - 왜 SA를 다시 확인해야 하나SQL Server VM 라이선스를 검토할 때 버전 차이를 무시하면 안 된다.특히 SQL Server 2019와 SQL Server 2022 사이에는 VM 단위 Core 라이선싱에서 중요한 변화가 있다.SQL Server 2019 Standard VMSQL Server 2019 Standard를 Per Core 방식으로 VM에 라이선스하는 경우 VM의 vCore를 기준으로 계산하는 방식이 사용됐다.그리고 VM당 최소 4 Core 라이선스가 필요했다.SQL Server 2019 Standard VMVM vCPU = 2→ 최소 4 Core LicenseVM vCPU = 4→ 4 Core LicenseVM vCPU ..

DBMS/SQL Server

[감사 대응]SQL Server CAL Multiplexing - EAI·MES·API를 거치면 CAL은 어떻게 봐야 할까

SQL Server CAL Multiplexing - EAI·MES·API를 거치면 CAL은 어떻게 봐야 할까SQL Server Server + CAL 감사를 대응하면서 가장 깊게 확인했던 부분 중 하나가 Multiplexing이었다.처음에는 SQL Server에 실제로 접속하는 Connection이나 계정 수를 기준으로 생각하기 쉽다.하지만 Microsoft의 Multiplexing 원칙은 그렇게 단순하지 않다.가장 단순한 Multiplexing 구조사용자 100명 ↓ MES ↓ EAI ↓ SQL ServerSQL Server에서 보이는 Connection= EAI Connection 몇 개SQL Server 입장에서는 EAI 몇 개만 접속하고 있을 수 있다.그..

DBMS/SQL Server

[감사 대응]SQL Server Standard CAL vs Core - 감사에서 ACL까지 확인한 이유

SQL Server Standard CAL vs Core - 감사에서 ACL까지 확인한 이유SQL Server Standard는 Server + CAL과 Per Core 두 가지 방식으로 라이선스할 수 있다.감사를 받기 전에는 단순히 사용자 수가 적으면 CAL, 많으면 Core 정도로 생각했다.실제 감사에서는 그보다 훨씬 깊게 봤다.특히 CAL 방식에서는 회사가 주장하는 사용자 수가 정말 맞는지, 다른 사용자가 접근할 수 있는 경로가 없는지까지 확인하려 했다.Server + CAL 기본 구조SQL Server Standard Server License +SQL Server CALCAL├─ User CAL└─ Device CALUser CAL은 특정 사용자를 기준으로 하고 De..

DBMS/SQL Server

[감사대응] SQL Server 라이선스 감사 대응 - 실제로 확인했던 항목 정리

SQL Server 라이선스 감사 대응 - DBA가 실제로 확인했던 항목 정리회사에서 Microsoft 제품 라이선스 감사를 받으면서 SQL Server 라이선스까지 확인하게 됐다.처음에는 설치된 SQL Server의 버전과 Edition, 보유 라이선스 수량 정도만 맞춰보면 될 것으로 생각했다.실제로 대응해보니 그렇게 단순하지 않았다.SQL Server Standard가 Server + CAL인지 Per Core인지, VM인지 물리 서버인지, VM이 VMware Cluster 안에서 다른 Host로 이동할 수 있는지, Software Assurance가 살아 있는지, SQL Server에 직접 로그인하지 않는 사용자는 어떻게 봐야 하는지까지 하나씩 확인해야 했다.특히 Server + CAL 환경에서는 ..

DBMS/Open Source DB

Tibero to PostgreSQL 데이터 이관

Tibero에서 PostgreSQL로 데이터 이관하기 - ETL 테스트부터 증분 적재까지ETL 플랫폼을 만들면서 반드시 테스트하려고 한 조합 중 하나가 Tibero → PostgreSQL이다.Oracle → PostgreSQL 자료는 상당히 많다.그런데 Tibero가 Source가 되면 자료가 급격히 줄어든다.내가 다루는 환경에는 Tibero 6가 실제로 있기 때문에 SOONFLOW에서도 처음부터 Tibero Connector를 별도로 두는 것으로 설계했다.Oracle과 SQL 문법이 비슷하다고 해서 Oracle Connector에 Tibero를 억지로 끼워 넣는 방식은 피하려고 한다.SqlDialect ├─ OracleDialect ├─ TiberoDialect └─ PostgresDiale..

OPEN SOURCE/airflow

Airflow vs 자체 개발 스케줄러

Airflow vs 자체 개발 스케줄러, ETL 스케줄러를 직접 만들어보고 비교해봤다ETL 솔루션을 만들면서 가장 고민했던 것 중 하나가 스케줄러였다.처음부터 Airflow를 사용한 것은 아니다.기존에는 Spring Boot + Apache Camel Quartz를 이용해서 실제 ETL Job 스케줄러를 만들어 사용하고 있었다.그래서 처음에는 새로 만드는 ETL 플랫폼도 직접 스케줄러를 만드는 쪽으로 생각했다.어차피 필요한 것은 아래 정도라고 생각했기 때문이다.매일 실행매주 실행매월 실행몇 분마다 실행실제로 여기까지는 어렵지 않다.문제는 운영 기능이 붙기 시작하면서 발생했다.내가 만들었던 스케줄 방식스케줄 타입은 크게 네 종류로 만들었다.DAILYWEEKLYMONTHLYINTERVALDAILY는 하루 중..

OPEN SOURCE/airflow

Airflow란? ETL 스케줄러로 사용하는 이유

Airflow란? ETL 스케줄러로 사용하는 이유와 직접 ETL을 설계하며 느낀 점최근에 SOONFLOW라는 ETL 플랫폼을 설계하면서 스케줄러를 어떻게 가져갈지 꽤 오래 고민했다.처음 생각은 단순했다."정해진 시간에 ETL Job 하나 실행시키는 건데 굳이 Airflow까지 써야 하나?"실제로 이전에 Spring Boot와 Apache Camel Quartz를 이용해서 ETL 스케줄러를 직접 만들어본 적도 있다.예를 들어 오전 7시 30분 실행은 Quartz에서 이런 식이었다.0 30 07 * * ?10분마다 실행하려면 다음과 같이 설정할 수 있다.0 0/10 * * * ?Job 하나를 실행시키는 것까지만 보면 이것으로 충분하다.그런데 ETL을 조금만 제대로 만들려고 하면 문제가 달라진다.선행 작업이 ..

DBMS/SQL Server

[감사 대응] Windows Server EA Core CAL과 SQL Server CAL 관계 - 이름이 비슷해서 더 헷갈렸던 라이선스

Windows Server EA Core CAL과 SQL Server CAL 관계 - 이름이 비슷해서 더 헷갈렸던 라이선스Microsoft 라이선스 감사를 대응하면서 이름 때문에 가장 헷갈렸던 것 중 하나가 Core CAL이었다.특히 SQL Server Core License, Windows Server Core License, Core CAL Suite가 한 자료 안에 같이 나오면 처음에는 같은 Core 계열 라이선스처럼 보인다.실제로는 전혀 다른 개념이다.먼저 세 가지 Core를 분리해야 한다1. SQL Server Core License → SQL Server를 CPU Core 기준으로 라이선스2. Windows Server Core License → Windows Server를 CPU Co..

DBMS/SQL Server

[감사 대응]SQL Server 2019 vs 2022 VM 라이선스 차이 - 왜 SA를 다시 확인해야 하나

SQL Server 2019 vs 2022 VM 라이선스 차이 - 왜 SA를 다시 확인해야 하나SQL Server VM 라이선스를 검토할 때 버전 차이를 무시하면 안 된다.특히 SQL Server 2019와 SQL Server 2022 사이에는 VM 단위 Core 라이선싱에서 중요한 변화가 있다.SQL Server 2019 Standard VMSQL Server 2019 Standard를 Per Core 방식으로 VM에 라이선스하는 경우 VM의 vCore를 기준으로 계산하는 방식이 사용됐다.그리고 VM당 최소 4 Core 라이선스가 필요했다.SQL Server 2019 Standard VMVM vCPU = 2→ 최소 4 Core LicenseVM vCPU = 4→ 4 Core LicenseVM vCPU ..

DBMS/SQL Server

[감사 대응]SQL Server CAL Multiplexing - EAI·MES·API를 거치면 CAL은 어떻게 봐야 할까

SQL Server CAL Multiplexing - EAI·MES·API를 거치면 CAL은 어떻게 봐야 할까SQL Server Server + CAL 감사를 대응하면서 가장 깊게 확인했던 부분 중 하나가 Multiplexing이었다.처음에는 SQL Server에 실제로 접속하는 Connection이나 계정 수를 기준으로 생각하기 쉽다.하지만 Microsoft의 Multiplexing 원칙은 그렇게 단순하지 않다.가장 단순한 Multiplexing 구조사용자 100명 ↓ MES ↓ EAI ↓ SQL ServerSQL Server에서 보이는 Connection= EAI Connection 몇 개SQL Server 입장에서는 EAI 몇 개만 접속하고 있을 수 있다.그..

DBMS/SQL Server

[감사 대응]SQL Server Standard CAL vs Core - 감사에서 ACL까지 확인한 이유

SQL Server Standard CAL vs Core - 감사에서 ACL까지 확인한 이유SQL Server Standard는 Server + CAL과 Per Core 두 가지 방식으로 라이선스할 수 있다.감사를 받기 전에는 단순히 사용자 수가 적으면 CAL, 많으면 Core 정도로 생각했다.실제 감사에서는 그보다 훨씬 깊게 봤다.특히 CAL 방식에서는 회사가 주장하는 사용자 수가 정말 맞는지, 다른 사용자가 접근할 수 있는 경로가 없는지까지 확인하려 했다.Server + CAL 기본 구조SQL Server Standard Server License +SQL Server CALCAL├─ User CAL└─ Device CALUser CAL은 특정 사용자를 기준으로 하고 De..

DBMS/SQL Server

[감사대응] SQL Server 라이선스 감사 대응 - 실제로 확인했던 항목 정리

SQL Server 라이선스 감사 대응 - DBA가 실제로 확인했던 항목 정리회사에서 Microsoft 제품 라이선스 감사를 받으면서 SQL Server 라이선스까지 확인하게 됐다.처음에는 설치된 SQL Server의 버전과 Edition, 보유 라이선스 수량 정도만 맞춰보면 될 것으로 생각했다.실제로 대응해보니 그렇게 단순하지 않았다.SQL Server Standard가 Server + CAL인지 Per Core인지, VM인지 물리 서버인지, VM이 VMware Cluster 안에서 다른 Host로 이동할 수 있는지, Software Assurance가 살아 있는지, SQL Server에 직접 로그인하지 않는 사용자는 어떻게 봐야 하는지까지 하나씩 확인해야 했다.특히 Server + CAL 환경에서는 ..

DBMS/Open Source DB

Tibero to PostgreSQL 데이터 이관

Tibero에서 PostgreSQL로 데이터 이관하기 - ETL 테스트부터 증분 적재까지ETL 플랫폼을 만들면서 반드시 테스트하려고 한 조합 중 하나가 Tibero → PostgreSQL이다.Oracle → PostgreSQL 자료는 상당히 많다.그런데 Tibero가 Source가 되면 자료가 급격히 줄어든다.내가 다루는 환경에는 Tibero 6가 실제로 있기 때문에 SOONFLOW에서도 처음부터 Tibero Connector를 별도로 두는 것으로 설계했다.Oracle과 SQL 문법이 비슷하다고 해서 Oracle Connector에 Tibero를 억지로 끼워 넣는 방식은 피하려고 한다.SqlDialect ├─ OracleDialect ├─ TiberoDialect └─ PostgresDiale..

OPEN SOURCE/airflow

Airflow vs 자체 개발 스케줄러

Airflow vs 자체 개발 스케줄러, ETL 스케줄러를 직접 만들어보고 비교해봤다ETL 솔루션을 만들면서 가장 고민했던 것 중 하나가 스케줄러였다.처음부터 Airflow를 사용한 것은 아니다.기존에는 Spring Boot + Apache Camel Quartz를 이용해서 실제 ETL Job 스케줄러를 만들어 사용하고 있었다.그래서 처음에는 새로 만드는 ETL 플랫폼도 직접 스케줄러를 만드는 쪽으로 생각했다.어차피 필요한 것은 아래 정도라고 생각했기 때문이다.매일 실행매주 실행매월 실행몇 분마다 실행실제로 여기까지는 어렵지 않다.문제는 운영 기능이 붙기 시작하면서 발생했다.내가 만들었던 스케줄 방식스케줄 타입은 크게 네 종류로 만들었다.DAILYWEEKLYMONTHLYINTERVALDAILY는 하루 중..

OPEN SOURCE/airflow

Airflow란? ETL 스케줄러로 사용하는 이유

Airflow란? ETL 스케줄러로 사용하는 이유와 직접 ETL을 설계하며 느낀 점최근에 SOONFLOW라는 ETL 플랫폼을 설계하면서 스케줄러를 어떻게 가져갈지 꽤 오래 고민했다.처음 생각은 단순했다."정해진 시간에 ETL Job 하나 실행시키는 건데 굳이 Airflow까지 써야 하나?"실제로 이전에 Spring Boot와 Apache Camel Quartz를 이용해서 ETL 스케줄러를 직접 만들어본 적도 있다.예를 들어 오전 7시 30분 실행은 Quartz에서 이런 식이었다.0 30 07 * * ?10분마다 실행하려면 다음과 같이 설정할 수 있다.0 0/10 * * * ?Job 하나를 실행시키는 것까지만 보면 이것으로 충분하다.그런데 ETL을 조금만 제대로 만들려고 하면 문제가 달라진다.선행 작업이 ..