본문 바로가기
728x90

분류 전체보기331

[MySQL] MySQL version 확인 방법 1. SQL로 확인 1) SELECT VERSION(); SELECT VERSION(); 2) SHOW VARIABLES LIKE 'VERSION'; SHOW VARIABLES LIKE 'VERSION'; SHOW VARIABLES LIKE '%VERSION%'; 2. shell로 확인 2023. 1. 11.
[SQL] MySQL의 Binding Variables, 바인딩 변수 사용법(mysql,python), 장점 1. 바인딩 변수 사용의 장점 바인딩 변수의 장점은 SQL문 처리과정 중 Parsing과정에서 드러나게 됩니다. 1) SQL문 처리 과정 사용자가 SQL문장(Select)을 실행 SQL 파싱(parsing) SQL 최적화(optimizer) 실행(Execution) 추출(Fetch) 2) Parsing 과정 서버프로세스는 Shared Pool의 LibraryCache를 조회해서 문자 하나하나 공백, 대소문자까지 비교하여 동일한 SQL문장이 있는지 확인 Soft Parsing: 동일한 SQL문장과 SQL구문을 보낸 사용자나 옵티마이저 MODE관련 설정까지 일치하는 SQL커서가 존재하고 있다면, Library Cache의 parse-tree와 Query Execution Plan을 가지고 와서 실행 opti.. 2023. 1. 10.
[Airflow] Airflow cluster, celery executor + flower + RabbitMQ 환경 구성하기 이번 포스트에는 AWS EC2 3대로 구성된 airflow cluster를 CeleryExecutor로 설치해보겠습니다. 서버 구성 스펙 OS - Amazon linux2 AMI (HVM) - Kernel 5.10, SSD Volume type instance type - t2.Large 2vCPUs, 8GiB Memory storage - 30GB gp2 node 1: postgresql, redis, airflow webserver, airflow scheduler, airflow flower, airflow worker(queue1) node 2: airflow worker(queue2) node 3: airflow worker(queue3) 네트워크 SG group inboud rules outb.. 2023. 1. 9.
[Linux] echo를 이용하여 파일 덮어쓰기, 추가하기 linux에서는 파일을 쓰는 방법에는 파일에 들어가 직접 편집하는 방법이 있고, echo를 통해 파일을 쓰는 방법이 있습니다. 그 중 echo를 이용해 파일을 쓰는 방법에 대해 알아보겠습니다. 1. 명령어 $ echo -e "쓸 내용" > 파일.형식 # > 는 덮어쓰기 $ echo -e "쓸 내용" >> 파일.형식 # >> 는 추가하기 2. 실습 1) test.txt 작성 2) 내용 추가하기 $ echo -e "add second text" >> test # txt 파일형식 3) 내용 덮어쓰기 echo -e "overwrite third text" > test # txt 파일형식 2023. 1. 9.
[Airflow] docker-compose.yml로 airflow 설치하기 이번 포스트에는 docker-compose.yml를 이용하여 간단하게 airflow를 설치해보겠습니다. airflow 개념과 용어에 대해 공부하고 싶으신 분은 아래의 링크를 참조해주세요. https://spidyweb.tistory.com/295 [BigData] Apache Airflow 설치 및 실습 하기 series (1) Airflow란? DAG란? 안녕하세요 이번 포스트에는 Airflow의 개념에 대해서 알아보고 어떤 역할을 하는지, 그리고 핵심인 DAG파일에 대해서 알아보겠습니다. 1. Apahce Airflow란? 에어비앤비에서 python기반으로 개발한 워크 spidyweb.tistory.com 1. docker 설치 https://spidyweb.tistory.com/277 [Docker.. 2023. 1. 7.
[Python] PyPy3 vs Python3 이번 포스트에는 PyPy3와 Python3를 비교해보고 어떤 상황일 때 사용하면 좋은 지 확인해보겠습니다. 비교 전에 컴파일 언어와 인터프리터 언어의 특징을 확인하겠습니다. 컴파일 언어: 소스 코드를 기계어로 컴파일(Compile time) -> 실행파일 만듦 -> 실행(Run time) 인터프리터 언어: 코드를 한줄씩 읽어 가며 실행 Python3 1) 구현체 python의 시작은 C로 구현되었고, 그 구현체가 CPython인데, CPython은 인터프리터이면서 컴파일러 2) 동작 방식 python3에서는 우리가 작성하는 python코드를 bytecode로 컴파일하고 실행한다. 즉, python코드를 C언어로 바꾸는 것이 아니라, 컴파일 하여 bytecode로 바꾸고 그 다음 인터프리터(가장 머신)가 .. 2023. 1. 6.
[Spark Tuning] PartitionFilters vs PushedFilter 비교, predicate pushdown vs projection pushdown 이번 포스트에서는 spark에서 partitionfilter의 개념과 언제 적용되는지, 그리고 확인하는 방법을 확인하고 PushedFilter와의 차이점,마지막으로 PushedFilter의 종류 predicate과 projection의 차이를 알아보겠습니다. 1. PartitionFilters vs PushedFilters PartitionFilters란 특정 파티션에서만 데이터를 가져오고 관련 없는 파티션은 모두 생략합니다. 데이터 스캔 생략은 성능의 큰 향상을 가져다 줍니다. PushedFilters 보다 선행된다. PartitionFilter기술은 조건에 사용된 컬럼이 파티션되어 있고 스파크가 필터 조건을 충족하는 특정 디렉터리만 스캔할 때 사용됩니다. PushedFilters란 PushedFilt.. 2023. 1. 1.
[AWS] RDS(Relational Database Service) vs AuroraDB (feat. MySQL, PostgreSQL) 1. RDS(Relational Database Service)란? 1) 정의 클라우드에서 배포,설치,패치,백업을 쉽게만드는 관계형 DB를 관리된 SQL DB로 서비스한다.(아마존 클라우드에서 관계형 데이터베이스를 사용할 수 있는 서비스)Aurora, MySQL,PostgreSQL,MariaDB,Microsoft SQL Server 그리고 Oracle DB 엔진을 지원한다. (Aurora가 포함되는 개념) 2) 특징 RDS 구축 형태 기존 데이터베이스 아키텍처를 중심으로 완전히 관리되는 추상화 계층을 제공 RDS 내에서 데이터베이스 플랫폼은 EC2에서 수동으로 수행하는 것처럼 구축 EC2인스턴스는 적절한 Amazon Machine Image (AMI)에서 프로비저닝 되고, EBS(Elastic Block.. 2022. 12. 28.
[Python] 함수의 강점, 함수 return 이란?, 언제 사용할까? print()와의 차이점 왜 쓰는지 알고 쓰는 것과 그냥 쓰는 것의 차이는 굉장히 크다고 생각합니다. 늘상 접하고 있는 함수에 대해서 정리해보겠습니다. 1. 함수의 강점 1) 반복과 재사용에 강하다 기계와 사람의 큰 차이점은 어떤걸까? 같은 일을 반복함에 있어서 속도차이가 엄청나게 나는 부분이 제일 큰 차이가 아닐까 싶습니다. 프로그래밍에는 반복을 해야하는 일들이 존재합니다. 즉, 코드를 재사용할 일이 많다는 뜻입니다. 그런것을 도와주는 것이 반복문 함수 정도 일 것 같습니다. 2) 유지보수에 좋다 함수의 강점은 반복 뿐만이 아닙니다. modularity(모듈성)라 하는 시스템 구성 요소가 분리되고 재결합 될 수있는 정도를 나타내는 단어는 프로그래밍에 있어 중요합니다. 기능을 잘게 쪼개게 되면, 원하는 기능의 수정이 필요할 때에.. 2022. 12. 15.
728x90