DeepSeek dengan ketara meningkatkan keupayaan sumber terbuka pada 28 Februari, 2025, melancarkan Sistem Fail Flyer Fire (3FS) dan rangka kerja pemprosesan data kecil. Alat ini direka untuk merevolusikan akses dan pemprosesan data, terutamanya untuk latihan dan kesimpulan AI.
? Hari 5 dari #OpensourceWeek: 3FS, enjin yang kuat untuk semua akses data DeepSeek.
Sistem Fail Flyer Fire (3FS)-Sistem fail selari memaksimumkan jalur lebar rangkaian SSD dan RDMA moden.
⚡ 6.6 Tib/s Agregat baca tambah (180-node cluster)
⚡ 3.66 TIB/MIN ...
- DeepSeek (@deepseek_ai) 28 Februari 2025
Jadual Kandungan
Sistem Fail Flyer Fire (3FS) -
rangka kerja kecil -
Permulaan cepat: 3FS dan Smallpond -
Penyelesaian masalah dan pemantauan -
Ringkasan -
Sistem Fail Flyer Fire (3FS)
3FS adalah prestasi tinggi, sistem fail yang diedarkan yang dibina untuk rangkaian SSD dan RDMA moden. Ia menawarkan penyelesaian penyimpanan bersama yang mantap, memudahkan pembangunan aplikasi yang diedarkan.
Memahami RDMA
Akses memori langsung jauh (RDMA) memintas batasan sistem operasi, membolehkan pemindahan data langsung antara memori dua komputer. Ini menghasilkan komunikasi yang lebih cepat dan lebih cekap.
Ciri -ciri 3FS utama
- Prestasi yang tidak dapat ditandingi & kemudahan penggunaan:
6.6 Tib/s Agregat baca tambah (cluster 180-nod). -
3.66 TIB/min throughput pada penanda aras Graysort (cluster 25-nod). -
40 Gib/S Peak Output per nod klien untuk carian kvcache. -
- Arkitek yang dipisahkan:
menggabungkan ribuan SSD dengan jalur lebar rangkaian beratus -ratus nod penyimpanan. -
menawarkan akses penyimpanan lokasi yang tidak disengajakan untuk aplikasi. -
- konsistensi teguh:
menggunakan replikasi rantai dengan pertanyaan yang dibahagikan (CRAQ) untuk konsistensi yang kuat, memudahkan pengekodan aplikasi. -
- Interfaces fail standard:
menggunakan perkhidmatan metadata tanpa stateless berdasarkan kedai nilai utama transaksi (mis., FoundationDB). -
mengekalkan antara muka fail yang biasa, menghapuskan keperluan untuk pembelajaran API baru. -
beban kerja yang disokong
- Penyediaan data: dengan cekap menguruskan jumlah besar output perantaraan dari saluran paip analisis data.
- DataLoaders: Membolehkan akses rawak ke sampel latihan merentasi nod mengira, menghapuskan prefetching atau data shuffling.
- Checkpointing: menyokong pemeriksaan selari yang tinggi untuk latihan berskala besar.
- kvcache untuk kesimpulan: menawarkan alternatif yang efektif, tinggi ke arah caching berasaskan dram dengan kapasiti meningkat dengan ketara.
Penanda aras prestasi
Ujian luas mengesahkan prestasi 3FS. Ujian tekanan baca pada kelompok besar yang dicapai 6.6 TIB/S Agregat baca melalui, walaupun dengan trafik kerja latihan serentak.
rangka kerja kecil
Smallpond, yang direka untuk melengkapkan 3FS, adalah rangka kerja pemprosesan data yang ringan dan diedarkan. Ia menggunakan DuckDB sebagai enjin pengiraan dan menyimpan data dalam format parket pada sistem fail yang diedarkan (seperti 3Fs).
Ciri -ciri kecil kecil
- Prestasi Tinggi: DUCKDB menyediakan prestasi peringkat asli untuk pemprosesan data yang cekap.
- Skalabiliti: Mengendalikan data skala petabyte tanpa kesesakan memori berkat sistem fail yang diedarkan berprestasi tinggi.
- kesederhanaan: Penyebaran dan penyelenggaraan mudah disebabkan oleh ketiadaan perkhidmatan jangka panjang atau kebergantungan kompleks.
- Pemprosesan data yang cekap: Pendekatan dua fasa untuk menyusun dataset besar meningkatkan prestasi dan kecekapan (mis., Diisih 110.5 TIB merentasi 8,192 partisi di bawah 30 minit).
- integrasi 3FS lancar: memanfaatkan throughput tinggi 3FS dan konsistensi yang kuat.
Permulaan cepat: 3FS dan Smallpond
Pemasangan 3FS
klon repositori dan pasang kebergantungan:
-
git clone https://github.com/deepseek-ai/3fs
-
cd 3fs
-
git submodule update --init --recursive
- Rujuk dokumentasi 3FS untuk butiran lanjut.
./patches/apply.sh
Smallpond Quick Start
Pastikan Python 3.8 dipasang.
-
Pasang Smallpond:
-
pip install smallpond
Mulakan sesi kecil:
-
import smallpond; sp = smallpond.init()
beban data parket:
-
df = sp.read_parquet("path/to/dataset/*.parquet")
Data repartition (contoh):
-
-
df = df.repartition(3)
-
df = df.repartition(3, by_row=True)
Transformasi data (contoh): -
df = df.repartition(3, hash_by="host")
-
- Simpan data:
df = df.map('a b as c')
-
df = df.map(lambda row: {'c': row['a'] row['b']})
Jalankan pekerjaan kecil:
-
Penyelesaian masalah dan pemantauan df.write_parquet("path/to/output/dataset.parquet")
Smallpond menawarkan alat pemantauan dan debugging. Analisis log membantu menyelesaikan masalah pelaksanaan. Dokumentasi komprehensif, tutorial, dan kes penggunaan boleh didapati melalui saluran sokongan rasmi.
- Ringkasan
sp.run(df)
Pelepasan sumber terbuka 3Fs dan Smallpond mewakili kemajuan yang signifikan dalam pemprosesan data. Prestasi tinggi, kemudahan penggunaan, dan konsistensi memberi kuasa kepada pemaju dan penyelidik. Alat ini menyediakan infrastruktur yang kuat untuk aplikasi moden, intensif data.
Atas ialah kandungan terperinci DeepSeek melepaskan rangka 3FS & Smallpond. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!