SchemaSpy هو محلل بيانات تعريف قاعدة البيانات. فهو يساعد مسؤولي ومطوري قواعد البيانات لديك على تصور نموذج البيانات الخاص بك والتنقل فيه وفهمه. باستخدام تقرير سهل الاستخدام يستند إلى HTML، أصبح اجتياز مخطط العلاقة بين الكيانات أسهل من أي وقت مضى. يتوفر عرض منتجاتنا على http://schemaspy.org/sample/index.html.
تثبيت
SchemaSpy هو تطبيق مستقل بدون واجهة المستخدم الرسومية. ما عليك سوى تنزيل أحدث ملف JAR أو صورة Docker وستكون جاهزًا للبدء! لاستخدام SchemaSpy من Maven، يرجى الاطلاع على فصل Maven أدناه.
# replace '6.2.4' with latest version
curl -L https://github.com/schemaspy/schemaspy/releases/download/v6.2.4/schemaspy-6.2.4.jar
--output ~/Downloads/schemaspy.jar
للحصول على إصلاحات الأخطاء والميزات قيد التنفيذ التي لم يتم إصدارها، قم بتنزيل لقطة JAR الخاصة بنا أو استخدم snapshot
علامة Docker
مخضرم
يقوم SchemaSpy بإصدار نوعين من ملفات JAR: JAR المجرد وJAR السمين بما في ذلك جميع التبعيات. يتم نشر كلا تقريري JAR إلى Maven Central. يتم أيضًا إرفاق Fat JAR بالإصدارات الموجودة على GitHub. ستنقلك شارة "maven Central" الموجودة أعلى هذه الصفحة مباشرةً إلى أحدث إصدار من Maven Central.
Maven GAV للقطعتين الأثريتين هو كما يلي:
- JAR المجرد:
org.schemaspy:schemaspy:<version>
- Fat JAR:
org.schemaspy:schemaspy:<version>:app
← لاحظ مصنف app
بداية سريعة
لنفترض أنك تستخدم PostgreSQL (11 أو أحدث). أولاً، قم بتنزيل برنامج تشغيل JDBC الخاص بهم.
curl -L https://jdbc.postgresql.org/download/postgresql-42.5.4.jar
--output ~/Downloads/jdbc-driver.jar
ثم قم بتشغيل SchemaSpy على قاعدة البيانات الخاصة بك وستكون جاهزًا لتصفحها في DIRECTORY/index.html
.
java -jar ~/Downloads/schemaspy.jar
-t pgsql11
-dp ~/Downloads/jdbc-driver.jar
-db DATABASE
-host SERVER
-port 5432
-u USER
-p PASSWORD
-o DIRECTORY
إذا كنت لا تستخدم PostgreSQL، فلا داعي للذعر! يدعم SchemaSpy أكثر من اثنتي عشرة قاعدة بيانات مختلفة. قم بإدراجها باستخدام -dbhelp
. لا يزال غير كاف؟ طالما أن قاعدة البيانات الخاصة بك تحتوي على برنامج تشغيل JDBC، فيمكنك توصيله بـ SchemaSpy.
الوثائق والأسئلة الشائعة
نحن نستضيف وثائقنا على قراءة المستندات. تأكد من مراجعة القسم الخاص باستكشاف المشكلات الشائعة وإصلاحها.
حالات الاستخدام الرئيسية
يغطي SchemaSpy الكثير من حالات الاستخدام لتحليل قاعدة البيانات وتوثيقها. تأكد من مراجعة الأدلة المقدمة من المجتمع لاحقًا في هذا الملف التمهيدي.
وثائق قاعدة البيانات عند الطلب
الطريقة المفضلة لتوثيق قواعد البيانات هي من خلال الرسوم البيانية للعلاقة بين الكيانات (ER). ومع ذلك، فإن رسم هذه المخططات يدويًا هو عملية تستغرق وقتًا طويلاً وعرضة للأخطاء لدرجة أننا نادرًا ما نرسمها عمليًا. عندما يتم رسم المخططات، نادرا ما تبقى محدثة. مع SchemaSpy، لم تعد هذه مشكلة. يمكن إنشاء المخططات بسرعة وحتى كجزء من سير عمل CI/CD الخاص بك لضمان تحديثها دائمًا.
قاعدة البيانات الخاصة بك بالأرقام
يمكن لـ SchemaSpy جمع أنواع مختلفة من الإحصائيات المثيرة للاهتمام لوصف شكل وشكل بنية قاعدة البيانات الخاصة بك. تعمق أكثر في هذه الإحصائيات مباشرة في التقرير أو قم بتصديرها إلى ملف Excel أو CSV لمزيد من تحليل ضمان الجودة.
حافظ على سرية البيانات
في الوقت الحاضر، يمكن أن تكون بيانات الشركة هي أصولها الأكثر قيمة. وبما أن SchemaSpy يقرأ المعلومات الهيكلية فقط، فإنه يعمل أيضًا بشكل جيد على نسخة متماثلة لقاعدة بيانات فارغة. وهذا يعني أنه يمكن مشاركة التقرير لتحليله بواسطة طرف ثالث دون خوف.
كشف بنيات دون المستوى الأمثل
يتضمن SchemaSpy المعرفة حول أفضل الممارسات في تصميم قاعدة البيانات. يمكنه تحديد موقع الحالات الشاذة والإبلاغ عنها مثل الفهارس المفقودة والعلاقات الضمنية والجداول المعزولة.
مجتمع
مرحبًا بك في مجتمع SchemaSpy! مجرد قراءة هذا الملف أو استخدام الأداة يعني أنك جزء من مجتمعنا وتساهم في مستقبل المشروع. نحن ممتنون لوجودك معنا!
لقد بذل بعض أعضاء مجتمعنا جهدًا إضافيًا في مشاركة SchemaSpy مع المزيد من الأشخاص، أو طلبوا من شركاتهم تقديم مساعدات مالية، أو قرروا تحسين البرنامج. نتمنى أن تكون لدينا المساحة لنشكر كل واحد منكم على حدة لأن كل نجم أو تغريدة أو أي نشاط آخر على Github يذكرنا بأن عملنا موضع تقدير.
شكر خاص
لإنشاء الإصدارات الخمسة الأولى من SchemaSpy:
لإدامة SchemaSpy منذ ذلك الحين:
- رافائيل كاسا,
- نيلس بيتزال، و
- جيسبر أولسون
لإنشاء برامج تعليمية وأدلة للمجتمع:
- ؟؟ SQLite يقوم بتعلم SQLite باستخدام Schemaspy بواسطة Geek Tutorial
- ؟؟ استخراج المستندات تلقائيًا من قاعدة البيانات باستخدام SchemaSpy بواسطة Pavel Tišnovský
- ؟؟ Datenbank-Analyse mit SchemaSpy بقلم مايكل جينتش
- ؟؟ نصيحة سريعة: هيكل Datanbank يقدم المساعدة من خلال التخطيط بواسطة von Irving Tschepke
- ؟؟ ◀️ مثال على استخدام التخطيط بواسطة MGS Educación, Tecnología y Juventud
- ؟؟ ◀️ قم بإنشاء نموذج من قاعدة بيانات باستخدام schemaSpy بواسطة Inforgledys
- ؟؟ قم بتوثيق قواعد البيانات الخاصة بك باستخدام SchemaSpy بواسطة Jesus Jimenez Herrera
- ؟؟ ¿Y si documentamos la base de datas? ... تم إنقاذ SchemaSpy بواسطة Víctor Madrid
- ؟؟ ◀️ Une DOC AUTOMATIQUE مع SchemaSpy (و SYMFONY و GITLAB) بواسطة YoanDev
- ؟؟ التوثيق التلقائي لتطبيق Symfony مع SchemaSpy وGitLab! بواسطة يوانديف
- ؟؟ قم بتوثيق قاعدة البيانات باستخدام SchemaSpy بواسطة Data 4 Each!
- ؟؟ SchemaSpy متاح الآن
- ؟؟ SchemaSpyでER図を生成する بواسطة @onozaty
- ؟؟ ◀️ SchemaSpy - سهل الاستخدام وإنقاذ مشروعي! بواسطة ديف تعدد المهام
- ؟؟ Documentandobancos com Schemaspy بقلم كريسنامورت سيلفا
- ؟؟ استخدام SchemaSpy قاعدة البيانات بواسطةicegotcha
- ؟؟ قم بتنزيل برنامج SchemaSpy بواسطة Pham Xuan Dung
- أدوات جافا الكهربائية بواسطة جون فيرجسون سمارت
- Monolith إلى الخدمات الصغيرة: الحفاظ على الإنتاجية أثناء فك تشابك النظام بقلم سام نيومان
- توثيق قاعدة البيانات الخاصة بك باستخدام SchemaSpy بواسطة Robin Tegg
- توثيق قاعدة البيانات العلائقية الخاصة بك باستخدام SchemaSpy بواسطة Orlando L Otero
- كيفية إنشاء ERD (مخطط علاقة الكيان) بواسطة تقنيات Cybrosys
- كيفية توثيق قاعدة بيانات باستخدام SchemaSpy بواسطة Data 4 الجميع!
- كيفية استخدام SchemaSpy لتوثيق قاعدة البيانات الخاصة بك بواسطة Gustavo Ponce
- كيفية تصور مخطط PostgreSQL كـ SVG باستخدام SchemaSpy بواسطة Willem van den Ende
- تثبيت SchemaSpy لتوثيق قاعدة بياناتك بواسطةSimonGoring
- رسم تخطيطي لمخطط قاعدة بيانات Netbox باستخدام schemaspy بواسطة Jason Lavoie
- توثيق PostgreSQL بدرجة الإنتاج في دقائق بواسطة Magnus Brun Falch
- Schemaspy – إنشاء وثائق لقاعدة البيانات الخاصة بك بواسطة Peter Hnilica
- SchemaSpy-HOWTO بواسطةdpapathanasiou
- توثيق قاعدة بيانات بسيطة باستخدام SchemaSpy بواسطة @rieckpil
- حالات استخدام البيانات والمخطط: إدارة قواعد البيانات بواسطة Juilee Talele
الاستخدام العلمي
نحن فخورون بملاحظة أن SchemaSpy يساعد الباحثين في عملهم.
- علم الوجود الديناميكي المبني على البيانات بقلم Dhomas Hatta Fudholi et al.
- مقارنة تجريبية واسعة النطاق لأحدث مولدات حالات الاختبار القائمة على البحث بواسطة Annibale Panichella et al.
- دليل العلماء لتقديم البيانات إلى ZFIN بقلم دوغلاس جي هاو
- إنشاء اختبار الوحدة الآلي للفصول ذات تبعيات البيئة بواسطة Andrea Arcuri et al.
- BiG-SLiCE: أداة قابلة للتطوير بدرجة كبيرة تحدد تنوع 1.2 مليون مجموعة جينية حيوية بواسطة Satria A Kautsar et al.
- emrKBQA: مجموعة بيانات تجيب على أسئلة قاعدة المعرفة السريرية بقلم بريثي راغافان وآخرون.
- EpiSurf: خادم بحث يعتمد على البيانات الوصفية لتحليل تغيرات الأحماض الأمينية داخل حلقات SARS-CoV-2 والأنواع الفيروسية الأخرى بواسطة Anna Bernasconi et al.
- تجارب من إجراء تقييمات جودة البرامج من خلال الجمع بين تحليل المقاييس القائمة على المعايير وتصور البرامج وتقييم الخبراء بواسطة أيكو ياماشيتا
- الإصدار 5.5.5 من FOCUSPEARL - الوصف الفني لقاعدة البيانات والواجهة بواسطة Maarten C Braakhekke et al.
- من الأنظمة المتجانسة إلى الخدمات الصغيرة: إطار تحلل يعتمد على تعدين العمليات بقلم دافيد تايبي وكاري سيستا
- GEM: مخطط كيانات GAAIN بقلم نافين أشيش وآخرون.
- صحيفة الصحة: تطوير أداة الشفافية لمجموعات البيانات الصحية بقلم نيجار رستم زاده وآخرون.
- كيف يمكن لأفيا - المنصة التي تقف وراء العديد من قواعد البيانات الموجهة نحو التصنيف عبر الإنترنت - أن تخدم كلاً من مجتمع التصنيف ومجال معلوماتية التنوع البيولوجي بقلم لين فانديبيت وآخرون.
- استكشاف حدود التبعية للتحكم المتزايد لإنشاء حالات اختبار متعددة المعايير بواسطة Annibale Panichella et al.
- دمج بيانات العلاج الإشعاعي متعدد الوسائط في i2b2 بواسطة إريك زابلتال وآخرون.
- منهجية دمج مستودع البيانات السريرية مع نظام المعلومات السريرية: حالة HEGP بقلم إريك زابلتال وآخرون.
- NakeDB: تصور مخطط قاعدة البيانات بواسطة لويس ميغيل كورت ́es-Peña
- قاعدة بيانات OCTOPUS (الإصدار 2) بقلم Alexandru T. Codilean et al.
- حول المطابقة التقريبية لبرامج حماية البرمجيات الحرة بقلم أرنولدو خوسيه مولر مولينا وتاكيشي شينوهارا
- حول جودة مخططات قواعد البيانات العلائقية في البرمجيات مفتوحة المصدر بقلم فابيان كويلو وآخرون.
- توقع إعادة القبول في المستشفى عن طريق تحليل سجلات السجلات الصحية الإلكترونية للمريض بواسطة Anshik
- التنبؤ بتعاون الممثلين باستخدام بيانات IMDB بقلم فاسيليس بوليكرونوبولوس وأبيناف فينكاتيسوار فينكاتارامان
- الجيل المعياري للنموذج العلائقي الاحتمالي: المبدأ والتطبيق بقلم منى بن إسحاق وآخرون.
- العمليات والدوافع والقضايا المتعلقة بالانتقال إلى معماريات الخدمات الصغيرة: تحقيق تجريبي أجراه دافيد طيبي وآخرون.
- تحقيق إمكانات تعلم الآلة من خلال السجلات الصحية الإلكترونية بواسطة Haoyuan Zhang et al.
- استراتيجيات البذر في توليد اختبار الوحدة القائمة على البحث بواسطة José Miguel Rojas et al.
- الأدلة التجريبية السليمة في اختبار البرمجيات من قبل جوردون فريزر وأندريا أركوري
- شبكة معلومات الزرد: صفحة الجينات الرئيسية وتحديثات الصفحة الرئيسية بواسطة Douglas G Howe et al
- تحويل وتقييم قاعدة بيانات MIMIC في نموذج البيانات المشتركة OMOP: دراسة التطوير وسهولة الاستخدام التي أجراها نيكولاس باريس وآخرون.
- قاعدة بيانات فضائية متكاملة في نظام معلومات جغرافية لإدارة الأرض: نظام جديد متسق وتفاعلي من تأليف ألبرتو لازارو لوبيز وآخرين.
- استخدام مجموعة من أدوات القياس لاستخراج المقاييس من المشاريع مفتوحة المصدر بواسطة Normi S Awang Abu Bakar وClive Boughton
- استخدام لوحات معلومات Tableau كأداة تصور لبيانات MIMIC-III بواسطة Karl Gottfried et al.
- شبكة معلومات الزرد، قاعدة المعرفة لأبحاث دانيو ريريو التي أجراها إيفون إم برادفورد وآخرون.
للاستشهاد بـ SchemaSpy، يرجى استخدام:
SchemaSpy Team (2024) SchemaSpy: Database documentation built easy. SchemaSpy. URL https://schemaspy.org/
إدخال BibTeX لمستخدمي LaTeX هو:
@Manual{schemaspy,
title = {SchemaSpy: Database documentation built easy},
author = {{SchemaSpy Team}},
organization = {SchemaSpy},
year = {2024},
url = {https://schemaspy.org/}
}
تعليمات البناء
طلب
تم تصميم SchemaSpy باستخدام maven ونحن نستخدم غلاف maven.
mvnw.cmd package
ويندوز mvnw.cmd
./mvnw package
لينكس ./mvnw
يمكن العثور على التطبيق الناتج في target
تحليل
أنت بحاجة إلى SonarQube الخاص بك:
https://hub.docker.com/_/sonarqube/
Windows mvnw.cmd -P sonar clean verify -Dsonar.host.url=http://$(boot2docker ip):9000 -Dsonar.jdbc.url="jdbc:h2:tcp://$(boot2docker ip)/sonar"
Linux ./mvnw -P sonar clean verify
شاهد النتائج على:
لينكس http://localhost:9000
ويندوز http://$(boot2docker ip):9000
التوثيق
بنيت باستخدام بايثون
قم بإنشاء فينف
تثبيت التبعيات pip install -r docs/requirements.txt
انتقل إلى docs
Windows make.bat clean && make.bat html
Linux make clean html
يمكن العثور على الوثائق الناتجة في docs/build/html