엘라스틱서치의 기본요소
2022. 10. 5. 23:55
Elasticsearch
엘라스틱서치의 모든 기능은 REST API 형태입니다. REST 란 웹상의 모든 리소스에 URI를 부여하고 활용하는 아키텍쳐입니다,또한 이것을 도입하면 모든 리소스를 일관된 규칙으로 접근할 수 있어 Application을 모듈이나 기능별로 분리하기 쉬워집니다. 더보기 REST API 는 REpresentational State Transfer 의 약자로 웹(HTTP)의 장점을 이용해 리소스를 주고받는 형태이며, REST API는 REST 기반으로 API를 서비스하는 것을 의미합니다. 메소드와 경로가 합쳐진 형태이고 4가지 메소드를 표현할수 있습니다. POST GET PUT DELETE (CRUD)라고도 흔히 알고 있습니다. 다시 말하면 네 가지 메소드 타입을 가지고 리소소의 CRUD(생성/읽기/수정/삭제..
엘라스틱서치 - 분석기
2022. 9. 26. 16:57
Elasticsearch
엘라스틱서치 전문 검색을 지원하기 위해 역인덱싱() 기술을 사용한다. 전문 검색은 긴 문장의 String에서 부분 검색해서(SQL에 Like처럼) 수행하고, 역인덱싱은 긴 문장의 문자열을 분석해 작은 단위로 쪼개어 인덱싱 하는 기술이다(대표적으로 구글에서 역인덱싱을 사용) . 역인덱싱을 이용한 전문 검색에서 양질의 결과를 얻기 위해서는 문자열을 나누는 기준이 중요하며, 이를 지원하기 위해 엘라스틱은 3가지) 캐릭터 필터 , 토크나이저, 토큰 필터로 구성되어 있는 분석기 모듈을 갖고있습니다. 토큰과 용어 더보기 토큰(Token)과 용어(term)라는 단어는 엘라스틱에서 많이 사용 될 단어이자 헷갈릴수 있는 단어 이다보니, 여기서 짧게나마 용어를 정의하고 넘어가자. 예를 들어서 'noodle hot' 라는 ..
파이썬 정규식 표현(Regex)이용한 시간표 정리
2022. 9. 16. 17:46
Language/python
더보기 오늘은 파이썬을 통한 몇가지의 정규 표현식에 관하여 글을 적고자 합니다. 일단 글 쓰기에 앞서, 저는 자바로 취업을 하였지만 회사의 요구에 의해 파이썬으로 다시 개발을 하고있는 0년차 개발자입니다. 많은 블로그들이 양질의 글들을 공유를 하고있어서 정규 표현식의 모든것들을 설명하지 않으려고합니다 양해 부탁드립니다. 정규 표현식 정규 표현식( regular expression, as regexp or regex, rational expression)정규식은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. 정규 표현식은 많은 텍스트 편집기와 프로그래밍 언어에서 문자열의 검색과 치환을 위해 지원하고 있으며, 특히 펄과 Tcl은 언어 자체에 강력한 정규 표현식을 구현하고 있다. 컴..
django error - cannot import name 'url' from 'django.conf.urls'
2022. 8. 14. 19:46
WEB/django
: cannot import name 'url' from 'django.conf.urls' 이런식으로 에러가 나는 경우의 답 : urls.py 페이지에 있는것을 바꾸어주면됩니다. from django.conf.urls import url has change to from django.urls import re_path as url 그럼 실행이 잘되는것을 확인하실수있습니다.
Django - 파이썬 프로젝트 CI/CD 사용하여 배포하기 1-1
2022. 8. 5. 13:38
WEB/django
Github Action 으로 파이썬 프로젝트 CI/CD 를 진행해보도록하겠습니다. 이메일 아이디는 keys.json 즉 json 파일로 주어집니다. except 밑에 이메일, 비밀번호를 적으시면 로컬에서는 돌아가게됩니다. Git에 안올라가게 설정을 해주도록합시다. .gitignore에 설정을 하시면됩니다. 서비스 키 또한 keys.json 으로 사용합니다. 이메일과 이메일 비밀번호와 구글 서비스키를 넣어줍니다. main.py 에서는 반드시 필요한 2줄을 적어줍니다. 구글 웹엔진이 shrinkers.wsgi 를 구니콘에서 실행했지만 구글웹엔진에서는 메인 콜론으로 시작되어서 위에것이 없다면 실행하지 않습니다. 앱엔진으로 갈때 바뀌는 환경변수도 알아보겠습니다. 장고_env를 넣어주고 B4는 수동 스케일링이 ..
Rendering views 와 API views
2022. 7. 28. 11:28
카테고리 없음
HTTPResponse Rendering View, Json Response View 모두 API의 일종 HTML 을 랜더링 하는지, Json의 형태로 단순히 정보만을 주는 차이 랜더링을 해야할 때는 Django의 render 를 사용(HTTPResponse 사용) Json 포맷으로 전달해야 할때는 JsonResponse를 사용 RestAPI REST(Representational State Transfer) 프로토콜 아님 표준 아님 누가 정해놓은 법칙이 아니고 약속이라고 할수있습니다. 즉 REST하다 REST하지 않다 라고 하지만, 서로의 이해도 다르고 공식문서보단 스스로가 다른 누군가의 REST에 대해 발표하는것들을 듣고 재해석하는 경우가 많아서 굳이 지켜야한다기보단 지키면 편하다 보니 많은 이용자들..
Hadoop window 설치
2022. 7. 28. 08:53
ML/Hadoop & Spark
Java 설치 다운로드 https://www.oracle.com/java/technologies/downloads/#java8 windows탭을 클릭하여 자바 8 다운로드 다운로드 설치 설치 확인 $ java --version Hadoop 다운로드 hadoop.apache.org 접속 Download > Binary 클릭 hadoop download 다운로드 후 압축 풀기 환경 변수 등록 시스템 속성 > 환경 변수 윈도우 환경 변수에 JAVA_HOME과 HADOOP_HOME 등록 Path에 %HADOOP_HOME%/bin과 %JAVA_HOME%/bin 등록 환경 변수 등록시 디렉토리에 띄어쓰기가 있으면 안됩니다. java의 경우에는 C:\Program Files 하위에 존재하기 때문에 환경 변수 등록시 ..
Hadoop - HDFS 분산 파일 시스템
2022. 7. 21. 13:30
ML/Hadoop & Spark
분산 파일 시스템 네트워크로 연결된 여러 머신의 스토리지를 관리하는 팡리 시스템 일반적인 컴퓨터도 분산 파일 시스템을 가지고 있습니다. Google File system(GFS) 구글 파일 시스템(Google File System, GFS 또는 GoogleFS)은 구글에 의해 자기 회사 사용 목적으로 개발된 분산 파일 시스템이다.[일반 상용 하드웨어를 이용하여 대량의 서버를 연결하여 데이터에 대한 접근이 효율적이고 안정적이다. 새로운 버전의 구글 파일 시스템 코드이름은 콜로서스(Colossus)이다 구글 파일 시스템 - 위키백과, 우리 모두의 백과사전 ko.wikipedia.org 하둡에서는 HDFS 라는 분산 파일 시스템을 제공합니다. 대표적인 시스템은 의 특징 : 범용 하드웨어를 사용하여 분산 파일 ..
Hadoop 클러스터 구축 고려사항/하둡 버전에 다른점
2022. 7. 21. 13:00
ML/Hadoop & Spark
클러스터(Cluster)란? -여러 대의 컴퓨터들이 연결되어 하나의 시스템처럼 동작하는 컴퓨터들의 집합 클러스터는 확장성을 가지고 있어서 work -node만 추가하면 확장을 하는 구조를 가지고 있습니다. Gateway 노드를 따로 두는데 설정파일등을 통해서 클라이언트들의 조건을 통제하것을 수행합니다. 마스터/work Architecture 철수가 사정상 프로젝트 C를 못하는상황이 생기면 해당 프로젝트를 올바르게 대처를 할수 없기에 프로젝트 별로 담당자를 한명이 아닌 두명이 담당을 하면서 백업 식으로 일 처리가 돌아가게 됩니다. 즉 철수가 없더라고 영희가 해당 프로젝트를 처리할수 있습니다. 사람이 즉 노드가 되어 한 노드가 작동을 못하더라도 다른 노드가 해결을 할수 있습니다. 정상적으로 동작을 하지 않아..
Django debug-toolbar error or Hidden - 해결 방안
2022. 7. 21. 11:06
카테고리 없음
Django 디버그 툴바를 설치 하였고 코드를 보았을때 아무 문제가 없었습니다. 서버를 돌렸을때 보이지 않아 F12로 소스를 보니 debug toolbar 는 body 안에 존재하는데 div 안에 class= djdt hidden이라고 나올겁니다. 즉 숨겨져 있다는 뜻인데요 저의 해결 방안으로는 (Just put this code into setting.py then it will help to work properly) if DEBUG: import mimetypes mimetypes.add_type("application/javascript", ".js", True) 위에 코드를 setting.py 에 넣으면 해결이 됩니다. 잘 동작이 되네요.~!