Query optimaliseren

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

Backend Developer PHP Laravel SaaS

Dit ga je doen Het ontwikkelen van nieuwe features die bijdragen aan de groei van de klanten van de organisatie; Je denkt mee over nieuwe innovaties, features en verbeteringen in de applicatiearchitectuur; Je draagt bij aan de continue ontwikkeling van jouw team doordat je elke dag streeft naar het verbeteren van jouw eigen prestaties; Je neemt actief deel aan Scrum meetings en de Backend Guild. Hier ga je werken Voor een snel groeiend bedrijf, in de regio Nieuw Vennep, zijn wij opzoek naar een ervaren Backend Developer. De organisatie is actief in de e-commercebranche en ontzorgt haar klanten middels een

Bekijk vacature »

Teamlead PHP Developer

Functieomschrijving Voor een gewaardeerde werkgever in de buurt van Middelburg zijn wij op zoek naar een gemotiveerde teamlead PHP developer met affiniteit met Symfony/Laravel. Een enthousiast persoon die het ontwikkelteam komt versterken met het aanpakken van uitdagende projecten. Ben jij op zoek naar een uitdaging waar je de tijd en ruimte krijgt jezelf te ontwikkelen en je eigen IT-team aan te sturen? Lees dan snel verder! Die ga je doen: Bijdragen aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de PHP based applicaties; Ontwikkeling en beheer van de serviceportal in Symfony en de webshops in de tweede versie van

Bekijk vacature »

Back end Node.js developer

Functie Het ontwikkelteam bestaat momenteel uit 5 (back-end) Developers, 2 systeembeheerders, 1 DevOps engineer, 1 Tech Lead en 2 Scrum Masters. Samen wordt er doorontwikkeld aan twee SaaS-platformen die in een hoog tempo doorontwikkeld moeten worden. Omdat innovatie een belangrijk speerpunt binnen de organisatie is, wordt er ook continu naar snellere en slimmere oplossingen te bedenken en realiseren. Als Back-end Developer hou jij je dagelijks bezig met vraagstukken zoals: API-development, high volume datastromen, het ontwikkelen van Bots aan de hand van A.I. Daarnaast denk en werk jij mee aan de onlineapplicaties voor klanten. Er wordt zelfstandig en in teamverband gewerkt

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het development team. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar start jij in één van onze vier scrumteams. Met 30 ontwikkelaars werk jij aan de doorontwikkeling van ons core product. Ook werkt jouw team aan maatwerkoplossingen op aanvraag van de klant en op projectbasis. Wij vinden het erg belangrijk dat onze ontwikkelaars met plezier naar werk gaan. Een deel hiervan ligt uiteraard bij jezelf, als jij ontwikkelen niet leuk vindt, ben jij bij ons echt aan het verkeerde adres. Jouw team bestaat namelijk uit een groep gepassioneerde vakidioten die dit werk doen omdat dit eerst een hobby was! Daarnaast wordt er intern rekening gehouden met

Bekijk vacature »

C#.NET developer

Functie Het development team bestaat momenteel uit vijf backend C#/.NET ontwikkelaars. Op dit moment zit één ontwikkelaar dedicated op de mobiele applicatie. Als team werk je samen aan het zelf ontwikkelde software platform. Dit bestaat uit zowel apps als websites. Om het systeem door meer dan honderdduizenden gebruikers wordt gebruikt is het bijna vanzelfsprekend dat de kwaliteit van het product hoog moet liggen. Het systeem bestaat uit drie projecten. Je werkt dus aan deze drie projecten waarbij de focus op z’n tijd verschuift. De technieken die worden toegepast zijn o.a. .NET Core, Xamarin, C# en MVC. Je zal dus met

Bekijk vacature »

Senior .NET developer

Functie Als Senior .NET ontwikkelaar ga jij aan de slag in ons Research & development team. Ons team bestaat uit 17 collega’s! Wij zijn momenteel druk bezig met het opzetten van een geheel nieuwe architectuur voor een nieuw product. Hierbij maken wij o.a. gebruik van VS2022 en .NET 6.0. Jouw functie is dan ook voornamelijk backend georiënteerd bij ons. Aangezien wij meetapparatuur ontwikkelen voor de chemische industrie is het ook erg belangrijk om kwalitatief hoogwaardige software te ontwikkelen voor de besturing hiervan. Verder ben jij verantwoordelijk voor het designen, implementeren en testen van nieuwe features. Ook zorg jij voor toekomstbestendige

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

.NET Developer

Dit ga je doen Tot jouw takenpakket behoort onder andere: Webapplicaties ontwerpen, bouwen, testen en implementeren in .NET/C#.; Ontwikkelen, implementeren en beheren van maatwerkapplicaties; Onderhouden en beheren van standaardpakketten; Onderzoeken en beoordelen van nieuwe technieken. Hier ga je werken Als .NET ontwikkelaar kom je te werken bij een grote semioverheidsinstelling in Nijmegen. De organisatie staat garant voor het leveren van onderwijs en les- en onderzoeksmateriaal voor duizenden betrokkenen. De organisatie wil bijdragen aan een gezonde, vrije wereld met gelijke kansen voor iedereen. Binnen de teams hangt een open en collegiale cultuur met veel aandacht voor een prettige en sociale werksfeer.

Bekijk vacature »

Database developer - SQL

Functie omschrijving Kan jij goed overweg met complexe algoritmes en het schrijven van procedures in T-SQL? Heb jij al wat ervaring opgedaan met SQL en vind je het tijd voor de volgende stap? Lees dan snel verder! Dit software bedrijf, gespecialiseerd in de ontwikkeling van logistieke software, is op zoek naar een ervaren SQL database developer. Jouw werkzaamheden zullen onder andere bestaan uit: Je sluit aan bij meetings en brengt het gehele logistieke proces in kaart. Vervolgens ga je als lead developer aan de slag om de klus te klaren. Je stuurt het junior developer team en helpt, zo nodig,

Bekijk vacature »

Lead Java Developer

Dit ga je doen Je taken bestaan onder andere uit: Het aansturen van een development team bestaande uit 8 collega's op technisch maar ook HR gebied; Het maken van strategische keuzes omtrent de (nieuw)bouw van deze applicatie; Het maken van technische ontwerpen; Hands-on mee ontwikkelen met het team (met o.a. Java, Spring, Angular, REST); Reviewen van code en feedback geven op collega developers. Hier ga je werken Als Lead Software Developer ben je verantwoordelijk voor één van de vier Agile Java ontwikkelteams die bouwen aan technologie die duizenden instanties wereldwijd verbindt. Dit Agile team, data Jira en Confluence gebruikt en

Bekijk vacature »

Product Developer (M/F), Fulltime 40 h/week

A global Plantbased revolution – that is our dream. Maximising the protein transition – that is our mission. Producing and developing sustainable and delicious products – that is what we do. Ojah is a fast growing company with a mission and has the ambition to be the world leader in its field. To support this growth we are hiring new colleagues. People that would like to make a difference and dare to dream big. With currently a 150 colleagues proudly working on our exceptional products. Working in a dynamic surrounding that runs full speed ahead. We need you! Product Developer

Bekijk vacature »

Back-end Developer Java

Dit ga je doen Het (door)ontwikkelen van een zelfgebouwde applicatie in Java, Spring Framework, SQL, HTML, CSS en Javascript; End-to-end beheer m.b.t. de applicatie en koppelen van applicaties binnen het landschap; Ontwikkelen van rapportages voor de interne organisatie; Ontwikkelen van aanvullende functionaliteiten m.b.t. de applicatie; Uitvoeren van testen en code reviews. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die medische gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen en verbeteren van de kwaliteit van de zorg in heel Nederland.

Bekijk vacature »
Ruud van Dijk

Ruud van Dijk

16/01/2012 13:46:15
Quote Anchor link
Ik heb de volgende query:

SELECT DISTINCT p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, p.products_image, p.products_barcode
FROM products p
LEFT JOIN products_description pd ON ( p.products_id = pd.products_id AND pd.language_id = '4' )
LEFT JOIN specials s ON p.products_id = s.products_id
INNER JOIN products_to_stores p2s ON p.products_id = p2s.products_id
INNER JOIN products_to_categories p2c ON p.products_id = p2c.products_id
LEFT JOIN categories c ON p2c.categories_id = c.categories_id
WHERE p2s.stores_id = '20'
AND p.products_status =1
AND c.categories_status >=1
AND p2c.categories_id = '607'
AND p.products_id <> '70679816'
AND (
( s.status = 1 AND s.specials_new_products_price > 4.91598 and s.specials_new_products_price < 6.00842 )
OR ( s.status = 0 or s.status is null AND p.products_price > 4.91598 and p.products_price < 6.00842 )
)

Via mysqslap doet hij er 17.79 over (bij 100 querys tegelijk)
hiervoor had ik de query als 26 sec verwerkingstijd dus ik heb al 9 sec winst gemaakt ten opzichte van een oudere versie van deze query.
Maar ik wil nog verder optimaliseren

Als ik hem zo uitvoer:
SELECT DISTINCT p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, p.products_image, p.products_barcode, pd.products_id, pd.products_description, p.products_status
FROM products p LEFT JOIN products_description pd ON ( p.products_id = pd.products_id AND pd.language_id = '4' AND p.products_status =1 )
LEFT JOIN specials s ON p.products_id = s.products_id
INNER JOIN products_to_stores p2s ON p.products_id = p2s.products_id AND p2s.stores_id = '20'
INNER JOIN products_to_categories p2c ON p.products_id = p2c.products_id AND p2c.categories_id = '607'
LEFT JOIN categories c ON p2c.categories_id = c.categories_id AND c.categories_status >= 1
WHERE p.products_id <> '70679816'
AND (
( s.status = 1 AND s.specials_new_products_price > 4.91598 and s.specials_new_products_price < 6.00842 )
OR ( s.status = 0 or s.status is null AND p.products_price > 4.91598 and p.products_price < 6.00842 )
)

dan is de verwerkingstijd 2.5 sec voor 100 querys echter word de pd.description NULL zodra de products_status op 0 staat

Weet iemand nog methodes om de query te verlichten?
De 2e query is dus niet een optie helaas
Gewijzigd op 16/01/2012 13:46:55 door Ruud van Dijk
 
PHP hulp

PHP hulp

25/12/2024 14:08:18
 
Jelle -

Jelle -

16/01/2012 13:50:33
Quote Anchor link
Heb je indexen gebruikt? Goede indexen kunnen query's gigantisch verbeteren in uitvoer tijd.
 
Ruud van Dijk

Ruud van Dijk

16/01/2012 13:53:16
Quote Anchor link
Als het goed is wel
Dit is de explain output:

id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE c const PRIMARY,categories_status PRIMARY 4 const 1 Using temporary
1 SIMPLE p ref PRIMARY,products_status products_status 1 const 16296 Using where
1 SIMPLE pd eq_ref PRIMARY PRIMARY 8 p.products_id,const 1 Using index; Distinct
1 SIMPLE s ref idx_specials_products_id idx_specials_products_id 4 aximax_db.p.products_id 2 Using where; Distinct
1 SIMPLE p2c eq_ref PRIMARY PRIMARY 8 p.products_id,const 1 Using where; Using index; Distinct
1 SIMPLE p2s eq_ref PRIMARY PRIMARY 8 p.products_id,const 1 Using index; Distinct
 
Jelle -

Jelle -

16/01/2012 14:03:28
Quote Anchor link
1 SIMPLE p ref PRIMARY,products_status products_status 1 const 16296 Using where

Lijkt mij dat ie hier nog geen index gebruikt, 16000 rijen * het aantal rijen dat je in totaal ophaalt lijkt me toch wel een redelijk klap.
 
Ruud van Dijk

Ruud van Dijk

16/01/2012 14:09:15
Quote Anchor link
op products_status staat wel een index
 
Jelle -

Jelle -

16/01/2012 14:13:42
Quote Anchor link
Ik zie meerdere malen ..._id = '1'
Wat als je die getallen eens als getallen behandeld, misschien dat dat wel eens een effect kan hebben.
 
Ruud van Dijk

Ruud van Dijk

16/01/2012 14:18:53
Quote Anchor link
Smur f op 16/01/2012 14:13:42:
Ik zie meerdere malen ..._id = '1'
Wat als je die getallen eens als getallen behandeld, misschien dat dat wel eens een effect kan hebben.


nope ook 17.5 sec


Indexen:

Sleutelnaam Type Unieke waarde Gecomprimeerd Kolom Kardinaliteit Collatie Null Opmerking
PRIMARY BTREE Ja Nee products_id 49387 A
idx_products_date_added BTREE Nee Nee products_date_added 0 A
products_status BTREE Nee Nee products_status 0 A
products_model BTREE Nee Nee products_model 0 A YES
manufacturers_id BTREE Nee Nee manufacturers_id 0 A YES
products_tax_class_id BTREE Nee Nee products_tax_class_id 0 A
products_barcode BTREE Nee Nee products_barcode 0 A YES
products_besteld BTREE Nee Nee products_besteld 0 A
products_sku BTREE Nee Nee products_sku 0 A YES
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.