{"id":7859,"date":"2022-07-28T03:36:24","date_gmt":"2022-07-28T10:36:24","guid":{"rendered":"https:\/\/en.pingcap.com\/?p=7859"},"modified":"2025-06-30T04:45:09","modified_gmt":"2025-06-30T11:45:09","slug":"using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake","status":"publish","type":"post","link":"https:\/\/www.pingcap.com\/ko\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/","title":{"rendered":"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake"},"content":{"rendered":"\n<p><strong>TiDB Cloud<\/strong> is a fully-managed Database-as-a-Service (DBaaS) that brings TiDB, an open source Hybrid Transactional and Analytical Processing (HTAP) database, to your cloud.&nbsp;<\/p>\n\n\n\n<p><strong>Airbyte<\/strong> is an open-source data integration engine that helps you consolidate your data in data warehouses, data lakes, and databases.&nbsp;<\/p>\n\n\n\n<p><strong>Snowflake<\/strong> provides Software-as-a-Service (SaaS) service with a single and global platform for data warehousing with seamless data collaboration.<\/p>\n\n\n\n<p>Airbyte can help you connect TiDB Cloud with Snowflake, migrate data from TiDB Cloud, the source, to Snowflake, the destination, and leverage Snowflake&#8217;s strong analytical capability to respond to your multi-dimensional analytical queries. (The source data can come from either TiDB Cloud or a self-deployed TiDB cluster.) Airbyte can also synchronize data from TiDB Cloud to Snowflake periodically and give you a macro-progressive data view.&nbsp;<\/p>\n\n\n\n<p>In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud with Snowflake, and how to make data migration from the former to the latter.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Get_started_with_TiDB_Cloud_Dev_Tier\"><\/span>Get started with TiDB Cloud Dev Tier<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><a href=\"https:\/\/tidbcloud.com\/free-trial\/\">Sign up<\/a> for a TiDB Cloud account free of charge and log in to it. If you already have a TiDB Cloud account, you can also <a href=\"https:\/\/tidbcloud.com\/signin\">log in<\/a> to your account directly.<\/li>\n\n\n\n<li>On the <strong>Active Clusters<\/strong> page, click <strong>Create Cluster<\/strong>. Then, in the <strong>Developer Tier<\/strong> box, select <strong>1 year Free Trial<\/strong>.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1878\" height=\"988\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/UzU1KNGonQ.png\" alt=\"\" class=\"wp-image-7894\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/UzU1KNGonQ.png 1878w, https:\/\/static.pingcap.com\/files\/2022\/07\/UzU1KNGonQ-300x158.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/UzU1KNGonQ-1024x539.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/UzU1KNGonQ-768x404.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/UzU1KNGonQ-1536x808.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/UzU1KNGonQ-1440x758.png 1440w\" sizes=\"auto, (max-width: 1878px) 100vw, 1878px\" \/><\/figure>\n\n\n\n<p><strong>Note<\/strong>: You can also select the paid TiDB\u00a0<strong>Dedicated Tier<\/strong>\u00a0to get better performance.\u00a0<\/p>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Set up your cluster name, cloud provider (only AWS is available for the Dev Tier), and region. (A nearby region is recommended.) Then, click <strong>Create<\/strong> to create your cluster.<\/li>\n<\/ol>\n\n\n\n<p><strong>Note<\/strong>: It usually takes 1 to 3 minutes to create your TiDB Cloud cluster.<\/p>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>After you create a cluster, you will be directed to the Active Clusters page. Click the cluster name you just created and go to the cluster control panel. <\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"749\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-17.png\" alt=\"\" class=\"wp-image-7902\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-17.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-17-300x140.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-17-1024x479.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-17-768x360.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-17-1536x719.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-17-1440x674.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"5\" class=\"wp-block-list\">\n<li>Click <strong>Connect <\/strong>to create a traffic filter. <\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1363\" height=\"702\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed.png\" alt=\"\" class=\"wp-image-7879\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed.png 1363w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-300x155.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1024x527.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-768x396.png 768w\" sizes=\"auto, (max-width: 1363px) 100vw, 1363px\" \/><\/figure>\n\n\n\n<ol start=\"6\" class=\"wp-block-list\">\n<li>On the pop-up window, set 0.0.0.0\/0 as the IP Address to allow access from any other IP address. <\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"832\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-13.png\" alt=\"\" class=\"wp-image-7880\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-13.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-13-300x156.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-13-1024x532.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-13-768x399.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-13-1536x799.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-13-1440x749.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Import_sample_data_to_TiDB_Cloud\"><\/span>Import sample data to TiDB Cloud<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>After you create a TiDB Cloud cluster, you can&nbsp;<a href=\"https:\/\/docs.pingcap.com\/tidbcloud\/import-sample-data\">migrate data<\/a>&nbsp;to TiDB Cloud. Here, we use&nbsp;<a href=\"https:\/\/ride.capitalbikeshare.com\/system-data\">Capital Bikeshare\u2019s system dataset<\/a>&nbsp;as the sample data to walk you through how to import data to TiDB Cloud.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Import<\/strong>\u00a0and you will be directed to the\u00a0<strong>Data Import Task<\/strong>\u00a0page.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"683\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-12.png\" alt=\"\" class=\"wp-image-7881\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-12.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-12-300x128.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-12-1024x437.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-12-768x328.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-12-1536x656.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-12-1440x615.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"1240\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-8.png\" alt=\"\" class=\"wp-image-7885\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-8.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-8-300x233.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-8-1024x794.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-8-768x595.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-8-1536x1190.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-8-1440x1116.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Fill the following parameters in the fields on the\u00a0<strong>Data Import Task<\/strong>\u00a0page.\n<ul class=\"wp-block-list\">\n<li><strong>Data Source Type<\/strong>:\u00a0<code>AWS S3<\/code><\/li>\n\n\n\n<li><strong>Bucket URL<\/strong>:\u00a0<code>s3:\/\/tidbcloud-samples\/data-ingestion\/<\/code><\/li>\n\n\n\n<li><strong>Data Format<\/strong>:\u00a0<code>TiDB Dumpling<\/code><\/li>\n\n\n\n<li><strong>Role-ARN<\/strong>:\u00a0<code>arn:aws:iam::385595570414:role\/import-sample-access<\/code><\/li>\n\n\n\n<li><strong>Target Cluster Username and password<\/strong>: Same as that of your TiDB cluster.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>After you fill in all the fields, click\u00a0<strong>Import<\/strong>. Now, the sample data can be imported to TiDB Cloud. It usually takes around 3 minutes to finish the import process.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Set_up_Airbyte-specific_entities_in_Snowflake\"><\/span>Set up Airbyte-specific entities in Snowflake<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>To write data into Snowflake, you need to create Airbyte-specific Snowflake entities, including a warehouse, a database, a schema, a user, and a role, with the OWNERSHIP permission.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><a href=\"https:\/\/signup.snowflake.com\/\">Sign up<\/a>\u00a0for a Snowflake account first, which allows you a 30-day free trial. If you already have one, you can\u00a0<a href=\"https:\/\/www.snowflake.com\/login\/\">sign in<\/a>\u00a0to your account directly.<\/li>\n\n\n\n<li>After you sign in to your Snowflake account, click\u00a0<strong>Worksheets<\/strong>\u00a0to create a new\u00a0<a href=\"https:\/\/docs.snowflake.com\/en\/user-guide\/ui-worksheet.html\">worksheet<\/a>.\u00a0<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"585\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-9.png\" alt=\"\" class=\"wp-image-7884\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-9.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-9-300x110.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-9-1024x374.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-9-768x281.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-9-1536x562.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-9-1440x527.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Change the\u00a0<code>password<\/code>,\u00a0<code>aribyte_role<\/code>,\u00a0<code>airbyte_username<\/code>,\u00a0<code>airbyte_warehouse<\/code>,\u00a0<code>airbyte_database<\/code>, and\u00a0<code>airbyte_schema<\/code>\u00a0in the following script. Here, we use the default parameter as an example. Then, copy the whole script and paste it into the\u00a0<strong>Worksheets<\/strong>\u00a0page.<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>-- set variables (these need to be uppercase)\nset airbyte_role = 'AIRBYTE_ROLE';\nset airbyte_username = 'AIRBYTE_USER';\nset airbyte_warehouse = 'AIRBYTE_WAREHOUSE';\nset airbyte_database = 'AIRBYTE_DATABASE';\nset airbyte_schema = 'AIRBYTE_SCHEMA';\n-- set user password\nset airbyte_password = 'password';\nbegin;\n-- create Airbyte role\nuse role securityadmin;\ncreate role if not exists identifier($airbyte_role);\ngrant role identifier($airbyte_role) to role SYSADMIN;\n-- create Airbyte user\ncreate user if not exists identifier($airbyte_username)\npassword = $airbyte_password\ndefault_role = $airbyte_role\ndefault_warehouse = $airbyte_warehouse;\ngrant role identifier($airbyte_role) to user identifier($airbyte_username);\n-- change role to sysadmin for warehouse \/ database steps\nuse role sysadmin;\n-- create Airbyte warehouse\ncreate warehouse if not exists identifier($airbyte_warehouse)\nwarehouse_size = xsmall\nwarehouse_type = standard\nauto_suspend = 60\nauto_resume = true\ninitially_suspended = true;\n-- create Airbyte database\ncreate database if not exists identifier($airbyte_database);\n-- grant Airbyte warehouse access\ngrant USAGE\non warehouse identifier($airbyte_warehouse)\nto role identifier($airbyte_role);\n-- grant Airbyte database access\ngrant OWNERSHIP\non database identifier($airUse existing destinationbyte_database)\nto role identifier($airbyte_role);\ncommit;\nbegin;\nUSE DATABASE identifier($airbyte_database);\n-- create schema for Airbyte data\nCREATE SCHEMA IF NOT EXISTS identifier($airbyte_schema);\ncommit;\nbegin;\n-- grant Airbyte schema access\ngrant OWNERSHIP\non schema identifier($airbyte_schema)\nto role identifier($airbyte_role);\ncommit;       <\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"706\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-10.png\" alt=\"\" class=\"wp-image-7883\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-10.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-10-300x132.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-10-1024x452.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-10-768x339.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-10-1536x678.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-10-1440x635.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>Click <strong>Query<\/strong>.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1280\" height=\"799\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-11.png\" alt=\"\" class=\"wp-image-7882\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-11.png 1280w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-11-300x187.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-11-1024x639.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-11-768x479.png 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/figure>\n\n\n\n<ol start=\"5\" class=\"wp-block-list\">\n<li>Go back to the Airbyte home page and click\u00a0<strong>Database<\/strong>. You\u2019ll see that a worksheet named\u00a0<code>AIRBYTE_DATABASE<\/code>\u00a0has been created with an\u00a0<code>ACCOUNTADMIN<\/code>\u00a0and\u00a0<code>AIRBYTE_ROLE<\/code>.\u00a0<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"657\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-6.png\" alt=\"\" class=\"wp-image-7887\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-6.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-6-300x123.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-6-1024x420.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-6-768x315.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-6-1536x631.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-6-1440x591.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<p><strong>Note<\/strong>: Make a note of these parameters. You will be entering some of them again later when you create a Snowflake destination.You can also learn more at the&nbsp;<a href=\"https:\/\/docs.airbyte.com\/integrations\/destinations\/snowflake\">Airbyte documentation<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Deploy_Airbyte_in_your_own_workspace\"><\/span>Deploy Airbyte in your own workspace<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>You only need to take a few steps to make local deployment of Airbyte.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Install\u00a0<a href=\"https:\/\/www.docker.com\/products\/docker-desktop\">Docker<\/a>, an application container, onto your workspace.<\/li>\n\n\n\n<li>Clone the Airbyte source code shown below to your Docker.<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>$ git clone https:\/\/github.com\/airbytehq\/airbyte.git\n$ cd airbyte<\/code><\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Run the Docker images with\u00a0<code>docker-compose<\/code>. When you see the Airbyte banner, the UI is ready to go at\u00a0<code>http:\/\/localhost:8000<\/code>.<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>$ docker-compose up<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Create_a_TiDB_Cloud_Source_in_Airbyte\"><\/span>Create a TiDB Cloud Source in Airbyte<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>After you deploy Airbyte, you can set up a new source connector for TiDB Cloud.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Sources<\/strong>\u00a0on your Docker panel, and select\u00a0<strong>TiDB<\/strong>\u00a0as your source type.<\/li>\n\n\n\n<li>Fill in all the fields including the\u00a0<strong>Name, Host, Port, Database, Username,<\/strong>\u00a0and\u00a0<strong>Password<\/strong>\u00a0on the panel.\u00a0<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"1519\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-5.png\" alt=\"\" class=\"wp-image-7888\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-5.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-5-300x285.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-5-1024x972.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-5-768x729.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-5-1536x1458.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-5-1440x1367.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>In the\u00a0<strong>JDBC URL Params<\/strong>\u00a0field, fill in either\u00a0<code>enabledTLSProtocols=TLSv1.2<\/code>\u00a0or\u00a0<code>enabledTLSProtocols=TLSv1.3<\/code>\u00a0to set your TLS protocols to\u00a0<strong>TLSv1.2<\/strong>\u00a0or\u00a0<strong>TLSv1.3<\/strong>.<\/li>\n\n\n\n<li>Enable\u00a0<strong>SSL Connection.<\/strong><br><strong>Note<\/strong>: If you want to disable the\u00a0<strong>TLS connection<\/strong>\u00a0with TiDB Cloud, you need to change the previous parameter in the\u00a0<strong>JDBC URL Params<\/strong>\u00a0field to\u00a0<code>useSSL=false<\/code>, and disable\u00a0<strong>SSL Connection<\/strong>.<\/li>\n\n\n\n<li>Click\u00a0<strong>Set up source<\/strong>\u00a0to create the TiDB Cloud source.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Create_a_Snowflake_destination_in_Airbyte\"><\/span>Create a Snowflake destination in Airbyte<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click\u00a0<strong>Destinations<\/strong>\u00a0on your Docker panel and select\u00a0<strong>Snowflake<\/strong>\u00a0as the destination type.<\/li>\n\n\n\n<li>Fill in all the fields including the\u00a0<strong>Name, Host, Role, Warehouse, Database, Default Schema,<\/strong>\u00a0and\u00a0<strong>Username.<\/strong>\u00a0These are parameters in the\u00a0<strong>Set up Airbyte-specific entities in Snowflake<\/strong>\u00a0section.<\/li>\n\n\n\n<li>In the\u00a0<strong>Authorization Method<\/strong>\u00a0drop-down box, select\u00a0<strong>Username and Password<\/strong>\u00a0to associate the\u00a0<strong>Password<\/strong>\u00a0with the\u00a0<strong>Username<\/strong>.\u00a0<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1262\" height=\"1600\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4.png\" alt=\"\" class=\"wp-image-7889\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4.png 1262w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-237x300.png 237w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-808x1024.png 808w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-768x974.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-1212x1536.png 1212w\" sizes=\"auto, (max-width: 1262px) 100vw, 1262px\" \/><\/figure>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>In the\u00a0<strong>Loading Method<\/strong>\u00a0drop-down box, select\u00a0<strong>[Recommended] Internal Staging<\/strong>.<\/li>\n\n\n\n<li>Click\u00a0<strong>Set up destination<\/strong>\u00a0to create the Snowflake destination.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Build_the_connection_and_transform_data_from_TiDB_Cloud_to_Snowflake\"><\/span>Build the connection and transform data from TiDB Cloud to Snowflake<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>After you set up the TiDB Cloud source and Snowflake destination, you can build the connection between the two.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Select\u00a0<strong>Destinations<\/strong>\u00a0on your Docker panel and click\u00a0<strong>New Connection<\/strong>.<\/li>\n\n\n\n<li>Click\u00a0<strong>Create a source<\/strong>\u00a0and select\u00a0<strong>Select an existing source<\/strong>. Then, in the drop-down box, choose\u00a0<strong>TiDB<\/strong>\u00a0which you previously created and click\u00a0<strong>Use existing source<\/strong>.\u00a0<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"681\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed.jpeg\" alt=\"\" class=\"wp-image-7886\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed.jpeg 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-300x128.jpeg 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1024x436.jpeg 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-768x327.jpeg 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1536x654.jpeg 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1440x613.jpeg 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Similarly, select\u00a0<strong>Snowflake<\/strong>\u00a0we created previously as the destination, and click\u00a0<strong>Use existing destination<\/strong>.\u00a0<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"839\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4.jpeg\" alt=\"\" class=\"wp-image-7890\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4.jpeg 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-300x157.jpeg 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-1024x537.jpeg 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-768x403.jpeg 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-1536x805.jpeg 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-4-1440x755.jpeg 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>After you select the source and destination, go to the\u00a0<strong>Set up connection<\/strong>\u00a0panel. Create a name to help you identify this connection. Here, we use\u00a0<strong>TiDB-Snowflake<\/strong>\u00a0as the connection name.\u00a0<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"1578\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3.png\" alt=\"\" class=\"wp-image-7891\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-300x296.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-1024x1010.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-768x757.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-1536x1515.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-1440x1420.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"5\" class=\"wp-block-list\">\n<li>In the\u00a0<strong>Replication frequency<\/strong>\u00a0field, select\u00a0<strong>Manual<\/strong>. This means the data will be migrated manually.<\/li>\n\n\n\n<li>In the\u00a0<strong>Destination Namespace<\/strong>\u00a0field, select\u00a0<strong>Mirror source structure<\/strong>\u00a0to make the data stored in the same location in the destination as in the source.<\/li>\n\n\n\n<li>Select and activate the schema you want to migrate from TiDB Cloud to Snowflake. Here, as an example, we select the\u00a0<code>trips<\/code>\u00a0and\u00a0<code>type_count<\/code>\u00a0tables.<br><strong>Notes:<\/strong>\n<ul class=\"wp-block-list\">\n<li><strong><a href=\"https:\/\/docs.airbyte.com\/integrations\/sources\/tidb\/#features\">TiDB source connector<\/a><\/strong>\u00a0supports two types of synchronization:\u00a0<strong>Incremental<\/strong>\u00a0and\u00a0<strong>Full Refresh<\/strong>. In the\u00a0<strong>Incremental sync mode<\/strong>, Airbyte only reads records added to the source since the last sync task. (In the first sync task, the Incremental sync mode is equivalent to the\u00a0<strong>Full Refresh sync mode<\/strong>.) In the\u00a0<strong>Full Refresh sync mode<\/strong>, Airbyte reads all the records in the source and migrates them to the destination during every sync task.<\/li>\n\n\n\n<li>You can set a sync mode for each table seperately in the\u00a0<strong>Namespace<\/strong>\u00a0section in Airbyte.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>In the\u00a0<strong>Normalization &amp; Transformation<\/strong>\u00a0section, select\u00a0<strong>Normalized tabular data<\/strong>.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"1578\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3.png\" alt=\"\" class=\"wp-image-7891\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-300x296.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-1024x1010.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-768x757.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-1536x1515.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-3-1440x1420.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ol start=\"9\" class=\"wp-block-list\">\n<li>Click\u00a0<strong>Set up connection<\/strong>\u00a0to start the data synchronization task. It usually takes a few minutes to complete this process.\u00a0<\/li>\n<\/ol>\n\n\n\n<p><strong>Congratulations!<\/strong>\u00a0After you finish all the steps above, you have successfully migrated the data from TiDB Cloud to Snowflake, and stored the data in the\u00a0<code>AIRBYTE_DATABASE.BIKESHARE<\/code>\u00a0schema. Now, you can make analytical queries in Snowflake.\u00a0<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"1153\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1.png\" alt=\"\" class=\"wp-image-7893\" srcset=\"https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1.png 1600w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1-300x216.png 300w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1-1024x738.png 1024w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1-768x553.png 768w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1-1536x1107.png 1536w, https:\/\/static.pingcap.com\/files\/2022\/07\/unnamed-1-1440x1038.png 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Summary\"><\/span>Summary<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>In this tutorial, you\u2019ve learned how to configure TiDB Cloud, Snowflake, and Airbyte, and how to use Airbyte to connect the other two. You also learned how to migrate data from TiDB Cloud and Snowflake for multi-dimensional analytics.&nbsp;<a href=\"https:\/\/docs.airbyte.com\/integrations\/sources\/tidb\">TiDB source connector<\/a>&nbsp;is already available in Airbyte local deployment, and soon we will release the TiDB destination connector to support data migration from other sources.<\/p>\n\n\n\n<p>If you encounter any problem during the configuration or migration, you can contact us through&nbsp;<a href=\"https:\/\/twitter.com\/PingCAP\">Twitter<\/a>, our&nbsp;<a href=\"https:\/\/slack.tidb.io\/invite?team=tidb-community&amp;channel=everyone&amp;ref=pingcap-blog\">Slack channel<\/a>, or you can join TiDB Internals to share your thoughts and feedback with us.<\/p>\n\n\n\n<p><strong>Keep reading:<\/strong><br><a href=\"https:\/\/www.pingcap.com\/blog\/analytics-on-tidb-cloud-with-databricks\/\">Analytics on TiDB Cloud with Databricks<\/a><br><a href=\"https:\/\/www.pingcap.com\/blog\/how-to-achieve-high-performance-data-ingestion-to-tidb-in-apache-flink\/\">How to Achieve High-Performance Data Ingestion to TiDB in Apache Flink<\/a><br><a href=\"https:\/\/www.pingcap.com\/blog\/data-transformation-on-tidb-made-easier\/\">Data Transformation on TiDB Made Easier<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud and Snowflake and how to migrate data from TiDB Cloud to Snowflake.<\/p>","protected":false},"author":179,"featured_media":7864,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ub_ctt_via":"","footnotes":""},"categories":[13],"tags":[163,31],"class_list":["post-7859","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-product","tag-app-developer","tag-tidb-cloud"],"acf":[],"featured_image_src":"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg","author_info":{"display_name":"Qiang Wu","author_link":"https:\/\/www.pingcap.com\/ko\/blog\/author\/wuqiang\/"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Using Airbyte to Migrate Data from TiDB Cloud to Snowflake | TiDB<\/title>\n<meta name=\"description\" content=\"In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud and Snowflake and how to migrate data from TiDB Cloud to Snowflake.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.pingcap.com\/ko\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake | TiDB\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud and Snowflake and how to migrate data from TiDB Cloud to Snowflake.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pingcap.com\/ko\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\" \/>\n<meta property=\"og:site_name\" content=\"TiDB\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/pingcap2015\" \/>\n<meta property=\"article:published_time\" content=\"2022-07-28T10:36:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-30T11:45:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/static.pingcap.com\/files\/2022\/07\/migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1340\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Qiang Wu\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/static.pingcap.com\/files\/2022\/07\/migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg\" \/>\n<meta name=\"twitter:creator\" content=\"@PingCAP\" \/>\n<meta name=\"twitter:site\" content=\"@PingCAP\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Qiang Wu\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\"},\"author\":{\"name\":\"Qiang Wu\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/person\/6d5c9724aac811f92d08b1680044d3d4\"},\"headline\":\"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake\",\"datePublished\":\"2022-07-28T10:36:24+00:00\",\"dateModified\":\"2025-06-30T11:45:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\"},\"wordCount\":1324,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.pingcap.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg\",\"keywords\":[\"App Developer\",\"TiDB Cloud\"],\"articleSection\":[\"Product\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\",\"url\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\",\"name\":\"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake | TiDB\",\"isPartOf\":{\"@id\":\"https:\/\/www.pingcap.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg\",\"datePublished\":\"2022-07-28T10:36:24+00:00\",\"dateModified\":\"2025-06-30T11:45:09+00:00\",\"description\":\"In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud and Snowflake and how to migrate data from TiDB Cloud to Snowflake.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage\",\"url\":\"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg\",\"contentUrl\":\"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg\",\"width\":2560,\"height\":853},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.pingcap.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.pingcap.com\/#website\",\"url\":\"https:\/\/www.pingcap.com\/\",\"name\":\"TiDB\",\"description\":\"TiDB | SQL at Scale\",\"publisher\":{\"@id\":\"https:\/\/www.pingcap.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.pingcap.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.pingcap.com\/#organization\",\"name\":\"PingCAP\",\"url\":\"https:\/\/www.pingcap.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png\",\"contentUrl\":\"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png\",\"width\":811,\"height\":232,\"caption\":\"PingCAP\"},\"image\":{\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/facebook.com\/pingcap2015\",\"https:\/\/x.com\/PingCAP\",\"https:\/\/linkedin.com\/company\/pingcap\",\"https:\/\/youtube.com\/channel\/UCuq4puT32DzHKT5rU1IZpIA\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/person\/6d5c9724aac811f92d08b1680044d3d4\",\"name\":\"Qiang Wu\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/static.pingcap.com\/files\/2022\/10\/17234942\/avatar.jpg\",\"contentUrl\":\"https:\/\/static.pingcap.com\/files\/2022\/10\/17234942\/avatar.jpg\",\"caption\":\"Qiang Wu\"},\"url\":\"https:\/\/www.pingcap.com\/ko\/blog\/author\/wuqiang\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake | TiDB","description":"In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud and Snowflake and how to migrate data from TiDB Cloud to Snowflake.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.pingcap.com\/ko\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/","og_locale":"ko_KR","og_type":"article","og_title":"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake | TiDB","og_description":"In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud and Snowflake and how to migrate data from TiDB Cloud to Snowflake.","og_url":"https:\/\/www.pingcap.com\/ko\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/","og_site_name":"TiDB","article_publisher":"https:\/\/facebook.com\/pingcap2015","article_published_time":"2022-07-28T10:36:24+00:00","article_modified_time":"2025-06-30T11:45:09+00:00","og_image":[{"width":2560,"height":1340,"url":"https:\/\/static.pingcap.com\/files\/2022\/07\/migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg","type":"image\/jpeg"}],"author":"Qiang Wu","twitter_card":"summary_large_image","twitter_image":"https:\/\/static.pingcap.com\/files\/2022\/07\/migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg","twitter_creator":"@PingCAP","twitter_site":"@PingCAP","twitter_misc":{"Written by":"Qiang Wu","Est. reading time":"8\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#article","isPartOf":{"@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/"},"author":{"name":"Qiang Wu","@id":"https:\/\/www.pingcap.com\/#\/schema\/person\/6d5c9724aac811f92d08b1680044d3d4"},"headline":"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake","datePublished":"2022-07-28T10:36:24+00:00","dateModified":"2025-06-30T11:45:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/"},"wordCount":1324,"commentCount":0,"publisher":{"@id":"https:\/\/www.pingcap.com\/#organization"},"image":{"@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage"},"thumbnailUrl":"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg","keywords":["App Developer","TiDB Cloud"],"articleSection":["Product"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/","url":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/","name":"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake | TiDB","isPartOf":{"@id":"https:\/\/www.pingcap.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage"},"image":{"@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage"},"thumbnailUrl":"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg","datePublished":"2022-07-28T10:36:24+00:00","dateModified":"2025-06-30T11:45:09+00:00","description":"In this tutorial, we will walk you through how to use Airbyte to connect TiDB Cloud and Snowflake and how to migrate data from TiDB Cloud to Snowflake.","breadcrumb":{"@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#primaryimage","url":"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg","contentUrl":"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg","width":2560,"height":853},{"@type":"BreadcrumbList","@id":"https:\/\/www.pingcap.com\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pingcap.com\/"},{"@type":"ListItem","position":2,"name":"Using Airbyte to Migrate Data from TiDB Cloud to Snowflake"}]},{"@type":"WebSite","@id":"https:\/\/www.pingcap.com\/#website","url":"https:\/\/www.pingcap.com\/","name":"\ud2f0DB","description":"TiDB | SQL at Scale","publisher":{"@id":"https:\/\/www.pingcap.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pingcap.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.pingcap.com\/#organization","name":"PingCAP","url":"https:\/\/www.pingcap.com\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/","url":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","contentUrl":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","width":811,"height":232,"caption":"PingCAP"},"image":{"@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/facebook.com\/pingcap2015","https:\/\/x.com\/PingCAP","https:\/\/linkedin.com\/company\/pingcap","https:\/\/youtube.com\/channel\/UCuq4puT32DzHKT5rU1IZpIA"]},{"@type":"Person","@id":"https:\/\/www.pingcap.com\/#\/schema\/person\/6d5c9724aac811f92d08b1680044d3d4","name":"Qiang Wu","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/#\/schema\/person\/image\/","url":"https:\/\/static.pingcap.com\/files\/2022\/10\/17234942\/avatar.jpg","contentUrl":"https:\/\/static.pingcap.com\/files\/2022\/10\/17234942\/avatar.jpg","caption":"Qiang Wu"},"url":"https:\/\/www.pingcap.com\/ko\/blog\/author\/wuqiang\/"}]}},"grav_blocks":false,"card_markup":"<a class=\"card-resource bg-white\" href=\"https:\/\/www.pingcap.com\/ko\/blog\/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake\/\"><div class=\"card-resource__image-container\"><img class=\"card-resource__image\" alt=\"use airbyte to migrate data from tidb cloud to snowflake\" src=\"https:\/\/static.pingcap.com\/files\/2022\/07\/use-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake-scaled.jpeg\" loading=\"lazy\" width=2560 height=853 \/><\/div><div class=\"card-resource__content-container\"><div class=\"card-resource__content-head\"><div class=\"card-resource__category\">Product<\/div><\/div><h5 class=\"card-resource__title\">Using Airbyte to Migrate Data from TiDB Cloud to Snowflake<\/h5><\/div><\/a>","_links":{"self":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts\/7859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/users\/179"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/comments?post=7859"}],"version-history":[{"count":69,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts\/7859\/revisions"}],"predecessor-version":[{"id":28024,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts\/7859\/revisions\/28024"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/media\/7864"}],"wp:attachment":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/media?parent=7859"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/categories?post=7859"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/tags?post=7859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}