Postgres Bulk Insert

Postgres Bulk Insert



הוספת כמות גדולה היא תהליך שמוסיף מספר שורות של נתונים לטבלה בפעולה אחת. זה יכול להיות הרבה יותר מהיר מהכנסת שורה אחת בכל פעם, במיוחד כאשר עוסקים בכמויות גדולות של נתונים.

השיטה הנפוצה ביותר לביצוע הוספה בתפזורת ב-PostgreSQL היא הפקודה COPY שיכולה לקחת את הנתונים מקובץ או מקלט רגיל ולהכניס אותם לטבלה. הפקודה COPY דורשת שהנתונים יהיו בפורמט מסוים, בדרך כלל קובץ CSV או טקסט.

הבה נחקור כיצד להשתמש בפקודה זו כדי לבצע הוספת כמות גדולה ב- PostgreSQL.







PostgreSQL Bulk Insert

תן לנו לחקור את השלבים לביצוע הוספה בכמות גדולה ב-PostgreSQL.



הכן את הנתונים שלך

לפני ביצוע הוספה בכמות גדולה, ודא שנתוני היעד בפורמט המתאים. אנו ממליצים שתגדיר את הנתונים שלך ב-CSV או TSV. אתה יכול לבנות את נתוני היעד בשורות ובעמודות המופרדות באמצעות פסיקים או טאבים.



התחבר ל-PostgreSQL

לאחר מכן, התחבר למסד הנתונים PostgreSQL שלך באמצעות הלקוח הרצוי. עבור הדרכה זו, אנו משתמשים בכלי השירות PSQL לנוחות שימוש וגישה אוניברסלית.





$ psql -IN postgres < שם בסיס הנתונים >

לדוגמה, אתה יכול להפעיל את השאילתה הבאה כדי להשתמש במסד הנתונים user_information:

$ psql -IN postgres מידע משתמש

אם אין לך את מסד הנתונים היעד, תוכל ליצור אותו באמצעות הפקודה CREATE DATABASE:



צור מסד נתונים < db_name >

צור טבלה

לאחר מכן, עלינו לוודא שהטבלה שבה אנו רוצים להכניס את הנתונים קיימת. מבנה הטבלה חייב להתאים למבנה הנתונים כולל סוגי הנתונים הנתמכים.

אם הטבלה לא קיימת, אתה יכול להשתמש בפקודה CREATE TABLE:

CREATE TABLE network_users (
תְעוּדַת זֶהוּת מפתח ראשי סדרתי,
שם משתמש VARCHAR ( 255 ) לא ריק,
ip_address INET,
mac_address MACADDR,
פנטומימה TEXT
) ;

הפקודה הנתונה צריכה ליצור טבלה בשם 'משתמשי רשת' עם העמודות id, שם משתמש, ip_address, mac_address ו-mime.

לאחר שהטבלה מוכנה, נוכל לטעון את הנתונים לטבלת PostgreSQL. שוב, טוב לוודא שקובץ הנתונים נגיש מהמכונה שבה השרת פועל.

בצע את ה- Bulk Insert

לאחר מכן, נוכל להשתמש בפקודה COPY כדי לטעון את הנתונים מהקובץ לטבלת מסד הנתונים. תחביר הפקודה הוא כדלקמן:

COPY table_name ( עמודה1, עמודה2, עמודה3 )
מ 'נתיב/אל/קובץ_נתונים'
עם ( פורמט csv | טקסט, DELIMITER 'תוחם' , HEADER ) ;

אתה יכול לציין את הפורמט (CSV או טקסט), את המפריד בשימוש בקובץ שלך (למשל, ',' עבור CSV, '\t' עבור TSV), והאם הקובץ שלך כולל שורת כותרת.

לדוגמה, כדי להעתיק את הנתונים לטבלת 'משתמשי רשת', נוכל להפעיל את הפקודה כדלקמן:

העתק רשת_משתמשי ( תְעוּדַת זֶהוּת , שם משתמש, ip_address, mac_address, mime ) מ 'משתמשי_רשת.
csv'
עם ( פורמט csv, מפריד ',' , כותרת ) ;

זה מאפשר ל-PostgreSQL לטעון את הנתונים מהקובץ לטבלה. אתה יכול לוודא אם ההוספה הצליחה על ידי שאילתת הנתונים בטבלה.

PostgreSQL Bulk Insert PgAdmin

אנו יכולים גם להשתמש בממשק גרפי ש-pgAdmin מספק לייבוא ​​קובץ נתונים.

התחל בהפעלת pgAdmin והתחבר למסד הנתונים PostgreSQL שלך על ידי מתן פרטי החיבור הדרושים.

לאחר מכן, אתר את הטבלה שבה ברצונך לבצע הוספה בתפזורת. אתה יכול למצוא את מסדי הנתונים והטבלאות שלך בחלונית הדפדפן.

לחץ לחיצה ימנית על הטבלה ובחר 'ייבוא/ייצוא'.

באשף 'ייבוא/ייצוא', בחר באפשרות 'ייבוא' ובחר את סוג מקור הנתונים. לדוגמה, אתה יכול לייבא שאילתה או את הלוח מקובץ.

בשלב הבא, ספק את פרטי הקובץ עבור התוספת בתפזורת. בחר את פורמט הקובץ (CSV, TSV, כדי לציין את הנתיב לקובץ הנתונים שלך, והגדר את המפריד המשמש בקובץ.

לאחר שביעות רצון מאפשרויות ייבוא ​​הקבצים שלך, לחץ על 'אישור' כדי להתחיל בתהליך הייבוא. אתה אמור לראות את מצב התהליך בחלונית השמאלית התחתונה.

תוכל לוודא אם הייבוא ​​הצליח על ידי פתיחת כלי השאילתות והפעל את השאילתה:

בחר * FROM network_users;

תְפוּקָה :

סיכום

בדקנו כיצד להשתמש ב-PSQL וב-pgAdmin כדי לבצע הוספת כמות גדולה מקובץ נתונים חיצוני לטבלת מסד נתונים PostgreSQL.