You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org

Add Link: Difference between revisions

From Wikitech-static
Jump to navigation Jump to search
imported>Kosta Harlan
No edit summary
 
imported>Kosta Harlan
No edit summary
Line 7: Line 7:
* The [[Link Recommendation Service]] is accessible via HTTP (see {{Phabricator|T258978}}) which accepts an article ID and wiki ID and returns raw wikitext of an article with annotated wikitext containing link recommendations. It does not have caching or storage; the client is responsible for doing that.
* The [[Link Recommendation Service]] is accessible via HTTP (see {{Phabricator|T258978}}) which accepts an article ID and wiki ID and returns raw wikitext of an article with annotated wikitext containing link recommendations. It does not have caching or storage; the client is responsible for doing that.
* The search index stores metadata about which articles have link recommendations via a field we set per article
* The search index stores metadata about which articles have link recommendations via a field we set per article
* A MySQL table per wiki is used for caching the actual link recommendations (raw wikitext)
* A MySQL table per wiki is used for caching the actual link recommendations (format to be determined {{Phabricator|T261411}})
* A maintenance script regularly generates link recommendations by iterating over each [[Search/articletopic]] and calling the Link Recommendation Service
* A maintenance script regularly generates link recommendations by iterating over each [[Search/articletopic]] and calling the Link Recommendation Service
** the maintenance script caches the results in the MySQL table, and updates the search index to specify that the article has link recommendations
** the maintenance script caches the results in the MySQL table, then sends an event to [[Event_Platform/EventGate]], where the [[Search]] pipeline ensures that the index is updated with the links/nolinks metadata for the article.
** on page edit and deletion, link recommendations are regenerated via the job queue and the same code and APIs that are utilized in the maintenance script
 
== Teams / Contact ==
 
* [[mw:Growth|Growth]] (primary stakeholder, technical contact for project is [[mw:User:KHarlan_(WMF)|Kosta Harlan]])
* [[mw:Wikimedia_Search_Platform|Search Platform]]
* [[mw:Wikimedia_Site_Reliability_Engineering|SRE]]
* [[mw:Wikimedia_Research|Research]]


== Background reading ==
== Background reading ==

Revision as of 10:18, 1 September 2020

This page contains information about the infrastructure used for the Add a Link structured task project (task T252822)

High-level summary

  • The Link Recommendation Service is accessible via HTTP (see task T258978) which accepts an article ID and wiki ID and returns raw wikitext of an article with annotated wikitext containing link recommendations. It does not have caching or storage; the client is responsible for doing that.
  • The search index stores metadata about which articles have link recommendations via a field we set per article
  • A MySQL table per wiki is used for caching the actual link recommendations (format to be determined task T261411)
  • A maintenance script regularly generates link recommendations by iterating over each Search/articletopic and calling the Link Recommendation Service
    • the maintenance script caches the results in the MySQL table, then sends an event to Event_Platform/EventGate, where the Search pipeline ensures that the index is updated with the links/nolinks metadata for the article.
    • on page edit and deletion, link recommendations are regenerated via the job queue and the same code and APIs that are utilized in the maintenance script

Teams / Contact

Background reading