ChartDB – मुफ्त open source database design editor
(chartdb.io)- ChartDB एक DB diagram editor है, जो database schema को जल्दी visualize कर ER diagram के रूप में संभालता है, और team collaboration व schema migration काम पर केंद्रित है
- Cloud browser में चलता है और दावा करता है कि database access के बिना 15 सेकंड में diagram मिल सकता है
- Self-Hosted मुफ्त open source रूप में उपलब्ध है, इसलिए यह उन security और customization जरूरतों के लिए उपयुक्त है जहाँ data और settings को सीधे control करना जरूरी हो
- single query-आधारित schema import, AI ER diagram generation, SQL DDL export, auto sync, real-time collaboration, embedded docs और change tracking को support करता है
- PostgreSQL, MySQL, SQL Server, SQLite, MariaDB, ClickHouse, CockroachDB, Oracle, Snowflake, BigQuery तक कई relational DBMS और cloud data warehouse design में इस्तेमाल किया जा सकता है
Browser में संभाले जाने वाले DB schema diagrams
- ChartDB database schema को तुरंत visualize करने और ER diagrams बनाने का tool है
- इसे team collaboration और schema migration के लिए इस्तेमाल होने वाले DB diagram editor के रूप में पेश किया गया है
- start button ChartDB app से जुड़ता है, और साथ में free start व credit card की जरूरत नहीं जैसे text दिखते हैं
- GitHub पर ChartDB +19K stars के साथ दिखाया गया है
Cloud और Self-Hosted विकल्प
- ChartDB Cloud browser में database को visualize करने का तरीका है
- इसे ease of use और team accessibility के लिए उपयुक्त बताया गया है
- दिखाया गया है कि इसे database access के बिना इस्तेमाल किया जा सकता है
- इसका दावा है कि 15 सेकंड में diagram मिल सकता है
- Self-Hosted एक मुफ्त open source database design editor है
- data और settings पर पूरा control मिल सकता है
- यह security और customization की जरूरत वाले environments के लिए उपयुक्त विकल्प है
- ChartDB बताता है कि “single query” से DB को visualize किया जा सकता है
Import → Edit → Export workflow
-
Instant Import
- हर database के लिए पूरा schema लाने वाली single query प्रदान करता है
- बताया गया है कि schema import 15 सेकंड के भीतर किया जा सकता है
-
Relational DBMS
- MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, SQLite को popular DBMS के रूप में उल्लेख करते हुए supported targets के तौर पर दिखाता है
-
Export SQL
- diagram को SQL DDL script के रूप में download कर database में run किया जा सकता है
- docs में डालने के लिए image के रूप में भी export किया जा सकता है
-
Examples
- pre-designed examples के जरिए quick setup और design reference प्रदान करता है
- यह item WIP के रूप में दिखाया गया है
-
Advanced Query Editor
- undo, redo, copy, paste और duplicate functions प्रदान करता है
- tables, subject areas और notes add किए जा सकते हैं
-
Beautiful Shares
- database diagram का visual preview बनाकर दूसरों के साथ share किया जा सकता है
Diagram generation, sharing और sync features
- ChartDB - AI Agent
- prompt में डाले गए database ideas को editable optimized ER diagram में बदलता है
- Instant Import
- single query से पूरा DB schema import करने की feature है
- Export SQL
- मनचाही SQL dialect में DDL script generate करता है
- Sync Database
- live database और diagram को automatically sync करता है
- Real time collaboration
- team members को invite कर diagram को real time में देखने और edit करने देता है
- Amazing Docs
- embeddable diagrams और customizable expandable docs बनाता है
- Keep on track
- schema changes के diff और version history को track करता है
Supported databases
- ChartDB बताता है कि वह databases और cloud data warehouses के लिए design को support करता है
- supported targets के रूप में दिखाए गए items ये हैं
- PostgreSQL
- MySQL
- SQL Server
- SQLite
- MariaDB
- ClickHouse
- CockroachDB
- Oracle
- Snowflake
- BigQuery
FAQ में मिल सकने वाले operational सवाल
- इसमें यह सवाल शामिल है कि क्या ChartDB database को modify करता है
- Notion, Miro, Confluence में live ERD embed किया जा सकता है या नहीं, इस पर एक item है
- ChartDB Cloud plan को free में try किया जा सकता है या नहीं, यह check करने वाला item है
- support पाने का तरीका, diagrams और databases को sync करने का तरीका, invoices और business payments उपलब्ध हैं या नहीं, ये भी FAQ items में शामिल हैं
1 टिप्पणियां
Hacker News टिप्पणियाँ
मैंने अक्सर देखा है कि प्रोजेक्ट टीमें data model सहित समाधान के किसी भी पहलू को समझाने वाले बुनियादी डायग्राम के बिना ही नई application development में कूद पड़ती हैं
पता नहीं एक साधारण ER diagram को project documentation का standard बनने के लिए क्या चाहिए। संबंधित tools बहुत हैं, लेकिन वास्तविक कामकाज में उनका शायद ही इस्तेमाल होता है
लोगों से इसे इस्तेमाल करवाने के लिए शायद Microsoft को इसे Excel या PowerPoint feature के रूप में जोड़ना पड़े। डायग्राम का परफेक्ट होना ज़रूरी नहीं है; बस संदर्भ के अनुसार मुख्य structure और relationship साफ़ दिखने चाहिए। ज़रूरत हो तो उसी database के लिए कई छोटे डायग्राम बनाकर requirements और design को document किया जा सकता है
साथ ही UML लगभग एक आपदा था। 90 के दशक के बाद वह diagram language का प्रतिनिधि बन गया, लेकिन उसमें database components थे ही नहीं, इसलिए class diagram को ERD की तरह ढालकर इस्तेमाल करना पड़ता था। UML code नहीं है, और UML में coding करना कठिन है या लगभग असंभव। ERD में code और diagram के बीच आना-जाना कहीं ज़्यादा आसान है, जबकि coding के दूसरे प्रकारों में ऐसा नहीं है
मेरा मानना है कि UML के उभार और विफलता ने developers के diagram न बनाने में बड़ी भूमिका निभाई। इसके अलावा, ज़्यादातर developers के लिए code editor के बाएँ panel में code structure को tree की तरह दिखाने वाले code navigation tools ही काफ़ी होते हैं
पहले मैं ERD बनाने के पक्ष में काफ़ी था, और 100 से अधिक tables वाले databases में इसे अक्सर onboarding task के रूप में इस्तेमाल भी करता था। लेकिन comprehensive ERD अब कम होते जा रहे हैं, और मुझे लगता है कि यह ठीक है
उनका maintenance cost बहुत ज़्यादा है, इसलिए उनका value लंबे समय तक नहीं टिकता। एक अच्छी तरह तैयार ERD होना अच्छा है, लेकिन यह अनिवार्य नहीं है
ERD को code के रूप में बनाने के लिए dbdiagram.io या eraser.io जैसे tools बहुत इस्तेमाल होते हैं। ERWin UML/ERD diagram tools का पुराना दिग्गज है, लेकिन महँगा है
मैं सोचता हूँ कि लोग ऐसे tools का इस्तेमाल क्यों करते हैं। क्या ये managers से बात करने के लिए होते हैं?
मैं सच में पूछ रहा हूँ। शायद मुझे भी इन्हें इस्तेमाल करना चाहिए, लेकिन अभी तक मुझे समझ नहीं आया कि इनकी ज़रूरत क्यों है
अगर अलग-अलग systems में कई models हों, या आप दूसरों के साथ काम करते हुए database model को communicate करना आसान बनाना चाहते हों, या आपको उसे publicly समझाना हो, या पहले से model plan करना हो, तब भी इसकी ज़रूरत होती है
यहाँ “इस्तेमाल करना चाहिए” से मेरा मतलब final diagram से है, ज़रूरी नहीं कि इसी खास tool से हो
https://dbml.dbdiagram.io/home/
अगर आपने कभी 80 tables वाले project को बिना documentation के संभाला हो, या ज़्यादा से ज़्यादा सिर्फ़ database schema dump वाले 50-पेज के document के साथ लिया हो, तो आप समझेंगे
मुख्य tables और relationships को एक ERD (Entity-Relationship Diagram) में दिखाया जा सकता है, और schema dump की तरह घंटों या दिनों में नहीं बल्कि कुछ मिनटों में समझा जा सकता है
schema design चरण में आप कई ERD editors या PlantUML, MermaidJS, DBML जैसे text-based diagram tools इस्तेमाल कर सकते हैं, और diagram source को source control में भी रख सकते हैं
इसके अलावा, मौजूदा database schema के लिए detailed ERD को CI में generate करके नियमित रूप से review किया जाए, तो यह जाँचा जा सकता है कि वह मूल design से मेल खाता है या नहीं, और क्या हम मौजूदा schema को सही से समझ रहे हैं
“code तो self-explanatory है!” वाला रवैया मुझे सच में नापसंद है
ऐसे कई मिलते-जुलते services दिखते हैं। लेकिन मैं जिस चीज़ की तलाश में हूँ, वह ऐसा tool है जिसे सीधे इस्तेमाल किया जा सके या script से control किया जा सके
मेरा use case यह है कि किसी दूसरे process के हिस्से के रूप में मेरे पास मौजूद model description से अपेक्षाकृत simple database diagram generate करूँ। memory structure में table names, column names और relationships मौजूद हैं, और मैं ER-जैसा diagram बनाना चाहता हूँ
फ़िलहाल मैं अपने data से
pumlfile generate करके PlantUML चलाने, और फिरpngयाsvgबनाने वाले तरीके को देख रहा हूँलेकिन खोजने पर ज़्यादातर या तो अपने editor वाले पूर्ण database design tools मिलते हैं जिनमें API नहीं है, या फिर यह tool और dbdiagram.io जैसी चीज़ें आमतौर पर online-only हैं, इसलिए मेरे लिए विकल्प नहीं हैं। कोई recommendation हो तो सच में आभारी रहूँगा
काश यह 5 साल पहले तब मौजूद होता जब मैंने project शुरू किया था। मुझे Postgres इस्तेमाल करने वाले एक full-stack project में database schema design करना था, और मैं science domain के एक expert के साथ काम कर रहा था
diagrams को साथ मिलकर review करते समय वह expert आगे चलकर आने वाली domain-specific requirements से जुड़ी समस्याएँ पहचान सकता था, और इससे बहुत मदद मिली
उस process में हमने बहुत सी one-on-one meetings कीं, और diagram देखते हुए मैं अगली meeting से पहले किए जाने वाले बदलाव नोट कर लेता था
अगर ऐसा tool होता, तो हम meeting के दौरान ही बदलाव कर सकते थे और कई iterations बच जाते। pgAdmin जैसी चीज़ें थीं, लेकिन वे non-technical लोगों के लिए बहुत friendly नहीं लगती थीं, जबकि यह tool friction कम कर सकता था
यह बढ़िया है, लेकिन ऐसे tools की मुख्य समस्या यह है कि वे one-way होते हैं और खुद को केंद्रीय authority मान लेते हैं। लेकिन यह एक चित्र है, database नहीं
मैं समझता हूँ कि लोग इन्हें क्यों इस्तेमाल करते हैं, लेकिन मुझे ऐसे tools की ज़रूरत नहीं है
इसलिए जब हर tool “Export to SQL” देता है, तो लोग उम्मीद करते हैं कि database के हर बदलाव का असर diagram में भी दिखे। लेकिन diagram database नहीं है, इसलिए अब काम एक की जगह दो हो जाते हैं
diagram एक model है, और model हमेशा मौजूद रहता है, चाहे वह स्पष्ट हो या सिर्फ़ दिमाग में
दिमाग का model ग़लत हो सकता है, लेकिन उसे कोई देख नहीं सकता, इसलिए कोई उसकी गलती बता भी नहीं सकता। ख़ुद आप भी नहीं
DBeaver भी ERD support करता है: https://dbeaver.com/docs/dbeaver/ER-Diagrams/
यह interactive है और edit भी किया जा सकता है। इसे “सुंदर” कहना मुश्किल होगा, लेकिन पूरा product FOSS है और database work के लिए बेहद उपयोगी है
लेकिन जिन कुछ लोगों के साथ मैंने काम किया, उनके लिए ऐसा नहीं था। आमतौर पर इसकी ज़रूरत तब पड़ती है जब आप ऐसे लोगों के साथ design पर collaborate कर रहे हों जो SQL में सहज नहीं हैं, लेकिन उनके पास domain knowledge है और वे छोटे database जितनी बड़ी Excel spreadsheet लेकर आते हैं
यह एक static landing page है, फिर भी समझ नहीं आता कि इसमें scroll stutter इतना ज़्यादा क्यों है