2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

10GBのCSVファイルのソートが遅いのはなぜですか?

1 :デフォルトの名無しさん:2023/06/12(月) 21:20:45.91 ID:F1HJC183.net
CSVファイルは検索が速いって聞きました
ではなぜソートが遅いのでしょうか?

2 :デフォルトの名無しさん:2023/06/13(火) 08:52:56.97 ID:JBnp9ago.net
べ、べつに遅くないし!

3 :デフォルトの名無しさん:2023/06/13(火) 09:49:32.67 ID:Xu7LyXF8.net
>>1君がバカなのは何故ですか

って言われて答えられないでしょうそれと同じ

4 :デフォルトの名無しさん:2023/06/13(火) 09:53:59.11 ID:meEyuUg2.net
マジレスしとくと
スレタイの "10GB" と >>1 の質問が無関係だな

5 :デフォルトの名無しさん:2023/06/13(火) 13:36:34.95 ID:4HUnX0Fj.net
さっき霊魂を見たんですが、どうしたらいいですか

6 :デフォルトの名無しさん:2023/06/13(火) 16:18:52.30 ID:u7AmJNUj.net
「…見なかったことにしといてやる!」と宣言すればおけ

7 :デフォルトの名無しさん:2023/06/13(火) 19:37:20.82 ID:ixSRP7mF.net
よかろう、ならばビットマップファイルだ

8 :デフォルトの名無しさん:2023/06/22(木) 06:41:18.88 ID:k/qBouFf.net
>>1
それは ヒ・ミ・ツ。
フフフッ…

9 :デフォルトの名無しさん:2023/06/29(木) 13:51:47.41 ID:IO1TL2jD.net
10GBだから

10 :デフォルトの名無しさん:2023/06/30(金) 03:16:09.95 ID:KO9roK1Y.net
昭∞!!!!
大∞!!!!!
昇∞!!!!!!
漠∞!!!!!!!

11 :デフォルトの名無しさん:2023/08/08(火) 07:23:58.42 ID:aShSrm09Z
気侯変動させて災害連發させて人殺して私腹を肥やしてるテ口組織成田空港に集団訴訟やるわけた゛か゛.クソ羽田騒音被災者は何やってんた゛よ
車すら通りにくい閑静な住宅地の多い草加民から荒川隣接自治体に品川区民まて゛大規模に被災してんた゛から.さっさと集団訴訟やろうぜ!
震災被災者には所得税増税してまで莫大な税金くれてやってるが.斎藤鉄夫国土破壊省と結託した強盜殺人犯に奪われるー方とか怒り狂えよ
都心の夕ワマンに家賃も払わず住み続けておいて精神的苦痛だのほさ゛いて反訴まて゛していやか゛るし,そもそも選んでその地に住んて゛いた連中
と力による一方的な現状変更によって騒音まみれにされて生活に仕事にと妨害されてる被災者のどちらのほうが補償すへ゛きかなんて明白だろ
毎年飽きもせず氣持ち悪いプ囗パガンダ繰り返してるあたり,凄まじい利権がうごめいていることの表れなんた゛から、こうした不公平な被災
利権に絡めて反対運動するのが正解な,そしてこうした強盗殺人を指揮している首魁か゛世界最惡の殺人組織公明党て゛ありその支持母体て゛ある
全國の創価人殺し會館て゛「静穏な生活を返せ」『地球破壊するな」『強盗殺人をやめろ』「憲法を無視するな』とデモを繰り返すのが正解!

創価学會員は,何百萬人も殺傷して損害を与えて私腹を肥やし続けて逮捕者まて゛出てる世界最惡の殺人腐敗組織公明党を
池田センセ‐が□をきけて容認するとか本氣で思ってるとしたら侮辱にもほどがあるそ゛!
hΤtρs://i、imgur,cοm/hnli1ga.jpeg

12 :デフォルトの名無しさん:2023/08/09(水) 07:21:27.86 ID:Bb1AJAu+.net
>>1
速いと感じるか遅いと感じるかは個人の感覚の問題
何秒なら速いのか、何と比較して速いのか
他人が遅いというから遅いとか小学生かよ

13 :デフォルトの名無しさん:2023/08/09(水) 07:46:15.85 ID:Aj0Whal0.net
>>12
じゃあ君は速いとでも?w

14 :デフォルトの名無しさん:2023/08/09(水) 07:47:25.44 ID:Aj0Whal0.net
CSVのソートが遅いのは社会的共同体の中で自然に共有されうる普遍的事実である

15 :デフォルトの名無しさん:2023/08/09(水) 10:35:23.16 ID:ZMTba8c6.net
まぁRDBMS使った方がいいわな

16 :デフォルトの名無しさん:2023/08/09(水) 11:06:02.05 ID:qEKEd4/l.net
何をつかっても遅いものは遅いw

17 :デフォルトの名無しさん:2023/08/09(水) 15:27:00.04 ID:a25ApkGr.net
実装次第で遅くなりそうなケースだな
フレームワークとコピペだけで戦ってきたやつには荷が重いだろう

18 :デフォルトの名無しさん:2023/08/09(水) 16:22:02.52 ID:coMLMuQp.net
jsonやmessagepackよりは速いかも知れないな

19 :デフォルトの名無しさん:2023/08/10(木) 00:02:20.56 ID:gjwqjVE1.net
10GBはファイルの大きさであって、データの件数ではないんだよな

20 :デフォルトの名無しさん:2023/08/10(木) 01:18:52.99 ID:qMn8aig+.net
10GB のデータをソートするには、
並べ替えた途中経過のデータも持っておく必要があるから、
100GBぐらいのメモリが必要なのでは?

メモリが少ないと、途中経過のデータをハードディスクに保存して、
メモリを空けないといけない。スワップ

21 :デフォルトの名無しさん:2023/08/10(木) 01:20:23.88 ID:lIBN6+0k.net
>>19
レコード数を3とする、ソートせよ

22 :デフォルトの名無しさん:2023/08/10(木) 02:07:49.13 ID:ljCEt4I+.net
ソートのキーだけでいい

23 :デフォルトの名無しさん:2023/08/10(木) 10:55:32.60 ID:AypbHuiV.net
メモリーに乗りそうな大きさに分割してソートして
それをマージソートするのが一番早いんじゃね?

24 :デフォルトの名無しさん:2023/08/10(木) 11:29:41.03 ID:YYBOmFjO.net
>>21
レコード数が1でソートの必要がないかも知れない。

25 :デフォルトの名無しさん:2023/08/10(木) 11:33:16.87 ID:YYBOmFjO.net
>>1
検索早くないのでは?要するにただのテキストの塊なので grep コマンドとか使って検索できるってだけのことで、その状態ではインデックスなしの全検索だから遅くなると思う。

26 :デフォルトの名無しさん:2023/08/10(木) 20:54:16.43 ID:TWiH3Zx3.net
10GBのファイルを書き換えながらソートしているのかな?

27 :デフォルトの名無しさん:2023/08/13(日) 12:14:40.57 ID:mxfdwtiA.net
Diskのデフラグ並みだな

28 :デフォルトの名無しさん:2023/08/16(水) 10:29:29.77 ID:g5j2pEtW.net
ゲッ!!(/||| ̄▽)y-ξ⌒◇ヾ( ̄  ̄;)ジュッ

29 :デフォルトの名無しさん:2023/08/27(日) 20:18:09.89 ID:m39XqcII.net
(  Д ) ゚ ゚

30 :デフォルトの名無しさん:2023/09/01(金) 20:23:04.85 ID:MSzaVfqT.net
どないやねん、意味がわからん

31 :デフォルトの名無しさん:2023/09/12(火) 12:29:39.47 ID:QOX8wfhQ.net
何行何列か示せと

32 :デフォルトの名無しさん:2023/09/12(火) 12:38:34.37 ID:A3YXlMvb.net
>>31
1億行、125列

33 :デフォルトの名無しさん:2023/09/12(火) 12:46:05.28 ID:DJD1APYm.net
こんな頭の悪いスレ上げるのはなぜですか?

34 :デフォルトの名無しさん:2023/09/12(火) 14:42:44.77 ID:A3YXlMvb.net
なぜ下げるんだい?

35 :デフォルトの名無しさん:2023/09/12(火) 14:59:33.38 ID:BQ9Iu4K/.net
なんで10GBもあるデータをCSVで管理しようと思ったんだろうな

36 :デフォルトの名無しさん:2023/09/12(火) 17:11:08.62 ID:zmLL4dpk.net
10GBもあるデータをCSVにしようとした訳ではなく
何も考えずにCSVで管理してたらいつの間にか10GBになったんだろう

37 :デフォルトの名無しさん:2023/09/12(火) 18:09:26.28 ID:BQ9Iu4K/.net
そっかw

38 :デフォルトの名無しさん:2023/09/14(木) 15:11:27.86 ID:Ur1UGoF9.net
>>32
俺だったらなんでも良いからまずRDBに入れちゃうかも。
内容にもよるだろうが、とりあえずSQLiteとかな。

39 :デフォルトの名無しさん:2023/09/15(金) 19:50:24.13 ID:V4ggyvBY.net
巨大なデータをSQLiteで処理するためのメモ
https://fanぶろぐs.jp/scripts/archive/11/0

40 :デフォルトの名無しさん:2023/09/15(金) 20:30:51.52 ID:mLRMgWkC.net
やさいい

41 :デフォルトの名無しさん:2023/09/27(水) 20:16:21.16 ID:PKUrAitV.net
まず各ブロック当たり1000行とかに分ける。ブロック単位でソートする。
1.ブロックA/B を連結してAB間でソート。  B=全体の数/2
2.ブロックA+1, B+1 で連結してソート
3. ブロックA+全体の数/2- 1(前半最後まで)、ブロックB+前半最後までを連結してソート
4.今度は全体の前半で1-3 風にブロックソート。後半〜最後までで1-3 風にブロックソート
5. 前半〜前半+3/4 でブロックソート、前半+2/4〜前半+4/4 でブロックソート、
 ......
・・・・

ってのを大昔 BASIC で作ったのですが、なぜかデータがゼロに
なってしまうバグが出て作るのを止めてしまいました。ちゃんちゃん。駄目じゃん俺。

42 :デフォルトの名無しさん:2023/10/04(水) 21:29:03.45 ID:ja1//dn8.net
だいたいデータの入れ替えに時間が掛かるんだよな
メディアがHDDとかだと尚更
普通はインデックスで実データを間接参照させるんだが
まあ、やって無いんだろうなぁ

43 :デフォルトの名無しさん:2023/10/05(木) 11:43:25.54 ID:AvBTKCCq.net
速度を優先するなら固定長CSVの採用をオススメする
各行へのランダムシークが出来るし並び替えに必要な行の入れ替えも可能になる
最近のutf-8などを使いたい場合は文字数での管理が難しくなるがあくまでもストレージ上でのサイズを基準にして
クラスタサイズも考慮し列サイズを決めていこう
検索性能を上げるには外部インデックスを作るしかないだろう
ファイルサイズは100倍ぐらいに増えるかもしれないが単純なファイルキャッシュだけで下手なDBでは敵わない速度が出せるだろう

44 :デフォルトの名無しさん:2023/10/08(日) 19:41:45.47 ID:Unktq8Si.net
>>32
125列のレコードが1億行あったらカンマだけで10GB超えるんだが

45 :デフォルトの名無しさん:2023/10/12(木) 21:43:44.24 ID:5lP2cmIF.net
ひとつが100MBくらいのファイルになるように
ディレクトリ構造でB木をつくって(アンバランスでもOK)
個々にソートしたものを最後に結合

10 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★