7 puan yazan xguru 2020-11-28 | 6 yorum | WhatsApp'ta paylaş
  • SQLite'in Generated Columns ve JSON ile ilgili işlevlerini kullanarak onu bir Document DB gibi kullanma yöntemi

  • GENERATED ALWAYS ile json_extract birleşimi

CREATE TABLE t ( body TEXT, d INT GENERATED ALWAYS AS (json_extract(body, '$.d')) VIRTUAL);

INSERT INTO t VALUES(json('{"d":"42"}'));

SELECT * FROM t WHERE d = 42;

{"d":"42"}|42

6 yorum

 
nicewook 2020-11-30

Bu şekilde kullanmak da mümkün olabilir mi? RDBMS'in avantajlarını korurken, küçük alan ekleme ve değişikliklerde NoSQL esnekliğini de elde etmek mümkün gibi görünüyor.

  1. Öncelikle SQLite kullanılır.

  2. Alan eklemek gerektiğinde bu şekilde doküman DB olarak kullanılır.

 
galadbran 2020-11-30

Bahsedilen generated column ile tamamen aynı olmayabilir ama PostgreSQL ve MySQL de zaten JSON türü sütunlar ve bu türe yönelik sorgular sunduğu için benzer şekilde kullanılabilecek gibi görünüyor.

 
xguru 2020-11-30

Dediğiniz gibi, özel kullanıcı alanları eklemek gibi amaçlarla kullanılabilecek gibi görünüyor.

 
ffdd270 2020-11-29

Hmm.. Belge veritabanları arasında SQLite gibi gömülü hedefe yönelik çıkmış bir veritabanı yok mu acaba? SQLite özünde SQL olduğu için biraz göz korkutuyor OTL. MongoDB'nin Lite sürümü gibi. MangoDB falan (...)

 
xguru 2020-11-30

Basit key-value kullanımı için RocksDB https://github.com/facebook/rocksdb

Bahsettiğiniz gibi, document DB için de UnQLite https://unqlite.org/

bunların hızlı ve kullanımı kolay olduğu söyleniyor.

 
ffdd270 2020-12-01

Ooo. Teşekkürler. Artık SQLite dışında bunları da birer kez denemek gerekecek sanırım.