본문 바로가기
반응형

Total169

MongoDB : Limit, Sort 여러번 사용 특정 데이터를 검색하기 위해 limit 와 sort를 여러번 사용해야할 때가 있습니다. 기본적인 Mongo API를 이용해서 시도해보았습니다. 기록된 데이터중 최근 1000건의 데이터 중 가장 마지막 일자의 데이터를 찾는 것이 목표입니다. Criteria criteria = new Criteria(); Query query = new Query(); criteria.and("creDatm").gt(startDate); query.addCriteria(criteria); query.with(Sort.by(Direction.ASC, "creDatm")); query.limit(1000); query.with(Sort.by(Direction.DESC, "creDatm")); query.limit(1); Sql.. 2020. 4. 24.
MongoDB : Backup & Restore 업무 중 MongoDB의 Database를 복제해야 하는 일이 생겼습니다. 그래서 다음과 절차를 갖고 진행했습니다. MongoDB 에서는 databaseCopy 라는 명령어를 제공해줍니다. 복제해야 할 Database 로 접속합니다. use DB명 그리고 다음 명령어로 복제를 수행합니다. db.copyDatabase('원본DB명' , '복제DB명') 그러나, Sharding 으로 구성하였을 경우 위 명령어로는 복제를 할 수 없습니다. 따라서 mongodump 와 mongorestore를 이용해야 합니다. 우선, dump 파일을 생성하겠습니다. mongodump 실행 포맷 mongodump --out /파일경로/파일명 --port 포트번호 -u관리자계정 -p관리자암호 --db .. 2020. 4. 24.
Effective Java : (16) 추상 클래스보다는 인터페이스를 우선적으로 ! 추상 클래스보다는 인터페이스를 우선하라 (아이템 20) 자바가 제공하는 다중 구현 메커니즘은 인터페이스와 추상 클래스 두 가지 입니다. 자바 8부터는 인터페이스도 default method를 제공하여 구현 형태를 제공할 수 있습니다. 이 둘의 가장 큰 차이는 추상 클래스가 정의한 타입을 구현하는 클래스는 반드시 추상 클래스의 하위 클래스가 되어야 한다는 점입니다. 자바는 단일 상속만 지원하니, 추상 클래스 방식은 새로운 타입을 정의하는 데 커다란 제약을 안게 되는 셈입니다. 기존 클래스에도 손쉽게 새로운 인터페이스를 구현해넣을 수 있습니다. Comparable, Iterable, AutoCloseable 인터페이스가 추가되었을 때 표준 라이브러리의 수많은 기존 클래스가 이 인터페이스들을 구현한 채 릴리스.. 2020. 4. 24.
Effective Java : (15) Composition 활용 상속 보다는 컴포지션을 사용하라 (아이템 18) 상속은 코드를 재사용하는 강력한 수단이지만 항상 최선은 아닙니다. 잘못 사용하면 오류를 내기 쉬운 소프트웨어를 만듭니다. 상위 클래스와 하위클래스를 모두 같은 프로그래머가 통제하는 패키지 안에서라면 상속도 안전한 방법입니다. 메소드 호출과 달리 상속은 캡슐화를 깨뜨립니다. 상위 클래스가 확장을 충분히 고려하고 문서화도 제대로 해두지 않으면 하위 클래스는 상위 클래스의 변화에 발맞춰 수정돼야만 합니다. public class InstrumentedHashSet extends HashSet { private int addCount = 0; ... @Override public boolean add(E e) { addCount ++; return super.ad.. 2020. 4. 24.
Real MongoDB : (1) 소개 (작성중) `Spananer`가 가진 기능들이 분산 처리 데이터베이스가 가야 할 방향이라고 생각합니다. - 관계형 데이터베이스 - 트랜잭션 지원 - 분산 처리 - 재해 복구 (Disaster Recovery) - Sharding & Re-Balancing - 데이터 복제 & 자동 복구 위 `Spanner`가 가진 특징 중 `관계형 데이터베이스`를 제외하면 MongoDB는 모두 지원합니다. 2020. 4. 24.
Oracle의 PL/SQL 에 관하여 (2) Oracle PL/SQL를 분석하기 위해서 타입별로 구성을 알아보도록 합니다. PL/SQL 유형별 구문 1. Procedure CREATE OR REPLACE PROCEDURE [Name] [IN or OUT Parameter] IS [Declare Variable] BEGIN [Statement] END; 2. Function CREATE OR REPLACE FUNCTION [Name] RETURN [Return Data Type] IS [Declare Variable] BEGIN [Statement] RETURN [Return Variable]; END; 3. Trigger CREATE OR REPLACE TRIGGER [Name] [Condition] IS [Declare Variable] BEGI.. 2020. 4. 24.
반응형