IT 17

ES analyzer 설치하기 (nori webinar) (1/3)

https://info.elastic.co/2018-09-19-Nori-Text-Analyzer-Webinar.html [1/3] arirang_analyzer, openkoreantext-analyzer, seunjeon_analyzer, nori_analyzer 설치 elasticsearch 6.4.0 환경에서 진행 (nori는 elasticsearch 6.4.0 이상 버전에서만 설치 가능) [설치순서] 1. elasticsearch / logstash / kibana / filebeat 설치 2. elasticsearch plugin을 설치 할 수 있는 file 만들기 3. analyzer에 따라 위에서 만든 file을 이용해서 plugin을 설치하거나 다운로드 4. 원본 text를 담고 있는 or..

IT/Elasticsearch 2018.10.25

ES에서 mapping types가 없어지는 이유

https://www.elastic.co/guide/en/elasticsearch/reference/master/removal-of-types.html#removal-of-types [ES에서 mapping types가 없어지는 이유?] elasticsearch 초기 버전에서는 "index"는 SQL에서의 "database"와 "type"은 "table"과 유사하다고 설명하였다. 하지만 이는 좋지 못한 비유였고 오해를 일으켰다. SQL DB 내 tables은 서로 독립적인데 반해, 한 table 내에 존재하는 column은 심지어 같은 column명을 가졌다고 하더라도 다른 table과는 전혀 무관했다. 하지만 mapping type 내에 존재하는 fields는 그러한 성격을 가지고 있지 않다. ES i..

IT/Elasticsearch 2018.10.23

리눅스에 프로그램 설치하기

[리눅스에 native 설치하는 3가지 방법] 1) source -> building -> make 2) package t 3) 압축파일 이용 (그외 별도의 가상환경을 생성하는 docker를 이용하는 방법도 있다.) [package 설치] package 설치 툴을 이용해서 설치하는 방법으로 root에 설치되서 users에게 상속된다. ubuntu 는 주로 apt-get이 쓰이고 cent os, redhat 에는 yum이 쓰임. e.g.) sudo yum install programme [압축파일] account 별로 app folder 설치하여 app 정리 (/home/user_name/app) 홈페이지에서 tar.gz / zip 확장자 등으로 끝나는 압축파일을 다운로드 받고, app 폴더 내에서 풀어준..

IT/linux 2018.10.16

Gunicorn X Supervisor

[COMMON] Gunicorn : deamon Supervisor : super-deamon (daemon을 관장하는 daemon) -> Gunicorn으로 process를 daemon 형태로 띄우고 Supervisor로 daemon들을 관리 [GUNICORN] gunicorn을 실행시킬 start.sh를 생성 # start.sh exec usr/bin/gunicorn -w 2 --bind 10.52.111.170:8870 server:app -w : worker의 수 (thread) 설정 (flask 기준으로 이 명령어를 위해선 app run 할 때 thread=True해야함) --bind : 실행시킬 host:port를 입력 :app 어느 file을 app으로 쓸것인가? (if server.py -..

IT/linux 2018.10.15

python encoding

[python encoding] https://wikidocs.net/15133 인코딩(encoding) : 문자셋의 규칙대로 바이트를 만드는 방법 .py 내 default encoding 명시 : # -*- coding: utf-8 -*- (파이썬에서 사용되는 문자열은 모두 유니코드 문자열) >>> b = a.encode('utf-8') >>> b b'Life is too short' >>> type(b) 디코딩 (decoding) >>> a = '한글' >>> b = a.encode('euc-kr') >>> b.decode('euc-kr') '한글' [ Encoding with File I/O] 1) 입력으로 받은 바이트 문자열을 가능한한 가장 빨리 유니코드 문자열로 디코딩 할 것. 2) 변환된 유니..

IT/Python 2018.10.15

chmod /chown

[chmod] chmod : file에 접근할 권한을 설정해주는 명령어 chmod abc file_name -> a: 개인 / b: 그룹 / c: 기타 a,b,c는 10진수로 0부터 7까지 나타낼 수 있는데 2진수로 나타내면 000 ~ 111과 같다. 각각의 자리수는 Read/Write/Excute에 대한 권한이다. 7 = 1/1/1 -> read o / write o / excute o 4 = 1/0/0 -> read o / write x / excute x 0 = 0/0/0 -> read x / write x / excute x 700 = 개인 : read o / write o / excute o , 그룹 : read x / write x / excute cx , 기타 : read x / write ..

IT/linux 2018.10.15

Daemon vs. Crontab

[Daemon] 대부분의 programme은 console을 닫거나 ctrl+c 누르면 꺼진다. 하지만 계속 실행되길 원하는 경우, background에서 process로 실행되는 것이 필요하다. 그래서 필요한 것이 daemon인데, daemon을 하나의 프로그램이나 명령의 형태로 이해 하는 것이 아니라 "programme in service" 자체로 이해하는 것이 맞음 즉, background에서 실행시키기 위해 daemon과 같은 명령어를 이용하는 것이 아니라, daemon의 형태로 만드는 것이 필요 [Crontab] 주기적으로 어떤 programme을 실행시킨다고 했을때, scheduler가 필요하고, linux 상에서 이와 같은 scheduler 역할을 하는것이 crontab이다. crontab과..

IT/linux 2018.10.15