Objednávky z WooCommerce ve Snowflake, propojené s marží a reklamou

    WooCommerce je e-shopový plugin do WordPressu. Snowflake je cloudový datový sklad, který odděluje úložiště dat od výpočetního výkonu a účtuje si obojí zvlášť. Nechte nás napojit objednávky, katalog a zákazníky z WooCommerce do Snowflake. Napojení stavíme podle konkrétní instalace, šablony a hostingu, marži, reklamu a chování zákazníků pak uvidíte na jednom místě, bez ručních exportů.

    K čemu propojení slouží

    Objednávky, katalog produktů a zákazníci z WooCommerce pravidelně tečou do Snowflake, propojené s daty z reklamy a ze skladu nebo účetnictví, na platformě, na které firma případně už staví jiné reporty nebo analytické nástroje.

    Objednávky a katalog na jednom místě

    Objednávky, produkty a zákazníci z WooCommerce se ukládají do tabulek ve Snowflake ve struktuře, se kterou se dá dál počítat, bez ohledu na to, jak je konkrétní instalace poskládaná. WooCommerce k tomu nabízí REST API v3 s autentizací přes Consumer Key a Consumer Secret, buď HTTP Basic Auth na HTTPS, nebo OAuth 1.0a bez SSL.

    Kde se data dál používají

    Segmentace produktů v Google Ads, maržový report a analýza průchodnosti košíkem pracují se stejným zdrojem, takže čísla v kampaních sedí s tím, co se reálně prodává, bez ohledu na to, jaký nástroj nad Snowflake firma pro reportování používá.

    Na co si dát pozor

    WooCommerce není jedna uzavřená platforma jako krabicový e-shop, je to plugin do WordPressu, takže se instalace od instalace často výrazně liší. K tomu přibývá pár věcí, které jsou specifické pro to, jak si Snowflake účtuje výpočetní výkon. Tahle omezení stojí za to znát dopředu, ne je řešit až v reportu.

    • Každá instalace je jinak poskládaná

      Šablona, doplňkové pluginy a úpravy na míru ovlivňují, jaká data jsou vůbec dostupná a v jaké podobě. Napojení se proto stavíme podle konkrétního nasazení, ne podle jednoho univerzálního vzoru.

    • Kódy produktů v e-shopu a v účetnictví nebo skladu

      Katalog ve WooCommerce se často liší od číselníku v účetnictví nebo skladu, obzvlášť pokud katalog v čase rostl přes ruční úpravy. Bez mapování marže nesedí na konkrétní produkty v kampaních, bez ohledu na to, jestli data leží v BigQuery, Fabricu, nebo ve Snowflake. Metadata produktů navíc WooCommerce ukládá do tabulky wp_postmeta ve formátu klíč-hodnota, takže dotaz na cenu, sklad nebo hodnocení napříč velkým katalogem vyžaduje víc JOINů, než je u specializovaných e-shopových platforem obvyklé; novější verze to částečně řeší vlastní vyhledávací tabulkou (wc_product_meta_lookup), pokud je na hostingu zapnutá a udržovaná.

    • Dostupnost API závisí na hostingu

      Na rozdíl od Upgates nebo Eshop-rychle leží WooCommerce na hostingu, který si zvolil zákazník. Pro naprostou většinu běžných instalací je API veřejně dostupné přes internet a data se dají bez problémů natáhnout do externí staging oblasti pro Snowpipe nebo COPY INTO. Pokud je ale instalace uzamčená za VPN, IP whitelistem nebo firewallem, potřebuje napojení bezpečný přenos dat do staging úložiště, obdobně jako u on-premise zdroje, a to je potřeba prověřit před nasazením, ne až při prvním pokusu o synchronizaci. WooCommerce samo o sobě žádný formální rate limit na REST API nemá, ale hosting nebo WAF si ho běžně nastavuje po svém, takže reálná propustnost se odvíjí od konkrétního serveru, ne od dokumentace k WooCommerce.

    • Compute se účtuje odděleně od úložiště

      Snowflake účtuje výpočetní výkon (virtuální warehouse) a úložiště dat jako dva samostatné metry, k tomu ještě zvlášť přenos dat ven. Compute se počítá po sekundách s minimálním úsekem 60 sekund. Warehouse ponechaný v chodu bez nastaveného auto-suspend spotřebovává kredity i ve chvíli, kdy nikdo žádný dotaz nespouští, na rozdíl od BigQuery, kde se platí za jednotlivý dotaz.

    Jak to Datimo řeší

    1. 1

      Vlastní konektor podle konkrétní instalace

      Napojení se nastaví podle konkrétní verze WooCommerce, hostingu a použitých pluginů, ne podle jednoho univerzálního schématu, které v praxi sedí jen některým e-shopům. Přístup řešíme přes WooCommerce REST API v3 a pár Consumer Key/Consumer Secret vygenerovaný v administraci. Logika napojení je stejná jako u BigQuery nebo Fabricu, mění se jen cílová platforma.

    2. 2

      Ingesce přes Snowpipe nebo COPY INTO

      Data se do Snowflake dostávají přes Snowpipe (průběžné načítání) nebo COPY INTO (dávkové načítání) z externí staging oblasti v cloudovém úložišti. U veřejně dostupného hostingu jde o přímé napojení přes internet, u uzamčené instalace nasadíme bezpečný přenos dat do staging úložiště.

    3. 3

      Pravidelná synchronizace

      Objednávky, katalog a zákazníci se aktualizují podle domluveného intervalu, ne jednou za měsíc ručním exportem.

    4. 4

      Řízení přístupu přes RBAC

      Kdo vidí jaká data a jaké objekty ve Snowflake, se řídí přes role-based access control (RBAC), který jde napojit na firemní SSO nebo identity providera, pokud ho firma už používá.

    5. 5

      Modulární rozsah dat

      Napojení stavíme z modulů podle toho, co potřebujete reportovat, ne jako pevně daný balíček tabulek. BigQuery zůstává výchozím doporučením Datima, stejný konektor a datový model ale umíme nasměrovat do Snowflake tam, kde je to firemní standard.