핵심내용 데이터베이스는 일종의 창고라고 볼 수 있다. 그리고, 이 창고에는 데이터들이 저장되어 있고 저장되어 있는 데이터들이 모여 데이터의 집합을 이룬다. 어떤 물품(데이터)를 저장할지에 따라 사용하는 창고(DB)의 종류가 달라지고 이는 관리자가 결정한다. 오늘은 이 창고들 중 관계형 데이터베이스와 NoSQL을 비교해보려 한다. 관계형 데이터베이스 데이터베이스계의 주류는 뭐니뭐니해도 관계형 데이터베이스이다. 위 통계를 살펴보면 가장 인기있는 데이터베이스 5개중 4개가 관계형 데이터베이스이다(Oracle, MySQL, SQL Server, PostgreSQL). 관계형 데이터베이스에서 "관계"란 동일한 속성을 가지고 있는 데이터들의 집합이라고 할 수 있다. 예를 들어, 아래 표를 살펴보자. 번호 이름 성별..
핵심내용 패킷과 라우터에 대해서 간단하게 정리해보려고 한다. 패킷 두개 이상의 연산 장비들이 연결된 것을 네트워크라고 한다. 그리고, 연결된 연산 장비들은 서로 데이터를 주고 받는데 이 때 이 데이터를 그냥 주고 받지 않고 패킷이라는 단위로 쪼개서 주고 받는다. 왜 쪼개서 받는가? 하나의 장비와 다른 장비가 정보를 주고 받는 대역을 도로에 비유해보자. 문제는 이 도로를 나만 사용하는 것이 아니라는 것이다. 나 말고, 다른 사람들도 사용한다. 그렇기 때문에 데이터를 패킷 단위로 쪼개어 주고 받는 것이다. 다시, 패킷은 네트워크 전송 시 기본이 되는 용량 단위로 컴퓨터는 네트워크 상에서 하나의 데이터를 여러 패킷으로 쪼개서 전송한다. 라우터(router) 그전에 routing이 무엇인지 알아야 한다. 컴퓨터..
핵심내용 도커 컨테이너를 정리하는 방법에 대해서 다루고자 한다. 일단 정지용 도커 컨테이너를 삭제하기 전에 우선, 도커를 먼저 정지해야 한다. 왜냐하면, stop후 삭제하는 과정을 통해 삭제하는데 필요한 충분한 시간을 벌 수 있기 때문이다. (다만, 정지를 하지 않고도 삭제를 강제할 수 있기는 하다.) 그래서, 컨테이너를 삭제하기 전에 도커를 먼저 정지해야 한다. 1. 하나의 컨테이너를 정지하는 경우 docker stop [OPTIONS] CONTAINER [CONTAINER...] 컨테이너 아이디나, 혹은 이름을 넣어준다. 2. 여러개의 컨테이너를 정지하는 경우 docker stop container1 container2 컨테이너 이름이나 아이디를 띄어쓰기로 입력해준다. 3. 특정 이미지와 연관된 모든..
커널(Kernel) 1. 견과류의 알맹이 2. 사상등의 핵심 __네이버 영어사전__ 맨 윗줄을 보면, system / networking / storage / memory / processing 등의 단어가 보인다. 즉, 커널은 운영체제에 항상 상주하며(=메모리) 모든 프로세스 관리(프로세스 자원 할당 및 제어 등)에 관여한다. 그래서, 알맹이라는 의미를 사용한게 아닐까? 어디의 핵심인가? 운영체제의 "핵심=알맹이"이다. 혹시, 게임을 하면서 / PPT를 만들면서 / 웹서핑을 하면서 게임에는 CPU자원 몇%를 할당하고 PPT는 몇%를 할당하고 이런 작업을 해본적이 있는가? 거의 없을 것이다. 왜냐하면, 우리에게는 OS(=운영체제)가 있기 때문이다. OS는 여러 프로그램들이 작동할 수 있도록 하드웨어의 자..
아주 감사하게도 데이터야놀자에서 발표를 하게 됐다. 오늘은 발표 준비 과정과 발표 소감 및 준비하면서 들었던 생각들에 대해 적어보려고 한다. 발표자료 및 코드 결과물 - 자세한 발표 내용은 아래 페이지를 참조해주세요! https://github.com/ddongmiin/chatbot-reviewrate-compare GitHub - ddongmiin/chatbot-reviewrate-compare: 네이버/카카오/구글 맛집 평점을 비교해주는 챗봇입니다. 네이버/카카오/구글 맛집 평점을 비교해주는 챗봇입니다. . Contribute to ddongmiin/chatbot-reviewrate-compare development by creating an account on GitHub. github.com 영..
자니? 아니 아직. 핵심 내용 인터넷 네트워크 통신 기법중 하나인 polling에 대해 간단히 정리하고자 한다. HTTP통신 방식 - polling에 대해 정리하기 전에 HTTP 통신 방식에 대한 약간의 이해가 필요하다. HTTP의 통신 방식은 "단방향"이다. 여기서 말하는 통신 방식이란 클라이언트와 서버가 정보를 주고 받는 방식을 뜻한다. - 즉, 단방향이라는 것은 = 클라이언트(요청) -> 서버(응답) 구조는 가능하나, 서버(요청) -> 클라이언트 (응답) 구조는 불가능하다는 의미이다. - 적절한 비유인지는 모르겠지만? HTTP통신은 우리가 자판기에서 물건을 사는 것과 유사하다고 볼 수 있다. - 클라이언트가 요청을 한다 = 자판기에 돈을 넣는다. = 연결되어 있음 -> 물건을 고른다 -> 서버가 응..
이제 글또 7기도 한번 남았습니다. 여러분들이 글또 시작했던 시기와 지금. 어떤 것이 변했나요? - 성윤님께서 공지전 운영진방에 올려주신 말씀을 보고 문득 생각에 잠겼다. 나한테는 어떤 변화가 있었을까. 일단 헤어스타일 을 바꿨다. 원래 적당히 길러서 가르고 다녔는데 짧게 올렸다. 빔프로젝터 를 샀다. 13만원 밖에 안하는 녀석이 이런 화질을 보여준다. 관심있으신 분들은 프로젝터매니아 PJM300 검색 ㄱㄱ #돈은없고 #빔은쏘고싶다면 #PJM300 높이가 걱정된다고? 그렇다면 아래와 같이 파이썬과 SQL그리고 통계책을 깔아주면 된다. 운전 을 시작했다. 아주 가끔, 렌트해서 여기 저기 돌아다니는 중. 제주도의 평대해변. 다양한 색깔의 바다를 볼 수 있는곳. 지금부터는 살짝 진지한 얘기를 하려고 한다. 데..
핵심내용 pyspark의 데이터프레임과 pandas 데이터프레임의 type hint를 비교해봅니다. type hint 비교 아래와 같이 라이브러리를 생성해줍니다. from pyspark.sql import * from pyspark.sql.types import * from pyspark.sql.functions import * import pandas as pd 그리고, pandas의 DataFrame과 pyspark의 DataFrame의 type을 비교해봅시다. print(type(spark.sql("select 1"))) print(type(pd.DataFrame([]))) 시작은 다르지만, 끝은 모두 DataFrame으로 동일합니다. 여기서 주목할점은 다음과 같은 라이브러리 임포트 형식인데요. f..
핵심내용 1.Pandas에서 데이터프레임을 이미지로 저장하는 방법에 대해서 정리해봅니다. 2.한글과 관련된 이슈를 해결해봅니다. 3.약간의 pandas style을 붙여봅니다. 1~3의 과정을 통해 위와 같은 이미지를 telegram 챗봇으로 보내봅시다. (데이터야놀자 발표를 준비 하는 중에 관련된 내용을 글로 정리하였습니다.) 1.Pandas 데이터프레임을 PNG로 저장하는 방법들 Pandas에서 데이터프레임을 PNG로 저장하는 방법에는 크게 3가지가 있다. (적어도 지금까지 내가 알아본 바로는) 1-1. dataframe-image라이브러리 이용하기 https://pypi.org/project/dataframe-image/ dataframe-image Embed pandas DataFrames as ..
핵심내용 1. 구글 맵 API의 사용 정책에 대해서 먼저 알아봅니다. 2. API Key 발급 방법에 대해서 알아봅니다. 3. 파이썬에서 google map api를 이용해 간단히 평점과 리뷰를 출력해봅시다. 1. 사용 정책 사용 정책에서 가장 중요한 것은 머니머니해도 머니 공짜인지 유무가 가장 궁금할 것이다. 결론부터 얘기하자면, "일정 조건에 한해서만 공짜이다." 그렇다면, 그 일정 조건이란 무엇일까? 매월 200$에 한해서는 요금을 부과하지 않는다고 한다. 이를 요청량으로 환산하면 28500개의 맵 로드이다. https://mapsplatform.google.com/pricing/#pricing-grid Platform Pricing & API Costs - Google Maps Platform L..