본문 바로가기

전체 글18

데이터 중심 애플리케이션 설계 - 2(데이터 모델과 질의 언어) 2장. 데이터 모델과 질의 언어 데이터 모델은 소프트웨어 개발에서 가장 중요한 부분이다. SW가 어떻게 작성됐는지 뿐만 아니라 해결하려는 문제를 어떻게 생각해야 하는지 영향을 미치기 때문이다. 대부분의 애플리케이션은 하나의 데이터 모델을 다른 데이터 모델 위에 계층을 둬서 만든다. 2장에서 중요한 내용 - 범용 데이터 모델 비교(관계형 모델, 문서 모델, 그래프 기반 데이터 모델) - 여러 질의 언어와 사용 사례 관계형 모델과 문서 모델 가장 잘 알려진 데이터 모델은 1970년 에드가 코드가 제안한 관계형 모델으로한 SQL이다. 관계(relation)(=테이블)로 구성 되고 튜플(tuple)(=로우)의 모임. 관계형 데이터베이스의 근원은 비즈니스 데이터 처리에 있다. -> 트랜잭션 처리, 일괄 처리 관계.. 2022. 9. 17.
데이터 중심 애플리케이션 설계 - 1(신뢰성, 확장성, 유지보수성) 1장. 신뢰할 수 있고 확장 가능하며 유지보수하기 쉬운 애플리케이션 오늘날 대부분의 애플리케이션은 계산 중심(compute-intensive)이 아닌 데이터 중심적(data-intensive)이다. 많은 애플리케이션은 다음을 필요로 한다. - 데이터베이스: 구동 애플리케이션이나 다른 애플리케이션에서 나중에 다시 데이터를 찾을 수 있게 데이터 저장 - 캐시: 읽기 속도 향상을 위해 값비싼 수행 결과를 기억 - 검색 색인(search index): 사용자가 키워드로 데이터를 검색하거나 다양한 방법으로 필터링할 수 있도록 제공 - 스트림 처리: 비동기 처리를 위해 다른 프로세스로 메시지 보내기 - 일괄 처리(batch processing): 주기적으로 대량의 누적된 데이터 분석 데이터 시스템에 대한 생각 데이.. 2022. 9. 12.
데이터 중심 어플리케이션 설계 - 0 사내 교육 외부 초청 강사님으로 오신 구멍가게코딩단 강요천 강사님의 추천으로 책을 공부한다. 생소한 내용이 많아 어렵지만 정리를 하며 이해도를 높이고자 한다. 책을 완독하여 데이터베이스 분야를 전문적으로 공부할지 개발 공부를 더 할지 결정할 수 있는 계기가 되었으면 한다. 머리말 최근 10년간 데이터베이스와 분산 시스템 분야에서 발전이 있었고 이를 기반으로 Application을 개발하는 방법에도 발전이 있었다. 이런 발전의 원동력은 매우 다양하다. - 엄청난 양의 데이터와 트래픽으로 생산으로 인하여 이를 효율적으로 처리하기 위해 새로운 도구를 만들어야 했다. - 기업은 민첩하고 작은 노력으로 가설을 테스트해야 한다. 이를 위해 개발 주기를 단축하고 데이터 모델을 유연하게 해야 한다. - CPU 클럭 속.. 2022. 9. 12.
Annotation 정리 Annotation 이란? Annotation(@)은 사전적 의미로는 주석이라는 뜻이다. 자바에서 Annotation은 코드 사이에 주석처럼 쓰이며 특별한 의미, 기능을 수행하도록 하는 기술이다. 즉, 프로그램에게 추가적인 정보를 제공해주는 메타데이터라고 볼 수 있다. meta data : 데이터를 위한 데이터) 다음은 어노테이션의 용도를 나타낸 것이다. 컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공한다. 소프트웨어 개발 툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보를 제공한다. 실행시(런타임시)특정 기능을 실행하도록 정보를 제공한다. 기본적으로 어노테이션을 사용하는 순서는 다음과 같다. 어노테이션을 정의한다. 클래스에 어노테이션을 배치한다. 코드가 실행되는 중에 Reflecti.. 2022. 2. 19.
[PHP] PHPMailer를 이용해 메일 보내기 안됨. 어제 프로젝트 서버 올리기에 실패하여 수정한 후 추가적으로 로컬에서 Sign Up 할 때 문제가 있었다. 사용자 회원가입 시 PHPMailer를 이용하여 메일 인증을 받는데 메일이 발송되지 않았다. 원인은 구글 사용자 계정의 보안 수준이 높아져있었고 PHP 버전이 올라가면서 예외처리를 try-catch문을 if문으로 바꿔줘야했다. 추가적으로, 프로젝트 진행했을때 "teamd-iot.calit2.net" 도메인을 사용했었는데 현재는 도메인이 없어 전체적으로 localhost:8888로 링크를 바꿔주었다. 수정 후 인증메일 발송, 계정 인증까지 확인되었다. 2021. 3. 29.
[PHP] Doctrine ORM 사용한 프로젝트 살리기 2019년 여름 Qualcomm Institute에서 진행한 프로젝트를 살리기 위해서 오랜만에 git에서 Clone 받아 서버를 실행했으나, 환경이 달라 서버가 올라가지 않았다. 서버를 올렸을 때 발생한 첫 번째 오류 PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password] 프로젝트를 진행할 때 사용한 DB 접속 정보가 달라 발생한 오류인듯 하여 접속 정보를 수정하여 재실행 두 번째 오류, PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_pa.. 2021. 3. 29.