본문 바로가기

Database16

[Linux] Crontab 태블로 백업 스케줄 설정 태블로 대시보드를 개발해 게시, 관리, 운영하는 경우에 주로 태블로 서버라는 것을 사용합니다.서버가 정상적으로 운영되어야 만든 대시보드를 게시할 수 있기에 서버를 잘 관리하고 확인하는 것 또한 태블로 개발자에게는 필수적인데요. 얼마 전에 새로 시작한 프로젝트가 있어 서버의 디스크 용량, 메모리 확인, 그리고 백업은 잘 되고 있는지 확인을 해보았습니다. 서버는 Linux - 우분투이며 한 달 전에 담당자가 서버 업그레이드를 진행했는데 확인해보니 그 과정에서 자동으로 백업이 실행될 수 있도록 걸어둔 스크립트가 사라진 상태임을 확인했습니다. 한 달동안 서버 백업이 안되고 있던 건데, 그래서 급하게 백업 스케줄을 거는 크론탭 명령어를 작성하게 되었습니다. 1. 크론탭 Crontab 먼저 크론탭이란 리눅스에서 주.. 2024. 3. 15.
[SQL] LEFT JOIN, UNION ALL, WITH 작년 10월부터 시작해서 약 4개월 동안 현재 진행중인 프로젝트로 정신없게 보내고 있다. 투입되고 정말 단 하루도 안 바쁜 적이 없었던 것 같은데 이번 프로젝트는 많은 삽질(?)이 동반되었기에 프로젝트가 마무리되면 이후에 회고해보면 좋을 것 같다. 그 전에 프로젝트에서 사용하고 있는 주요 SQL문과 사용 이유를 한번 정리해두고자 한다. ( Oracle, PostgreSQL을 병행해 사용중입니다 ) 1. LEFT OUTER JOIN 먼저 데이터 마트는 팩트 테이블을 중심으로 여러 디멘젼 테이블을 결합하는 형식으로 사용한다. ( 팩트 테이블은 트랜잭션과 유사하게 사실이 기록된 것이며 집계가 되도록 숫자 데이터로 이루어져있는 테이블, 디맨젼 테이블은 참고되는 마스터 데이터로 데이터를 분류하기 위한 속성값으로 .. 2024. 1. 21.
[MySQL] MySQL 서버 구조와 특징 MySQL 서버는 MySQL 엔진 + 스토리지 엔진으로 구분할 수 있다. 스토리지 엔진은 핸들러 API를 만족하기만 하면 MySQL 서버에 추가해서 사용할 수 있다. 해당 글에선 MySQL 서버의 전체적인 구조와 특징을 알아본다. 1. MySQL 전체 구조 (1) MySQL 엔진 -> (2) 핸들러 API -> (3) 스토리지 엔진 (1) MySQL 엔진 : 요청된 SQL 문장 분석, 최적화 커넥션 핸들러, SQL 파서, 전처리기, 옵티마이저로 이루어 짐 쿼리 실행은 대부분 MySQL 엔진에서 이루어짐 1) 쿼리 파서 2) 전처리기 3) 옵티마이저 4) 쿼리 실행기 5) 핸들러 1) 쿼리 파서 SQL 쿼리 문장을 토큰으로 잘게 쪼개는 순서 -> 파스 트리를 만들어 냄 문법 확인 과.. 2023. 3. 27.
[MySQL] 옵티마이저 DBMS에 대해서 입력과 출력에만 집중하는 경우가 많다. 즉, DBMS 서버가 그 결과를 만들기 위해서 내부적으로 무슨 과정을 거쳤는지는 크게 관심을 가지지 않는다. 그런데 AWS 같은 클라우드 환경의 서버들은 자원을 무제한 사용하도록 해주고 사용한 만큼 비용을 가져간다. 컴퓨터 자원이 너무 쉽게 낭비될 수 있는 환경이고 이런 낭비는 결국 비용 증가로 연결될 것이다. 클라우드 서비스 회사와 ORM도구들은 우리가 지불해야 할 비용에 대해서 걱정해주지 않기 때문에 결국 사용자 입장에서 필요한 만큼 지식과 경험을 갖추고 있어야 하는 것이다. - Real MySQL 8.0 (백은빈, 이성욱) 차주부터 Real MySQL 8.0 책으로 스터디를 진행한다. BI 프로젝트를 진행할 때만 해도 화면상에서 최대한 대시보.. 2023. 3. 9.
Tableau SSO 인증(SAML) (둘 다 외부 인증 솔루션) * OPENID Google 등의 IdP(ID 공급자)에 로그인할 수 있도록 지원하는 표준 인증 프로토콜 IdP 로그인하면 자동으로 Server login OpenIDConnect(OIDC) 를 사용하기 위해서는 서버가 로컬 ID 저장소를 사용하도록 구성되어야 함 Active Directory나 LDAP ID 저장소는 지원 불가 * SAML(Security Assertion Markup Language) 보안 웹 도메인이 사용자 인증 및 권한 데이터를 교환할 수 있는 XML 표준 외부 IdP가 SAML 2.0 이용해 사용자 자격 증명을 인증 후 사용자 ID에 대한 정보를 가지고 있는 Tableau Server로 보안 정보 전송 Server.. 2022. 12. 5.
Tableau HA Server (1) 단일 노드 설치 (Default) 단일 컴퓨터에서 모든 서버 프로세스가 실행되며, 문제가 발생할 경우 중복성 및 안전 장치가 부족, 프로세스와 사용자 및 데이터 요구 사항 처리에 충분한 리소스가 있는지 확인해야 함 (2) 분산 설치 다중 노드 설치, 여러 대의 컴퓨터 필요, 중복성 및 추가 컴퓨팅 성능 제공해 안정성 및 효율성 확장 가능, 자동 리포지토리 장애 조치 기능 사용 가능 (3) HA(고가용성) 설치 주요 서버 구성 요소의 장애를 전체 서버 기능의 손실 없이 하도록 설계된 특수 형태 분산 설치. 분산 배포 과정에서 고가용성 배포 만드는 추가 단계 포함 3개 이상의 노드 추가, 주요 프로세스(리포지토리, 파일 저장소, 파일 서비스)의 여러 인스턴스가 다른 컴퓨터에 포함됨. 다중 파일 저장소.. 2022. 11. 7.
ODS, DW, DM, ETL - ODS : Operational Data Source 많은 양의 데이터를 정형화시켜 저장하는 공간, DW가 활용할 수 있는 임시 운영 데이터 저장, 운영계에서는 최종 데이터 형상으로 데이터를 주로 관리하기 때문에 ODS로 시계열로 변환해 이력 데이터 보관 소스 데이터를 가져와 정제, 통합, 변환된 형태로 보관하고 DW로 공급해주는 데이터 준비 공간(Operational Data Source) - DW : Data Warehouse 활용할 수 있는 형태로 만들어 저장, 관리, 분석할 수 있는 시스템 - DM : Data Mart DW의 일부, 특정 분야에서 필요한 데이터들만 꺼내 저장 - ETL : Extraction-Transformation-Load ODS에서 DW, DM까지 데이터 추출, 변형, .. 2022. 10. 31.
[Tableau] refresh-environment-variables.txt @ECHO OFF REM this script assumes that cmd extensions are enabled :check_cygwin REM Cygwin binaries should not be on the PATH before the native windows binaries, in particular find.exe find /? >NUL 2>&1 if %ERRORLEVEL% NEQ 0 ( ECHO The find.exe executable did not work as expected. Cancelling. ECHO If you are using Cygwin ensure that the Windows CLI executables, most importantly find.exe, come be.. 2022. 9. 19.
[Tableau] Tableau-server-obliterate.txt @ECHO OFF @SETLOCAL enableextensions enabledelayedexpansion REM Make sure Windows binaries are on the PATH before custom ones SET PATH=%SystemRoot%\System32;%PATH% :check_bitness REM Running a 32-bit shell on 64-bit systems may cause trouble when working with the Windows registry. IF %PROCESSOR_ARCHITECTURE% == x86 ( ECHO Warning: Running in a 32-bit shell. ECHO It is recommended that you start .. 2022. 9. 19.
[Datacamp] SQL Server [Datacamp] Data Analyst with SQL Server (Career Track)​ (1) Introduction to SQL Server ( 🎈 ) (2) Introduction to Relational Databases in SQL (3) Intermediate SQL Server (4) Time Series Analysis in SQL Server Selecting : SELECT Ordering : ORDER BY Filtering : WHERE, HAVING Aggregating : SUM, COUNT, MIN, MAX, AVG Text manipulation : LECT, RIGHT, LEN, SUBSTRING 1. SELECTion Box - TOP () return 5 ro.. 2022. 5. 12.