-
SQLite के Generated Columns और JSON से जुड़ी functions का इस्तेमाल करके इसे Document DB की तरह उपयोग करने का तरीका
-
GENERATED ALWAYSऔरjson_extractका संयोजन
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 टिप्पणियां
क्या इसे इस तरह भी इस्तेमाल किया जा सकता है? लगता है कि RDBMS के फ़ायदे लेते हुए भी छोटे-मोटे field addition और changes के लिए NoSQL जैसी scalability लाई जा सकती है।
फिलहाल SQLite का उपयोग करें.
जब fields जोड़ने की ज़रूरत हो, तो इसे इस तरह document DB की तरह उपयोग करें.
हो सकता है कि यह बताए गए generated column जैसा बिल्कुल न हो, लेकिन PostgreSQL और MySQL में भी पहले से JSON type column और उस type के लिए query उपलब्ध हैं, इसलिए इन्हें भी लगभग इसी तरह इस्तेमाल किया जा सकता है।
जैसा आपने कहा, ऐसा लगता है कि इसे custom user fields जोड़ने जैसी चीज़ों के लिए इस्तेमाल किया जा सकता है।
हम्म.. क्या Document DB में SQLite की तरह embedded target के लिए आया हुआ कोई DB नहीं है? SQLite की जड़ ही SQL है, इसलिए थोड़ा बोझिल लगता है OTL. MongoDB का कोई Lite version, जैसे MangoDB वगैरह (...)
सिर्फ़ simple key-value इस्तेमाल के लिए RocksDB https://github.com/facebook/rocksdb
और जैसा आपने कहा, document DB के लिए UnQLite https://unqlite.org/
लगभग यही तेज़ हैं और इस्तेमाल में आसान माने जाते हैं।
ओह, धन्यवाद। अब लगता है SQLite के अलावा इन्हें भी एक-एक बार आज़माना पड़ेगा।