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

PostgreSQL के लिए pgModeler का अवलोकन

जब कोई परियोजना तैयार की जा रही हो, तो सबसे पहले यह सोचना चाहिए कि उसका उद्देश्य क्या होगा...सबसे अच्छा समाधान क्या है, और विकल्प क्या हैं। सॉफ्टवेयर इंजीनियरिंग में, डेटा की सेवा के लिए सब कुछ किया जाता है, चाहे वह ग्राफिकल इंटरफ़ेस हो या व्यावसायिक तर्क, इसलिए इसमें कोई आश्चर्य की बात नहीं है कि डेटाबेस प्लानिंग सबसे अच्छा प्रारंभिक बिंदु हो सकता है।

डेटाबेस का आधिकारिक दस्तावेज बहुत जटिल हो सकता है, चाहे वह कोई भी तकनीक हो। किसी विशिष्ट स्थिति के लिए सर्वोत्तम अवधारणाओं का उपयोग करना आसान काम नहीं है।

pgModeler वह प्रोग्राम है जिसका उपयोग आप PostgreSQL के साथ अपनी उत्पादकता बढ़ाने के लिए कर सकते हैं। यह मुफ़्त है, विंडोज़, मैक या लिनक्स पर काम करता है और एसवीजी के शीर्ष पर निर्मित एक समृद्ध इंटरफ़ेस के माध्यम से डीडीएल कमांड के साथ काम करने का एक तरीका प्रदान करता है।

इंस्टॉलेशन

स्थापना बहुत सरल है, बस इसे साइट से डाउनलोड करें, और फ़ाइल को चलाएं। कुछ ऑपरेटिंग सिस्टम में पहले से ही उनके रिपॉजिटरी में pgModeler शामिल है, जो इसे डाउनलोड करने का एक विकल्प है।

pgModeler एक खुला स्रोत समाधान है, और आप इसे GitHub पर पा सकते हैं, जहां नई रिलीज प्रकाशित की जाती हैं।

इसमें एक भुगतान किया गया संस्करण विकल्प है, जहां आप परियोजना का समर्थन कर सकते हैं और नवीनतम सुविधाओं का उपयोग कर सकते हैं, उदाहरण के लिए, PostgreSQL के नवीनतम संस्करणों के साथ संगतता।

यदि आपको डेस्कटॉप प्रविष्टि की आवश्यकता है, तो इसे निम्नलिखित में देखें। इस फ़ाइल को pgmodeler.desktop नाम दिया जा सकता है, और आप इसे /usr/share/applications/ पर रख सकते हैं, लेकिन इस ब्लॉग में प्रस्तुत लोगो को /etc/pgmodeler/pgmodeler_logo.png पर सहेज कर कॉपी करना न भूलें।

[Desktop Entry]
Name=pgModeler
GenericName=PostgreSQL Database Modeler
Comment=Program with nice Qt interface for visual modeling PostgreSQL on Entity Relationship Diagram
Exec=pgmodeler
Icon=/etc/pgmodeler/pgmodeler_logo.png
Terminal=false
Type=Application
Categories=Qt;Database;Development;

ग्राफिकल इंटरफ़ेस

कॉलेजों सहित सूचना प्रौद्योगिकी पाठ्यक्रमों के पाठ्यक्रम में डेटा मॉडलिंग विषय शामिल हैं, जिसमें यूएमएल परियोजना डिजाइन और प्रलेखन के लिए मानक है।

pgModeler का ग्राफिकल इंटरफ़ेस डेटाबेस के लिए विशिष्ट प्रकार के आरेख के साथ काम करने की अनुमति देता है, इकाई संबंध आरेख (ERD), जो आपने अपने PostgreSQL क्लस्टर के अंदर बनाया है उसे मूल रूप से पुन:प्रस्तुत करता है।

कई भाषाएं उपलब्ध हैं:

  • अंग्रेज़ी (en_US);
  • स्पेनिश (es_ES);
  • फ़्रेंच (fr_FR);
  • डच (nl_NL);
  • पुर्तगाली (pt_BR); और
  • चीनी (zh_CN)।

आपने जो बनाया है उसे प्रिंट करना भी उपलब्ध है, और स्वरूप में अनुकूलन संभव है, स्कीमा, तालिकाओं, संबंधों आदि के फ़ॉन्ट और रंगों को बदलना।

सुविधाएं

pgModeler की विशेषताएं तार्किक और भौतिक मॉडलों के बीच नेविगेट करने में आपकी सहायता करने के लिए सरल उपकरण हैं।

एक तार्किक मॉडल, आरेख है। आप इसका उपयोग अपने ग्राहक के विचार को एक अच्छी तरह से प्रलेखित परियोजना में बदलने के लिए कर सकते हैं जिसे अन्य व्यक्ति भविष्य में समझ सकें, और उसमें संशोधन कर सकें।

भौतिक मॉडल स्क्रिप्ट, SQL कोड है। PostgreSQL इसे समझता है, और इसलिए pgModeler भी।

इसके रिवर्स इंजीनियरिंग एल्गोरिथम के माध्यम से, आप अपने PostgreSQL क्लस्टर से जुड़ सकते हैं, और अपने मौजूदा डोमेन मॉडल को एक अलग परिप्रेक्ष्य से देख सकते हैं, या पहले इसे बना सकते हैं, और फिर स्क्रिप्ट को निष्पादित करने वाला डोमेन मॉडल बना सकते हैं, उत्पन्न आपने आरेख में क्या बनाया है।

इकाई संबंध आरेख

एक बार जब आप इसका उद्देश्य समझ लेते हैं, तो देखते हैं कि एक बहुत ही सरल परियोजना के लिए एक आरेख कैसा दिखता है, जहां आप टेबल ग्राहक और फिल्म के बीच संबंध की कल्पना कर सकते हैं, जिसका नाम रेंटल है।

तालिकाओं के बीच की रेखाओं पर ध्यान दें, वे देखने में आसान हैं, और सबसे महत्वपूर्ण बात यह है कि वे समझते हैं। प्राथमिक और विदेशी कुंजियाँ रिश्तों की कल्पना करने के लिए शुरुआती बिंदु हैं, और उनके किनारों पर, कार्डिनैलिटी दिखाई जा रही है।

कुंजियों का प्रतिनिधित्व करने वाली बाधाओं को pk, fk, और के रूप में देखा जा सकता है यहां तक ​​​​कि नॉट न्यूल, एनएन के रूप में, हरे रंग में प्रत्येक तालिका के दाईं ओर। स्कीमा को स्टोर नाम दिया गया है, और ऊपर की तस्वीर प्रोग्राम द्वारा ही तैयार की गई है।

पहले हमने देखा कि आरेख तार्किक मॉडल हैं, जिन्हें PostgreSQL क्लस्टर में लागू किया जा सकता है। इसे लागू करने के लिए, एक कनेक्शन स्थापित किया जाना चाहिए, इस उदाहरण के लिए, मैंने एक डॉकर कंटेनर के अंदर चलने वाला एक क्लस्टर बनाया है।

अब डेटाबेस कनेक्शन कॉन्फ़िगर और परीक्षण के साथ, निर्यात करना आसान है। इस समय सुरक्षा चिंताओं पर विचार किया जाना चाहिए, जैसे अपने क्लस्टर के साथ एसएसएल स्थापित करना।

निम्नलिखित में, pgModeler ब्लॉग_डीबी नामक एक पूरी तरह से नए डेटाबेस के अंदर स्टोर स्कीमा बनाता है, जैसा कि मैं चाहता था, लॉगिन अनुमति के साथ नई भूमिका का उल्लेख करना न भूलें।

निर्यात प्रक्रिया सफलतापूर्वक समाप्त! - ठीक है, एक गलती है, लेकिन इसे सफलतापूर्वक समाप्त कर दिया गया है, निश्चित रूप से।

[email protected]:~$ psql -U thiago -w -d blog_db;
psql (10.10 (Debian 10.10-1.pgdg90+1))
Type "help" for help.
blog_db=> set search_path to store;
SET
blog_db=> \dt
        List of relations
Schema |   Name | Type  | Owner
--------+----------+-------+--------
store  | customer | table | thiago
store  | film   | table | thiago
store  | rental   | table | thiago
(3 rows)
blog_db=> \du
                                  List of roles
Role name |                         Attributes | Member of
-----------+------------------------------------------------------------+-----------
postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
thiago    |                                                   | {}

निष्कर्ष

डोमेन मॉडल को मिनी वर्ल्ड के रूप में भी जाना जाता है, और शायद ही आप इसे विभिन्न परियोजनाओं पर लागू होते हुए देखेंगे। pgModeler SQL सिंटैक्स से संबंधित समय की बर्बादी से बचने के लिए वास्तव में महत्वपूर्ण चीज़ों पर ध्यान केंद्रित करने में आपकी सहायता कर सकता है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं एक पोस्टग्रेज तालिका में एक साथ कई मान कैसे सम्मिलित करूं?

  2. पोस्टग्रेज़ फ़ंक्शन रिटर्निंग टेबल कॉलम में डेटा वापस नहीं कर रहा है

  3. हटाए गए डॉकर कंटेनर से डेटा कैसे पुनर्प्राप्त करें? इसे डेटा से फिर से कैसे कनेक्ट करें?

  4. रेल का दायरा - जहां सटीक मिलान में

  5. अद्यतन विवरण में अनावश्यक डेटा