[Elasticsearch] 2.4.x to 5.2.x 으로의 elasticsearch.yml

Elastic/Elasticsearch 2017.02.21 13:23

2.x 에서 사용하던 설정을 그대로 5.x 로 올려서 실행을 시키면 몇 가지 볼 수 있는 에러들이 있습니다.

뭐 이런건 breaking changes 를 참고하거나 소스코드를 보면 금방 해결이 되긴 합니다.

그냥 복습하는 차원에서 기록해 봅니다.


[참고문서]

https://www.elastic.co/guide/en/elasticsearch/reference/5.2/breaking-changes-5.2.html

https://www.elastic.co/guide/en/elasticsearch/reference/5.2/breaking-changes-5.1.html

https://www.elastic.co/guide/en/elasticsearch/reference/5.2/breaking-changes-5.0.html



[발생 에러들]

unknown setting [es.default.path.conf] please check that any required plugins are installed, or check the breaking changes documentation for removed settings


node settings must not contain any index level settings


unknown setting [action.disable_shutdown] please check that any required plugins are installed, or check the breaking changes documentation for removed settings


unknown setting [discovery.zen.ping.multicast.enabled] please check that any required plugins are installed, or check the breaking changes documentation for removed settings


unknown setting [resource.reload.interval] did you mean any of [resource.reload.interval.low, resource.reload.interval.high, resource.reload.interval.medium, resource.reload.enabled]?


unknown setting [script.indexed] did you mean any of [script.inline, script.ingest]?


node validation exception

bootstrap checks failed

memory locking requested for elasticsearch process but memory is not locked

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]


- es.default.path.conf 는 path.conf  로 변경 되었습니다. (-D 가 -E 로 변경 되었구요.)

- index level 설정이 있다면 제거 하시면 됩니다.

- action.disable_shutdown 은 없어 진 것으로 보입니다. (미쳐 확인 하지는 못했구요. 문서를 보면 _shutdown 이 없어 진것으로 미루어 봤을때...)

- multicast 설정도 제거 하시면 됩니다.

- resource 설정은 이름과 방법이 바뀌었으니 삭제 하시거나 변경해 주면 됩니다.

- script.indexed 설정도 제거 하시면 됩니다. (아마도 stored 로 바뀐것 같습니다.)

- bootstrap 설정은 root 권한을 주시거나 limits.conf 인가에서 수정을 해주셔야 할 것 같구요.

- vm.max_map_count 설정은 문서에 잘 나와 있습니다. ($ sudo sysctl -w vm.max_map_count=262144)


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 : Comment 0

[Elasticsearch] elasticsearch-analysis-arirang-5.2.1

Elastic/Elasticsearch 2017.02.21 12:41

elasticsearch-analysis-arirang-5.2.1 공유 합니다.


Lucene 6.4.1

Elasticsearch 5.2.1 

기준 입니다.


elasticsearch-analysis-arirang-5.2.1.zip


설치 방법)

$ bin/elasticsearch-plugin install --verbose file:///services/apps/elasticsearch-analysis-arirang-5.2.1.zip


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 : Comment 0

[OCR] 이미지에서 텍스트 추출 하기

ITWeb/개발일반 2017.02.14 11:22

OCR(Optical Character Recognition) 이라고 해서 이미지 같은 것에서 문자를 인식해서 추출하는 기술 입니다.

제가 하는 업무에 필요해서 "Hello World" 수준의 방법을 기술해 보려 합니다.

왜냐하면 나중에 또 잊어버릴수 있으니까요 ^^;


제가 사용한 내용은 아래와 같습니다.


[참고문서]

http://tess4j.sourceforge.net/

https://github.com/tesseract-ocr/tesseract/wiki


tess4j 는 tesseract-ocr 을 java 모듈에서 사용할 수 있도록 제공해주는 라이브러리 입니다.


우선 가볍게 mac 에서 맛보기를 해보시면 좋습니다.


[Mac OSX 설치 및 CLI 테스트]

$ brew install tesseract


설치 된 경로는 아래와 같습니다.

/usr/local/Cellar/tesseract/3.04.01_2


경로를 알아야 하는 이유는 나중에 traineddata 파일을 올려 두어야 하기 때문에 알아 두시면 좋습니다.

한글 테스트를 위해서는 아래 링크에서 data file 을 다운로드 받으시고 tessdata 로 올려 두시면 됩니다.


[Data Files]

https://github.com/tesseract-ocr/tesseract/wiki/Data-Files


Usage:

  tesseract --help | --help-psm | --version

  tesseract --list-langs [--tessdata-dir PATH]

  tesseract --print-parameters [options...] [configfile...]

  tesseract imagename|stdin outputbase|stdout [options...] [configfile...]


$ tesseract eurotext.png translate -l eng

eurotext.png


The (quick) [brown] {fox} jumps!

Over the $43,456.78 <lazy> #90 dog

& duck/goose, as 12.5% of E-mail

from aspammer@website.com is spam.

Der ,,schnelle” braune Fuchs springt

fiber den faulen Hund. Le renard brun

«rapide» saute par-dessus le chien

paresseux. La volpe marrone rapida

salta sopra i] cane pigro. El zorro

marrén répido salta sobre el perro

perezoso. A raposa marrom répida

salta sobre 0 C50 preguieoso.

translate.txt

 

위 명령어로 돌려 보시면 이렇게 추출이 됩니다.


추가로 ubuntu 에 설치 하는 것도 살펴 보도록 하겠습니다.

저는 아래 문서 보고 설치를 했습니다.


[설치 문서 on ubuntu]

https://github.com/tesseract-ocr/tesseract/wiki/Compiling


설치 시 주의 점은 leptonica 설치를 하셔야 한다는 것입니다.

문서에 "You also need to install Leptonica." 이렇게 있는데도 불구하고 제가 문서를 제대로 안읽고 진행하다 삽질을 ㅡ.ㅡ;


실행 명령어를 그대로 옮겨 놓도록 하겠습니다.


$ sudo apt-get install autoconf automake libtool

$ sudo apt-get install autoconf-archive

$ sudo apt-get install pkg-config

$ sudo apt-get install libpng12-dev

$ sudo apt-get install libjpeg8-dev

$ sudo apt-get install libtiff5-dev

$ sudo apt-get install zlib1g-dev

$ sudo apt-get install libicu-dev

$ sudo apt-get install libpango1.0-dev

$ sudo apt-get install libcairo2-dev


# leptonica 를 다운로드 받으시고 압축을 풉니다.


[설치 문서]

http://tpgit.github.io/UnOfficialLeptDocs/leptonica/README.html#building-on-linux-unix-macos


$ wget http://www.leptonica.org/source/leptonica-1.74.1.tar.gz

$ tar xvf leptonica-1.74.tar.gz

$ cd leptonica-1.74

$ ./configure

$ make

$ sudo make install


$ sudo apt-get install libleptonica-dev


$ git clone --depth 1 https://github.com/tesseract-ocr/tesseract.git

$ cd tesseract

$ ./autogen.sh

$ ./configure --enable-debug

$ LDFLAGS="-L/usr/local/lib" CFLAGS="-I/usr/local/include" make

$ sudo make install

$ sudo ldconfig


$ tesseract -v

tesseract 2f10be5

 leptonica-1.74.1

  libjpeg 8d (libjpeg-turbo 1.4.2) : libpng 1.2.54 : libtiff 4.0.6 : zlib 1.2.8


 Found AVX

 Found SSE


[tess4j 를 이용한 Java 테스트]

HelloTess4j.java

public class HelloTess4j {

public static void main(String[] args) {
String datapath = "src/main/resources";
String testResourcesDataPath = "src/main/resources/test-data";
File imageFile;
ITesseract instance;

instance = new Tesseract();
instance.setDatapath(new File(datapath).getPath());
instance.setLanguage("eng");

try {
ImageIO.scanForPlugins();
imageFile = new File(testResourcesDataPath, "eurotext.png");
String result = instance.doOCR(imageFile);
System.out.println(result);
} catch (TesseractException e) {
System.out.println(e.getMessage());
}
}
}

코드는 tess4j 소스코드 받아 보시면 잘 나와 있습니다.

setLanguage 설정에 오류가 있어서 멀티 lang 설정이 안되는데요. (버그로 등록이 되어 있습니다. - 2017.02.14일 기준)

이 오류가 수정 되면  eng+kor 테스트도 해보시면 좋을 것 같습니다.


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
tags : OCR, tess4j, tesseract
Trackback 0 : Comment 0

[OSX El Capitan] ulimit 수정

ITWeb/개발일반 2017.02.10 18:53

아래와 같이 수정 하시면 됩니다.

파일이 없으면 만드시면 됩니다.


$ sudo vi /Library/LaunchDaemons/limit.maxfiles.plist

<?xml version="1.0" encoding="UTF-8"?>  

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"  

        "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">  

  <dict>

    <key>Label</key>

    <string>limit.maxfiles</string>

    <key>ProgramArguments</key>

    <array>

      <string>launchctl</string>

      <string>limit</string>

      <string>maxfiles</string>

      <string>524288</string>

      <string>524288</string>

    </array>

    <key>RunAtLoad</key>

    <true/>

    <key>ServiceIPC</key>

    <false/>

  </dict>

</plist>  


$ sudo vi /Library/LaunchDaemons/limit.maxproc.plist

<?xml version="1.0" encoding="UTF-8"?>  

<!DOCTYPE plist PUBLIC "-//Apple/DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  

  <plist version="1.0">

    <dict>

      <key>Label</key>

        <string>limit.maxproc</string>

      <key>ProgramArguments</key>

        <array>

          <string>launchctl</string>

          <string>limit</string>

          <string>maxproc</string>

          <string>2048</string>

          <string>2048</string>

        </array>

      <key>RunAtLoad</key>

        <true />

      <key>ServiceIPC</key>

        <false />

    </dict>

  </plist>


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
tags : capitan, OSX, ulimit
Trackback 0 : Comment 0

[SimpleCaptcha] 초간단 hello world captcha!! 만들어 보기

ITWeb/개발일반 2017.02.10 12:33

일전에 올려던 captcha 관련 링크 참고해서 입맛에 맞는 걸 사용하시면 됩니다.


[관련링크]

http://jjeong.tistory.com/1230


저는 simple captcha 를 이용해서 테스트만 해봤습니다.

아래 테스트 코드 공유 합니다.


[SimpleCaptcha]

http://simplecaptcha.sourceforge.net/


[Maven]

https://mvnrepository.com/artifact/nl.captcha/simplecaptcha/1.2.1


혹시 다운로드가 안되시면 그냥 system path 로 잡아서 올려 주시면 됩니다.


[HelloSimpleCaptch]

public class HelloSimpleCaptcha {
private static final Logger LOG = LoggerFactory.getLogger(HelloSimpleCaptcha.class);

public static void main(String[] args) throws IOException {
File file = new File("/Downloads/hello-simple-capcha.png");
Image image;
Captcha captcha = new Captcha.Builder(200, 50)
.addText()
.build();

ImageIO.write(captcha.getImage(), "png", file);
}
}

너무 쉬워서 뭐라 적을 내용이 없내요. ㅡ.ㅡ;

더 자세한 내용들은 simple captcha 홈페이지를 참고 하시면 됩니다. (또는 구글링 ~)


[Custom]

http://simplecaptcha.sourceforge.net/custom_images.html

http://simplecaptcha.sourceforge.net/custom_audio.html


보셔서 아시겠지만 캡차 이미지 파일로 사용하셔도 되고, 스트림으로 사용하셔도 되고 입맛에 맞게 변환 해서 쓰시면 되겠습니다.

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
tags : CAPTCHA, simple
Trackback 0 : Comment 0
◀ PREV : [1] : [2] : [3] : [4] : [5] : ... [240] : NEXT ▶

티스토리 툴바