Posted by Patrick Danielsson on March 18, 2013 at 9:42am
Finns det någon modul som klarar av att läsa data från en .csv fil? Är det ens en möjlighet om man ser på prestanda?
Anledningen till att jag frågar är att för att jag inte har någon större lust att skapa en import av denna fil, det är 18.000 rader som ska uppdateras två dagligen.
Comments
Vad ska du göra med datan
Vad ska du göra med datan sedan i Drupal?
För XML finns denna modul som kan använda XML-filen som backend och visa datan i Views Views XML Backend.
//Pontus Nilsson, Digitalist
Jag vill att man ska kunna
Jag vill att man ska kunna göra en enkel sökning på datan, det bästa vore om man kunde göra det via Views.
Feeds
Jag använder Feeds för att importera data och skapa noder. Du skapar en innrhållstyp med de fält som krävs sedab länkar fälten i din fil till rätt nod-fält genom feeds importer.
Tänk på att testa med en mindre mängd data. Att skapa 18000 noder som ska raderas kan var lite problematiskt.
Själv tycker jag att det är ganska prestandakrävande, särskilt om man uppdaterar noder. Men det är väl en fråga om vilken utrustning man har men min uppfattning är att det går fortare att läsa in allt på nytt istället för att uppdatera
Som mest har jag importerat närmare 150 000 poster utan att det smällt.
/Jah
Migrate
Ett tredje alternativ kan vara Migrate-modulen. http://drupal.org/project/migrate Det var ett tag sen jag själv körde in en CSV med den, men då funkade det hyffsat smidigt.
Tack för alla svar!
Tack för alla svar! Uppskattas.
En fråga jag har gällande Feeds modulen som verkar superbra.
Hur gör man för att importera filen till noder i "bakgrunden"?
Vi ska alltså uppdatera 30.000 noder varje morgon, vilket lär ta en liten stund, och därför är det inte speciellt kul att behöva sitta och kolla på processen (ex: website.net/batch?op=start&id=126), vad jag har förstått så ska detta kunna göras i bakgrunden utan att man behöver ha själva sidan uppe, stämmer det?
Men jag hittar ingen inställning för detta någonstans i Feeds modulen.
Basic Settings
Man anger hur ofta man vill att den ska köras i Basic Settings i den import man skapat. Funktionen kräve cron.
När du börjar testa så är mitt tips att du endast kör på ett mindre antal poster.
Vidare så är det bra att du läser på hur man kan radera noder i batch.
Det är inte roligt att sitta och markera 30 000 noder för borttag när man gjort fel...
Jag har cron sedan tidigare,
Jag har cron sedan tidigare, och har nu ställt in att köra importen var 15:e minut, då jag inte lyckades få det att fungera med "as often as possible".
Men det går ju fruktansvärt långsamt. Den började runt 12-tiden idag, klockan är snart tre och den har inte ens kommit halvvägs.
Är det något som jag har ställt in fel? Det kan väl säkert bero på många faktorer, men detta känns helt galet.
Jag har räknat ut att det
Jag har räknat ut att det importeras 50 noder i varje cron job, och då tas samtidigt de 50 andra noderna bort som ska ersättas.
Om jag kör ett cronjob var 5:e minut på min server, så blir med andra ord 600 noder i timmen. Det kommer inte fungera känner jag.
Vad kan man göra annorlunda? Kan man ändra detta i Drupal inställningarna? Beror det på serverns prestanda?