Utworzeniu pliku txt z 10 000 000 rekordów do bazy danych

jaga664
Użytkownik
Użytkownik
Posty: 117
Rejestracja: 9 mar 2011, o 19:06
Płeć: Mężczyzna
Lokalizacja: Rzeszów
Podziękował: 12 razy

Utworzeniu pliku txt z 10 000 000 rekordów do bazy danych

Post autor: jaga664 »

Wykonanie zadania polega na utworzeniu pliku z 10 000 000 (milionami) rekordów do bazy danych znajdującej się na PHPMYSQL.
Istotny jest czas w jakim plik zostanie przesłany do bazy danych (Najlepiej w przeciągu 60 sekund!)
Pomóżcie, jak wykonać to zadanie?
OShon
Użytkownik
Użytkownik
Posty: 65
Rejestracja: 4 mar 2014, o 00:32
Płeć: Mężczyzna
Lokalizacja: VBATools | Kraków | Poland | Europe | Earth | SolSystem | SomewareInSpace
Podziękował: 1 raz
Pomógł: 7 razy

Utworzeniu pliku txt z 10 000 000 rekordów do bazy danych

Post autor: OShon »

Samo utworzenie pliku w którym znajdować się będzie 10M rekordów trwa 2 i pół minuty
a plik zawiera MB ~89MB.

Kod: Zaznacz cały

Sub do_pliku_10m()
'VBATools.pl Dodatki do Office
Dim x&, objFSO As Object, Stream As Object
Const plik$ = "c:\temp\plik_10m.txt"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set Stream = objFSO.CreateTextFile(plik, 1, False)
    For x = 1 To 10000000
        Stream.write x & vbNewLine
    Next
Stream.Close
End Sub
Co do przesłania go na serwer to zapewne nie jest takie długie, co innego z implementacją tych danych do tabeli. Lepiej było by wykonać procedurę SQL i za jej pomocą wpisywać dane wprost do zdefiniowanej tabeli.
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

Utworzeniu pliku txt z 10 000 000 rekordów do bazy danych

Post autor: Afish »

Nie znam MySQL, ale wydaje mi się, że to może być pomocne:
... celeration
... ould-take/
http://dba.stackexchange.com/questions/ ... odb-engine

Osobną kwestią jest: dlaczego chcesz wykonać taką operację? Nie mówisz nic o strukturze tabeli ani indeksach, więc podejrzewam, że problem leży gdzieś indziej.
ODPOWIEDZ