<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Mysql on Jonathan Franklin</title><link>https://jonnie.github.io/tags/mysql/</link><description>Recent content in Mysql on Jonathan Franklin</description><generator>Hugo</generator><language>en</language><lastBuildDate>Thu, 10 Dec 2020 00:00:00 +0000</lastBuildDate><atom:link href="https://jonnie.github.io/tags/mysql/index.xml" rel="self" type="application/rss+xml"/><item><title>Product Catalog Pipeline: Feeds to Products</title><link>https://jonnie.github.io/work/product-catalog-pipeline/</link><pubDate>Thu, 10 Dec 2020 00:00:00 +0000</pubDate><guid>https://jonnie.github.io/work/product-catalog-pipeline/</guid><description>&lt;h2 id="problem"&gt;Problem&lt;/h2&gt;&#10;&lt;p&gt;Pricesearcher needed to turn merchant feeds into a catalogue suitable for price comparison. Downloaded listings had to be normalised, assigned to the correct market and currency, and combined with reference data before indexing. Expansion into additional countries also required changes to feed processing, catalogue seeding and scheduling.&lt;/p&gt;&#10;&lt;h2 id="architecture"&gt;Architecture&lt;/h2&gt;&#10;&lt;p&gt;The ingestion stage processed merchant feeds into Parquet. A Spark product builder joined them with warehouse price history, categories, translated brands, linked product IDs and image-quality data, then supplied the &lt;a href="https://jonnie.github.io/work/search-index-pipeline/"&gt;search index pipeline&lt;/a&gt;. Country-specific processing and schedules ran through the same flow.&lt;/p&gt;</description></item></channel></rss>