sql >> Databasteknik >  >> RDS >> Mysql

Vilken db-hanterare för ett 100Go-bord?

Jag använder alla databaser du nämnde. För denna belastning kan jag rekommendera MySQL eller PostgreSQL eftersom jag redan arbetat med ännu högre belastning på PostgreSQL. Men MySQL kommer att göra samma jobb också - kanske till och med bättre eftersom det var designat från början för hög skärbelastning.

Lösningen på PostgreSQL jag arbetade med användes för att lagra systemmeddelanden från telekommunikationsnätverket och kunde samla in ~300GB data per dag på en maskin utan problem. Men du behöver ordentlig HW-arkitektur.

Du behöver en maskin med minst 8 CPU men mer är bättre och du måste ha flera insättningsköer. Använd loader i Java eller C eller golang med fler parallella hot och gör massinsättningar från varje hot med kommandot COPY för ~10000 poster i en bulk. Du måste använda anslutningspool eftersom PostgreSQL har högre overhead för att öppna en ny anslutning.

Det kommer också att hjälpa dig att distribuera data över fler tabellutrymmen varje tabellutrymme på separat fysisk disk eller bättre på separat fysisk diskarray. Om möjligt, använd inte index på rådata. Separera dina rådata från aggregerade resultat.

Vi hade en annan lösning med pl/proxy-tillägg för PostgreSQL och flera fysiska maskiner för rådata partitionerade efter tid. Detta system kunde samla in minst 1 TB per dag men med rätt mängd slavdatabaser ännu mer.

Men du måste förstå att för att verkligen bearbeta denna mängd data behöver du rätt hårdvara med rätt konfiguration. Det finns ingen magisk databas som kommer att göra mirakel på någon "notebook-liknande konfiguration"...

InfluxDB är en riktigt bra tidsseriedatabas och vi använder den för övervakning. Jag tror att med tillräckligt många processorer och riktigt mycket minne kommer du att kunna använda det också. Jag uppskattar att du kommer att behöva minst 64 GB RAM eftersom insatser är dyrare minne. Så med fler infogningsköer kommer databasen att behöva mycket mer minne eftersom den lagrar allt i minnet och gör automatiskt index på taggar.




  1. ladda upp bild till mysql-databasen php

  2. Hur man stoppar eller kontrollerar Microsoft Access-felkontrollmarkörer

  3. Döda en postgresql-session/anslutning

  4. MYSQLI förberedd sats bind_param-typer fungerar inte