본문 바로가기

분류 전체보기545

[책정리] 빅데이터를 지탱하는 기술 1-2. 빅데이터시대 데이터분석기반 6월 선정도서 - 빅데이터를 지탱하는 기술 선정계기 - 데이터가 쌓이고 흐르는 전체적인 구조를 깊이 있게 이해할 수 있고, 미래의 데이터엔지니어로써 해야하는 업무들의 전반적인 흐름을 파악할 수 있을 것 같아 선정(기대가 된다) 목차 챕터1. 빅데이터의 기초지식 1-1. 빅데이터의 정착 1-2. 빅데이터시대의 데이터분석기반 1-3.스크립트 언어에 의한 특별분석과 데이터프레임 1-4. BI도구와 모니터링 빅데이터의 기술 빅데이터의 기술이란 분산시스템을 활용하면서 데이터를 순차적으로 가공해나가는 일련의 구조 빅데이터기술이 기존의 데이터웨어하우스와 다른점은 다수의 분산 시스템을 조합하여 확장성이 뛰어난 데이터 처리구조를 만든다는 점. 데이터파이프라인 차례대로 전달해나가는 데이터로 구성된 시스템 어디에서 데이터를.. 2021. 6. 16.
[책정리] 빅데이터를 지탱하는 기술 1-1. 빅데이터의 기초지식(역사) 챕터1. 빅데이터의 기초지식 1-1. 빅데이터의 정착 1-2. 빅데이터시대의 데이터분석기반 1-3.스크립트 언어에 의한 특별분석과 데이터프레임 1-4. BI도구와 모니터링 1장에서는 빅데이터 기술이 태어난 역사적 배경부터 시작해서 기본적인 용어를 정리하는 부분. 빅데이터와 대비해 이전부터 존재하던 스몰데이터 기술에 대한 설명. 파이썬 스크립트에 의한 데이터처리와 디스커버리를 통한 개념 이해 부분. 빅데이터의 역사 '빅데이터'를 접하게 된 것은 2011년 후반에서 2012년에 걸쳐 데이터처리에 분산시스템을 도입하기 시작했을 무렵. 그전에도 데이터 처리는 이뤄졌지만, 빅데이터라고 불리며 데이터를 비즈니스에 활용하자는 움직임 활발해짐. 하지만 여전히 빅데이터기술을 안심하고 사용할 수 있다고 말하긴 어려운 상황.. 2021. 6. 16.
[책정리] 빅데이터를 지탱하는 기술 목차 이번달 목표..기술 책 마스터하기 앞으로 남은 이주동안 다 읽어볼 수 있겠지..? 데이터엔지니어가 되기 위하여..!! 목차 챕터1. 빅데이터의 기초지식 1-1. 빅데이터의 정착 1-2. 빅데이터시대의 데이터분석기반 1-3.스크립트 언어에 의한 특별분석과 데이터프레임 1-4. BI도구와 모니터링 챕터2. 빅데이터의 탐색 2-1. 크로스집게계의 기본 2-2. 열지향 스토리지에 의한 고속화 2-3. 애드혹 분석과 시각화 도구(주피터/Redash/Superset/Kibana) 2-4. 데이터마트의 기본구조 챕터3. 빅데이터의 분산처리 3-1. 대규모 분산처리의 프레임워크 3-2. 쿼리엔진 3-3. 데이터마트의 구축 챕터4. 빅데이터의 축적 4-1. 벌크형과 스트리밍형 데이터의 수집 4-2. 메세지 배송의 트레이.. 2021. 6. 16.
[DynamoDB] DynamoDB란? 파티션키와 정렬키 DynamoDB란? 완전관리형 NoSQL기반 데이터베이스 서비스. Key-Value형태를 제공하며 스키마가 따로 정해져 있지 않음. 장점 JSON형태로 데이터를 저장하고, 수평확장(Scale-out)이 쉽고 유연하다. 질의 속도가 빨라 대량의 비정형 데이터처리에 용이 이 밖에도 완전관리형 데이터베이스 시스템으로 스토리지가 꽉차면 알아서 늘어난다거나, 일정기간마다 백업을 한다거나, 트래픽이 급증하면 성능을 조절하는 등 개발자는 데이터 조작 및 스키마 정의에만 신경쓰면 된다. 단점 조인이 불가능하므로 연산이 다양하지 못하다 2020.01.19 - 정형데이터 vs 비정형데이터 (RDBMS VS NOSQL) DynamoDB 구성 테이블 : 데이터레코드의 집합. 데이터를 테이블에 저장. 항목(Item) :테이블에.. 2021. 6. 15.
[백준][python]1436.영화감독 숌 -완전탐색(브루트포스) 아래의 문제는 '백준'의 알고리즘 문제 내용이며 코드는 직접 푼 내용입니다. 1436.영화감독 숌 문제 및 입출력 입출력예시 나의시도 아ㅜ문제를 완전잘못이해했다. 어쩐지 너무 문제가 어이없다고 생각했다. 나는 그냥 1666,2666..5666,6666,76666이렇게 생각한것이다. 근데 포인트는 1666,2666..5666,6660,6661,6662...이렇게 가야했따...!!! 그래서 이렇게 완전 틀렸다.. 절대잘못된코드..이게아닌데.. 더보기 n=int(input()) six="666" for i in range(1,n+1): if i==n: print(str(i)+six) 풀이과정 완전탐색, 그냥 1부터 쭉 무식하게 일일이 하나하나 맞는지 비교해보는 것이다. 그래서 num을 하나씩 더해가면서, wh.. 2021. 6. 10.
[알고리즘] 브루트포스(brute force) 브루트포스(brute force) 무식하게 푸는 방법. 완전탐색으로도 불리기도 하는데 문제를 해결하기 위해 가능한 모든 경우의 수를 계산해서 문제를 해결하는 방법이다. 모두 탐색해서 결과를 찾기 떄문에 100% 정답을 찾는다. 다만 모두 탐색해서 시간이 오래걸린다. 자료구조에 따라 2종류로 나뉜다 선형구조일 경우 순차탐색 비선형구조일경우 BFS,DFS 일단 선형구조일때를 먼저 살펴보자. 주어진 문제를 '선형구조'로 구조화한다 구조화된 문제로 해를 구성할때까지 '순차탐색'한다. 탐색한 해를 주어진 문제의 출력형식에 맞게 정리한다. 언제사용하나? 데이터의 범위가 크지 않을경우 권장한다. 데이터의 범위가 크면 모든 경우의 수를 탐색하는데 시간이 오래걸리기 떄문이다. 사실 내가 코드를 짜는 대부분의 경우가 브루.. 2021. 6. 10.
[AWS] 람다에서 Python 패키지 사용하기 | Layer(계층)란? 맨날 하는데 맨날 까먹고 찾아보길래 직접 정리해보려고 한다. 람다에서 python을 실행하는데 이런 오류가 났다면? 패키지가 없는것이다! Unable to import module 'lambda_function': No module named 'requests' 그래서 패키지를 lambda에 넣어줘야하는데 이떄 layer를 추가해주면 된다. 즉, 람다에서 쓸 패키지들을 따로 모아 zip파일로 올리는 것이다. 아, 그리고 추가적으로 람다에선 레이어를 쓰는데 아래와 같은 제한사항이 있다. 무한정으로 라이브러리를 실을 수 있는 것은 아니고, 5개의 layers, 전체 layers 용량 250m 까지라는 제한이 존재 합니다. 그래서 프로젝트에서 python 이라는 폴더를 하나 생성하고, 그 안에 아래와 같은 명.. 2021. 6. 10.
[백준][python] 1157.단어공부 -문자열 아래의 문제는 '백준'의 알고리즘 문제 내용이며 코드는 직접 푼 내용입니다. 1157. 단어공부 문제 및 입출력 입출력예시 나의시도 dict를 가지고 이러쿵저러쿵 해보려고 했다. 그래서 {문자열 : 횟수}의 dict를 만들고 여기에서 조건에 맞게 하나하나씩 해결해갔지만 넘 노가다여서 시간초과. 결과 s=input() S=list(s.upper()) dict={} #dict {문자열 : 횟수} for str in S: dict[str]=S.count(str) #print(dict) #가장 큰 count값 가져오기 max=0 for key, value in dict.items(): if max=2: print('?') else: print(result) 풀이과정 is.upper() : 대소문자 상관없이 가장.. 2021. 6. 10.
음악추천챗봇4.1 RDS 데이터저장 및 lambda배포 후..뭔가 진행방식이 꼬인 기분이다.. 무튼 이전에 개발환경(나의 로컬환경)에서 spotify api 테스트해보았는데, 흠.. 이젠 이걸 aws의 lambda로 옮겨야한다. 아 이래서 CI/CD가 생긴건가 겁나 번거롭네... 우선 개발환경에서 다 테스트해보고, 나중에 람다로 넘길까한다. 그리고 동시에 spotify API로 얻는 결과들을 AWS 데이터베이스에 저장하려고 한다. 아 그리고 잊을뻔했는데 이번 프로젝트의 목표는 데이터파이프라인 구축이다. 그리고 스포티파이 API로 필요한 데이터들을 수집하고, MYSQL, DynamoDB, S3까지 다양한 데이터저장소를 사용해서 저장하고, 사용해보는 것이다. RDS(mysql)에 데이터저장 사실 RDS를 쓸지 말지 고민을 했다. 내가 알기론 dynamodb는 V.. 2021. 6. 8.
음악추천챗봇1. Serverless아키텍쳐 구성하기 이전에 왜 서버리스를 쓰는지 람다의 장단점까지 알아보았다. 이제 실제로 aws의 람다와 api gateway로 구성해보려고 한다. 목표는 사용자가 카카오톡 챗봇 메세지를 전달하면 api gateway의 endpoint URL로 보내고, 트리거가 동작해 람다가를 수행하는 것이다. 구성은 이런식이다. 그럼 AWS 서비스를 이용해서 구성해보자! - Lambda에서 lambda function 생성 나는 런타임으로 Python 3.8을 선택했따. - API Gateway에서 REST API 생성 API 생성 : API 유형은 REST API를 선택한다. 메소드생성 : 필요한 HTTP 메소드를 생성하고, 메소드를 통해 받은 request를 '람다'로 보내도록 설정한다. 일단 우리가 사용할 카카오 오픈빌더에서는 P.. 2021. 6. 7.