儲存數百萬個具有搜尋功能的音訊檔案(如果可能)

儲存數百萬個具有搜尋功能的音訊檔案(如果可能)

我正在尋找解決方案來解決這個問題,我存儲了 7tb 的文件,所有這些文件都是音頻文件,這些文件是基於星號的伺服器 freepbx 的錄音。

起初,我所做的是在帶有SSD 的伺服器上安裝proxmox,以便更快地訪問,然後在nextcloud 上安裝nextcloud,以便透過網路存取檔案(該伺服器僅在本地網路上服務,因此安全性不是這裡的問題),因為我不斷上傳文件,我意識到這很糟糕這個想法是因為搜索一個特定文件需要很多時間,而且我的使用量只有2tb,我已經在下一個雲上玩了一段時間,我知道我可以透過ssh 或webdav 進行搜索,但這也需要很多時間因為這些文件需要多個用戶定期訪問。

所以我正在尋找這個問題的解決方案,因為我仍然有5tb 的數據,並且我正在尋找網絡訪問或任何其他方式來輕鬆地從存儲中查找和檢索數據,或者全新的操作系統/網絡服務器可以幫助存儲和檢索資料。

我所擁有的是用於啟動的SSD 和用於在raid5 上存儲的4x4tb 驅動器,該伺服器上有2x 千兆位LAN 卡,用於安裝proxmox 並運行一些虛擬機進行訪問,數據結構為年>月>日期>1000 個帶有電話號碼的檔案有名稱以供識別。

謝謝您最好的問候,

答案1

我也在處理大量的音訊檔案。

我發現處理這個問題的最好方法是:

  • 使用SSD磁碟和RAID1/ZFS鏡像來加速存取。
  • 不處理文件,而是處理文件名和元資料:建立一個簡單且輕巧的可搜尋索引。作為資料庫,ElasticSearch 運作良好,但會佔用 RAM,具有索引欄位列的 PostgreSQL 也可以完成這項工作。
  • 只需在觸發訪問時使用文件路徑的連結即可。

我的工作流程是:

  1. 從簡單的網頁瀏覽文字為主的樹和檔案名稱(自製)
  2. 點擊以存取該文件
  3. 網頁根據路徑檢索文件並將其提供給使用者(在 LAN 上或透過 Internet)。

順便說一句,有了這樣的數量,看看資料囤積者使用的工具將會很有趣,例如

相關內容