전체 글
-
[Apache NIFI]RouteOnAttribute Processor 알아보기데이터 엔지니어링/Nifi 2022. 4. 29. 23:32
안녕하세요 Processor중에 RouteOnAttribute를 알아보도록 하겠습니다. NIFI에 많은 Processor중에 RouteOnAttribute를 알아보는 이유는 RouteOnAttribute로 판단값에 따라 분류를 하기 때문입니다. 먼저 내용을 요약해 보면 아래와 같습니다. Route + On + Attribute = 노선 + 속성 Attribute는 nifi에서 쓰는 Key/Value를 나타내는 것 Route = 노선 → 분기를 나눠준다는 뜻(React router와 뜻 측면에서 똑같다고 보면됨 ) 즉, RouteOnAttribute란 속성값 조건을 넣을 수 있고, 그 조건에 맞는 분기를 다루게 해주는 Processor임 아래를 보면서 이해 하자. 정확히는 정규표현식이나 내장함수를 이용하여..
-
[Apache Nifi]FlowFile의 Attribute와 Content 알아보기데이터 엔지니어링/Nifi 2022. 4. 29. 22:56
NIFI 구성 요소은 FlowFile, Processor, Connection, Controller로 이루어 진다. 구성요소들을 다 알아야 하지만, 그중에 제일 중요한 FlowFile을 정확히 알아보면 좋을 것같아 포스팅하게 되었다. FlowFile이란? NiFi가 인식하는 데이터 단위이다. 프로세서들로 부터 오는 데이터 단위라고 봐도되고, 우리가 조작해야하는 데이터들 이라고 봐도 좋다. FlowFile의 구성요소는 Attribute와 Content가 있다. 이 부분을 정확히 알면 데이터를 잘 다룰 수 있다. FlowFile에서 중요한 요소인 Attribute와 Content를 정확히 알고 넘어가야한다. 구성요소 중에 Processor, Connector, FlowFile를 확인하며 작업을 하는데 이 부..
-
[Apache Nifi]DBConnector Controller 만들기(MySQL)데이터 엔지니어링/Nifi 2022. 4. 29. 22:30
목차 DBConnector란? JDBC설치하기 DBConnector Controller만들기 ExecuteSQLRecord 프로세서를 이용하여 데이터 추출해보기 1. DBConnector란? DB안에 데이터를 조작하기 위해서는 DB에 접근을 해야하는데, 접근을 하기 위해 저급언어를 사용해서 직접 접근하거나 매개체(JVM같은)를 활용하여 접근을 해야한다. 매개체를 사용하는 경우 DBConnector가 필요하다. Nifi는 apache재단 소속이기 때문에 java를 이용하고 있어 JVM Connector를 사용하기 위해서는 jdbc가 필요하다. JDBC는 각각의 DB제품회사 홈페이지에 제공하고 있으니, mssql은 microsoft mssql jdbc driver를 다운로드하고, mysql, oracle은 ..
-
[Apache NIFI Linux(ubuntu)]설치 방법데이터 엔지니어링/Nifi 2022. 4. 29. 21:41
NIFI 설치 방법 --apt-get update --설치되어 있는 패키지를 최신으로 업데이트하는 것이 --아닌 **설치가능한 리스트**를 업데이트하는 것 apt-get update --java 설치 apt install openjdk-9-jre-headless --nifi 1.15버전 설치 wget https://archive.apache.org/dist/nifi/1.15.3/nifi-1.15.3-bin.tar.gz --압축해제 tar -xvf nifi-1.15.3-bin.tar.gz --압축 해제 한 곳으로 이동 cd nifi-1.15.3 --속성값 설정 https를 해당 ip로 설정하면 외부에서 접속 가능 vi conf/nifi.properties --nifi web server 시작 bin/nif..
-
[Docker] DockerFile 작성법CI-CD/Docker 2022. 4. 24. 19:38
DockerFile에 대해 깊게 이해하고 싶으면 아래의 링크를 타고 가자 Dockerfile reference docs.docker.com Dockerfile이란? Docker Image를 만드는 스크립트이다. 미리 짜여져 있는 Image를 사용하는 것이 아니라 Custom하여 Image를 만드는 것이라고 보면 된다. 레이어 시스템 도커파일을 만들 때 레이어 시스템이라는 시스템을 사용하는데 아래 작성한 내용을 명령어 당 한줄 씩 한 레이어라고 칭한다. 맨처음 이미지 빌드하는 경우 모든 레이어가 다 호출 되지만, 그 다음 부터는 변경된 것만 파악하여 빌드를 하게 되는데 이때 cache 메모리를 많이 잡아 먹게 된다. 이때 속도 개선을 하기 위해서는 변경되는 레이어를 아래에 두어야 한다. 변경된 것을 파악한..
-
[Docker] Docker Flow 이해하기CI-CD/Docker 2022. 4. 24. 16:59
Docker에서는 Container단위로 가상화를 app을 실행하게 되는데 Container의 구성요소를 잘 알아야 한다. Container관련 내용은 이 영상을 보면 바로 이해 가능 하다 Container 3대 구성요소 Container Image Docker File Container는 하나 이상의 image로 구성되어 있다. Image는 Docker Hun에서 가져와 사용도 가능하고, Docker File로 Custom하여 생성, 관리, 사용이 가능하다 Container는 독립적인 공간으로 구성되기 때문에 local에서 Container로 접근이 가능하지만, Container끼리는 접근이 불가능하다. Docker Flow Local 에서 작업 하여 Image생성 해당 Image Docker Hub에..
-
[Android Kotlin] Permission에 대해서 정리해보기Framework/Android 2022. 4. 17. 22:39
Android Permission이란? 안드로이드 마시멜로(Android API23) 이후에 출시된 안드로이드는 스마트폰 보안 정책을 강화하기 위해 핸드폰안에 권한을 설정하여 설정된 권한을 부여한 것만 가져다 사용할 수 있도록 변경 되었다. Android Permission 워크 플로우 워크 플로우란? 개발자에게UI/UX및 Permission관련 로직을 제공해주기 위해 설계된 플로우이다. 위에 내용을 해석해 보면 아래와 같이 표현 할 수 있다. 이것을 바탕으로 시나리오를 작성해보자. 1 - Manifest에 필요한 Permission 내용 선언 2~3 - 필요한 Permission에 맞게 앱 디자인 설계(Permission허락 관련) 4 - Permission이미 허락 되었는지 아닌지 확인 5~6 아니라..