UPDATE table from other table

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior en medior .Net ontwikkelaars gezocht in omg

Bedrijfsomschrijving Onze opdrachtgever is één van de leukste organisaties van de regio Nijmegen. Vanuit hun makkelijk te bereiken kantoor werken ze voor verschillende opdrachtgevers aan de realisering van zeer complexe projecten. Zo bouwen ze webbased maatwerk software, websites, webshops en creëren ze de vormgeving en content voor een aantal toffe namen. Binnen het team heerst er een informele sfeer, de focus ligt op het afleveren van goed werk waarbij er volgens de laatste trends en technologieën ontwikkeld wordt. Functieomschrijving Samen met ongeveer 4 collega’s zal jij per project een team vormen. Ieder heeft zijn eigen sterke kracht waardoor je elkaar

Bekijk vacature »

Embedded Developer

Zoek jij een baan in een unieke branche? Ligt jouw passie bij het ontwikkelen van embedded devices en wil je in een leuk team werken? Dan past de functie van Embedded Developer perfect bij jou. Ter ondersteuning van de afdeling Engineering zijn wij op zoek naar een Embedded Developer voor 40 uur per week. Embedded Developer Wat ga je doen als Embedded Developer? Je bent verantwoordelijk voor het ontwikkelen en onderhouden van onze casino producten die communiceren met onze toepassingen in de cloud. Je komt te werken in een team met een zeer brede kennis van ontwikkelen. Denk hierbij aan

Bekijk vacature »

Java-ontwikkelaar

Java-ontwikkelaar De Douane ondersteunen met nieuwe applicaties en goed werkende bestaande applicaties; daar draag jij als Java-ontwikkelaar aan bij. Binnen de keten Toezicht, Goederen en Risico in Apeldoorn help je de zo Douane om de risico’s af te dekken die er zijn als goederen de grens over gaan. Dit doe je bij de Belastingdienst Volgens de SAFe-methode ontwikkel je nieuwe applicaties en onderhoud je bestaande applicaties, waarbij jouw multidisciplinaire team zelf verantwoordelijk is voor het resultaat. Je werkt agile samen met ontwikkelaars, een scrummaster en de productowner. In overleg met de productowner en de businessowner wordt tijdens het PI-event bepaald

Bekijk vacature »

Low code developer

Ben jij de low-code developerdie het leuk vindt zijn kennis toe te passen in complexe en maatschappelijk relevante ingenieursprojecten? Wij zoeken per direct een low-code developer met ervaring om ons team te versterken. Je komt terecht in een team dat een mix is van low-code developers, software developers, IT consultants en projectleiders. Als low-code developer ga je aan de slag met het ontwikkelen van digitale diensten en het automatiseren van onze werkprocessen. Je maakt hierbij gebruik van de low-code platformen van Outsystems en Microsoft (Power Automate en Power Apps). In overleg met onze product owners en projectleiders bepaal je per

Bekijk vacature »

Back-end Ruby ontwikkelaar

Zoek jij een baan in een unieke branche? Ligt jouw passie bij het ontwikkelen van Back-end Ruby applicaties en wil je in een leuk team werken? Dan past de functie van Back-end Ruby ontwikkelaar perfect bij jou. Ter ondersteuning van de afdeling Engineering zijn wij op zoek naar een Back-end Ruby ontwikkelaar voor 40 uur per week. Back-end Ruby ontwikkelaar Wat ga je doen? Je bent verantwoordelijk voor het ontwikkelen en onderhouden van casino systemen in de cloud. Je komt te werken in een team met een zeer brede kennis van ontwikkelen. Denk hierbij aan Hardware, Front-end, Back-end ontwikkeling in

Bekijk vacature »

Python Fullstack Ontwikkelaar

Over het bedrijf: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Wij bouwen web-apps. Wil jij apps ontwikkelen? Heb jij ervaring met Ruby? Vaste Baan: Python Fullstack Ontwikkelaar Node.js 2.800 - 4.500 Full Stack Developer Deze werkgever is een studio die nieuwe bedrijven ontwikkelt en introduceert. Wij ontwikkelen innovatieve producten, systemen en diensten en bouwen vervolgens teams op om ze in bedrijven te schalen. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet

Bekijk vacature »

JavaScript Developer Front-End

Wie wordt jouw werkgever?: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Deze werkgever is het bedrijf achter de grootste Tennis-Badminton-Squash portal van Nederland. Ben jij een JavaScript Developer? Heb je ervaring met React? Vaste baan: JavaScript Developer Front-End React 3.200 - 4.400 JavaScript Developer Deze werkgever is het bedrijf achter de grootste Tennis-Badminton-Squash portal van Nederland. Wij ontwikkelen software volledig gericht op de sportwereld. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de

Bekijk vacature »

Software Engineer

Over KRANENDONK Wij zijn een systeemintegrator en leveren over de hele wereld hoogwaardige geautomatiseerde las- en snijoplossingen aan onze belangrijkste industrieën: scheepswerven, offshore en staalconstructie bedrijven. Door onze intelligente robotoplossingen voor las- en snijprocessen te implementeren, kunnen onze klanten op de meest efficiënte en effectieve manier in enkelstuks (non-repetitive) productie produceren! Voor het ontwikkelen van de productiesystemen maakt KRANENDONK gebruik van de zelf ontwikkelde softwarepakketten Rinas en ARAC. Rinas verzorgt de werkvoorbereiding, terwijl ARAC de systemen op de werkvloer aanstuurt. Een grotere integratie van beide pakketten is een van de speerpunten voor de komende jaren. Met vestigingen in Nederland (hoofdkantoor),

Bekijk vacature »

Group Navision Developer

NO RELOCATION - APPLICANTS NEED TO BE LOCATED IN THE NETHERLANDS Due to success and various software products we are looking for a Navision Developer for our client to join their IT Team. Client Details NO RELOCATION - APPLICANTS NEED TO BE LOCATED IN THE NETHERLANDS Key-Account of Michael Page - International Leader in Building & Constructions Description NO RELOCATION - APPLICANTS NEED TO BE LOCATED IN THE NETHERLANDS The Navision/ERP Developer is responsible to create extensions and custom solutions on relevant group systems when added value can be realised on top of a standard ERP systems. Examples of this

Bekijk vacature »

C++ Ontwikkelaar Software Game Media

Over het bedrijf: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Wij creëren operationele efficiëntie in de industrie voor zwaar materieel en goederenbehandeling. Ben jij geschikt als C++ Developer? Heb je ervaring met Visual Studio? Vaste baan: C++ Ontwikkelaar Software Game Media HBO 3.300 - 4.900 C++ Ontwikkelaar Deze werkgever is software ontwikkelaar van simulatie software voor de offshore. Onze klanten gebruiken onze simulatoren voor training en het oefenen van complexe handelingen, projectvoorbereiding, procedurevalidatie en ook remote handling en control. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je

Bekijk vacature »

Qlikview ontwikkelaar

Bedrijfsomschrijving Mijn klant is gevestigd in de regio Apeldoorn en een bekende speler binnen de retailbranche in Nederland. Vanuit het kantoor in Apeldoorn worden er dagelijks vele goederenstromen beheerd en gedistribueerd over de hele wereld. In totaal werken er binnen de organisatie 600 FTE en er heerst een gezellige informele werksfeer. Functieomschrijving ICT is ondersteunend binnen de organisatie. Daarom is het ICT team momenteel 18 FTE groot. Ter uitbreiding is mijn klant op zoek naar een Qlikview ontwikkelaar. De komende jaren wordt juiste informatievoorziening een steeds belangrijker speerpunt binnen de organisatie om de klantvraag zo goed mogelijk te kunnen beantwoorden.

Bekijk vacature »

Ervaren C++ C#.NET Software Ontwikkelaar

Bij welk bedrijf je gaat werken: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Zij bieden innovatieve oplossingen die bedrijven efficiënter en wendbaarder maken, waarmee wij hun steunen in digitale transformatie. Ben jij geschikt als C++ Developer? Heb je ervaring met software? Vaste baan: Ervaren C++ C#.NET Software Ontwikkelaar HBO 3.400 - 4.800 Ervaren C++ Ontwikkelaar Zij bieden innovatieve oplossingen die bedrijven efficiënter en wendbaarder maken, waardoor onze klanten zich net zo snel kunnen ontwikkelen als de business van hen vraagt. Bij bij hun werk je aan onze eigen bedrijfsapplicaties.

Bekijk vacature »

Integratiespecialist PHP

Wie wordt jouw werkgever?: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Deze werkgever is een handelsmaatschappij en leveren installatiematerialen. Ben jij een ervaren Integratiespecialist? Heb je ervaring met OOP en MVC? Vaste baan: Integratiespecialist PHP OOP 2.500 - 3.800 Integratiespecialist Deze werkgever is een (inter)nationale handelsmaatschappij, gespecialiseerd in het leveren van installatiematerialen voor c.v., gas, sanitair en pvc onderdelen. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Zij werken in een leuke werksfeer, met

Bekijk vacature »

Frontend JavaScript Developer E-commerce

Bij welk bedrijf je gaat werken: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Wij bouwen aan de toekomst van eCommerce. Ben jij geschikt als Frontend JS Developer? Heb je ervaring met e-commerce? Vaste baan: Frontend JavaScript Developer E-commerce HBO WO 3.100 - 4.500 Frontend JS Developer Wij bouwen aan de toekomst van eCommerce. Wij streven ernaar om de wereld van eCommerce te veranderen Zij werken voor grote klanten. Zij doen omvangrijke projecten die we bij ons op kantoor realiseren (geen detachering). Zij werken met state-of-the-art technologie en lopen daarin

Bekijk vacature »

Medior Sr PHP Developer Applicaties

Bij welk bedrijf je gaat werken: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Deze werkgever levert diensten en oplossingen voor de uitwisseling van digitale en fysieke informatiestromen. Wil jij werken als PHP Developer? Heb jij ervaring als PHP developer? Vaste baan: Medior Sr PHP Developer Applicaties MBO+ HBO 2.800 - 4.300 Medior Senior PHP Developer Als fullservice marketingbureau werken we op alle fronten: e-mail, direct mail, mobile, web en social media. Marketing IT Tools ontwikkelen wij op maat of hebben wij in huis. Bij deze werkgever staan vertrouwen, samenwerkings-

Bekijk vacature »
Dennis WhoCares

Dennis WhoCares

04/12/2017 22:18:39
Quote Anchor link
Dag allemaal,

daar zijn we weer met die vervelende vragen :D

Ik heb een best wel veel velden in een 'redelijk groot' tabel.

Ik maak tijdelijke tabellen aan, om zo meervoudige aanpassingen te kunnen doen. Zonder dat de eindgebruiker die 1-20seconden hier last van heeft.

Deze data wil ik graag weer terug updaten naar de 'live' tabel.
Maar zo lui als ik ben, wil ik niet ALLE velden gaan benoemen, want het is 100% zeker dat de veldnamen hetzelfde zijn.
Ik gebruik namelijk
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
CREATE TABLE tmp_' . $hdesk . ' AS
                            SELECT *
                            FROM dns_tickets
                            WHERE ticket_hdesk = ' . $hdeskID

tickets heeft een primary key ticket_id met Auto Increment.
Ik heb wel het een en ander opgezocht en kwam eigenlijk op het volgende uit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
REPLACE INTO dns_tickets live SELECT tmp.* FROM tmp_' . $hdesk . ' tmp WHERE live.ticket_id = tmp.ticket_id

Maar hierover las ik ook weer dat deze functie eigenlijk eerst doet deleten, en dan doet inserten, klopt dit?
Is er een betere oplossing hiervoor ?
 
PHP hulp

PHP hulp

26/05/2022 01:00:46
 
Thomas van den Heuvel

Thomas van den Heuvel

04/12/2017 23:17:41
Quote Anchor link
Waar komt de noodzaak vandaan om een kopie te trekken? Dit lijkt mij onwenselijk omdat je dan ineens twee bronnen hebt van wat in wezen dezelfde informatie is.

Heb je al geprobeerd om bijvoorbeeld een (of meer) index(en) aan te maken voor snelle(re) lookup? Of gekeken hoe het komt dat e.e.a. traag is (aangenomen dat dat de reden is, of vanwaar dus deze wens)?
 
Dennis WhoCares

Dennis WhoCares

05/12/2017 08:15:27
Quote Anchor link
Hi Thomas,

Het komt doordat de update best wel wat langer duurt.
Ik moet alle tickets updaten mbt SLA's en kosten berekenen.
Per afdeling kunnen de kosten verschillen.

In eerste instantie dmv csv, xml en xls files update ik vrijwel alle tickets al met een vaste datum, zodat ik daarna kan zien welke geupdate zijn in de live tabel, en vervolgens in de import tabel zie welke nieuw zijn.

Alle updatet tickets moet ik bijwerken mbt SLA kosten en afdelingen, daarna de tickets uit de import tabel toevoegen, en ook nog eens bijwerken, met missende gegevens.

Dit x10 met een cronjob van 5 minuten, het liefst sneller, maar helaas heeft het update script iets tijd nodig om 100 duizenden tickets te bewerken.
M'n updates zijn op basis van de ticket_id, waarvan ik verwacht dat het niet veel sneller kan dmv extra index fields.

Hierdoor lopen gebruikers ietswat vertraging op.
Het gaat maar om seconden werk, soms iets langer dan 3 seconden in totaal om alles bij te werken, maar de tabel dns_tickets raakt gelocked, en staan queries in de wacht tijdens de updates na het importeren.

Dit wil ik graag teniet doen, door per helpdesk een copy te maken van de live tickets, incl. ID, en daarin te werken tot het klaar is, en dan in 1 klap de updates te verwerken.
(de inserts gebeuren wel op de live tabel, maar dat zijn aanzienlijk minder dan de updates)

Ik verwacht dat de eindgebruikers op deze manier geen tot zeer weinig vertraging oplopen, wat frustraties en ban's zal verminderen.
Bans in de zin van, qos bans omdat ze als kippen zonder kop refresh table blijven klikken (een ajax request dat de tickets ophaald op basis van hun filter en aantallen p. pagina)
 
Nick Vledder

Nick Vledder

05/12/2017 22:54:13
Quote Anchor link
Wat ik me afvraag, is of het noodzakelijk is om alle records van de tabel in een beweging te updaten en zo regelmatig ook. Zou je kunnen volstaan met enkel van records die geraadpleegd worden een actuele/ ge-update versie te tonen. Vervolgens ‘s nachts alle records bijwerken.
 
Dennis WhoCares

Dennis WhoCares

06/12/2017 20:58:09
Quote Anchor link
Hi Nick,

Ja dit is gewenst.
Binnen een paar miljoen tickets zijn er gemiddeld vrijwel ongeveer 150.000 aanpassingen, soms meer binnen 3 minuten :-/

Ik heb trouwens dynamische waardes, maar ik weet niet of de SQL server er vrolijk van wordt als ie zelf alle berekeningen in een klap moet uitvoeren en dus zelf de records al update tijdens de import ipv uitbesteden aan php.

Ik zit er bijna aan te denken om over te gaan naar een SAP backend.
Hoewel ik niet denk dat het er veel beter op zal gaan worden.

Ik ga nog wat verder stoeien, en anders zeg ik gewoon dat ze maar ietwat geduld moeten hebben of hun verwachtingen moeten aanpassen in het FO en een nieuwe change aanvragen.
 
Nick Vledder

Nick Vledder

07/12/2017 09:33:41
Quote Anchor link
Het gaat dus om enorm veel records (>1mln) met daarin veel aanpassingen in een kort tijdsbestek. Als ik het goed heb begrepen zijn er ook aanpassingen waar een bepaald(e) algoritme/ rekenregel aan ten grondslag ligt. Ik kan me voorstellen dat er op één moment slechts van een beperkt aantal records (<1mln, <150k en misschien zelfs <100) de SLA-kosten geraadpleegd worden en dus bekend hoeven zijn. Kortom, toepassing van die algoritmes over >1mln records met zo'n 150k aanpassingen kon wel 's beduidend meer resources kosten als het 'on the fly' toepassen van algoritmes op de basisgegevens (?).

Het wordt al complexer als je over meerdere records een totaalplaatje opvraagt ('SLA afdelingskosten'?), maar het is nog steeds te doen en misschien wel efficiënter als bewerkingen die ook nog 's een UPDATE en/of INSERT met zich meebrengen.

Databases verschillen ook in snelheid. Met voor soort database werkt SAP? HANA?
Gewijzigd op 07/12/2017 10:12:56 door Nick Vledder
 
Aad B

Aad B

07/12/2017 11:32:13
Quote Anchor link
Nick Vledder op 07/12/2017 09:33:41:
Databases verschillen ook in snelheid. Met voor soort database werkt SAP? HANA?
SAP werkt doorgaans met Oracle maar kan in kleinere omgevingen ook Microsoft en HANA werken. Oracle is marktleider in SAP. In alle gevallen is het RDBMS wel bereikbaar buiten SAP maar een herkenbaar datamodel is niet echt beschikbaar. Een tabel aangemaakt met het SAP frontend is niet 1:1 terug te vinden in het RDBMS
Gewijzigd op 07/12/2017 11:35:02 door Aad B
 
Dennis WhoCares

Dennis WhoCares

07/12/2017 20:05:54
Quote Anchor link
Hi Nick,

Het gaat in een totaal plaatje inderdaad om miljoenen records, waarvan er gemiddeld 150.000 updates zijn in kort tijdbestek.

Het 'on the fly' toepassen van de algoritmes en berekeningen kan wel, maar het gaat niet om enkele gebruikers, en inderdaad zijn de totalen het meest van belang en het visualiseren van de data.

Uiteraard is dit nooit van ALLE tickets, maar in tijdsbestekken, en per team.
Het bedrijf waar ik werk is wereldwijd en een van de marktleiders op logistiek transport.

Deze tickets komen uit vele helpdesks, welke langzaam maar zeker wel ver gaan uitdunnen tot 1 centraal systeem (eindelijk). Maar dat betekend niet dat de tickets minder worden ;-)

Op het moment heb ik meerdere servers, p.s. draaien SQL op OutSystems

Ik ben met kleine projectjes bezig met SAP Hana en Fiori, maar .. anyways ik voel dat we afdwalen :D
Kan ik simpelweg gewoon alle kolommen en records van tabel updaten naar tabel2 op tabel1.id = tabel2.id

Zonder alle veldnamen te specificeren, jullie begrijpen wel dat dit een uitgebreid en 'levend' project is, en als ik deze query elke keer moet aanpassen als ik weer een nieuwe variable erbij krijg per ticket, dat ik rekening moet houden om ALLE queries bij te werken van alle helpdesk imports..
Gewijzigd op 07/12/2017 20:06:28 door Dennis WhoCares
 
Nick Vledder

Nick Vledder

07/12/2017 21:45:48
Quote Anchor link
@Dennis Eerlijk gezegd durf ik deze vraag niet met een ja of nee te beantwoorden, omdat ik bij deze orde van grootte (# records / velden) zelf probeer te voorkomen SQL dit soort geheugen-intensieve operaties te laten uitvoeren.
 
Dennis WhoCares

Dennis WhoCares

08/12/2017 08:12:47
Quote Anchor link
Hi Nick,

welke geheugen-intensieve operaties bedoel je precies? Gehele tabellen heen en weer kopieren ?
Momenteel doe ik de berekeningen enz gewoon in php
 
Nick Vledder

Nick Vledder

08/12/2017 08:51:27
Quote Anchor link
Exact, INSERT en UPDATE kunnen behoorlijk veel capaciteit vragen. Terug naar hoofdvraag, hoe krijg je flexibiliteit als je extra velden gaat toevoegen .... Bij een MongoDB bijvoorbeeld heb je wat dat betreft (misschien) meer flexibiliteit.
Gewijzigd op 08/12/2017 15:55:28 door Nick Vledder
 
Thomas van den Heuvel

Thomas van den Heuvel

08/12/2017 17:01:20
Quote Anchor link
Is er uberhaupt wel een (goede) analyse gemaakt waarom het traag is? Waar zit de bottleneck? Zijn de (potentiële) probleempunten geïdentificeerd? Zou dit een kwestie kunnen zijn van serverconfiguratie (hetzij hardware, hetzij software)? En ja, mogelijk trekt je server (1 of meer?) het simpelweg niet. En als je zoveel queries hebt kunnen kleine optimalisaties potentieel heel veel winst geven.

Daarnaast (oorspronkelijke vraagstelling), met zoveel mutaties, wat voor garantie heb je dat het origineel niet gewijzigd wordt terwijl je in een kopie loopt te modderen? En als die constructie het origineel vergrendelt lijkt mij dit de vertraging alleen maar in de hand spelen omdat alles en iedereen daarop staat te wachten dan.
 
Dennis WhoCares

Dennis WhoCares

08/12/2017 20:29:51
Quote Anchor link
Hi Thomas,

ik vind dat je met zeer goede vragen komt.
Heb je enige tutorials/tips om dit uit te zoeken op een live systeem ?

Live monitoring mbt geheugen en cpu cores geven me geen indicatie dat het systeem het niet trekt.

Het orgineel wordt alleen en maar dan ook alleen door dezelfde scripts gewijzigd (op dat moment dat het script draaid wordt er wel een 'flag' gezet dat deze specifieke import voor die helpdesk al draait, dus mocht het zijn dat het een te lange operatie wordt en cronjobs over elkaar heen gaan lopen, zal dezelfde script niet draaien mits de 'flag' op 0 staat)
 
Thomas van den Heuvel

Thomas van den Heuvel

10/12/2017 16:29:40
Quote Anchor link
Ik ben geen database-expert maar ik denk dat je met een portie gezond verstand en enig inlevingsvermogen ver kunt komen. Om advies over een oplossingsrichting te kunnen geven, dat is nogal lastig omdat het, als ik het zo goed begrijp, nog niet echt duidelijk is wat de oorzaak is of oorzaken zijn (als je nu iets verandert, wat ben je dan eigenlijk aan het repareren?) en daarnaast weten we verder niets over het systeem zelf.

Is dit een pakket, of is dit zelf in elkaar gezet?
Wat voor tabeltypen gebruik je (MyISAM, InnoDB)?
PHP en MySQL versie (en type)?
Wat is je Client API library version? (zie phpinfo onder kopje mysqli)
Maak je gebruik van (foreign) keys en database-transacties?
Hoe luidt de "flow" / levensweg van een ticket?
Welke queries worden er allemaal uitgevoerd?
Zijn deze van zichzelf traag (kijk met EXPLAIN wat deze doen)?
Welke queries worden het vaakst uitgevoerd en valt hier wat winst te boeken?
Wat zegt eventuele logging van queries hierover (maar gezien de grootte van je dataset zou het loggen mogelijk de performance hiervan kunnen beïnvloeden)?
Geef je tussentijds resultaten vrij die je niet meer nodig hebt?
Is het mogelijk om (tussen)resultaten te cachen zodat deze niet elke keer opnieuw berekend hoeven te worden (hierbij moet je wel rekening houden met veranderingen in de gegevens die deze (tussen)resultaten samenstellen, je zult dan zaken opnieuw moeten berekenen)?
Je maakt ergens onderscheid tussen tickets via een datum, staat hier een index op, of wellicht zou je hier een apart veld van kunnen maken (live y/n met index)? Voor tickets die actueel zijn voeg je dan overal AND live = 1 toe ofzo, daarmee kap je al een heel groot deel van potentiële resultaten weg waar je niet meer doorheen hoeft te ploeteren. Of mogelijk zijn er meerdere statussen die een indicatie geven waar in de levensloop een ticket zich bevindt, of wellicht zijn er meerdere flags nodig (visible, deleted, whatever, ook hier geldt weer dat je dit dan in alle queries zult moeten meenemen).
Ook klinkt het gewoon alsof een of enkele tabellen VEEL te groot zijn, is het mogelijk om e.e.a. te archiveren?
Een mogelijk gevaarlijke operatie, maar heb je de tabellen ooit geOPTIMIZEd? Of gebeurt dit regelmatig? En met zo'n grote tabel is dit mogelijk een erg zware operatie...

En zo kan ik wss nog wel ff doorgaan :p.
 
Nick Vledder

Nick Vledder

12/12/2017 09:59:45
Quote Anchor link
In aansluiting op Thomas...

Je hebt al rekening gehouden met race-conditions (flag). Wat je zou kunnen doen, heel praktisch, is kijken in hoeverre je de UPDATE bewerking kan opsplitsen in kleinere batches. Vervolgens kun je onderzoeken hoe het zit met locks (ken je het verschil tussen MyISAM en InnoDB bijvoorbeeld)? Locks op records en locks op gehele tabellen. Etc., etc.
 
Aad B

Aad B

12/12/2017 11:38:20
Quote Anchor link
Dennis WhoCares op 08/12/2017 08:12:47:
Momenteel doe ik de berekeningen enz gewoon in php
Heen en weer kopieren en mogelijke bottleneck is wellicht ook SELECT * FROM naar php het transporteren van een hele tabel naar php (array) en vervolgens weer naar de database (UPDATE INSERT REPLACE) is geheugen intensief heen en weer vliegen van tabellen. Waarom in php opgelost? Met efficiente en intelligente SQL en/of databaseprocedures met berekeningen in de database kan je zonder php enorm veel sneller resultaat bereiken. Het heen en weer schuiven van data tussen php en MySQL is zeer tijdrovend en onnodig.
Gewijzigd op 12/12/2017 11:50:48 door Aad B
 



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.