본문 바로가기

전체 글35

MySQL 권한 - 1 MySQL 8.0 권한(Privilege) MySQL 5.7 버전까지 권한은 글로벌 권한과 객체 단위의 권한으로 구분됐다. 데이터베이스, 테이블 외 객체에 적용되는 권한을 글로벌 권한, 데이터베이스나 테이블을 제어하는 데 필요한 권한을 객체 권한이라고 한다. 객체 권한은 GRANT 명령어로 권한을 부여할 때 특정 권한을 반드시 명시해야 한다. 글로벌 권한은 GRANT 명령어에서 특정 객체를 명시하지 말아야 한다. 하지만 ALL은 글로벌과 객체 권한 두 가지 용도로 사용될 수 있다. 특정 객체에 ALL 권한이 부여되면 해당 객체에 적용될 수 있는 모든 객체 권한을 부여하고 글로벌로 ALL이 사용되면 글로벌 레벨에서 사용 가능한 모든 권한을 부여한다. 권한 종류 글로벌 권한 FILE: File_priv 파일.. 2022. 9. 5.
스파크 데이터 구조 1. 스파크 데이터 구조 DateFrame 1) 개념 스파크의 데이터 구조중 가장 대표가 되는 DataFrame은 마치 엑셀의 격자모양, 일반적인 RDB의 컬럼, 로우의 스키마 구조와 유사합니다. 하지만 엑셀과의 분명한 차이는, 엑셀은 한대의 컴퓨터에서 작동하지만 스파크 DataFrame은 여러 컴퓨터에 분산되어 있습니다. 왜냐하면 한대의 컴퓨터에 대한 데이터 저장과 처리는 연산이 너무 오래 걸릴 수 있기 때문입니다. 스파크는 파이썬과 R을 모두 지원하기 때문에 파이썬(Pandas) 라이브러리의 DataFrame을 스파크 DataFrame으로 쉽게 변환할 수 있습니다. 2) 파티션 스파크 파티션은 클러스터의 물리적 머신에 존재하는 로우의 집합을 의미합니다. 스파크는 모든 익스큐터의 병렬 작업을 위해 파티.. 2022. 8. 26.
스파크의 기본 개념 - 1 1. 스파크의 역사 아파치 스파크는 UC 버클리 대학에서 2009년 스파크 연구 프로젝트로 시작되었습니다. 그다음 해에는 UC버클리 대학교 AMPLab 소속인 마테이 자하리아, 모샤라프 카우 두리, 마이클 프랭클린, 스콧 쉔커, 이온 스토이카가 발표한 논문 'Spark: Cluster Computiong with Working Sets'을 통해 세상에 처음으로 알려지게 되었습니다. 하둡 맵리듀스는 수백, 수천 개의 노드로 구성된 클러스터에서 병렬로 데이터를 처리하는 최초의 오픈소스 시스템이자 클러스터 환경용 병렬 프로그래밍 엔진의 대표주자였습니다. AMPLap은 새로운 프로그래밍 모델의 장단점을 이해하기 위해 맵리듀스 사용자들과 함께 협업을 진행했습니다. 그리고 다양한 사례에서 발견한 문제점들을 정리해서.. 2022. 7. 25.
SQL의 기본 개념 - 2 SQL의 역할 SQL의 역할은 크게 DML, DDL 두 가지로 볼 수 있다. DML(데이터 조작어, Data Mainpulation Language)은 데이터 추출, 저장, 삭제 등 데이터를 조작하는 것에 관한 것이고, DDL(데이터 정의어, Data Definition Language)은 데이터가 저장되는 테이블이나 각종 객체들을 생성하는 역할을 한다. DML 데이터를 조작하는 역할인 DML의 기본 패턴에는 3이 아닌 4가지 유형이 존재한다. 실제 SQL문에서는 데이터를 저장하는 행위를 데이터의 입력과 수정 두 가지로 다시 구분하기 때문이다. 다시 말하자면, 새로 생성되어 들어가는 데이터는 입력(Insert)에 속하고, 기존 데이터를 변경하는 것은 수정(Update)에 속한다. 조회: SELECT 삭제.. 2022. 7. 13.
SQL의 기본 개념 - 1 개요 데이터의 관리는 크게 데이터의 조회, 저장, 삭제 3가지 유형으로 분류할 수 있다. SQL은 조회, 삭제, 저장 세 가지가 가능하며, 선언적 언어이기 때문에 이 3가지 형태에 맞는 패턴들이 존재한다. 따라서 이 3가지 패턴에 맞게 원하는 조건을 설정하면 데이터 관리에 대한 모든 일은 완료되는 것이다. 장점 배우고 사용하기 쉬운 언어: 개발자뿐만 아니라 DBA, 일반 사용자들도 SQL을 배우고 사용하는데 무리가 없다. 프로그래밍 언어들처럼 절차적인 개별 단위로 처리되기보다, 데이터의 집한 단위로 처리된다. 그리고 실제 데이터들이 어떻게 처리되는지 세부적인 과정은 SQL 문장을 작성하는 사람은 신경 쓸 필요 없다. 왜냐하면 절차적 언어가 아니고 선언적 언어이기 때문이다. 공인된 기관의 표준 SQL 문법.. 2022. 7. 12.
AWS 부하 테스트 도구 - 1 부하 테스트 도구란 무엇인가? 대상 시스템에 대해 많은 요청을 하고 DOS, DDOS 공격이 들어오는 상태로 만드는 등 시스템 상태를 고부하로 만들어주는 도구를 부하 테스트 도구라고 한다. 부하 테스트 도구 용어 도구마다 조금씩 차이는 있지만 기본적으로 아래 내용을 포함한다. 용어 설명 시나리오 클라이언트별 설정된 HTTP 요청 패턴 시나리오 실행 횟수 클라이언트가 시나리오에 따라 요청을 보내는 횟수 클라이언트 HTTP 요청을 동시에 1개만 줄 수 있는 요청 생성기 클라이언트 동시 가동 수 테스트 시작 수에 테스트 도구에 사용할 수 있는 클라이언트 수 Ramp-up 기간 테스트 시작 후 모든 클라이언트를 기동하기까지의 준비 기간 Throughput: 시스템이 시간당 처리할 수 있는 요청수 Latency:.. 2022. 7. 11.