DB Tablosu CSV'den SQLite Veritabanına Dönüştürücü
Düz metin dosyalarını yapılandırılmış ilişkisel veritabanlarına dönüştürmek, hızlı sorgular çalıştırmanıza ve karmaşık veri ilişkilerini yönetmenize olanak tanır.
Format Karşılaştırması ve Teknik Özellikler
| Özellik | CSV | SQLITE |
|---|---|---|
| MIME Türü | text/csv | application/vnd.sqlite3 |
| Tür | tabular data | embedded relational database |
| Sıkıştırma | none | B-Tree page allocation |
| Standart Şartname | IETF RFC 4180 | SQLite Database File Format 3 |
| Sihirli Bayt Başlığı (Magic Bytes) | RFC 4180 delimiter stream | 53 51 4C 69 74 65 20 66 6F 72 6D 61 74 20 33 00 (SQLite format 3\0) |
Format Genel Bakışı ve Kullanım Alanları
Virgülle Ayrılmış Değerler (CSV) dosyaları, basit dışa aktarımlar ve küçük listeler için iyi çalışır ancak milyonlarca satırı veya birbirine bağlı birden fazla tabloyu işlerken zorlanır. Veri kümeleri büyüdükçe, düz metin, yalnızca tek bir kaydı bulmak için tüm dosyanın diskten okunmasını gerektirir. Yazılım geliştiriciler ve veri analistleri, aramaları hızlandırmak ve veri türlerini zorunlu kılmak için sıklıkla tablo kayıtlarını ilişkisel bir biçime taşımaya ihtiyaç duyar. Bilgileri gömülü bir ilişkisel veritabanına taşımak, statik metni aktif bir veri deposuna dönüştürür. Masaüstü ve mobil platformlardaki uygulamalar, ayrı bir sunucu sürecine ihtiyaç duymadan bu formatı yerel olarak okur. Bu dönüştürme; tek bir satır her değiştiğinde tüm dosyayı yeniden yazmadan hızlı indeksleme, filtrelenmiş aramalar ve güvenli güncellemeler sağlar.
Teknik Özellikler ve Kodek Ayrıntıları
Metin dışa aktarımı text/csv MIME türünü kullanır ve verileri herhangi bir sihirli bayt veya dosya başlığı olmaksızın virgül ve yeni satırlarla ayrılmış düz ASCII veya UTF-8 karakterleri olarak depolar. SQLite, application/vnd.sqlite3 MIME türünü kullanır ve tam olarak 16 baytlık "SQLite format 3\000" sihirli başlık dizesiyle başlar. Kapsayıcının içinde veriler B-Tree sayfa tahsisi kullanılarak organize edilir; dosya, verimli erişim için tablo satırlarını ve indeks anahtarlarını gruplayan sabit boyutlu sayfalara bölünür. Bu dönüştürme kesinlikle kayıpsızdır çünkü her metin değeri, tamsayı ve kayan noktalı sayı doğrudan tanımlanmış veritabanı sütunlarına eşlenir.
İşletim Sistemi ve Tarayıcı Uyumluluğu
SQLite dosyaları, yerleşik sistem kitaplıkları ve komut satırı araçları aracılığıyla Windows, macOS, Linux, Android ve iOS üzerinde yerel olarak açılır. Modern web tarayıcıları da motorun WebAssembly derlemelerini kullanarak bu veritabanlarını yerel olarak okuyabilir ve sorgulayabilir. CSV metin dosyaları, metin düzenleyiciler ve elektronik tablo uygulamalarıyla evrensel uyumluluğu paylaşır, ancak tüm platformlarda yerleşik sorgu işleme yeteneklerinden yoksundur.
💡 Faydalı bilgiler
Her sütunu TEXT olarak depolamak yerine, veritabanı dosyalarınızı daha küçük ve sorgularınızı daha hızlı tutmak için dönüştürme işlemi sırasında her zaman INTEGER ve REAL gibi açık veri türleri tanımlayın.
Format Karşılaştırması ve Teknik Özellikler
50 MB'lık bir CSV metin dosyasının standart bir 4G bağlantısı üzerinden indirilmesi yaklaşık 10 saniye, 5G'de 2 saniye ve Fiber'de 1 saniyeden kısa sürer. İndekslenmiş bir veritabanına dönüştürüldüğünde, ortaya çıkan dosya boyutu ikili paketleme nedeniyle genellikle biraz küçülür ve sorgu yürütme süreleri saniyelerden milisaniyelere düşer.
Sıkça Sorulan Sorular
DB Tablosu CSV'yi kalite kaybetmeden SQLite Veritabanına nasıl dönüştürürsünüz?
Dönüştürme yüzde 100 kayıpsızdır. Metin dosyasındaki her satır, sayı ve dize, herhangi bir sayısal duyarlılığı veya metin karakterini değiştirmeden doğrudan veritabanı tablosu sütunlarına taşınır.
DB Tablosu CSV ile SQLite Veritabanı arasındaki fark nedir?
CSV dosyası, her satırın baştan sona taranması gereken düz, indekslenmemiş bir metin belgesidir. SQLite veritabanı ise belirli kayıtları anında almak için B-Tree sayfaları ve indeksler kullanan yapılandırılmış bir ikili dosyadır.