
Hallo, Habr! Waarschijnlijk heeft iedereen van ons zo'n bestandje waarin we nuttige en interessante dingen voor onszelf verstoppen. Wat links naar artikelen, boeken, repositories, handleidingen. Dit kunnen bladwijzers in de browser zijn of zelfs gewoon geopende tabbladen die we voor later hebben achtergelaten. Na verloop van tijd groeit dit allemaal, links stoppen met werken en het grootste deel van het materiaal veroudert gewoon.
En wat als we deze waardevolle inhoud met de gemeenschap delen en dit bestand op GitHub zetten? Dan kunnen jouw inspanningen nuttig zijn voor iemand anders, en kunnen we de actualiteit samen behouden door updates van geΓ―nteresseerden via de oude goede PR's te accepteren. Dit is precies waarvoor het project is bedoeld. . Het staat in de top 10 van GitHub-repositories, heeft 138K sterren, en de link naar jouw werk kan recht in zijn hoofding README komen, wat een enorm publiek naar jouw creatie kan trekken. Toch moet je hiervoor een beetje moeite doen. Ik wil mijn ervaringen met dergelijke inspanningen met jullie delen.
Mijn naam is Maxim Gramin. Bij KROK houd ik me bezig met Java-ontwikkeling en onderzoek op het gebied van databases. In deze post zal ik uitleggen wat Awesome Lists zijn en hoe je je eigen officiΓ«le awesome-repo kunt maken.
Wat zijn Awesome Lists
Wanneer ik een nieuwe technologie of programmeertaal moet begrijpen, ga ik als eerste hierheen β ik zoek het juiste gedeelte en daarin de geschikte lijsten. En gezien het aantal sterren en hun constante groei, doe ik dit niet alleen.

In werkelijkheid is het gewoon een plat readme.md-bestand dat in een aparte , het staat bovendien op de 8e plaats van alle GitHub-repositories en bevat links naar andere lijsten die aan een bepaald onderwerp zijn gewijd. Bijvoorbeeld, in de sectie Programmeertalen kun je de Awesome Python- en Awesome Go-lijsten vinden, en in Front-End Development zijn er talloze bronnen voor WEB-ontwikkeling. En natuurlijk is er ook de sectie (hier komen we later nog op terug). En ja, dit beperkt zich niet alleen tot technische onderwerpen. In de secties Entertainment en Gaming kun je ook veel interessante dingen vinden (persoonlijk vond ik de ).
De belangrijkste eigenschap is dat al deze lijsten niet door de auteur zelf worden beheerd, maar door de gemeenschap en zijn samengesteld volgens een speciale en zeer strikte . Elke lijst is een zelfstandige gemeenschap van specialisten, leeft zijn eigen leven en staat open voor jouw pull requests om het nog beter te maken. Daarnaast kan iedereen zijn eigen lijst maken als er een onderwerp is dat nog niet behandeld is.
De bedenker en coΓΆrdinator van dit alles is de legendarische Sindre Sorhus, de auteur van meer dan en hij is degene die je PR's zal ontvangen.

Hoe in de awesome-lijst te komen
Als je de juiste lijst over een onderwerp niet kunt vinden, is dat een teken dat je het zelf moet maken!
Ik zal mijn eigen project als voorbeeld nemen: Van project naar project moet ik met verschillende databases werken, en daarom heb ik een bestand waarin ik handige tools voor het werken met databases verzamelde, zoals DB-migrators, IDE's, beheerpaneel, monitoringtools, en nog veel meer. Instrumenten die ik al heb gebruikt of die ik nog van plan ben te gaan gebruiken. Ik deelde dit bestand met collega's bij KROK en daarbuiten. Dit hielp veel mensen en was interessant. Uiteindelijk wilde ik meer erkenning toen ik opmerkte dat er in de sectie Databases helemaal geen lijst over dat onderwerp was. Daarom besloot ik mijn lijst daar toe te voegen.
Wat is daarvoor nodig?
- We registreren een gewone GitHub-repo met een naam zoals awesome-iets. In mijn geval was dat awesome-database-tools.
- We brengen onze lijst in het awesome-formaat, en daarvoor helpt ons de die alle benodigde bestanden in het juiste formaat genereert.
- We stellen een echte CI in. en Travis CI helpen ons de van onze lijst te controleren.
- We wachten 30 dagen.
- We beoordelen minstens 2 andere PR's.
- En uiteindelijk maken we een PR naar de hoofdrepo, waarin we een link naar onze repo toevoegen. Het is belangrijk om alles zorgvuldig door te lezen en al de vele eisen voor de nieuwe lijst en de PR zelf nauwkeurig uit te voeren.
Mijn eerste poging

Maar na verloop van tijd verzamelde ik nog meer materiaal, werkte ik aan de fouten en durfde ik een .
Maar ik vergat een heel belangrijke zaak, waar ik subtiel op werd gewezen:

Ik was niet heel oplettend en had de eenhoorn niet toegevoegd als bevestiging dat aan alle voorwaarden was voldaan.

Na nog wat tijd en aanpassingen aan de opmerkingen verscheen de langverwachte dat mijn PR was aangenomen.
Zo werd ik de auteur van mijn eerste lijst, en ik begon berichten te ontvangen van de gemeenschap voor het toevoegen van nieuwe tools. Veel van deze tools zijn al opgenomen in . Als je geen zin hebt om op de link te klikken,
hier is de actuele selectie op het moment van publicatie van de post
Awesome Database Tools.
Gemeenschapsgedreven lijst van databanktools
Hier verzamelen we informatie over geweldige nuttige en experimentele tools die het werken met databases vergemakkelijken voor DBA's, DevOps, ontwikkelaars en gewone stervelingen.
Voel je vrij om informatie over je eigen db-tools of je favoriete derde partij db-tools toe te voegen.
Inhoud
IDE
- β Premier multifunctioneel beheertool voor databasebeheer, controle en ontwikkeling.
- β Aqua Data Studio is productiviteitssoftware voor database ontwikkelaars, DBA's en analisten.
- β Meerdere databasebeheertools met ondersteuning voor 20+ databases.
- β Cross-platform IDE voor databases & SQL van JetBrains.
- β Gratis universele databasebeheerder en SQL-client.
- β Universele IDE voor MySQL en MariaDB databaseontwikkeling, beheer en administratie.
- β Krachtige IDE voor Oracle beheer, administratie en ontwikkeling.
- β GUI-tool voor het beheren en ontwikkelen van databases en objecten.
- β Krachtige geΓ―ntegreerde ontwikkelomgeving voor SQL Server ontwikkeling, beheer, administratie, data-analyse en rapportage.
- β Moderne (JavaScript/Electron-framework), open source IDE voor MongoDB. Het bevat functies ter ondersteuning van ontwikkeling, administratie en prestatieafstemming op MongoDB-databases.
- β Uitgebreide GUI-tool voor Firebird en InterBase.
- β Een lichte client voor het beheren van MySQL, MSSQL en PostgreSQL, geschreven in Delphi.
- β MySQL Workbench is een uniforme visuele tool voor databasearchitecten, ontwikkelaars en DBA's.
- β Een database ontwikkelingstool waarmee je gelijktijdig verbinding kunt maken met MySQL, MariaDB, SQL Server, Oracle, PostgreSQL en SQLite databases vanuit één enkele applicatie.
- β Oracle SQL Developer is een gratis, geΓ―ntegreerde ontwikkelomgeving die de ontwikkeling en beheer van Oracle Database vereenvoudigt in zowel traditionele als Cloud-implementaties.
- β Het populairste en meest uitgebreide open-source administratie- en ontwikkelingsplatform voor PostgreSQL, de meest geavanceerde open-source database ter wereld.
- β Langdurige ondersteuning voor pgAdmin3.
- β IDE die specifiek gericht is op de ontwikkeling van opgeslagen programmateenheden voor Oracle-databases.
- β Volledige en krachtige databasebeheer-, administratie- en ontwikkelingstool voor PostgreSQL.
- β Toad is de toonaangevende databaseoplossing voor ontwikkelaars, beheerders en data-analisten. Beheer complexe databasewijzigingen met één databasebeheertool.
- β Vereenvoudigde database ontwikkelingstool voor MySQL en Postgres.
- β TOra is een open-source SQL IDE voor Oracle, MySQL en PostgreSQL databases.
- β Maak, beheer, query en verken Valentina DB, MySQL, MariaDB, PostgreSQL en SQLite databases GRATIS.
GUI Beheerders/Klanten
- β Databasebeheer in een enkel PHP-bestand.
- β Universele database tool voor ontwikkelaars, DBA's en analisten.
- β Enterprise ClickHouse Ops UI voor het uitvoeren van queries, monitoring van de ClickHouse gezondheid en nog veel meer.
- β Directe SQL-toegang tot al uw gegevens, ongeacht waar deze zich bevinden.
- β Webtool voor databasebeheer.
- β Webgebaseerde databasebrowser voor PostgreSQL, geschreven in Go en werkt op macOS, Linux en Windows machines.
- β Webgebaseerde SQLite databasebeheertool geschreven in PHP met ondersteuning voor SQLite3 en SQLite2.
- β Een webinterface voor MySQL en MariaDB.
- β PSequel biedt een schone en eenvoudige interface voor het snel uitvoeren van veelvoorkomende PostgreSQL-taken.
- β Moderne, collaboratieve SQL-editor voor uw team.
- β Een moderne PostgreSQL-client voor de Mac.
- β Robo 3T (voorheen Robomongo) is een shell-centrische cross-platform MongoDB-beheer tool.
- β Sequel Pro is een snelle, gebruiksvriendelijke Mac databasebeheertoepassing voor het werken met MySQL & MariaDB databases.
- β Een databeheertool waarmee u kunt werken met SQL Server, Azure SQL DB en SQL DW vanuit Windows, macOS en Linux.
- β Grafische interface ondersteunt alle SQLite-functies.
- β Webgebaseerde SQL-editor die in uw eigen privΓ©cloud draait.
- β Een eenvoudige, krachtige Postgres manager voor macOS.
- β Grafische SQL-client geschreven in Java die u in staat stelt om de structuur van een JDBC-conforme database te bekijken, de gegevens in tabellen te doorbladeren, SQL-commando's uit te voeren, enz.
- β Databasebeheer voor VSCode.
- β De meest complete en gebruiksvriendelijke MySQL GUI.
- β SQL-editor & open source eenvoudige business intelligence voor Clickhouse.
- β Moderne, native en gebruiksvriendelijke GUI-tool voor relationele databases: MySQL, PostgreSQL, SQLite & meer.
- β PostgreSQL Web Administratie GUI β gebruik uw PostgreSQL-databases vanaf elke locatie, met een rijke, razendsnelle AJAX-webinterface.
CLI-tools
- β Maak verbinding met een database voor het uitvoeren van SQL-commando's binnen IPython of IPython Notebook.
- β Een CLI voor Redis met AutoCompletion en Syntax Highlighting.
- β Top-achtige beheertool voor PostgreSQL.
- β Top-achtige applicatie voor het monitoren van PostgreSQL-serveractiviteit.
- β βtopβ voor PostgreSQL.
- β Postgres Pager.
- β Oracle SQL Developer Command Line (SQLcl) is een gratis opdrachtregelinterface voor Oracle Database.
- β Een universele opdrachtregelinterface voor PostgreSQL, MySQL, Oracle Database, SQLite3, Microsoft SQL Server, inclusief NoSQL en niet-relationele databases!
dbcli
- β AthenaCLI is een CLI-tool voor de AWS Athena-service die auto-completion en syntax highlighting kan doen.
- β CLI voor SQLite-databases met auto-completion en syntax highlighting.
- β Een command-line client voor SQL Server met auto-completion en syntax highlighting.
- β Een terminalclient voor MySQL met AutoCompletion en Syntax Highlighting.
- β Postgres CLI met autocompletion en syntax highlighting.
- β Vertica CLI met auto-completion en syntax highlighting.
DB-schema navigatie en visualisatie
- β Snelle en eenvoudige tool om u te helpen uw database-relatiediagrammen en stromen snel te tekenen met behulp van eenvoudige DSL-taal.
- β Tool voor het genereren van Entity Relation Diagrammen.
- β Een gratis tool voor database-schema ontdekking en begrip.
- β Genereer uw database naar HTML-documentatie, inclusief Entity Relationship diagrammen.
- β CI-vriendelijke tool voor het documenteren van een database, geschreven in Go.
Modellers
- β Een krachtige en kosteneffectieve tool voor databaseontwerp die u helpt om hoogwaardige conceptuele, logische en fysieke datamodellen te bouwen.
- β Oracle SQL Developer Data Modeler is een gratis grafische tool die de productiviteit verhoogt en de datamodeltaken vereenvoudigt.
- β Datamodelingtool ontworpen voor PostgreSQL.
Migratietools
- β Database configuratie-als-code tool die het concept van idempotente DDL-scripts benut.
- β Database migratietool.
- β Online schema-migratie voor MySQL.
- β Database-onafhankelijke bibliotheek voor het bijhouden, beheren en toepassen van wijzigingen in databaseschema's.
- β Zoals diff, maar voor PostgreSQL-schema's.
- β Node.js database migratiebeheer, exclusief gebouwd voor postgres. (Maar kan ook worden gebruikt voor andere DB's die voldoen aan de SQL-norm β bijvoorbeeld CockroachDB.)
- β Biedt hulpmiddelen om een PostgreSQL-databaseschema als YAML te beschrijven.
- β Een Kubernetes-operator voor declaratief databaseschema beheer (gitops voor databaseschema's).
- β Sensibele database-native wijzigingsbeheer voor framework-vrije ontwikkeling en betrouwbare implementatie.
- β Weer een andere schema versiebeheer- en migratietool, gemaakt met native .NET Core 3.0+ en hopelijk beter.
Code generatie tools
- β Afleidingen van SQL DDL (Data Definition Language) uit tabelgegevens.
- β Commandoregeltool voor het exporteren van Oracle-schema naar een set ddl-initscripts met de mogelijkheid om ongewenste informatie te filteren, DDL in verschillende bestanden te scheiden, en mooi geformatteerde uitvoer.
Wrappers
- β Een open-source REST API backend voor mobiele, web- en IoT-toepassingen.
- β Bliksemsnelle, instant realtime GraphQL API's op Postgres met fijnmazige toegangscontrole, ook webhooks triggeren bij database-evenementen.
- β SQL voor JSON- en CSV-stromen.
- β PostgreSQL foreign data wrapper voor MySQL.
- β Een mid-tier Java-toepassing, ORDS koppelt HTTP(S) werkwoorden (GET, POST, PUT, DELETE, enz.) aan database transacties en retourneert resultaten die zijn opgemaakt met JSON.
- β Prisma transformeert uw database in een realtime GraphQL API.
- β REST API voor elke Postgres-database.
- β Is een manier om een RESTful API van elke database te serveren, geschreven in Go.
- β SQL-generator met Java en HTTP API's, gebruikt een eenvoudige RESTful HTTP API met XML- of JSON-serialisatie.
- β Zet eenvoudig uw SQL-database om in een REST API.
- β Genereer automatisch een RESTful API-service voor uw legacy-database.
- β Geavanceerde REST- en UI-wrapper voor uw SQL-queries.
Backup tools
- β Betrouwbare PostgreSQL Backup & Restore.
- β Backup and Recovery Manager voor PostgreSQL.
Replicatie/Data-operatie
- β Een hulpmiddel voor het verkennen en publiceren van gegevens.
- β Distributed Data Transfer Service voor MySQL.
- β Sync PostgreSQL-gegevens tussen databases.
- β MySQL naar PostgreSQL replica-systeem geschreven in Python 3. Het systeem gebruikt de bibliotheek mysql-replication om de rijen af te halen via MySQL die in PostgreSQL als JSONB worden opgeslagen.
- β Een Golang-webserver om Postgres-wijzigingen minstens één keer over websockets te streamen, gebruikmakend van de logische decoderingsfunctie van Postgres.
- β De populairste replicatiebeheerder voor PostgreSQL.
Scrips
- β Een verzameling nuttige kleine scripts voor database-analyse en -beheer, gemaakt door ons team bij PostgreSQL Experts.
- β Query's om statistische bloat in indexen en tabellen voor PostgreSQL te meten.
- β SQL-test die controleert of uw database voldoet aan de regels van .
- β Nuttige PostgreSQL-hulpmiddelen.
- β Nuttige SQL-scripts en commando's van .
- β De ontbrekende set nuttige tools voor Postgres DBA's en alle ingenieurs.
- β Nuttige PostgreSQL-query's en -commando's.
- β Deze sqlplus-scripts zijn voor de prestatiesoptimalisatie en probleemoplossing van Oracle-databases.
Monitoring/statistieken/prestaties
- β Biedt een grafische weergave van actieve sessiegeschiedenisgegevens binnen de Oracle- en PostgreSQL-database.
- β Agentloze en kosteneffectieve MySQL-monitoringtool.
- β Monitor de prestaties van uw SQL Server op Linux met collectd, InfluxDB en Grafana.
- β Een veilige, eenvoudige en agentloze tool voor externe servermonitoring, boordevol krachtige functies om uw monitoring zo effectief mogelijk te maken.
- β Open source platform voor het beheren en monitoren van de prestaties van MySQL en MongoDB.
- β Pganalyze statistiekenverzamelaar voor het verzamelen van PostgreSQL-metrics en loggegevens.
- β Diagnosetool van de nieuwe generatie die gebruikers in staat stelt een diepgaande analyse uit te voeren van de gezondheid van Postgres-databases.
- β Prometheus-exporteur voor PostgreSQL-servermetrics.
- β Meet en volg elk aspect van je PostgreSQL-databases.
- β Een prestatiedashboard voor Postgres β gezondheidscontroles, aanbevolen indexen en meer.
- β Verzamelt en toont informatie en statistieken van een draaiende PostgreSQL-server.
- β Een gebruikersinterface voor Postgres-explain-plannen, plus tips om de prestaties te verbeteren.
- β Verzamelt PostgreSQL-statistieken en of slaat deze op in CSV-bestanden of drukt ze af op stdout.
- β Flexibele, autonoom werkende oplossing voor het monitoren/dashboarden van PostgreSQL-metrics.
- β Biedt metrics voor je postgres-database.
Zabbix
- β Monitoragent voor PostgreSQL.
- β Orabbix is een plugin ontworpen om samen te werken met Zabbix Enterprise Monitor om meerlaagse monitoring, prestatie- en beschikbaarheidsrapportage en -meting voor Oracle-databases te bieden, samen met serverprestatiemetics.
- β Dit is de Zabbix-monitoringtemplate voor PostgreSQL-database.
- β Python-script om Oracle-databases te monitoren.
- β ZabbixDBA is een snelle, flexibele en voortdurend ontwikkelende plugin voor het monitoren van je RDBMS.
Testing
- β Een database-testframework dat eenvoudig testgedreven ontwikkeling van je databasecode ondersteunt.
- β Regressietests voor je SQL-query's.
Gegevensgenerator
- β Het is een framework voor het genereren van realistische en geldige testgegevens van hoge volumes voor je systeem onder test (vermijdend het Datalite-antipatroon).
- β Krachtige GUI-tool voor het creΓ«ren van enorme volumes realistische testgegevens.
- β Kleine maar krachtige GUI-tool voor het vullen van Oracle-schema's met tonnen realistische testgegevens.
- β Krachtige GUI-tool voor een snelle generatie van betekenisvolle testgegevens voor databases.
Beheer
- β Een snelle PostgreSQL-loganalysator.
- β Beheer de rollen, rolleden, schema-eigendom en privileges van een Postgres-cluster.
- β Postgres-partitionering zo eenvoudig als taart.
HA/Failover/Sharding
- β Postgres-extensie die je gegevens en je query's over meerdere knooppunten verdeelt.
- β Een sjabloon voor PostgreSQL High Availability met ZooKeeper, etcd of Consul.
- β Een hoge schaalbaarheidsoplossing voor MySQL-clustering en hoge beschikbaarheid.
- β Cloud-native PostgreSQL-beheerder voor hoge beschikbaarheid van PostgreSQL.
- β Postgres-extensie en service voor automatische failover en hoge beschikbaarheid.
- β PostgreSQL-replicatiebewakings- en failover-daemon.
- β Hoge beschikbaarheid voor Postgres, gebaseerd op de industrie-referenties Pacemaker en Corosync.
- β PostgreSQL High-Availability Cluster (gebaseerd op 'Patroni' en 'DCS(etcd)'). Automatisering van implementatie met Ansible.
- β Database-clusteringssysteem voor horizontale schaling van MySQL door middel van gegeneraliseerde sharding.
Kubernetes
- β Het gemakkelijker maken om productieklare databases uit te voeren op Kubernetes.
- β De Postgres-operator maakt zeer beschikbare PostgreSQL-clusters op Kubernetes (K8s) mogelijk, aangedreven door Patroni.
- β HA PostgreSQL-clusters met Docker.
- β Enterprise-grade, Full Stack PostgreSQL op Kubernetes.
Configuratietuning
- β Script geschreven in Perl dat je in staat stelt om snel een MySQL-installatie te beoordelen en aanpassingen te maken om de prestaties en stabiliteit te verhogen.
- β Gratis online tool om een geoptimaliseerde
postgresql.conf. - β PostgreSQL-configuratiewizard.
- β Eenvoudig script om je PostgreSQL-databaseconfiguratie te analyseren en tuningadvies te geven.
DevOps
- β DBmaestro versnelt release-cycli en ondersteunt wendbaarheid binnen het gehele IT-ecosysteem.
- β Toad DevOps Toolkit voert belangrijke database-ontwikkelingsfuncties uit binnen uw DevOps-workflow β zonder in te boeten op kwaliteit, prestaties of betrouwbaarheid.
Schema voorbeelden
- β Oracle Database Voorbeeldschema's.
Rapportage
- β Een gebruiksvriendelijke SQL-rapportage-applicatie gebouwd voor SQL-liefhebbers.
Distributies
- β Tool die MySQL-databaseservers gemakkelijk implementeert.
- β PowerShell-module die je kunt beschouwen als een commandoregel SQL Server Management Studio.
- β Volledig uitgeruste PostgreSQL-installatie verpakt als een standaard Mac-app.
- β Een ontwikkelaar-vriendelijke distributie van Postgres.
- β Webgebaseerde PostgreSQL-beheerfrontend die verschillende hulpprogramma's en applicaties bundelt voor gebruik met PostgreSQL.
Beveiliging
- β Databasebeveiligingssuite. Databaseproxy met veldniveau-encryptie, zoeken door versleutelde gegevens, SQL-injectiepreventie, inbraakdetectie, honeypots. Ondersteunt client-side en proxy-side ("transparante") encryptie. SQL, NoSQL.
Code formatter
- β Taalagnostische mooi-print via machine learning.
Bijdragen
- Uw bijdragen zijn altijd welkom! Lees alstublieft de eerst.
Er zijn ontdekkingen voor databases β deel ze. Ook ontvang ik graag feedback β PR's en sterren. Heb je vragen over het maken van je eigen lijsten β schrijf ook dan.
Bron: habr.com
