external-sorting

    0熱度

    2回答

    我寫的外部排序整理磁盤 大2演出文件我首先拆分文件到裝入內存,並單獨排序每一個數據塊,並重寫他們回磁盤。但是,在這個過程中,我在函數geModel的String.Split方法中獲取GC內存開銷異常。以下是我的代碼。 private static List<Model> getModel(String file, long lineCount, final long readSize) {

    1熱度

    1回答

    我是一個初學者編碼R. 我有一個列中有60個唯一ID,每個唯一ID有30個條目,我想編寫一個自動爲每個唯一ID創建單獨文件的代碼。 此代碼工作了一個ID unique(src$ID) ID2<- subset(src, ID=='099857') write.csv(pat2,file= "D:/R/ID2.csv") 當我嘗試循環使用下面的代碼吧。 for (i in 1:length(

    0熱度

    2回答

    我正在爲一個大文件(〜30GB)實現一個外部排序,所以在我將這些塊寫入磁盤之後,我創建了chunks次BufferedReader(new OutputStreamWriter(new FileOutputStream(outputPath), "UTF-8"), maxBufferSize)是maxBufferSize = Runtime.getRuntime().freeMemory()/ch

    1熱度

    1回答

    原始問題如下: 您將排序1PB大小的整數範圍從-2^31〜2^31 - 1(int),您有1024臺機器,每臺機器具有1TB磁盤空間和16GB內存空間。假設磁盤速度爲128MB/s(r/w),內存速度爲8GB/s(r/w)。 CPU的時間可以忽略。爲簡單起見,網絡傳輸時間可以忽略。計算所需的近似時間。 我知道與外部排序,我們可以在大致10小時作爲計算這樣一臺機器上的1TB的數據進行排序: 磁盤訪問

    0熱度

    1回答

    我想按排序順序將文件中的元素存儲在文件中。 元素將在以下格式: 1 MessageA 2 MessageB . . 54 MessageM 68 MessageN 每個元素將具有數(時間戳)&的消息(大小是可變的)。 元素必須按時間戳排序。 允許的操作是插入和刪除(Pop)。 (成長文件大小不是問題) ,我們可以從最下的元素(即刪除一個接一個)只能刪除。 目前我已經實現它作爲一個鏈接

    0熱度

    1回答

    我有N個不同的日誌文件來自我們的設備上運行的N個不同的服務。我想將N個文件合併到一個文件中,保持時間順序。文件大小可以從幾KB到GB不等。 N個日誌文件具有相同的格式,它是這樣的: ********** LOGGING SESSION STARTED ************ * Hmsoa Version: 2.4.0.12 * Exe Path: c:\program files (x86

    3熱度

    3回答

    的主要原因是外部排序是數據可能比我們have.However,現在我們使用的虛擬內存的主內存大,虛擬內存將採取主內存和disk.Why之間交換的護理我們需要有外部排序呢?

    0熱度

    1回答

    我正在練習,並且遇到了一個有關從大到適合內存的文件中排序數字的問題。我不知道該怎麼做,所以我想我會試試看。我最終找到了外部排序,而我基本上只是試圖理解這個問題並編寫解決方案。我正在練習的文本文件不太適合內存;我只是想學習如何完成這樣的事情。 到目前爲止我正在從文件中讀取每個500行的3個塊,對塊進行排序,然後將結果塊寫入其自己的文件。這是工作...雖然我不知道我的實現是外部排序過程是如何打算實現:

    2熱度

    4回答

    我有一個包含大量數據的文件,並且我想在任何給定的時間對它進行排序,只保留內存中的一小部分數據。 我注意到合併排序是外部排序流行的,但我想知道是否可以用堆(最小或最大)完成。基本上我的目標是在100項目列表中獲得10個項目(使用任意數字),而從未在內存中保存10個項目。 我主要了解堆,並且明白堆積數據會將其置於適當的順序,從中我可以將最後一部分作爲我的解決方案,但我無法弄清楚如何處理每個怪胎'項目的

    1熱度

    1回答

    我已經理解外部排序是幹什麼的,幹什麼用的;但我在腦海裏想了解一個合併極端情況的問題。 external sorting第一個答案解釋了外部排序合併的工作原理。但是,如果: 假設我們有10個單位的內存大小,我們想排序50個單位的文件 首先我們切片文件到5次運行(它們中的每10個單位),並且個別排序 秒我們必須合併它們與4路合併 和10/4 = 2.5〜2;我們從每次運行中取2個單位(塊),將它們放入