내 시스템은 stackoverflow와 유사합니다. 기본적으로 게시물에는 여러 개의 태그가있을 수 있으며 검색어와 일치하는 게시물을 찾는 검색 기능이 있습니다 (모든 태그는 일치해야합니다)알고리즘과 일치하는 태그가 있습니까?
게시물 태그 지정 문제를 해결하는 알고리즘/데이터 구조가 있는지 궁금합니다./효율적으로 검색 하시겠습니까? 어느 것이 속도면에서 가장 효율적입니까 (시간 복잡성)?
내 시스템은 stackoverflow와 유사합니다. 기본적으로 게시물에는 여러 개의 태그가있을 수 있으며 검색어와 일치하는 게시물을 찾는 검색 기능이 있습니다 (모든 태그는 일치해야합니다)알고리즘과 일치하는 태그가 있습니까?
게시물 태그 지정 문제를 해결하는 알고리즘/데이터 구조가 있는지 궁금합니다./효율적으로 검색 하시겠습니까? 어느 것이 속도면에서 가장 효율적입니까 (시간 복잡성)?
검색을 위해 이러한 종류의 데이터를 저장하는 가장 효율적인 방법은 보통 Inverted index입니다. 이것은 또한 가장 일반적인 검색 엔진/정보 검색 시스템이 구축 된 것입니다.
실제로 구현하려면 Apache Lucene을 살펴 보시기 바랍니다.
과거에는이 용도로 특수 DS를 사용하지 않았습니다. 사실, RDBMS에서이 작업을 수행하려면 how Wordpress do this using taxanomies의 정보를 읽어보십시오. 주로 개별 태그 테이블을 가지게되고 개별 게시물에 여러 개의 태그가 연결될 수 있습니다 (키 사용).
또 다른 인기있는 접근법은 문제를면 처리 문제로 보는 것입니다. 전체 텍스트 인덱싱 프레임 워크를 사용하고 그 위에 패싯 브라우징을 개발해야합니다. 이 바로 그 경우를 설명하는 Here is an excellent post from the creator of Lucene/Solr. 패싯 브라우징을 사용하면 stackoverflow가 수행하는 작업을 표시 할 수 있습니다.
algorithm × 21165
search × 8863
data-structures × 5867
tags × 2886
stackoverflow × 721
"반전 된 인덱스"유용 할 수 있습니다. "그리고 대부분은 별도의 태그 테이블을 갖게 될 것이고 개별 포스트는 여러 개의 태그가 링크되어있을 수 있습니다 (키를 사용하여)"@abhinav가 설명한 바와 같이 널리 사용되는 방법입니다. – mayankcpdixit