sql >> Databasteknik >  >> RDS >> PostgreSQL

PostgreSQL-trender:Mest populära molnleverantörer, språk, VAKUUM, frågehanteringsstrategier och implementeringstyper i företag

PostgreSQL-populariteten skjuter i höjden på företagsområdet. Eftersom denna databas med öppen källkod fortsätter att dra nya användare från dyra kommersiella databashanteringssystem som Oracle, DB2 och SQL Server, anammar organisationer nya tillvägagångssätt och utvecklar sina egna för att upprätthålla den exceptionella prestandan för sina SQL-installationer. Vi deltog nyligen i PostgresConf-eventet i San Jose för att höra från den mest aktiva PostgreSQL-användarbasen om deras databashanteringsstrategier. I den här senaste trendrapporten analyserar vi de mest populära molnleverantörerna för PostgreSQL, VACUUM-strategier, frågehanteringsstrategier och lokal kontra offentlig molnanvändning som utnyttjas av företagsorganisationer.

De mest populära molnleverantörerna för PostgreSQL-värd

Låt oss börja med de mest populära molnleverantörerna för PostgreSQL-värd. Det kommer inte som någon överraskning att de tre bästa molnleverantörerna i världen utgjorde 100 % av PostgreSQL-distributionerna i mängden i denna företagsrapport. AWS har dock tagit ett betydande steg från vår senaste rapport, där de nu i genomsnitt 77,4 % av PostgreSQL-molnanvändningen jämfört med 55,0 % i april. AWS erbjuder en hanterad värdtjänst för PostgreSQL som heter Amazon RDS, men det finns många andra DBaaS-lösningar som erbjuder PostgreSQL-hosting på AWS, som ScaleGrid, som kan ge stöd för flera moln så att du inte är låst med en enda molnleverantör .

AWS var inte den enda molnleverantören som växte – vi upptäckte att 19,4 % av PostgreSQL-molninstallationerna var värd för Google Cloud Platform (GCP), vilket ökade med 11 % från april där de bara hade i genomsnitt 17,5 % av PostgreSQL-hosting. Detta lämnar vår sista molnleverantör – Microsoft Azure, som representerade 3,2 % av PostgreSQL-molninstallationerna i den här undersökningen. Detta är en av de mest chockerande upptäckterna, eftersom Azure blev tvåa med GCP redan i april, och är vanligtvis ett populärt val för företagsorganisationer som utnyttjar Microsofts tjänstersvit.

77,4 % av #PostgreSQL molninstallationer körs på AWSClick To Tweet

Mest använda språk med PostgreSQL

Detta är en ny analys som vi undersökte för att se vilka språk som är mest populära med PostgreSQL. De programmeringsspråk som stöds för PostgreSQL inkluderar .Net, C, C++, Delphi, Java, JavaScript (Node.js), Perl, PHP, Python och Tcl, men PostgreSQL kan stödja många procedurspråk på serversidan genom sina tillgängliga tillägg.

Vi fann att Java är det mest populära programmeringsspråket för PostgreSQL, som utnyttjas av 31,1 % av företagsorganisationerna i genomsnitt. PostgreSQL kan enkelt kopplas till Java-program genom den populära postgreSQL Java Database Connectivity (JBDC)-drivrutinen med öppen källkod, även känd som PgJDBC.

Python var det näst mest populära programmeringsspråket som användes med PostgreSQL, och närmade sig i genomsnitt 28,9 % användning med PostgreSQL. Redan 2013 undersökte PostgreSQL sina användare för att se vilka externa programmeringsspråk som oftast användes med PostgreSQL, och fann att Python endast representerade 10,5 % av resultaten, vilket visade en massiv ökning i popularitet under de senaste sex åren.

Programmeringsspråket C kom på tredje plats, med i genomsnitt 20,0 % användning med PostgreSQL, följt av Go på fjärde plats med 13,3 %, PL/pgSQL på femte plats 11,1 %, Ruby på sjätte plats med 8,9 % och både PHP och Perl på sjua med 4,4 %. PHP var faktiskt det mest populära språket som användes med PostgreSQL 2013, och representerade nästan hälften av svaren från deras undersökning med 47,1 % användning. Den sista kolumnen, Other, representerades av C++, Node.js, Javascript, Spark, Swift, Kotlin, Typescript, C#, Scala, R, .NET, Rust och Haskell.

Vilka programmeringsspråk är mest populära för PostgreSQL? #Java #Python #CClick To Tweet

De populäraste PostgreSQL VACUUM-strategierna

PostgreSQL VACUUM är en teknik för att ta bort tupler som har tagits bort eller nu är föråldrade från deras bord för att återta lagringsutrymme som upptas av de döda tuplarna, även känd som Bloat. VAKUUM är en viktig process att underhålla, speciellt för ofta uppdaterade tabeller innan det börjar påverka din PostgreSQL-prestanda. I vår undersökning frågade vi PostgreSQL-användare för företag hur de hanterar VAKUUM för att se vilka de mest populära metoderna är.

Den mest populära processen för PostgreSQL VACUUM är det inbyggda autovakuumet, som utnyttjas av 37,5 % av företagsorganisationerna i genomsnitt. Autovakuum-demonen är valfri, men rekommenderas starkt i PostgreSQL-communityt, eftersom den automatiserar både VACUUM- och ANALYSE-kommandon och kontrollerar kontinuerligt tabeller för deal-tupler. Även om det rekommenderas starkt, föredrar 33,3 % av PostgreSQL-användarna att manuellt utföra VAKUUM i företagsutrymmet. Fibrevillage har en bra artikel som beskriver dessa vanliga problem med autovakuum som kan få en organisation att anta en manuell strategi:

  • autovacuum kan köras även när det är avstängt för att hantera transaktions-ID-omslutningen.
  • autovacuum körs konstant, vilket gör att det börjar om varje gång det tar slut på utrymme och startar en ny arbetare för varje databas i ditt kluster.
  • autovakuum kan orsaka fel på minnet.
  • autovacuum kan ha problem med att hänga med på en upptagen server.
  • autovakuum kan lätt förbruka för mycket I/O-kapacitet.

En annan överraskande upptäckt var att 18,8 % av organisationerna inte använder VACUUM, eftersom det ännu inte behövs. Detta kan bero på att de använder PostgreSQL i små applikationer eller applikationer som inte uppdateras ofta. 6,6 % av organisationerna har utvecklat en anpassad lösning för PostgreSQL VACUUM, och 4,2 % håller på att planera sin VACUUM-strategi.

Vilken är den mest populära VAKUUM-strategin för PostgreSQL? #autovacuum #manualKlicka för att tweeta

De populäraste PostgreSQL-strategierna för långsam frågehantering

Om du arbetar med PostgreSQL vet du förmodligen att hantering av frågor är den mest tidskrävande uppgiften. Det är en kritisk process med många aspekter att ta hänsyn till, att börja med att utveckla en frågeplan för att matcha din frågestruktur med dina dataegenskaper, för att sedan analysera långsamma frågor, slutligen till att optimera dessa frågor genom prestandajustering.

Vi fann att 54,3 % av PostgreSQL-användarna hanterar långsamma frågor manuellt i företagsorganisationer. Detta kan åstadkommas genom deras moduler auto_explain och pg_stat_statements, kontrollera pg_stat_activity för tabell- och indexaktivitet på din server, analysera den långsamma frågeloggen eller granska i din kod.

I genomsnitt använder 21,7 % av företagsorganisationerna ett övervakningsverktyg för att analysera och hantera sina långsamma PostgreSQL-frågor. Detta hjälper dem att avsevärt minska tiden det tar att identifiera vilka frågor som körs långsammast, oftast och orsakar mest läs- eller skrivbelastning på ditt system, eller frågor som saknar ett index genom att undersöka raderna.

17,4 % av användarna hanterar dock inte aktivt långsamma frågor i PostgreSQL-distributionerna. Vi rekommenderar starkt att du använder en frågehanteringsstrategi för att säkerställa att långsamma frågor inte påverkar prestandan för dina PostgreSQL-distributioner. 4,3 % av användarna håller för närvarande på att planera sin frågehanteringsstrategi och 2,2 % har utvecklat en anpassad lösning för att hantera sina långsamma frågor.

Vilken är den mest populära strategin för långsam frågehantering för PostgreSQL? #monitoring #tool #manualKlicka för att tweeta

PostgreSQL Cloud kontra lokala distributioner

Låt oss avsluta med ett av de hetaste ämnena i PostgreSQL-företagsutrymmet – oavsett om PostgreSQL ska distribueras i molnet eller lokalt. Vi har aktivt övervakat den här trenden hela året och upptäckte att 59,6 % av PostgreSQL-distributionerna var strikt lokala tillbaka i april från vår PostgreSQL-trendrapport 2019 och 55,8 % på plats i vår 2019 Open Source Database Report bara några månader sedan i juni.

Nu, i den här senaste rapporten, fann vi att PostgreSQL-installationer på plats har minskat med 40 % sedan april 2019. I genomsnitt är bara 35,6 % av PostgreSQL-företagsorganisationerna distribueras uteslutande på plats. Men organisationer migrerar inte sina lokala distributioner helt och hållet – 24,4 % av PostgreSQL-distributionerna visade sig utnyttja en hybrid molnmiljö. Hybridmoln är en blandning av lokalt, privat moln och/eller offentligt moln för att stödja deras applikationer och data. Detta är en betydande ökning från vad vi såg i april, och hoppade från 5,6 % av PostgreSQL-distributionerna upp till 24,4 % i september.

Hybridmolninstallationer blir mer populära över hela linjen – denna senaste rapport visade att 57 % av företagen väljer en hybridmolnmiljö som använder både privata och offentliga moln som platser för att lagra sina data. Även om vi ser ett stort hopp till molnet, utnyttjar företagsorganisationer fortfarande lokala miljöer i viss kapacitet 60 % av tiden, jämfört med 65,2 % i april. Slutligen fann vi att PostgreSQL-implementeringar i det offentliga molnet har ökat med 15 % sedan april, och nu använder företagsorganisationer i genomsnitt 34,8 %.

Det är också viktigt att notera att den här undersökningen genomfördes vid PostgresConf Silicon Valley-evenemanget, medan vår undersökning i april genomfördes i New York City. Bay-området är allmänt känt för att anta ny teknik, vilket gör att vi kan anta att denna marknad har en högre molnanvändningshastighet än östkusten.

PostgreSQL-distributionstyper Apr juni Sep Apr-sep-tillväxt
På plats 59,6 % 55,8 % 35,6 % -40,0%
Hybridmoln 5,6 % 16,3% 24,4 % 336 %
Public Cloud 34,8 % 27,9 % 40,0 % 15,0 %


Mest populära distributionstypen för #PostgreSQL? Lokalt vs. Public Cloud vs. Hybrid CloudKlicka för att tweeta

Så, hur överensstämmer dessa resultat med dina PostgreSQL-distributioner och strategier? Vi vill gärna höra dina tankar, lämna en kommentar här eller skicka oss en tweet på @scalegridio.


  1. Hur TO_BASE64() fungerar i MariaDB

  2. GROUP_CONCAT() Funktion i MySQL

  3. Välj första raden i varje GROUP BY-grupp?

  4. postgresql - antal (inga nollvärden) för varje kolumn i en tabell