Skip to content

Commit

Permalink
modify post 2024-02-12
Browse files Browse the repository at this point in the history
  • Loading branch information
maxmin93 committed Feb 18, 2024
1 parent e2183f7 commit 72daa3e
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 47 deletions.
8 changes: 7 additions & 1 deletion _posts/2024-01-22-svelte-server-pagination.md
Original file line number Diff line number Diff line change
Expand Up @@ -654,7 +654,13 @@ export const load = async ({ params }) => {
- tailwind 컴포넌트만 있지, 로직과 함께 있는 pagination 코드가 없어서 스스로 작성해 보았다.
- 페이지 변경시 페이지 reload 가 발생하지 않도록 form & action 을 사용해 보자.
- pagination 버튼들을 어떻게 구성할지도 고민해 볼 거리다. (UX 문제)
- page slide 를 옮기는 버튼이 다음&이전 버튼 조합보다 낫지않나 싶다.

> jekyll blog pagination
첫 페이지와 마지막 페이지 버튼 좌우로 이동 버튼을 놓고, 중간에 페이지 번호를 배치 (좋다!)

<img src="/2024/01/22-jekyll-blog-pagination-example.png" alt="jekyll-blog-pagination-example" width="40%" />


&nbsp; <br />
&nbsp; <br />
Expand Down
45 changes: 45 additions & 0 deletions _posts/2024-02-01-supabase-pgvector-day1.md
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,51 @@ const supabase = createClient(SUPABASE_URL, SUPABASE_ANON_KEY,
const { data: todos, error } = await supabase.from('todos').select('*')
```

### 참고: [dblink](https://www.postgresql.org/docs/current/dblink.html) 사용법

- 연결명 등록 dblink_connect
- 탐색경로(스키마) 지정시 추가 `접속정보... options=-csearch_path=`
- 연결명 조회 dblink_get_connections
- 연결명 해제 dblink_disconnect
- 원격 쿼리 dblink
- 원격 명령(insert/update/delete) dblink_exec

```sql
CREATE EXTENSION dblink;

-- 연결명 등록
select dblink_connect(
'jnewsdb',
'hostaddr=아이피 port=포트 dbname=데이터베이스 user=사용자 password=패스워드'
);
-- OK

-- 등록된 연결명 조회 (text[])
SELECT dblink_get_connections() as conns;
-- {jnewsdb}

-- 연결명 제거
select dblink_disconnect('jnewsdb');
-- OK

-- 연결 테스트 (원격쿼리에 대한 레코드 정의가 꼭 필요하다)
-- 참고 : 멀티라인 작성시 $$ 부호를 사용
select *
from dblink('jnewsdb', $$
select domain, pub_dt, url, title, content
from jnews.article
limit 2
$$)
as jnews(
domain text,
pub_dt timestamp,
url text,
title text,
content text
);
```


&nbsp; <br />
&nbsp; <br />

Expand Down
48 changes: 2 additions & 46 deletions _posts/2024-02-12-supabase-pgvector-day3.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
date: 2024-02-05 00:00:00 +0900
date: 2024-02-12 00:00:00 +0900
title: supabase pgvector - 3일차
categories: ["database", "postgres"]
tags: ["supabase", "openai", "embedding", "3nd-day"]
Expand Down Expand Up @@ -255,51 +255,7 @@ alter table airbnb_lodging add column n_tokens int;

## 3. 한글 뉴스 임베딩

### [DBLink](https://www.postgresql.org/docs/current/dblink.html) 사용법

- 연결명 등록 dblink_connect
- 탐색경로(스키마) 지정시 추가 `접속정보... options=-csearch_path=`
- 연결명 조회 dblink_get_connections
- 연결명 해제 dblink_disconnect
- 원격 쿼리 dblink
- 원격 명령(insert/update/delete) dblink_exec

```sql
CREATE EXTENSION dblink;

-- 연결명 등록
select dblink_connect(
'jnewsdb',
'hostaddr=아이피 port=포트 dbname=데이터베이스 user=사용자 password=패스워드'
);
-- OK

-- 등록된 연결명 조회 (text[])
SELECT dblink_get_connections() as conns;
-- {jnewsdb}

-- 연결명 제거
select dblink_disconnect('jnewsdb');
-- OK

-- 연결 테스트 (원격쿼리에 대한 레코드 정의가 꼭 필요하다)
-- 참고 : 멀티라인 작성시 $$ 부호를 사용
select *
from dblink('jnewsdb', $$
select domain, pub_dt, url, title, content
from jnews.article
limit 2
$$)
as jnews(
domain text,
pub_dt timestamp,
url text,
title text,
content text
);
```

#### [postgres_fdw 원격 테이블 연결](https://towardsdatascience.com/how-to-set-up-a-foreign-data-wrapper-in-postgresql-ebec152827f3)
### [postgres_fdw 원격 테이블 연결](https://towardsdatascience.com/how-to-set-up-a-foreign-data-wrapper-in-postgresql-ebec152827f3)

dblink 는 세션 생성시마다 매번 패스워드를 등록해줘야 하는데 반해, `postgres_fdw` 는 로컬 스키마에 외부 테이블이 등록되어 로컬처럼 사용할 수 있어 더 편리하다.

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 72daa3e

Please sign in to comment.