본문 바로가기

ML | DL | Big data/Data Engineering6

지식 베이스(Knowledge base)에 대해 알아보자 지식 그래프(Knowledge graph)보다 지식 베이스(Knowledge base)를 먼저 알아봤어야 순서상 맞았던 것 같다. 지식 베이스의 기본적인 정보에 대해 알아보자. 약어 * KB : Knowledge base Knowledge base란? 지식 베이스(Knowledge base)는 분석 시스템 중 하나이다. AI 에이전트가 사용될 분야와 관련된 지적 활동과 경험을 통해서 축적한 전문 지식 그리고 문제 해결에 필요한 사실과 규칙 등이 저장되어 있는 데이터 베이스이다. 초기에는 'Knowledge base'란 용어는 'database'라는 용어와 구별하기 위해서 만들어졌다. 1970년대에 사실상 모든 대형 관리 정보시스템은 데이터를 관계형 혹은 계층적 데이터베이스 시스템(RDMBS)에 저장했다... 2021. 10. 8.
지식 그래프(Knowledge Graph)가 무엇인지 알아보자 날리지 그래프 기반 무슨 프로젝트를 한단다(바쁜데 ㅜㅜ). 기술조사 좀 해오라니 밤새 조사해가야겠다. 관련 지식이 없어서 기본 우선 기본 정보부터 정리해보려 한다. * KG : Knowledge Graph * KB : Knowledge Base Knowledge Graph 지식 그래프(Knowlege Graph)는 개체, 사건 또는 개념과 같은 실체에 대한 상호 연결된 설명 모음을 뜻한다. 지식 그래프는 컨텍스트 내의 링킹 및 의미론적인 메타데이터를 저장하며, 이러한 방식으로 데이터 통합, 통일, 분석, 공유(integration, unification, analytics, sharing)를 위한 프레임 워크를 제공한다. 몇 년 전부터 빅 데이터에서 스마트 데이터로 단어의 유행이 옮겨 갔다. 전례 없는 .. 2021. 10. 7.
ETL, ELT의 4가지 주요 차이점 내가 생각하는 머신러닝, 데이터 엔지니어링/사이언스 분야에서의 가장 중요한 단계는 ETL이다. ETL은 정답이 없고 가장 많은 시간이 소요되기도 하고, 가장 많은 실수가 일어나기도 하며, 개발자의 통찰력에 따라 최종 결과물이 크게 좌우되기도 한다. 이렇게 중요한 ETL이 슬슬 ELT방식으로 변화하고 있다. 이번 글에서는 ETL과 ELT의 정의 및 주요 차이점과 방식의 변화가 생기는 이유 등을 정리해보고자 한다. * 이 글에서 설명되는 ETL와 ELT는 각각 ETL 프로세스, ELT 프로세스와 동일한 의미를 가진다. E, T, L 이란? ETL / ELT은 모두 다음 세 가지 단계를 포함한다. E/Extract(추출) : 원본 데이터베이스 또는 데이터 소스에서 데이터를 가져오는 것을 말한다. ETL을 사용.. 2021. 4. 26.
Apache Spark - Master, Slave 구성 별 메모리, 코어 수 설정하기 AWS EMR을 이용해 Apache Spark를 실행할 때 마스터와 슬레이브 수에 따라 적절한 메모리, 코어수를 구하는 Cheatsheet을 사용하고 있다.(무려 5년이나 된 자료이다.) 아직까지 이걸 사용하고 있는 이유는 더 좋은 계산식을 찾는 것도 힘들뿐더러 데이터 특성마다 적절한 메모리, 코어 분배수는 달라지기에 차라리 ETL을 진행하면서 Ganglia로 모니터링 후 조금씩 튜닝하는 게 시간적으로 효율이 더 좋다는 생각.(대충 귀찮다는 뜻) 사용법 1. 노드, 코어수, 메모리 등 자원 입력 1. 하단에 Clsuter Mode와 Client Mode 중 본인이 사용하는 모드를 클릭. 나는 클러스터 모드를 사용한다. 2. 좌측 초록색 셀에 슬레이브 노드수, 노드당 메모리, 노드당 코어수를 적는다 3. .. 2021. 3. 9.
AWS EMR에서 매번 같은 버전의 아나콘다 사용하기 AWS EMR을 통해 ETL을 매번 작업하다 보면 콘다 버전이 꼬이는 경우가 있는데 그럴 경우 아나콘다 설치 파일을 s3에 저장해놓고 EMR 실행 시 부트스트랩 코드를 통해 설치해주면 된다. 내가 주로 쓰는 부트스트랩 코드는 다음 두가지다. #!/bin/bash # echo "Updating Anaconda (findspark, boto3)..." >> ~/install.log; echo `date` >> ~/install.log #/mnt/anaconda/bin/conda install -c pyspark -y /mnt/anaconda/bin/conda install -c conda-forge findspark -y /mnt/anaconda/bin/conda install libgcc=5.2.0 -y .. 2021. 3. 9.
Apache Spark 3.0 변경점/변화 총 정리 Apache Spark 3.0에서 바뀐 기능 정리 기능, ANSI SQL Compliance, Store Assignment 정책, query semantics 업데이트 등 Apache Spark 3.0이 배포된지는 몇 달이 되었는데, 최근에 ETL 작업을 하지 않아서 따로 챙겨보진 못했다. 이번 업데이트에서는 Spark SQL에서 눈여겨 볼만한 기능들이 많이 추가된 것 같다. 특히 Spark SQL 개발자들에게 유용한 기능들이 많이 추가되었다. 사용할 일이 생겼으니, 주요한 변화를 정리를 해보자. ANSI SQL Compliant Feature 일부 예약된 키워드를 식별자로 사용할 수 없게 된다. select * from some_table create where create.some_column = .. 2020. 9. 10.