오늘의 포스팅 내용은 ActiveRecord 를 사용하면서 scope 를 이용했을 때 first, last 를 포함하면 안 되는 이유에 대해서 알아볼 예정이다. 우선 scopes 에 대한 정의는 여기에서 확인할 수 있다. 간단하게 설명하자면 scope 는 ActiveRecord 에서 일반적으로 사용하는 Query 들을 지정할 수 있어서 필요시마다 함수 호출처럼 사용할 수 있게 도와준다. scopes 에서는 where, joins, includes 등이 사용 가능하고 실행결과로 ActiveRecord::Relation 혹은 nil 을 반환한다. scope 의 활용 예시는 다음과 같다. module Accounts class User < ApplicationRecord scope :today_sign_up_..
오늘의 포스팅 내용은 "ActiveRecord의 length, count, size 의 차이를 간략히 알아보자" 이다. Rails 로 기능 개발을 하면서 ActiveRecord Relation 의 Element 의 개수를 확인하기 위해 ActiveRecord 의 length, count, size 를 사용할 때가 있다. 우리는 다양한 방법으로 개수를 확인할 수 있지만 length, count, size 에는 조금씩 차이가 있으니 알고 사용하면 더 도움이 된다. count count 는 ActiveRecord Relation 의 Element 의 수를 확인하기 위해서 SQL query 를 실행한다. 호출 시점에 Database 의 정확한 수를 확인할 수 있다는 점이 장점이지만 상황에 따라서 불필요하게 조회..
이번 포스팅은 사내에서 Elasticsearch 관련 내용 발표를 위해 "시작하세요! 엘라스틱서치"서적을 기반으로 학습하고 이해한 내용을 정리하는 포스팅이다. Elasticsearch 역시 내용이 많기 때문에 시리즈로 나눠서 정리할 예정이다. 모든 내용은 Elasticsearch 7.6 버전 기준이다. 오늘은 Elasticsearch 의 Analyzer 에 대해서 알아볼 예정이다. 분석(Analyzer) Elasticsearch 는 색인(Indexing) 할 때 입력된 데이터는 텀(term) 으로 추출하기 위한 과정을 거치는데 이 과정을 Analyzer 라고 한다. Analyzer 는 하나의 Tokenizer 와 0 개 이상의 Token Filter 로 구성되어 있다. Tokenizer 는 입력된 데이터..
- Total
- Today
- Yesterday
- InnoDB
- 루비 상수
- 메타프로그래밍
- Elasticsearch Cluster
- gap lock
- 인덱스
- 되추적
- lock
- innoDB lock
- 트랜잭션
- MySQL
- 갭 락
- Pair-programming
- next key lock
- Autoloading
- 페어 프로그래밍
- MySQL 인덱스
- 엘라스틱서치 기초
- dead lock
- 루비
- autoload_paths
- 페어프로그래밍
- db
- ruby meta programming
- metaprogramming
- 루비 메타프로그래밍
- mysql lock
- ruby
- 넥스트 키 락
- MySQL 족보
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |