빅데이터 22

패키지 설치 시 코드 에러 문제

pip install -e '.[dev]' setup.py를 실행하면서 의존성 패키지를 설치하도록 명령하였다. 이 과정에서 코드 에러 메시지를 마주쳤다. UnicodeDecodeError: 'cp949' codec can't decode byte 0xf0 in position 19: illegal multibyte sequence 이 문제의 원인은 아래의 코드에서 file.read_text에 인코딩이 명시되지 않아서 발생한 문제였다. encoding='utf-8'을 명시해주니 문제가 해결되었다. # Settings FILE = Path(__file__).resolve() ROOT = FILE.parent # root directory README = (ROOT / "README.md").read_text..

빅데이터 2023.10.15

MapReduce와 쿼리튜닝

참조: programming hive, blog.naver.com/jevida, wikipedia.org 데이터 처리과정 map map: (key1, value1) -> (key2, value2) mapper가 데이터를 64mb 단위의 청크로 분할한 후 GFS(Google file system)에 적재 넥스알이 설치한 하둡환경에서 하이브를 가동하면 아래에 작업이 큐에서 넘어간 순간 맵이 생성될 수치와 프로그레시브 바가 나온다. 서버당 코어수를 모두 합친 만큼의 맵 생성이 가능하다고 한다. 이때 2개의 추가복제가 이루어진다. 클러스터링 셔플shuffle 각 데이터를 섞는다.그리고 각기 작업코어에게 전달 reduce reduce(key2, list(value2)) -> (key3, value3) 각기 데이터..

빅데이터 2023.09.27

pgRouting 함수

pgr_floydwarshall 모든 포인트를 지나가는 최소 거리 경로 계산 Floyd-Warshall 알고리즘 기준, 에지가 3500개를 넘지 않을때 사용 예) select * from pgr_floydwarshall( 'select id, source, target, cost from edge_table where id < 5' ); pgr_bdastar A* 알고리즘으로 최소경로 반환 예) select * from pgr_bdastar( 'select id, source, target, cost, reverse_cost, x1, y1, x2, y2 from edge_table', 2, 3 ); pgr_bddijkstra bidirectional Dijkstra 알고리즘으로 최소경로 반환 select..

빅데이터 2023.09.27

QGIS 수치표고모델

DXF, DEM DXF 국토정보플랫폼에서 다운 받을 수 있다. 수치지도. http://map.ngii.go.kr 수치지도란 위치정보와 공간정보를 디지털화하여 수치화한 전자지도이다. DEM: digital elevation model 디지털 고도 모델? 수치표고모델이라 부른다한다. 의역이란 이런 맛이구나. 각 셀값들이 표고에 대한 값을 지니고 있다. DXF로 DEM을 생성하는 과정 GRASS에서 래스터 모델 중에 idx를 선택한다. 추출할 레이어를 선택한다. 선택하지 않으면 처리시간이 오래걸린다. 유동인구 웬만한 시군구 단위 공간연산하면 한두시간씩 돌아가듯 처리시간이 오래걸린다. 리전의 범위도 선택해준다. 아래와 같은 등고선 지도가 표시된다. attribute에서는 표시가 되지 않으나 이 지도에는 z값(표..

빅데이터 2023.09.27

NIFI 설치 및 실행

실행 후의 화면은 위와 같다. https://nifi.apache.org/download.html Apache NiFi Downloads Releases 1.12.1 Released September 28, 2020 Sources: nifi-1.12.1-source-release.zip ( asc , sha256 , sha512 ) Binaries nifi-1.12.1-b... nifi.apache.org 위의 페이지에서 다운 받는다. 윈도우 버전을 받았다. nifi-1.9.2-bin.zip 이런 파일명이다. 실행하려면 java se 설치가 필요하다. java sdk가 필요하다고도 하는데 내가 뭐 개발을 하는 것도 아니니 그냥 java가면 보이는 처음 페이지에서 다운 받는다. 우찌우찌 실행이 된다. 실행..

빅데이터 2023.09.27

offline 서버에 Rstudio 설치를 위한 리눅스 구성

오프라인 서버에 Rstudio를 설치하는 과정에서 발생한 문제점 정리 온라인 서버에서 실행 sudo yum install yum-utils yum util 설치 sudo yum install -y epel-release sudo yum update -y 아래의 명령은 실제로는 적용이 안된다. sudo yum --downloadonly --downloaddir=폴더 패키지 #실행 안됨 종속성 다운로드를 가능하게 하기 위한 설정 sudo yum config-manager --set-enabled powertools 종속성 자동 설치 sudo yum install R -y #aws에서는 이 명령을 지원 종속성 다운로드 sudo yum install --downloadonly --downloaddir=down ..

빅데이터 2023.09.27

postgis의 geometry와 geography

geography는 곡면을 고려하여 연산, x/y 위경도를 가지고 거리를 계산할때 라디언값에 대해 arcsin, cos이 포함된 계산을 수행하고 지구 반지름에 곱해주는 것과 유사하다. 시간이 오래걸리고 부하가 높다. 연산의 결과물도 degree 값이다. geometry는 카테시안 평면에 투영한 상태에서 계산하기에 속도가 빠르나 장거리일 경우 정확도가 떨어진다. 각 관제구역에 대해서 선박들의 속도를 계산하고 관제구역 외곽에 대해서도 속도를 측정하기로 하였다. 외곽은 st_centroid('srid=4326;multipolygon(((126.123232 38.345434, 126.2233333....)))'::geometry) 형태로 중심점을 확인 후 경계선과의 st_maxdistance를 구하여 확인해보니..

빅데이터 2023.09.27