Autor Zpráva
koumal
Profil *
Nikde na internetu jsem nenašel jaké jsou nevýhody SQLite oproti MySQL.
Myslím, si že mezi výhody by mohlo patřit např. to, že pokud je konfigurace/spuštění aplikace závislé na databázi, tak v případě, že nastane porucha na mysql serveru, nehrozí, že aplikace nepůjde spustit. Pokud konfiguraci, nebo nějaké části kódu aplikace uložím do mysqlite databáze je to přímo na ftp serveru. Taky se mi zdá snazší syntaxe příkazů.

Ale hlavní otázka která mě zajímá je jak velký databázový soubor SQlite je vhodné ještě použít, tedy jaká je maximální doporučená velikost této databáze. Jaké data je vhodné sem ukládat a jaká ne. Registrační data uživatelů, to by snad mohlo jít. Mělo by to výhodu rychlejšího příhlášení do systému? Ukládání článků, diskusí a soukromé korespondece mezi uživateli by už SQLite nezvládlo?
__construct
Profil
Keďže SQLite je súborový databázový systém kde jedna databáza = jeden súbor tak jeho maximálna veľkosť zavisí od súborového systému. Tým že je to jeden súbor je pomerne dosť rýchlo načítavaný. SQLite je vhodný na bežné webové aplikácie - nie klient-server, kde viac užívateľov naraz pracuje (číta a zapisuje) s tými istými dátami. SQLite nepodporuje user-management - keďže DB je jeden súbor užívateľ ktorý má prístupové práva môže robiť všetko.
happy
Profil
koumal:
hlavní nevýhoda jak jsem pochopil je vtom, že sqlite si při zápisu zamkne soubor a dokud daný uživatel se zápisem neskončí tak ostatní zněj nic nepřečtou a čekají. při čtení problém není - číst může x uživatelů zároveň. takže pokud bys použil sqlite například na diskuzní fórum mohlo by to být omezující. nicméně nemusí to být nutně pravidlem. když si vezmeš, že uživatelé přidají jednu rekci během 30s a zápis téhle reakce zamkne soubor na 100ms není to žádná katastrofa. kdyby přidávali reakci (nebo zapisovali něco jiného) jednou za sekundu bylo by to horší. četl jsem že se tohle dá částečně řešit pomocí cache, ale hlouběji jsem to nezkoumal.

jinak sqlite je dle mého +- mysql osekaná o různé věci.

výhoda je že narozdíl od mysql máte jistotu že běží na stejném serveru, nahrání databáze je v podstate zkopírování souboru, což je zvláš super při jejím přenášení, nebo když si ji sami chcete zálohovat.

před použitím bych udělal odhad jak často se z kterých tabulek bude číst/ zapisovat a podle toho se rozhodle. dle mého je naprosto ideální např na soukromé blogovací systémy. dokonce bych ji klidně doporučil i na menší eshop, kde zápisy ve valné většinou budou jen při registraci, objednávce a administraci.
koumal
Profil *
Chtěl jsem to použít pro cache na chat. Něco jako tabulka sessions u RS. Mělo to ukládat informace kdo je v kterém pokoji apod. Takže to je vyloučeno.

Mysql má přeci jen ještě jednu výhodu navíc a to v tom, že rozděluje data na dva servery. Ke každému serveru je jiné heslo, takže pokud se někdo stará o ftp, funkci aplikace jako takové a někdo jiný o data v databázi, tak je to výhoda. Admin ftp účtu nebude znát přístupové údaje k datům v db.

To SQLite bych tedy použil jen pro malý RS, kde není moc redaktorů.
koumal
Profil *
I když možná by se to dalo řešit i s tím chatem. Myslíte, že by to bylo pro FTP server problém, kdybych tu databázi rozdělil na devadesát souborů (pro každý pokoj jednu databázi)? Na běžném chatu se přece zas tak rychle nechatuje. Vyřešil by se tím problém s přístupem k databázi, ale nevím kolik souborů najednou může server takhle upravovat a jak ho to potom vytíží...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0