Một đoạn chat trên Twitter của Dr Peter Meyer và Matt Cutts đã làm dấy lên những cuộc trao đổi về thuật toán và cách hoạt động của nó, và làm người trong cuộc nhận ra rằng lâu nay không ít người trong số họ đang hiểu thuật toán một cách hời hợt và đơn giản hơn nhiều so với bản chất thật của nó. Bài viết này là một chuỗi các nội dung, từ khái niệm căn bản nhất về thuật toán đến những quan điểm và hướng đi của Google trong năm 2014.
Thuật toán của Google
Theo suy luận của những người làm SEO, thuật toán như một khối mã nguồn lớn mà Google thỉnh thoảng điều chỉnh:
Cứ mỗi 2 đến 3 tháng, các SEOer lại nghe tới một sự thay đổi đáng kể về thuật toán, Google cũng khẳng định đã có 665 bản update trong năm 2012. Rõ ràng là còn nhiều cập nhật quan trọng hơn là chỉ một vài dòng code thay đổi trong hệ thống mã nguồn lớn.
Đầu vào và đầu ra
Tất nhiên là thuật toán phải mang lại thay đổi gì đó, và chúng ta có đầu vào và đầu ra. Trong trường hợp tìm kiếm, đầu vào cơ bản nhất là chỉ số Google index của tất cả các trang web, và đầu ra là các trang kết quả của bộ máy tìm kiếm (SERPs).
Người ta thường nghĩ đơn giản là có thông tin trang web (đầu vào), Goole sẽ trả về kết quả tìm kiếm (đầu ra). Thực tế không đơn giản một chút nào, ngay từ bước “đầu vào”.
Trước tiên, việc index được tiến hành từ hàng chục các trung tâm dữ liệu trên toàn thế giới, và từng trung tâm dữ liệu được coi như một thành phố dữ liệu thu nhỏ, được liên kêt bởi một trong những hệ thống toàn cầu tân tiến nhất. Quá trình index được minh họa như sau:
Từng khối màu minh họa trong “Index” là hệ thống hàng ngàn máy móc, một số lượng khổng lồ các phần cứng, phần mềm và con người. Tuy nhiên chúng ta cần hiểu là Index không phải là đầu vào quan trọng nhất của thuật toán. Để đơn giản hóa, hệ thống sẽ trông như thế này:
Các sơ đồ liên kết, dữ liệu địa phương, mạng lưới xã hội, chủ yếu là Google+, và Knowledge Graph (dữ liệu kiến thức)- tập hợp các cơ sở dữ liệu của Google, là tất cả các yếu tố đầu vào, ngoài việc Index các tất cả các trang web trên toàn thế giới.
Sự tương thích, xếp hạng và tái xếp hạng
Là những người làm SEO, chúng ta thường ám ảnh bởi thứ hạng, nhưng chúng ta quên rằng thứ hạng chỉ là một phần hoạt động trong thuật toán. Sẽ tốt hơn khi chia quá trình thành hai bước : Bước 1 là sự tương thích – relevance, Bước 2 là thứ hạng - ranking. Trong một trang xếp hạng của Google, có thể chia ra như sau:
Nói cách khác, đầu tiên Google sẽ nhặt ra những trang chứa nội dung phù hợp với kết quả tìm kiếm, sau đó chọn các trang này theo thứ tự. Bước 1 dựa theo sự tương thích- một trang có thể có nhiều links, có google+, có chỉ số giá trị (citation) trên thế giới, nhưng nếu nó không hợp với câu truy vấn, nó sẽ không được xuất hiện trong kết quả tìm kiếm đó. Trang chidoanh.com sẽ không bao giờ có thứ hạng cho từ khóa“những Iphone tốt nhất” dù uy tín trang chidoanh.com có cao đến đâu.
Thậm chí xếp hạng không phải là một chu trình riêng lẻ mà sẽ còn 1 bước nữa là“tái xếp hạng” - re-ranking. Về cơ bản, Google xác định xếp hạng mà chúng ta thường gọi là kết quả tự nhiên. Sau đó thuật toán thứ hai sẽ cùng tham gia vào quá trình: nó bao gồm các kết quả địa phương và những yếu tố như tin tức và hình ảnh. Thuật toán thứ hai sẽ tái xếp hạng lại một kết quả ban đầu:
Đầu vào đặc biệt, các hình phạt và disavow
Cũng có những đầu vào đặc biệt (special inputs). Ví dụ Google áp dụng hình phạt thủ công - manual penalty cho một site, việc này được đánh dấu ở đâu đó và đưa vào hệ thống, và cũng là một phần của index, nhưng vì quá trình này được thực hiện thủ công, liên quan đến Google Webmaster Tools, nên chúng ta nên xem nó là một khái niệm riêng biệt.
Tương tự, công cụ Disavow cũng là một đầu vào riêng biệt, được quản lý bởi các nhà quản trị mạng, dữ liệu này được xử lý định kỳ và được đưa trở lại các thuật toán. Còn có nhiều đầu vào tác động đến các thành phần khác của hệ thống, ví dụ XML sitemaps trong Google Webmaster Tools giúp việc định hình quá trình index.
Cập nhập: Panda, Penguin and Hummingbird
Và cuối cùng chúng ta có thêm các thuật toán đươc cập nhập như tất cả chúng ta biết và thích thú. Trong nhiều trường hợp, một lần cập nhập chỉ là sự thay đổi nhỏ trong mã nguồn của Google, tuy nhiên trong vài năm qua, các lần câp nhập của thuật toán phức tạp hơn nhiều.
Bắt đầu với thuật toán Panda, ra mắt vào tháng hai năm 2011, nó chỉ là một sự tinh chỉnh một số mã nguồn có vấn đề, một thuật toán phụ (sub-algorithm) với cấu trúc riêng, bên cạnh thuật toán chính. Và hàng tháng Panda được chạy lại, cập nhập lại dữ liệu và dữ liệu này được xử lý bởi một thành phần mà bạn có thể gọi là yếu tố xếp hạng của Panda. Yếu tố này tác động đến thuật toán chính. Có khả năng Penguin cũng hoạt động như thế, một thuật toán phụ với dữ liệu riêng biệt, và chỉ được đưa lại vào hệ thống theo định kỳ. Hãy xem hình sau:
Vậy tại sao Google không viết lại thuật toán cho Panda và Penguin? một phần là do chiến lược, nguồn lực cần thiết cho quá trình xử lý dữ liệu này vượt quá cơ sở hạ tầng hiện tại. Google muốn nhanh và mạnh mẽ hơn, những thuật toán phụ này có thể kết hợp hoàn hảo với nhau. Một lý do khác là phải kiểm chứng và giảm thiểu những tác động. Do vậy Google chỉ cập nhập Penguin theo định kỳ vì bản cập trước đã tác động rất rộng.
Vậy còn những cập nhập mới đây về Hummingbird ? Theo Google, Hummingbird được viết lại cơ bản về cách thức hoạt động cho thuật toán chính. Chúng ta chưa thấy những tác động đáng kể của chim ruồi, và những kết quả tiềm tàng của mã nguồn mới này có thể xuất hiện sau vài tháng hoặc vài năm, nhưng chúng ta đang nói về những thuật toán cốt lõi, dẫn đến hình ảnh cuối cùng:
Hình ảnh cuối cùng này là một minh họa căn bản nhất, rõ ràng và không hề sơ sài. Thực tế thì Google chia thành hàng chục phần nhỏ và phức tạp hơn rất nhiều, tuy nhiên bài viết hy vọng giúp bạn có thể hiểu đầy đủ hơn thuật toán của Google là gì và hoạt động ra sao.