postgres 9.2支持json
列。根據json
表將postgres
自動索引的最佳方式是什麼。將postgresql擴展到索引json對象的最佳方式是什麼?
例如,
create table obj(
obj_id bigserial primary key,
col1 varchar(20),
col2 date,
obj json
);
create index obj_col1 on obj(col1);
create index obj_col2 on obj(col2);
記錄時插入或更新,col1
和col2
從obj
列設置。
基本上規則是任何屬性,除了主鍵和json列本身,都是從json對象自動設置的。
爲correllary,重命名col1
也將更新json
屬性,重命名col1
有新的名稱。
可以使用catalogue
和execute
陳述來完成,但是會像罪一樣緩慢。
可以通過爲每個表創建觸發器來完成,但這既煩瑣又容易出錯。
不能通過繼承來完成,因爲觸發器不能被繼承。
是extension
最好的方法嗎?它甚至會是什麼樣子?
最終不能寫extension
要做到這一點,因爲皮克不支持在CREATE TABLE或ALTER TABLE觸發器。
對於kludge的唯一建議是記錄DDL,監視日誌,然後運行一個過程。雖然這可以完成,但我們真正需要的是CREATE和ALTER TABLE上的觸發器。
這可能有幫助:http://people.planetpostgresql.org/andrew/index.php?/archives/249-Using-PLV8-to-index-JSON.html –
好的鏈接 - 謝謝! –