본문 바로가기

전체 글198

[Python] 한 방에 알파벳 리스트 만들기 코딩 테스트나 실습에서, 알파벳 리스트가 필요할 때가 있습니다. 대문자/소문자 리스트가 필요할 때도 있고, 때로는 두 개가 전부 필요하기도 하죠. 하지만 abcdefg...... 를 일일히 다 칠 수는 없습니다. 그럴 때는 아래와 같이 내장함수 string을 불러오면, 손쉽게 해결할 수 있습니다. import string # 소문자 리스트 lower = [i for i in string.ascii_lowercase] print(lower) # 대문자 리스트 upper = [i for i in string.ascii_uppercase] print(upper) # 대문자+소문자 전체 리스트 lowup = [i for i in string.ascii_letters] print(lower) 이 외에도 숫자 st.. 2021. 6. 20.
21_파티셔닝(Partitioning), 파티션(Partition)이란 무엇인가? 샤딩처럼 하나의 커다란 테이블을 관리하기 쉽도록 쪼개는 방법이다. 다만 샤딩보다 더 넓은 개념으로 샤딩은 파티셔닝에 속한다고 할 수 있다. 파티셔닝에는 수평 분할(Horizontal Partitioning)과 수직 분할(Vertical Partitioning)이 있는데, 이 중 수평 분할은 샤딩과 같은 말이다. 수직 분할은 테이블을 세로로 쪼개는 방법으로, column을 기준으로 데이터를 분리한다. 이 때 쪼개는 데이터는 이미 정규화가 완료된 상태여야 한다. 2021. 6. 14.
20_샤딩(Sharding)이란 무엇인가? 대량의 데이터를 처리하는 방법 중 하나로, 커다란 테이블을 관리하기 좋도록 쪼개는 것을 말한다. 관계형 데이터베이스(Relatonal Database Management System, RDBMS)에서 쓰인다. 다른 말로 데이터베이스 샤딩(Database Sharding), 수평 분할(Horizontal Partitioning)이라고도 하는데, 수평(가로) 분할이라는 이름처럼 테이블을 쪼갤 때 가로로 자른다. 이 과정에서 데이터가 한쪽으로 몰리는 일이 없도록 균등한 크기로 쪼개는 것이 중요하다. 이렇게 같은 크기로 데이터를 쪼개는 기준이 되는 column을 샤드 키(Shard Key)라고 한다. 예로 아래의 표에서 샤드 키는 'CustomerId'가 된다. 데이터의 갯수를 기준으로 쪼개기 때문에 자연히 관.. 2021. 6. 10.
[programmers] 중복 제거하기(풀이 성공) 문제 동물 보호소에 들어온 동물들의 정보를 담은 테이블 ANIMAL_INS가 주어진다. 동물 보호소에 들어온 동물의 이름이 몇 개인지 조회하라. 이 때 이름이 NULL인 경우는 집계하지 않으며, 중복되는 이름은 하나로 친다. 내 코드: SELECT COUNT(DISTINCT NAME) FROM ANIMAL_INS; Comment: 중복 계산을 피할 때 사용하는 DISTINCT를 활용하는 문제입니다. 중복 데이터 처리는 매우 흔한 문제인 동시에 중요한 부분이므로 잘 기억해 두어야 합니다. 2021. 6. 7.