{"id":14659,"date":"2023-08-01T11:22:08","date_gmt":"2023-08-01T05:52:08","guid":{"rendered":"https:\/\/opstree.com\/blog\/\/?p=14659"},"modified":"2023-08-01T11:22:08","modified_gmt":"2023-08-01T05:52:08","slug":"apache-cassandra-migration-3-x-to-4-x-episode-1-basics","status":"publish","type":"post","link":"https:\/\/opstree.com\/blog\/2023\/08\/01\/apache-cassandra-migration-3-x-to-4-x-episode-1-basics\/","title":{"rendered":"Apache Cassandra Migration: 3.x to 4.x Episode: 1 Basics"},"content":{"rendered":"\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" data-id=\"14972\" src=\"https:\/\/opstree.com\/blog\/\/wp-content\/uploads\/2023\/08\/image-10.png?w=800\" alt=\"\" class=\"wp-image-14972\" style=\"width:800px\" width=\"800\" \/><\/figure>\n<\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-text-align-justify\">Well, I am a big fan of  Apaches tools after Kafka and Zookeeper this would be my third tool Cassandra and my first database. I and my colleague have previously posted a blog on <a href=\"https:\/\/opstree.com\/blog\/\/2021\/02\/02\/introduction-to-kafka-otkafkadiaries\/\">Kafka<\/a> too. Please read this also you will also find it useful.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">So while working casually like any other day. I just got a call from my manager for Cassandra Migration that to in 14 days. Well frankly speaking I was afraid because I was having zero knowledge of the Cassandra Database. Also, I needed to upgrade the running Cluster<\/p>\n\n\n\n<p class=\"has-text-align-justify\">So I accepted this challenge and completed it with no downtime So let&#8217;s see how. <\/p>\n\n\n\n<p class=\"has-text-align-justify\">So I will Start My Journey Learning Cassandra in this blog, DC\/DR Setup of Cassandra in the next, <strong>and Migration in the last <\/strong>blog<\/p>\n\n\n\n<!--more-->\n\n\n\n<h3 class=\"wp-block-heading\"><strong>What is Cassandra?<\/strong><\/h3>\n\n\n\n<p class=\"has-text-align-justify\"> Cassandra is a NoSQL distributed database that allows you to store you large amount of data. You just need to create Keyspaces and in that, you would have your schema to store your data. <\/p>\n\n\n\n<p class=\"has-text-align-justify\">It is best if you want always an uptime for your applications because each node you add to your cluster is identical. Which means it has the same data as its fellow nodes. Also, it can even give a response to your application if the node is down that is something not expected but it is true the concept is called hinted off. Well at the end of the blog, you will fall in love with Cassandra just like me.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Cassandra VS Other Databases<\/h3>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/opstree.com\/blog\/\/wp-content\/uploads\/2023\/07\/screenshot-2023-05-23-at-11.59.29-am.png?w=1024\" alt=\"\" class=\"wp-image-14675\" style=\"width:484px;height:377px\" width=\"484\" height=\"377\" \/><\/figure>\n\n\n\n<p><strong>CAP is the main reason. All the popular databases are based on CAP Theorem<\/strong><\/p>\n\n\n\n<ol>\n<li><strong>Consistency<\/strong>: We have multiple servers all read-write are consistent means all the servers have the same Data<\/li>\n\n\n\n<li><strong>Availability<\/strong>: We have no single point of failure. We always have a failover so no Query fails<\/li>\n\n\n\n<li><strong>Partition Tolerance<\/strong>: Multiple Servers can communicate with each other to increase data. So any other node fails you still have the node data available to another Node<\/li>\n<\/ol>\n\n\n\n<p><strong>Cassandra exists in Partition Tolerant and Availability and makes the following guarantees.<\/strong><\/p>\n\n\n\n<ol>\n<li>High Scalability<\/li>\n\n\n\n<li>High Availability<\/li>\n\n\n\n<li>Durability<\/li>\n\n\n\n<li>Eventual Consistency of writes to a single table<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">How does Cassandra store its Data<strong>?<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" data-id=\"14954\" src=\"https:\/\/opstree.com\/blog\/\/wp-content\/uploads\/2023\/07\/apache-cassandra-diagrams-01.jpg?w=1024\" alt=\"\" class=\"wp-image-14954\" style=\"width:800px\" width=\"800\" \/><\/figure>\n<\/figure>\n\n\n\n<p>Source: https:\/\/cassandra.apache.org\/_\/cassandra-basics.html<\/p>\n\n\n\n<p>Cassandra stores its data in the form of <strong>Rings, Partitioning, and Tokens<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-justify\"><strong>Let&#8217;s learn this by a small Example:<\/strong><br>Like you are three friends, two of them have car of the Same brand VW and one of your friend owns Maruti. So here partition key will be VW. All the owners of VW will be found on the same node and data will be identical across all the nodes and they will have unique token.<\/p>\n\n\n\n<p>VW(Partition Key )&#8212;&gt;(Generates HASH Function)&#8212;&gt;(Unique Token)234<\/p>\n\n\n\n<p>MarutiPartition Key )&#8212;&gt;(Generates HASH Function)&#8212;&gt;(Unique Token)214<\/p>\n\n\n\n<p>VW(Partition Key )&#8212;&gt;(Generates HASH Function)&#8212;&gt;(Unique Token)234<\/p>\n\n\n\n<p>So if you see VW(Partition Key)&#8212;-&gt;Generates Unique Token that will be common for VW only and will be stored in token 234 in all the nodes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong> What is TOKEN?<\/strong><\/h3>\n\n\n\n<p>Token is generally when you create a cluster you assign token to nodes in that cluster in ring format. The maximum number of tokens that can be assigned to a node is 256&nbsp;<\/p>\n\n\n\n<p>Both Tokens and Partitioning together form a Ring to distribute data in each and every node.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Internal Communication between Nodes<\/strong><\/h3>\n\n\n\n<p>Cassandra uses the mechanism Gossiping protocol. Where nodes keep on  poking each other and communicating  to make their data consistent <\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>How to Communicate with Cassandra?<\/strong><\/h2>\n\n\n\n<p>Nodetool Utility is the option to communicate with Cassandra. <\/p>\n\n\n\n<p>Basic commands you need to learn before DC\/DR setup and migration and mostly this command you will use on performing daily operations <\/p>\n\n\n\n<ol>\n<li><strong>nodetool status <\/strong>: This command displays the number of nodes in the Cluster<\/li>\n\n\n\n<li><strong>nodetool  describecluster<\/strong>: Displays information regarding your cluster<\/li>\n\n\n\n<li><strong>nodetool repair<\/strong>: Repairing your cluster and maintaining consistency across cluster<\/li>\n\n\n\n<li><strong>nodetool compactionstats<\/strong>: What are the activity are being conducted in your SStables<\/li>\n\n\n\n<li><strong>nodetool netstats:<\/strong> It gives you information about the node like its mode: JOINING, LEAVING, NORMAL, DECOMMISSIONED, CLIENT. <\/li>\n\n\n\n<li><strong>nodetool tablehistograms<\/strong> &lt;KEYSPACES&gt; &lt;TABLE&gt;: It shows READ\/WRITE latency on particular tables in keyspaces<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"> <strong>Which Query Language does it follows?<\/strong><\/h3>\n\n\n\n<p><strong>CQL (Cassandra Query language)<\/strong><\/p>\n\n\n\n<p><strong>Creating a database:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"https:\/\/opstree.com\/blog\/\/wp-content\/uploads\/2023\/07\/screenshot-2023-07-15-at-10.06.31-pm.png?w=1024\" alt=\"\" class=\"wp-image-14698\" style=\"width:800px\" width=\"800\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Creation of Schema in databases<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" data-id=\"14696\" src=\"https:\/\/opstree.com\/blog\/\/wp-content\/uploads\/2023\/07\/screenshot-2023-07-15-at-7.38.38-pm.png?w=1024\" alt=\"\" class=\"wp-image-14696\" style=\"width:800px\" width=\"800\" \/><\/figure>\n<\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wrapping Up&#8230;<\/h2>\n\n\n\n<p>So these were some basic steps and commands you should know before going to migration.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">In our next blog, we will talk about DC\/DR Setup of Cassandra in which we will discuss terms like SimpleStrategy and Cassandra.yaml. So stay tuned for my next blog  <\/p>\n\n\n\n<p><strong>Blog Pundits: <strong><a href=\"https:\/\/opstree.com\/blog\/\/author\/bhupendersinghb5dca0b393\/\"><strong>Bhupender rawat<\/strong><\/a><\/strong> and <a rel=\"noreferrer noopener\" href=\"https:\/\/opstree.com\/blog\/\/author\/sandeep7c51ad81ba\/\" target=\"_blank\">Sandeep Rawat<\/a><\/strong><\/p>\n\n\n\n<p><strong>OpsTree is an End-to-End <a href=\"https:\/\/opstree.com\/services\/\" target=\"_blank\" rel=\"noreferrer noopener\">DevOps Solution<\/a> Provider.<\/strong><\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/opstree.com\/contact-us\/?utm_source=WordPress&amp;utm_medium=Blog&amp;utm_campaign=Multi-Account+Management+using+AWS+Control+Tower\">Contact Us<\/a><\/div>\n<\/div>\n\n\n\n<p class=\"has-text-align-center\"><strong>Connect with Us<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-social-links aligncenter is-content-justification-center is-layout-flex wp-container-core-social-links-is-layout-1 wp-block-social-links-is-layout-flex\"><li class=\"wp-social-link wp-social-link-linkedin  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.linkedin.com\/company\/opstree-solutions\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">LinkedIn<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-youtube  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.youtube.com\/channel\/UCeLma6SpNYH7jjYKSBNSexw\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">YouTube<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-github  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/github.com\/OpsTree\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12,2C6.477,2,2,6.477,2,12c0,4.419,2.865,8.166,6.839,9.489c0.5,0.09,0.682-0.218,0.682-0.484 c0-0.236-0.009-0.866-0.014-1.699c-2.782,0.602-3.369-1.34-3.369-1.34c-0.455-1.157-1.11-1.465-1.11-1.465 c-0.909-0.62,0.069-0.608,0.069-0.608c1.004,0.071,1.532,1.03,1.532,1.03c0.891,1.529,2.341,1.089,2.91,0.833 c0.091-0.647,0.349-1.086,0.635-1.337c-2.22-0.251-4.555-1.111-4.555-4.943c0-1.091,0.39-1.984,1.03-2.682 C6.546,8.54,6.202,7.524,6.746,6.148c0,0,0.84-0.269,2.75,1.025C10.295,6.95,11.15,6.84,12,6.836 c0.85,0.004,1.705,0.114,2.504,0.336c1.909-1.294,2.748-1.025,2.748-1.025c0.546,1.376,0.202,2.394,0.1,2.646 c0.64,0.699,1.026,1.591,1.026,2.682c0,3.841-2.337,4.687-4.565,4.935c0.359,0.307,0.679,0.917,0.679,1.852 c0,1.335-0.012,2.415-0.012,2.741c0,0.269,0.18,0.579,0.688,0.481C19.138,20.161,22,16.416,22,12C22,6.477,17.523,2,12,2z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">GitHub<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-facebook  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.facebook.com\/opstree\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Facebook<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-medium  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/medium.com\/buildpiper\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M20.962,7.257l-5.457,8.867l-3.923-6.375l3.126-5.08c0.112-0.182,0.319-0.286,0.527-0.286c0.05,0,0.1,0.008,0.149,0.02 c0.039,0.01,0.078,0.023,0.114,0.041l5.43,2.715l0.006,0.003c0.004,0.002,0.007,0.006,0.011,0.008 C20.971,7.191,20.98,7.227,20.962,7.257z M9.86,8.592v5.783l5.14,2.57L9.86,8.592z M15.772,17.331l4.231,2.115 C20.554,19.721,21,19.529,21,19.016V8.835L15.772,17.331z M8.968,7.178L3.665,4.527C3.569,4.479,3.478,4.456,3.395,4.456 C3.163,4.456,3,4.636,3,4.938v11.45c0,0.306,0.224,0.669,0.498,0.806l4.671,2.335c0.12,0.06,0.234,0.088,0.337,0.088 c0.29,0,0.494-0.225,0.494-0.602V7.231C9,7.208,8.988,7.188,8.968,7.178z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Medium<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-twitter  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/twitter.com\/opstreedevops\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M22.23,5.924c-0.736,0.326-1.527,0.547-2.357,0.646c0.847-0.508,1.498-1.312,1.804-2.27 c-0.793,0.47-1.671,0.812-2.606,0.996C18.324,4.498,17.257,4,16.077,4c-2.266,0-4.103,1.837-4.103,4.103 c0,0.322,0.036,0.635,0.106,0.935C8.67,8.867,5.647,7.234,3.623,4.751C3.27,5.357,3.067,6.062,3.067,6.814 c0,1.424,0.724,2.679,1.825,3.415c-0.673-0.021-1.305-0.206-1.859-0.513c0,0.017,0,0.034,0,0.052c0,1.988,1.414,3.647,3.292,4.023 c-0.344,0.094-0.707,0.144-1.081,0.144c-0.264,0-0.521-0.026-0.772-0.074c0.522,1.63,2.038,2.816,3.833,2.85 c-1.404,1.1-3.174,1.756-5.096,1.756c-0.331,0-0.658-0.019-0.979-0.057c1.816,1.164,3.973,1.843,6.29,1.843 c7.547,0,11.675-6.252,11.675-11.675c0-0.178-0.004-0.355-0.012-0.531C20.985,7.47,21.68,6.747,22.23,5.924z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Twitter<\/span><\/a><\/li><\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Well, I am a big fan of Apaches tools after Kafka and Zookeeper this would be my third tool Cassandra and my first database. I and my colleague have previously posted a blog on Kafka too. Please read this also you will also find it useful. So while working casually like any other day. I &hellip; <a href=\"https:\/\/opstree.com\/blog\/2023\/08\/01\/apache-cassandra-migration-3-x-to-4-x-episode-1-basics\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Apache Cassandra Migration: 3.x to 4.x Episode: 1 Basics&#8221;<\/span><\/a><\/p>\n","protected":false},"author":200627995,"featured_media":29900,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[28070474],"tags":[566348,475,1279075,768739308,676319247,4996032],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2025\/11\/DevSecOps-1.jpg","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pfDBOm-3Or","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/14659"}],"collection":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/users\/200627995"}],"replies":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/comments?post=14659"}],"version-history":[{"count":24,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/14659\/revisions"}],"predecessor-version":[{"id":14983,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/14659\/revisions\/14983"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media\/29900"}],"wp:attachment":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media?parent=14659"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/categories?post=14659"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/tags?post=14659"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}