![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 600 Pomógł: 2 Dołączył: 1.09.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zastanawiam się jak najwydajniej zrobić import danych z pliku. Czy lepszym rozwiązaniem bedzie import z pliku CSV czy Xml? Dodam, że plik XML waży prawie 10MB, CSV tylko 5,5MB. Co będzie bardziej efektywne i mniej obciazy serwer biorac pod uwage ilość pozycji w pliku 500, 4 000, 10 000, 30 000 pozycji. Bede wdzięczny za wszelkie spostrzezenia. Import u mnei wygląda tak:
Ten post edytował kukix 17.12.2010, 13:42:58 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Cytat import danych z pliku - od kiedy to dane trzymamy w pliku XML? (IMG:style_emoticons/default/dry.gif) Zrzut tabeli z bazy też robimy w XML? A może w HTML? Plik .csv jest uznanym standardem i co najważniejsze, można dodać od razu do bazy cały plik przy pomocy zapytania LOAD DATA INFILE... a wcześniej łatwo go spreparować przy pomocy pętli while+fgets.Cytat csv są problemy często z kodowaniem lub z przecinkami i znakami interpunkcji. Xml jest szybki i łatwo można zmienić schemat i dopasować - jakie problemy z kodowaniem? Jeśli kodowanie jest nieznane to jest rozpoznawane a następnie konwertowane podczas importu do bazy, ten sam problem jest przy xml. Z przecinkami problem? Znakami interpunkcji? A może to w xml jest problem ze znakami < czy &? Pierwsze słyszę, z sukcesem importowałem pliki .csv nawet po parę gigabajtów, ciekawe, co można by zrobić z podobnym plikiem w xml? I jak może być szybki skoro już na starcie waży dwa razy tyle i nie obsługuje go baza? A co ze specyfikacją elementów? Gdy dostaniesz plik .csv od razu wiesz, co to jest a weź wyślij komuś xml i każ dodać do bazy, powie pewnie (IMG:style_emoticons/default/sciana.gif) a potem (IMG:style_emoticons/default/dostal.gif)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 183 Pomógł: 24 Dołączył: 4.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
- od kiedy to dane trzymamy w pliku XML? (IMG:style_emoticons/default/dry.gif) Zrzut tabeli z bazy też robimy w XML? od kiedy powstał XML. Zrzut w większośc baz zrobimy do XML, w niektórych i do json - to że MySQL nie potrafi tego z konsoli, nie świadczy o słabości XML. Plik .csv jest uznanym standardem i co najważniejsze, można dodać od razu do bazy cały plik przy pomocy zapytania LOAD DATA INFILE... a wcześniej łatwo go spreparować przy pomocy pętli while+fgets. - jakie problemy z kodowaniem? Jeśli kodowanie jest nieznane to jest rozpoznawane a następnie konwertowane podczas importu do bazy, ten sam problem jest przy xml. Z przecinkami problem? Znakami interpunkcji? A może to w xml jest problem ze znakami < czy &? Pierwsze słyszę, z sukcesem importowałem pliki .csv nawet po parę gigabajtów, ciekawe, co można by zrobić z podobnym plikiem w xml? I jak może być szybki skoro już na starcie waży dwa razy tyle i nie obsługuje go baza? A co ze specyfikacją elementów? Gdy dostaniesz plik .csv od razu wiesz, co to jest a weź wyślij komuś xml i każ dodać do bazy, powie pewnie (IMG:style_emoticons/default/sciana.gif) a potem (IMG:style_emoticons/default/dostal.gif) Jeśli myślisz, że XML nie jest uznanym standardem to się mylisz. Dwa - XML na deklaracje kodowania, niczego nie rozpoznaje - "zgaduje". Trzy - jeśli zamykamy się w gronie użytkowników MySQL to faktycznie CSV może wydawać się lepszy, ale w większości programów wymaga deklaracji separatorów, kodowania, znaków zawierających. Cztery - xml'e otworzysz nawet w przeglądarce, nawet w IE - do strawnego przeglądu. Pięć: - XML nie ma problemów z żadnymi znakami, ew. program go inaczej(czyt. źle) zapisuje (jak Excel CSV). Poza zbędnymi(czyt. nieprawdziwymi) komentarzami Pilsener, zgadzam się z nim, wybrałbym CSV jeśli chodzi o MySQL. Ten post edytował kalmaceta 18.12.2010, 12:37:17 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 14:18 |