전체 글 251

SQL 도구 들의 관계 및 차이

PostgreSQL 오픈소스 RBD(Relational Database) 다양한 플랫폼 지원, GUI 인스톨러가 제공 특유의 확장 기능으로 편리하게 사용할 수 있음 Apache Hive HDFS라 불리는 분산 파일 시스템 위의 데이터를 SQL스러운 인터페이스로 간단하게 처리해주는 시스템 Hive는 Hadoop 생태계의 일부분으로 SQL스러운 쿼리 언어로 작성한 쿼리를 MapReduce 잡으로 변환해서 간단하게 병렬 분산 처리 파일 기반의 시스템(특정 레코드 하나 변경하거나 제거 X, 쿼리 실행 시 파일 전체를 조작) 동적으로 데이터를 정의 풍부한 UDF(User-Defined Function)을 활용해서 어려운 문자열 처리가 가능 Amazon Redshift AWS에서 제공하는 분산 병렬 RDB Hive..

빅데이터 시대에 요구되는 분석력?

언어 소개 분산 처리 담당 미들웨어 : Apache Hadoop 클라우드 서비스 : Amazon Redshift, Google Bigquery 미들웨어 부속 도구 : Hadoop - Hue, Amazon Redshift - Aginity 분석 담당자의 과제 스스로 지표 결정해야 함 SQL을 배우지 않은 상태에서는 무엇을 집계하는 지 자체를 생각할 수 없음 데이터 추출 시 SQL 사용해야 함 SQL 사용시 겪는 시행착오에 시간이 더 오래 걸려서 리포트 품질을 담보할 수 없게 됨 => Tableau, Kibana, Power BI 등 시각화 도구가 잘 되어있어서, SQL을 잘 못 써도되더라도 시각화하는데 문제는 없다. 하지만? SQL에 서툰 마케팅 담당자를 고려해서 BI 도구를 도입하더라도 문제 발생 복잡한..

(데이터분석을 위한 SQL 레시피) 실무 위주의 PostgreSQL 공부

이번방학 때에는 sql지식을 oracle, mysql 뿐만 아니라 다른 sql언어도 배우고싶다는 생각이 들어 어떤 언어를 할까 찾던 와중 PostgreSQL이 현업에서도 많이 쓰이고 확장성이 높아서 해당 언어를 공부하게되었다. 해당 책은 현업에서 쓰이는 실무 위주의 내용이 담겨져 있고 책을 통해 배운 쿼리나 예제문들을 통해 도메인에 대한 지식 및 sql 실력을 한층 더 성장할 수 있는 발판이 되었으면 한다.

벅스 차트 크롤링 및 워드클라우드, 감성 분류, 장르 분류

프로젝트를 수행하게 된 계기 : 2023년 6월 22일 제가 좋아하는 이세계아이돌의 새로운 노래 Lockdown이 나왔다 해서 스트리밍을 돌리던 와중 멜론 차트와 벅스 차트를 보던 도중 순위가 점점 올라가는 것을 보았습니다. 그걸 보면서 마침 방학인데 시간도 어느정도 있어서 프로젝트를 하나를 진행하면 좋다고 생각했습니다. 제가 자신있는 분야와 학교에서도 여러번 실행해보았던 워드클라우드, 감성, 장르 분류를 진행하게 되었습니다. 진행상황: colab 환경에서 진행하였습니다. 우선 워드클라우드를 만들기 위한 패키지들을 모두 설치 해줍니다. !pip install requests !pip install BeautifulSoup4 우선 벅스 Top 100차트의 가사 기준으로 워드 클라우드를 만들었습니다. 차트의..

프로젝트 2023.06.26

Power BI에서 행정동 코드 shape Map 만들기

1. 먼저 행정도 맵 벡터화를 하기 위해 QGIS라는 프로그램이 필요하다. 최신 버전인 3.30.3을 다운받으면 된다. QGIS라는 프로그램은 자유 오픈 소스 지리정보 시스템으로 그래픽 지도를 구성하고 공간 정보를 분석 및 편집할 수 있도록 해놓은 프로그램이다. 링크 : https://qgis.org/ko/site/ QGIS 프로젝트에 오신 것을 환영합니다! 여러분의 GIS 작업에 QGIS를 사용해 보세요. qgis.org 2. shape Map을 만들기 위해서는 topojson 파일이 필요하다. topojson파일을 얻기 위해서는 geojson 포맷의 파일을 이용하여 topojson파일을 생성하는 법이 있다. 대한민국 행정구역 공간정보 파일이 필요하다 원하는 행정구역을 추출한다(Ex. 서울특별시, 부산..

Move(만보기앱)에 대한 데이터 셋 만들기 및 가공

캡스톤 디자인으로 진행한 Move(만보기앱) 프로젝트를 진행하는 중이다(현재도 진행중) 팀원은 총 3명 나(팀장), 팀원 2명이고 프론트엔드 담당 2명(나, 팀원 1), 백엔드 담당 1명(팀원 2)으로 구성되어 있다. 프로젝트 배경 개인의 건강을 증진시키기 위한 걷기운동의 필요성 랭킹 시스템을 통한 경쟁을 유도해 걷기운동에 대한 동기부여 프로젝트 개발 내용 GPS 연동으로 개인의 속도, 심박수 측정 랭킹 시스템 및 게임의 레벨제도 도입(경험치를 쌓아 레벨업) 지역별, 팀별 대회를 개최해 대결 개인의 평균속도 및 총 걸음걸이를 통해 기록 메뉴에서 확인 활용방안 및 기대효과 현대인의 건강부족 문제에 도움을 줄 수 있다. 기록되는 데이터를 공공데이터로 활용할 수 있다. 자기계발을 통해 성취감을 얻을 수 있다...

프로젝트 2023.06.07

하둡(Hadoop) - Apache Kafka

Apache Kafka의 등장 배경 💡 정의 Apache Kafka는 고성능 데이터 파이프 라인, 스트리밍 분석, 데이터 통합 및 미션 크리티컬 애플리케이션을 위해 수천 개의 회사에서 사용하는 오픈 소스 분산 이벤트 스트리밍 플랫폼이다.. 아파치 카프카는 링크드인에서 발생하는 이슈를 해결하고자 개발된 기술이다. 링크드인에서 사용하던 기존 아키텍쳐에서는 데이터 처리의 복잡도가 증가했고, 데이터 파이프라인의 관리가 어려웠다는 문제점이 있었다 시간이 갈수록 애플리케이션 개수가 늘어나고 데이터 전송 파이프라인이 늘어나기 시작하면서 아키텍처가 점차 복잡해졌다. 카프카는 이 문제점들을 해결하고 기업의 대용량 데이터를 수집하고 사용자들이 이를 실시간 스트림을 할 수 있게 해줬다. LinkedIn의 사례(Before ..

하둡(Hadoop) - 주키퍼(Zookeeper)

주키퍼(Zookeeper) 주키퍼는 부분실패를 안전하게 처리하는 분산 애플리케이션 개발을 용이하게 한다 분산 시스템에 필요한 노드간 정보 공유, 노드 상태 체크, 노드간 공유데이터에 대한 배타적 접근 (Lock, 락) 처리 등을 위한 분산 코디네이션 서비스 시스템이다 분산 시스템의 중요한 상태정보, 설정 정보, 메타 데이터 등을 관리하므로 장애로 인한 문제 발생이 일어나지 않도록 해야한다 =>고가용성 보장 다수 노드로 ZooKeeper Ensemble 구성 리더와 추종자 역할을 수행하는 노드들의 집합 모든 노드는 동일한 데이터를 가진다 읽기 : 어떤 노드에서 읽어도 동일한 데이터를 읽는다 쓰기 : 어떤 노드가 데이터를 업데이트 하면 리더에 전송하고 이를 추종자노드들에 브로드캐스팅을 한다 주키퍼 그룹 멤버..

하둡(Hadoop) - HBase - 2

HBase HMaster Region Server는 각 테이블의 데이터를 관리한다. HMaster 전체 클러스터를 관리하고 Region Server를 조정한다. Region Server 조정이란 로드 밸런싱을 위해서 Region을 재할당하거나 복구하는 일을 수행한다. 클러스터에 있는 모든 Region Server들을 주키퍼를 사용해 모니터링한다. 로드 밸런싱 : 서버가 처리해야 할 업무 혹은 요청(Load)을 여러 대의 서버로 나누어(Balancing) 처리하는 것을 의미한다. 너무 많은 로드 밸런싱도 문제가 발생할 수 있다(불균형의 문제 초래) 주키퍼를 이용해 클러스터 서버 상태를 관리하고 서비스들이 살아 있는지 사용 가능한지 모니터링 하고 실패 할 시 알림이 간다 클러스터간의 정보공유를 위한 저장소역..

하둡(Hadoop) - NoSQL Database, HBase - 1

NOSQL 💡 정의 "Not only SQL"로, SQL만을 사용하지 않는 데이터베이스 관리 시스템(DBMS)을 지칭하는 단어 (비관계형 데이터베이스) 기존의 관계형 DBMS의 ACID(Atomic, Consistency, Integrity, Duarabity) 특성을 제공하지 않지만 뛰어난 확장성, 성능 등의 특성을 보유한 비관계형, 분산 데이터 베이스들을 NoSQL로 표현한다 2000년대 후반 부터 SNS 등의 비정형 데이터를 처리하는 용도로 크게 성장중이다, 초고용량 데이터 처리 등 성능에 특화된 비관계형 데이터 저장소에 비정형 데이터를 저장하기 위한 분산 저장 시스템이다. 응용분야로는 소셜미디어, 웹 링크, 유저 프로필, 마케팅, 트위터, 이메일, 지도에도 사용된다. 종류 Redis, Cassan..