Database
-
[rust] tokio, bb8, tokio_postgres DB 연결 예시 코드Rust 2024. 11. 24. 17:11
tokio 와 bb8을 이용한 postgres db 연결 기본 예시 코드 [main.rs]use bb8;use bb8::Pool;use bb8_postgres::PostgresConnectionManager;use tokio_postgres::NoTls;#[tokio::main]async fn main() { println!("Hello, world!"); let manager = PostgresConnectionManager::new_from_stringlike("postgresql://{계정}:{암호}@localhost:5432/{db명}", NoTls).unwrap(); let pool = Pool::builder().build(manager).await.unwrap()..
-
[Postgresql] tsquery, tsvector를 이용한 텍스트 검색DB & SQL 2023. 7. 11. 11:31
Like 조회의 한계 문자열을 에서 해당 단어가 포함되어있는지 여부를 찾을 때 like 를 사용하는 경우가 있습니다. 간편하지만 % 를 사용하면 해당 필드에 인덱스가 있음에도 이를 사용할 수 없어 성능이 떨어지는 단점이 있습니다. select * from posts where title like '%검색어%'; -- 인덱스를 사용할 수 없음 데이터가 적은 테이블에선 큰 문제가 되지 않지만, 주소검색과 같이 100만건이 넘는 테이블에서도 이렇게 사용할 수 있을까요? 이번시간엔 Postgresql 에서 문자열을 빠르게 검색할 수 있는 기법 중 하나인 tsquery, tsvector 를 사용하는 방법을 알아봅니다. tsvector? tsquery? tsvector 는 텍스트 검색을 위해 Postgresql 에..