{"id":113612,"date":"2023-11-15T09:43:15","date_gmt":"2023-11-15T09:43:15","guid":{"rendered":"https:\/\/showbizztoday.com\/index.php\/2023\/11\/15\/psyberg-automated-end-to-end-catch-up-by-netflix-technology-blog-nov-2023\/"},"modified":"2023-11-15T09:43:15","modified_gmt":"2023-11-15T09:43:15","slug":"psyberg-automated-finish-to-finish-catch-up-by-netflix-technology-blog-nov-2023","status":"publish","type":"post","link":"https:\/\/showbizztoday.com\/index.php\/2023\/11\/15\/psyberg-automated-finish-to-finish-catch-up-by-netflix-technology-blog-nov-2023\/","title":{"rendered":"Psyberg: Automated finish to finish catch up | by Netflix Technology Blog | Nov, 2023"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div>\n<div>\n<div class=\"hs ht hu hv hw\">\n<div class=\"speechify-ignore ab co\">\n<div class=\"speechify-ignore bg l\">\n<div class=\"hx hy hz ia ib ab\">\n<div>\n<div class=\"ab ic\"><a href=\"https:\/\/netflixtechblog.medium.com\/?source=post_page-----260fbe366fe2--------------------------------\" rel=\"noopener follow\" target=\"_blank\"><\/p>\n<div>\n<div class=\"bl\" aria-hidden=\"false\">\n<div class=\"l id ie bx if ig\">\n<div class=\"l fg\"><img decoding=\"async\" alt=\"Netflix Technology Blog\" class=\"l fa bx dc dd cw\" src=\"https:\/\/miro.medium.com\/v2\/resize:fill:88:88\/1*BJWRqfSMf9Da9vsXG9EBRQ.jpeg\" width=\"44\" height=\"44\" loading=\"lazy\" data-testid=\"authorPhoto\"\/><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p><\/a><a href=\"https:\/\/netflixtechblog.com\/?source=post_page-----260fbe366fe2--------------------------------\" rel=\"noopener  ugc nofollow\" target=\"_blank\"><\/p>\n<div class=\"ij ab fg\">\n<div>\n<div class=\"bl\" aria-hidden=\"false\">\n<div class=\"l ik il bx if im\">\n<div class=\"l fg\"><img decoding=\"async\" alt=\"Netflix TechBlog\" class=\"l fa bx bq in cw\" src=\"https:\/\/miro.medium.com\/v2\/resize:fill:48:48\/1*ty4NvNrGg4ReETxqU2N3Og.png\" width=\"24\" height=\"24\" loading=\"lazy\" data-testid=\"publicationPhoto\"\/><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p><\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p id=\"5471\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\">By <a class=\"af ny\" href=\"https:\/\/www.linkedin.com\/in\/abhinaya-shetty-ab871418\/\" rel=\"noopener ugc nofollow\" target=\"_blank\"><em class=\"nz\">Abhinaya Shetty<\/em><\/a>, <a class=\"af ny\" href=\"https:\/\/www.linkedin.com\/in\/bharath-chandra-mummadisetty-27591a88\/\" rel=\"noopener ugc nofollow\" target=\"_blank\"><em class=\"nz\">Bharath Mummadisetty<\/em><\/a><\/p>\n<p id=\"8101\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\">This weblog put up will cowl how Psyberg helps automate the end-to-end catchup of various pipelines, together with dimension tables.<\/p>\n<p id=\"4baf\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\">In the earlier installments of this sequence, we <a class=\"af ny\" href=\"https:\/\/netflixtechblog.medium.com\/f68830617dd1\" rel=\"noopener\" target=\"_blank\">launched Psyberg<\/a> and delved into its core operational modes: <a class=\"af ny\" href=\"https:\/\/netflixtechblog.medium.com\/1d273b3aaefb\" rel=\"noopener\" target=\"_blank\">Stateless and Stateful Data Processing<\/a>. Now, let\u2019s discover the state of our pipelines after incorporating Psyberg.<\/p>\n<p id=\"cfce\" class=\"pw-post-body-paragraph na nb gr nc b nd oy nf ng nh oz nj nk nl pa nn no np pb nr ns nt pc nv nw nx gk bj\">Let\u2019s discover how completely different modes of Psyberg may assist with a multistep knowledge pipeline. We\u2019ll return to the pattern buyer lifecycle:<\/p>\n<figure class=\"pg ph pi pj pk pl pd pe paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"pm pn fg po bg pp\">\n<div class=\"pd pe pf\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*C1VqEWTnxQ4O-M8ScWoLvA.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bg mi pq c\" width=\"700\" height=\"110\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"8d82\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\"><strong class=\"nc gs\">Processing Requirement<\/strong>: <br \/>Keep observe of the end-of-hour state of accounts, e.g., <strong class=\"nc gs\">Active\/Upgraded\/Downgraded\/Canceled.<\/strong><\/p>\n<p id=\"fd59\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\"><strong class=\"nc gs\">Solution<\/strong>: <br \/>One potential method right here can be as follows<\/p>\n<ol class=\"\">\n<li id=\"2618\" class=\"na nb gr nc b nd ne nf ng nh ni nj nk nl pr nn no np ps nr ns nt pt nv nw nx pu pv pw bj\">Create <strong class=\"nc gs\">two stateless<\/strong> <strong class=\"nc gs\">reality<\/strong> tables :<br \/>a. Signups<br \/>b. Account Plans<\/li>\n<li id=\"ec4d\" class=\"na nb gr nc b nd px nf ng nh py nj nk nl pz nn no np qa nr ns nt qb nv nw nx pu pv pw bj\">Create <strong class=\"nc gs\">one stateful<\/strong> <strong class=\"nc gs\">reality<\/strong> desk:<br \/>a. Cancels<\/li>\n<li id=\"81d2\" class=\"na nb gr nc b nd px nf ng nh py nj nk nl pz nn no np qa nr ns nt qb nv nw nx pu pv pw bj\">Create a <strong class=\"nc gs\">stateful dimension<\/strong> that reads the above reality tables each hour and derives the newest account state.<\/li>\n<\/ol>\n<p id=\"d1ab\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\">Let\u2019s have a look at how this may be built-in with Psyberg to auto-handle late-arriving knowledge and corresponding end-to-end knowledge catchup.<\/p>\n<p id=\"9b8c\" class=\"pw-post-body-paragraph na nb gr nc b nd oy nf ng nh oz nj nk nl pa nn no np pb nr ns nt pc nv nw nx gk bj\">We observe a generic workflow construction for each stateful and stateless processing with Psyberg; this helps preserve consistency and makes debugging and understanding these pipelines simpler. The following is a concise overview of the varied levels concerned; for a extra detailed exploration of the workflow specifics, please flip to the <a class=\"af ny\" href=\"https:\/\/netflixtechblog.medium.com\/1d273b3aaefb\" rel=\"noopener\" target=\"_blank\">second installment<\/a> of this sequence.<\/p>\n<p id=\"af8c\" class=\"pw-post-body-paragraph na nb gr nc b nd oy nf ng nh oz nj nk nl pa nn no np pb nr ns nt pc nv nw nx gk bj\">The workflow begins with the Psyberg initialization (init) step.<\/p>\n<ul class=\"\">\n<li id=\"f2f0\" class=\"na nb gr nc b nd ne nf ng nh ni nj nk nl pr nn no np ps nr ns nt pt nv nw nx qc pv pw bj\"><strong class=\"nc gs\">Input<\/strong>: List of supply tables and required processing mode<\/li>\n<li id=\"8223\" class=\"na nb gr nc b nd px nf ng nh py nj nk nl pz nn no np qa nr ns nt qb nv nw nx qc pv pw bj\"><strong class=\"nc gs\">Output<\/strong>: Psyberg identifies new occasions which have occurred for the reason that final excessive watermark (HWM) and information them within the session metadata desk.<\/li>\n<\/ul>\n<p id=\"abef\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\">The session metadata desk can then be learn to find out the pipeline enter.<\/p>\n<figure class=\"pg ph pi pj pk pl pd pe paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"pm pn fg po bg pp\">\n<div class=\"pd pe qd\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*NhFne1sCHTTW8ZzahSZqAQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*NhFne1sCHTTW8ZzahSZqAQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*NhFne1sCHTTW8ZzahSZqAQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*NhFne1sCHTTW8ZzahSZqAQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*NhFne1sCHTTW8ZzahSZqAQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*NhFne1sCHTTW8ZzahSZqAQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*NhFne1sCHTTW8ZzahSZqAQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*NhFne1sCHTTW8ZzahSZqAQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*NhFne1sCHTTW8ZzahSZqAQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*NhFne1sCHTTW8ZzahSZqAQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*NhFne1sCHTTW8ZzahSZqAQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*NhFne1sCHTTW8ZzahSZqAQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*NhFne1sCHTTW8ZzahSZqAQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*NhFne1sCHTTW8ZzahSZqAQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bg mi pq c\" width=\"700\" height=\"127\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"77dc\" class=\"pw-post-body-paragraph na nb gr nc b nd oy nf ng nh oz nj nk nl pa nn no np pb nr ns nt pc nv nw nx gk bj\">This is the final sample we use in our ETL pipelines.<\/p>\n<p id=\"c675\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\"><strong class=\"nc gs\">a. Write<br \/><\/strong>Apply the ETL enterprise logic to the enter knowledge recognized in Step 1 and write to an unpublished iceberg snapshot based mostly on the Psyberg mode<\/p>\n<figure class=\"pg ph pi pj pk pl pd pe paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"pm pn fg po bg pp\">\n<div class=\"pd pe qd\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*HbO2Zm9IEeoRwEYOnrBRuQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bg mi pq c\" width=\"700\" height=\"134\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"d7f6\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\"><strong class=\"nc gs\">b<\/strong>. <strong class=\"nc gs\">Audit<br \/><\/strong>Run varied high quality checks on the staged knowledge. Psyberg\u2019s metadata session desk is used to determine the partitions included in a batch run. Several audits, similar to verifying supply and goal counts, are carried out on this batch of knowledge.<\/p>\n<p id=\"6283\" class=\"pw-post-body-paragraph na nb gr nc b nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx gk bj\"><strong class=\"nc gs\">c. Publish<br \/><\/strong>If the audits are profitable, cherry-pick the staging snapshot to publish the info to manufacturing.<\/p>\n<p id=\"d6f4\" class=\"pw-post-body-paragraph na nb gr nc b nd oy nf ng nh oz nj nk nl pa nn no np pb nr ns nt pc nv nw nx gk bj\">Now that the info pipeline has been executed efficiently, the brand new excessive watermark recognized within the initialization step is dedicated to Psyberg\u2019s excessive watermark metadata desk. This ensures that the subsequent occasion of the workflow will choose up newer updates.<\/p>\n<ul class=\"\">\n<li id=\"f3d2\" class=\"na nb gr nc b nd oy nf ng nh oz nj nk nl qe nn no np qf nr ns nt qg nv nw nx qc pv pw bj\">Having the Psyberg step remoted from the core knowledge pipeline permits us to take care of a constant sample that may be utilized throughout stateless and stateful processing pipelines with various necessities.<\/li>\n<li id=\"2109\" class=\"na nb gr nc b nd px nf ng nh py nj nk nl pz nn no np qa nr ns nt qb nv nw nx qc pv pw bj\">This additionally permits us to replace the Psyberg layer with out touching the workflows.<\/li>\n<li id=\"858b\" class=\"na nb gr nc b nd px nf ng nh py nj nk nl pz nn no np qa nr ns nt qb nv nw nx qc pv pw bj\">This is suitable with each Python and Scala Spark.<\/li>\n<li id=\"1de2\" class=\"na nb gr nc b nd px nf ng nh py nj nk nl pz nn no np qa nr ns nt qb nv nw nx qc pv pw bj\">Debugging\/determining what was loaded in each run is made simple with the assistance of workflow parameters and Psyberg Metadata.<\/li>\n<\/ul>\n<p id=\"a0c1\" class=\"pw-post-body-paragraph na nb gr nc b nd oy nf ng nh oz nj nk nl pa nn no np pb nr ns nt pc nv nw nx gk bj\">Let\u2019s return to our buyer lifecycle instance. Once we combine all 4 elements with Psyberg, right here\u2019s how we&#8217;d set it up for automated catchup.<\/p>\n<\/div>\n<p>[ad_2]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] By Abhinaya Shetty, Bharath Mummadisetty This weblog put up will cowl how Psyberg helps automate the end-to-end catchup of various pipelines, together with dimension tables. In the earlier installments of this sequence, we launched Psyberg and delved into its core operational modes: Stateless and Stateful Data Processing. Now, let\u2019s discover the state of our [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":113614,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[37],"tags":[],"class_list":{"0":"post-113612","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-netflix"},"_links":{"self":[{"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/posts\/113612","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/comments?post=113612"}],"version-history":[{"count":0,"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/posts\/113612\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/media\/113614"}],"wp:attachment":[{"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/media?parent=113612"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/categories?post=113612"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/showbizztoday.com\/index.php\/wp-json\/wp\/v2\/tags?post=113612"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}