Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL से BigQuery में डेटा माइग्रेट करने का सर्वोत्तम अभ्यास

मैं एक ही समस्या के साथ चल रहा हूँ, यहाँ मेरा समाधान है:

MySQL से डेटा निर्यात करना

सबसे पहले, इस तरह से MySQL से डेटा निर्यात करें:

SELECT * INTO OUTFILE 'filename.csv' CHARACTER SET 'utf8' 
FIELDS TERMINATED BY '\t' OPTIONALLY ENCLOSED BY '' 
FROM table <yourtable>

यह वास्तव में एक tsv फ़ाइल (टैब से अलग किए गए मान) है, लेकिन आप उन्हें csv विचार के अनुसार आयात कर सकते हैं।

बड़ी क्वेरी में आयात करें

इस तरह आप इसे निम्नलिखित मापदंडों के साथ बड़ी क्वेरी में आयात करने में सक्षम होना चाहिए:

bq load --field_delimiter="\t" --null_marker="\N" --quote="" \
PROJECT:DATASET.tableName gs://bucket/data.csv.gz table_schema.json

नोट

  1. यदि आपके MySQL डेटाबेस में किसी भी फ़ील्ड में एक टैब वर्ण है (\t ), यह आपके कॉलम को तोड़ देगा। इसे रोकने के लिए आप SQL फ़ंक्शन REPLACE(<column>, '\t', ' ') जोड़ सकते हैं स्तंभों पर और यह टैब से रिक्त स्थान में परिवर्तित हो जाएगा।

  2. यदि आप तालिका स्कीमा को बड़ी क्वेरी के वेब इंटरफ़ेस में सेट करते हैं तो आपको हर बार CSV लोड करने पर उसे निर्दिष्ट करने की आवश्यकता नहीं होगी।

मुझे आशा है कि यह आपके लिए काम करेगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql डेटाबेस स्वचालित विभाजन

  2. प्रत्येक लिंक में कैसे जोड़ें (a href) php की सहायता से एक rel विशेषता को टैग करें?

  3. डेटाबेस फ़ील्ड को 1 . से बढ़ाएँ

  4. रूबी mysql2 त्रुटि:

  5. mysql + अद्यतन शीर्ष n