본문 바로가기

Language6

Multiprocessing - multiprocessing(https://docs.python.org/3/library/multiprocessing.html) 공식 문서 참고 Multiprocessing - multiprocessing은 API를 사용해 process spawning 지원 - processing spawning은 parent process가 os에 요청해 새로운 child process를 만들어내는 과정 - local concurrency와 remote concurrency를 지원하며, GIL(Global Interpreter Lock)을 효과적으로 우회 - Local concurrency is defined as "within a system" (e.g. a multi-core CPU), nonlocal conc.. 2023. 3. 24.
[MySQL]JOIN 관계형데이터베이스 데이터베이스에 이러한 테이블이 저장되어있다. 두 테이블에는 교수의 이름과 교수의 담당 전공이 중복되게 된다. 이러한 데이터 중복은 여러 가지 문제점을 일으킨다. 교수가 새로 부임하게 되어 추가하게 될 경우 교수 정보를 저장하기 위해 불필요한 학생 정보를 입력(삽입이상)해야하거나, 한 교수의 전공이 변하게 되어 특정 레코드 또는 테이블의 교수 전공을 변경했을 때, 다른 레코드나 테이블의 해당 교수의 전공과 일치하지 않거나(갱신이상), 교수가 퇴임하게 되어 교수 정보를 삭제하기 위해 학생 정보까지 함께 삭제되는 경우(삭제이상) 등의 문제점이 발생할 수 있다. 이러한 데이터 중복성 문제를 해결하기위해 관계형 데이터베이스는 정규화를 통해 하나의 테이블을 다수의 테이블로 나누게 되고, 관계를 통.. 2020. 6. 18.
[MySQL] CRUD Operation 테이블 구조 확인 DESC 테이블이름; 레코드 삽입(CREATE) INSERT INTO 테이블명 (column1, colunm2, …) VALUES(‘value1’, ‘value2’, …); INSERT INTO class (name, gender, description, enrolled) VALUES("홍길동", "남", "활발", NOW()); 레코드 검색(READ) 1) 해당 레코드의 모든 column 출력 SELECT * FROM 테이블명; SELECT * FROM class; 2) 해당 레코드의 원하는 column 출력 SELECT column1, column2, … FROM 테이블명; SELECT name, gender FROM class; 3) WHERE 조건절 SELECT column1, .. 2020. 6. 17.
[MySQL] macOS MySQL 테이블 생성/수정/삭제 Table 생성 CREATE TABLE 테이블명( 속성이름 데이터타입 {NULL | NOT NULL} 옵션 속성이름 데이터타입 {NULL | NOT NULL} 옵션 … PIMARY KEY(속성이름)); 예시 CREATE TABLE class( id INT(11) NOT NULL AUTO_INCREMENT, #학번, 정수형, NULL 값 허용하지 않음, 생성 시 value 자동 증가 name VARCHAR(100) NOT NULL, #이름, VARCHAR형, NULL값 허용하지 않음 gender VARCHAR(100) NULL, #성별, VARCHAR형, NULL값 허용 description TEXT NULL, #특징, TEXT형, NULL값 허용 enrolled DATETIME NOT NULL, #등록일.. 2020. 6. 17.
[MySQL] macOS MySQL 설치 및 실행 MySQL 설치 터미널에 '$ brew install mysql' 입력 mysql 환경변수 설정 $ export PATH=$PATH:/설치받은 MySQL이 위치하는 디렉토리 내의 bin 디렉토리의 path를 입력 ($ export PATH=$PATH:/usr/local/Cellar/mysql/8.0.19_1/bin) MySQL Server 실행 $ mysql.server start MySQL 설정 $ mysql_secure_installation 비밀번호 설정과 각 MySQL 서버의 환경설정에 대한 질문들이 나오게 됨 MySQL 로그인 $ mysql -uroot -p root 권한으로 로그인 'mysql>' 과 같이 쉘로 전환 데이터베이스 생성 $ CREATE DATABASE 베이터베이스이름; 데이터베이.. 2020. 6. 16.
[Python] 웹크롤링(Web Crawling) 예제 웹 크롤링(Web crawling) web상에 존재하는 contents를 수집하는 작업 1) HTML 페이지를 가져오는 방법 2) Rest API를 사용하는 방법 3) Selenium등 브라우저를 조작해서 가져오는 방법 BeautifulSoup 라이브러리 사용하기 BeautifulSoup는 파이썬에서 제공하는 HTML의 태그를 파싱해서 필요한 데이터만 추출하는 라이브러리 예제 라이브러리 임포트 import requests from bs4 import BeautifulSoup html 페이지 가져오기 # HTML 페이지 파싱 soup = BeautifulSoup(res.content, 'html.parser') 태그이름으로 데이터 가져오기 # html 페이지에서 필요한 부분 태그 이름으로 가져오기 find.. 2020. 2. 8.