Post

InfluxDB design for LeakTest Service

I dette post vil jeg gennemgå mit indledende design, af den InfluxDB der skal opbevare informationen om hver lækagetest. Databasen er en del af den microservice der hedder LeakStatus-Service, som hvis hovedformål er, at modtage brugerinput og gemme det i en InfluxDB, samt hente information om lækagetests til visning for brugeren. Læs min grundlæggende introduktion til InfluxDB inden dette post, hvis du ikke kender InfluxDB i forvejen.

Tags:
  • test_object: Selve det object der testes på. Der vil være mange forespørgelser på dette og det kan tage mange forskellige værdier.
  • status: Ofte forespørge på status så derfor vil vi have den indekseret.
Fields:
  • user: Sjælendt forespørgelser på dette, potentielt mange forskellige værdier. Egner sig ikke som tag, for at undgå høj kardinalitet (at man har mange unikke værdier i kolonnen).
  • sniffing_points: Vi forespørger sjælendt på dette, da det er relateret til et test_object som vi i stedet vil forespørge på. Der kan også være mange unikke værdier her, men det afhænger af Noleks navngivningskonventionerne for sniffing points.
  • reason: Vi vil nok sjældent forespørge på reason.

Bucket eksempel

_time_measurementtest_objecttest_object_typestatususersniffing_pointmachineIdreason
tidLeakTestobject1type1OKuser1point1machine1 
tidLeakTestobject2type2NOKuser2point2machine2reason here
tidLeakTestobject2type2OKuser2point2machine2reason here

Bucket skema

nametypedata_type 
timetimestamp  
test_objecttagstring 
test_oject_typetagstring 
statustagstring 
machineIdtagstring~~~~
userfieldstring 
sniffing_pointfieldstring 
reasonfieldstring 
This post is licensed under CC BY 4.0 by the author.