{"action":"opened","issue":{"url":"https://api.github.com/repos/vinaresearch/team-read/issues/10","repository_url":"https://api.github.com/repos/vinaresearch/team-read","labels_url":"https://api.github.com/repos/vinaresearch/team-read/issues/10/labels{/name}","comments_url":"https://api.github.com/repos/vinaresearch/team-read/issues/10/comments","events_url":"https://api.github.com/repos/vinaresearch/team-read/issues/10/events","html_url":"https://github.com/vinaresearch/team-read/issues/10","id":142122649,"number":10,"title":"MySQL Full-text Search","user":{"login":"karmiphuc","id":3367376,"avatar_url":"https://avatars.githubusercontent.com/u/3367376?v=3","gravatar_id":"","url":"https://api.github.com/users/karmiphuc","html_url":"https://github.com/karmiphuc","followers_url":"https://api.github.com/users/karmiphuc/followers","following_url":"https://api.github.com/users/karmiphuc/following{/other_user}","gists_url":"https://api.github.com/users/karmiphuc/gists{/gist_id}","starred_url":"https://api.github.com/users/karmiphuc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/karmiphuc/subscriptions","organizations_url":"https://api.github.com/users/karmiphuc/orgs","repos_url":"https://api.github.com/users/karmiphuc/repos","events_url":"https://api.github.com/users/karmiphuc/events{/privacy}","received_events_url":"https://api.github.com/users/karmiphuc/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-03-20T02:39:53Z","updated_at":"2016-03-20T02:39:53Z","closed_at":null,"body":"Bài này bên Gitlab giới thiệu về  trigram index như một giải pháp thay thế cho Full Text Search khi cần cải thiện performance của `LIKE` operator. Vấn đề của `LIKE` là khi wildcard nằm ở đầu sẽ dẫn đến full table scan (nếu chỉ có 1 wildcard nằm ở cuối thì vẫn dùng INDEX được). Lợi thế của trigram index là không cần setup phức tạp và đặc biệt hiệu quả khi implement autocomplete hay cột tìm kiếm không chứa giá trị mang tính ngữ nghĩa (số điện thoại, username, cmnd, …)\r\n\r\n> https://about.gitlab.com/2016/03/18/fast-search-using-postgresql-trigram-indexes/\r\n\r\nTuy nhiên giải pháp trên PostgreSQL không có phiên bản tương đương từ chính MySQL (up 5.6) nên vẫn phải nhờ các giải pháp phụ của bên thứ 3:\r\n\r\n> http://stackoverflow.com/questions/3320698/what-is-the-best-way-to-implement-a-substring-search-in-sql"}}