Crawling

[크롤링/08]퍼머링크와 데이터베이스 설계

박한결 2021. 3. 25. 15:18

퍼머링크(Permalink = Permanent + Link)란?

하나의 콘텐츠에 대응되며, 시간이 지나도 대응되는 콘텐츠가 변하지 않는 URL

 

인터넷에서 특정 페이지에 영구적으로 할당된 URL 주소를 뜻한다. 이 주소는 한 번 정해지면 영원하다는 의미에서, 영구적인(permanent) 주소라는 뜻의 permanent link를 줄여 만든 말이다.
- Wiki(https://ko.wikipedia.org/wiki/퍼머링크)

 

퍼머링크의 장점

검색 엔진의 크롤러가 콘텐츠를 인식하기 쉬움

검색 엔진 최적화가 잘 이루어짐

 

크롤러의 재실행

크롤러는 보통 반복적인 작업을 위해 만들어지고, 일회성 사용에서 그치는 경우가 적다.

따라서 크롤링한 데이터를 데이터베이스에 저장할 때는 유니크 키를 생각해야한다.

단순하게 저장만하면 크롤러를 여러번 동작시켰을 때 같은 콘텐츠를 나타내는 데이터가 중복될 수 있기 때문이다.

이를위해 데이터를 유일하게 식별할 수 있는 키인 유니크 키를 붙여 데이터를 구별(중복 배제)할 수 있어야한다.

 

특정 웹사이트에서 퍼머링크를 가진 콘텐츠만을 크롤링하는 경우에는, 퍼머링크에서 유일한 식별자를 추출하면 쉽게 유니크키로 사용할 수 있다.

 

유니크 키를 정하고 해당 키를 저장할 필드에 유일성 제약을 설정하면 데이터의 유일성을 보장할 수 있게 된다.

프라이머리 키는 유니크 키와 별도로 데이터베이스가 자동 생성해주는 키(서로게이트 키)를 사용하는 것이 좋다.

웹 페이지의 URL을 기반으로 추출한 식별자는 웹사이트 리뉴얼 등으로 변경될 가능성이 있어서, 이로인한 영향을 최소화할 수 있기 때문이다.