[Excel] 엑셀을 이용하여 INSERT QUERY문 만들기
[Excel] 엑셀을 이용하여 INSERT QUERY문 만들기많은 양의 데이터를 DB에 insert 해야할 때,엑셀 함수를 사용하여 insert 구문을 생성할 수 있다. (컬럼명은 생략 가능)="INSERT INTO 테이블명(컬럼명1, 컬럼명2, 컬럼명2) VALUES ('"&B2&"','"&C2&"',"&D2&");"
[Excel] 엑셀을 이용하여 INSERT QUERY문 만들기많은 양의 데이터를 DB에 insert 해야할 때,엑셀 함수를 사용하여 insert 구문을 생성할 수 있다. (컬럼명은 생략 가능)="INSERT INTO 테이블명(컬럼명1, 컬럼명2, 컬럼명2) VALUES ('"&B2&"','"&C2&"',"&D2&");"
[SQL] 테이블 생성 (CREATE) CREATE TABLE CREATE TABLE 테이블 명( 컬럼명 데이터타입 조건, 컬럼명 데이터타입 조건, . . ); 데이터 타입 데이터 타입 의미 CHAR 특정 문자열의 개수를 지정 VARCHAR 가변길이의 문자열을 저장할 때 사용 최대 길이를 지정 (ORACLE x) VARCHAR2 가변길이의 문자열을 저장할 때 사용 최대 길이를 지정 (MySQL, MariaDB x) NUMBER 숫자에 사용되는 데이터 타입, 소수점 저장 가능 (MySQL에선 INT) DECIMAL 숫자에 사용되는 데이터 타입 소수점 저장 가능 DATE 날짜에 사용되는 데이터타입 제약 조건 제약 조건 의미 NOT NULL 값이 꼭 입력이 되어야 할 때 사용 NULL 허용 x UNIQUE 해..
[SQL] 테이블 변경 (ALTER) ALTER 기존에 생성되어있는 테이블에 컬럼을 추가/변경 하는 등 테이블 변경 사항을 적용할 때 사용하는 구문 컬럼 추가 ALTER TABLE table_name ADD COLUMN column_name varchar(32) NOT NULL; 컬럼 변경 ALTER TABLE table_name MODIFY COLUMN column_name varchar(16) NULL; 컬럼 이름 변경 ALTER TABLE table_name CHANGE COLUMN column_name new_column_name varchar(16) NULL; 컬럼 삭제 ALTER TABLE table_name DROP COLUMN column_name; 테이블 이름 변경 ALTER TABLE ..
[Airflow] Celery executor, Flower https://heywantodo.tistory.com/68 [Airflow] 멀티 클러스터 환경 구성 (Celery Executer) [Airflow] 멀티 클러스터 환경 구성 [구성] 1. airflow-ec2-1 (Master) metadata database(rds-mysql) airflow webserver airflow worker 2. airflow-ec2-2 (Worker) airflow worker 1. Master, Worker 인스턴스 생성 후 airflow 설치 : airflow 설치 heywantodo.tistory.com 이전 포스팅에서 Docker composer를 통해 Celery executor를 구성하는 방법을 ..
[Superset] 차트에 HyperLink 걸기 Superset에서 차트 구성을 할 때 컬럼에 하이퍼링크를 걸고싶은데, 아쉽게도 Superset에서 따로 지원을 하지 않는 기능인 것 같다. 대신 HTML의 href 속성을 사용해서 Chart에서 링크를 걸 수 있는 것 같다. Dataset에서 데이터 가공이 필요함 아래와 같은 SQL문을 사용하면 된다. +) target 옵션이 _blank일 경우 새탭에서 창이 열린다. _self 일 경우 현재탭에서 오픈한다, default 값으로 생략이 가능하다. CONCAT('',url,'') AS url concat안의 url은 각자의 컬럼명으로 변경해서 사용하면 될 듯 대신 위와 같은 방법을 사용하기 위해선 컬럼의 데이터가 올바른 링크여야 함 아래는 테스트용으로 ..
[Airlfow] Sensor Airflow의 Sensor는 워크플로우 내에서 특정 이벤트 또는 조건이 발생할 때까지 작업을 지연시키는 데 사용 즉, Sensor는 다른 작업이 실행되기 전 특정 상태가 충족될 때까지 기다리는 역할을 함 예를 들어, 특정 파일이 생성되거나 특정 시간에 도달하거나 외부 시스템의 상태가 변경될 때까지 작업을 일시 중지 시키는 데 사용할 수 있음 Airflow에는 다양한 종류의 Sensor가 있으며 일반적으로 사용되는 몇 가지 예는 다음과 같음 1. FileSensor 파일이 특정 디렉토리에 존재하는지 여부를 확인한다. from airflow.sensors.filesystem import FileSensor from airflow import DAG dag = DAG("file..
1. 데이터베이스 별 용량 조사 SELECT table_schema AS 'DatabaseName', ROUND(SUM(data_length+index_length)/1024/1024, 1) AS 'Size(MB)' FROM information_schema.tables GROUP BY table_schema ORDER BY 2 DESC; 2. 테이블 별 용량 조사 SELECT table_name AS 'TableName', ROUND(SUM(data_length+index_length)/(1024*1024), 2) AS 'All(MB)', ROUND(data_length/(1024*1024), 2) AS 'Data(MB)', ROUND(index_length/(1024*1024), 2) AS 'Inde..
[Airflow] 병렬 처리 Task Airflow의 주요 기능 중 하나는 작업(Task)들을 병렬로 실행할 수 있는 기능임 병렬 처리는 동시에 여러 작업을 실행하여, 작업의 처리 시간을 단축시키는 방법 Airflow에서는 작업을 병렬로 실행하기 위해, Parallelism과 동시성(Concurrency) 개념을 사용함 parallelism은 Airflow에서 동시에 실행 가능한 작업의 최대 개수를 제어하는 설정 값 동시성은 Airflow 스케줄러에서 제어되며, 작업을 실행할 수 있는 동시 작업 수를 제어하는데 사용됨 동시성은 Airflow 구성 파일에서 설정할 수 있으며, 작업들 사이의 의존성 및 리소스 제약에 따라 조정 가능 Example 아래는 Airflow를 사용하여 병렬로 S3 버킷 내의 여러 ..
파티션 (Partition) 파티션이란 논리적인 하나의 테이블이나 인덱스를 여러 개의 파티션으로 분할 하는 기능을 말함 크기가 큰 테이블에 쿼리를 수행 할 경우 DB에 상당한 부하가 걸리기때문에, 파티션을 통해 특정 데이터에 대한 접근 시간을 줄이고, 쿼리의 실행 속도를 향상 시키는 데 도움을 줄 수 있음 각 파티션 별로 독립적으로 백업하고 복구가 가능하지만, 테이블 간 Join이 일어날 경우 비용이 증가할 수 있음 파티셔닝 적용 ✔ MySQL 기준 1. 파티셔닝을 적용 할 테이블을 생성할 때, 파티션을 지원하도록 설정 CREATE TABLE 테이블명 ( 컬럼1 데이터_타입, 컬럼2 데이터_타입, ... ) PARTITION BY {RANGE|LIST|HASH} (파티션_키); 파티션 키는 파티션을 나눌..
[Hive] Apache Hive Hive Apache Hive는 대용량 데이터를 처리하고 분석하기 위해 구축된 데이터 웨어하우징 솔루션 Hive는 데이터를 Hadoop Distributed File System (HDFS)와 같은 분산 파일 시스템에 저장하고 SQL과 유사한 Hive Query Language (HQL)을 사용하여 데이터를 쿼리하고 처리 Hive는 맵 리듀스 기반의 분산 처리를 활용하여 데이터를 처리하므로, 대용량 데이터셋에 대한 쿼리 및 분석 작업을 효율적으로 수행할 수 있음 데이터에 대한 메타 데이터를 관리하고, 쿼리를 실행하기 전에 데이터를 맵리듀스 작업으로 변환하여 처리함 하둡 (Hadoop) 대규모 데이터를 분산 처리하기위한 오픈 소스 프레임워크로 GFS와 맵리듀스 개념을 기반..
[trino] trino(Presto SQL)란? Trino Trino는 빅데이터 분석을 위한 분산 SQL 쿼리 엔진 PrestoSQL을 리브랜딩 한 것으로, 데이터 웨어하우스, 데이터 레이크 및 다른 데이터 저장소에 저장된 대량의 데이터에 쿼리를 하기 위해 설계됨 🔎Presto 페이스북이 최초로 개발하여, 오픈 소스로 공개한 대화식 데이터 쿼리 서비스 데이터베이스에 대한 일관된 ANSI SQL 질의가 가능 SQL 쿼리 엔진이란 무엇일까? 데이터 베이스나 데이터 처리 시스템에서 사용되는 소프트웨어 컴포넌트 주어진 데이터에 대해 사용자가 요청한 정보를 추출하기 위해 쿼리를 실행하고 결과를 반환 SQL 또는 다른 쿼리 언어로 작성된 쿼리를 해석하고 실행 쿼리엔진은 DBMS의 일부로 내장되어 있을 수도 있으며..
[Airflow] Airflow CLI 명령어 Airflow CLI를 사용해 작업 실행, 스케줄 조작, 작업 상태 확인 등 다양한 작업 수행이 가능함 airflow cheat-sheet 명령어를 통해 자주쓰이는 명령어를 확인 할 수 있으며 airflow --help 명령어를 사용해서 자세한 도움말을 확인 할 수 있음 아래는 일부 명령어이며, airflow CLI에는 더 많은 명령어와 옵션이 있음 arguments dag _id : 실행 할 DAG의 ID task_id : 실행할 task의 ID execution_date : 실행할 날짜와 시간 (YYYY-MM-DD 또는 ISO 8601 형식) DAG ON airflow dags pause [dag_id] DAG OFF airflow dags unpause..