2017-06-20 3 views
0

Pour une raison quelconque, l'analyse d'Internet n'a toujours pas trouvé de solution facile pour importer une base de données sql dans kdb. Je comprends que l'obdc peut être utilisé pour faire cela, mais y a-t-il un moyen plus facile? Peut-être un pg_dump (bien que vous ne savez pas comment importer ceci dans kdb) Une autre option peut-être utiliser sqlalchemy pour saisir des tables en python et qpython pour insérer des tables dans kdb + des idées ou des idées sur ce qui serait le plus facile?postgresql/base de données SQL à kdb

Répondre

0

Il est préférable d'utiliser la commande Postgres COPY, qui peut écrire directement dans un fichier CSV, puis utiliser l'importation CSV de kdb + (0 :) pour importer ce fichier.

Voici un extrait de code:

db-# create table test(cint int, cvarchar varchar(20), cdate timestamp); 
db-# insert into test values (1, 'First String', '2017-06-20 13:34:21'); 
db-# insert into test values (2, 'Second String', '2017-06-20 13:35:25'); 
db-# copy test to '/tmp/test.csv' csv header; 

Et puis à partir de la console q:

q)test:("ISP";enlist ",") 0:`:/tmp/test.csv 
q)test 
cint cvarchar  cdate       
------------------------------------------------ 
1 First String 2017.06.20D13:34:21.000000000 
2 Second String 2017.06.20D13:35:25.000000000 

Liens:

https://www.postgresql.org/docs/9.6/static/sql-copy.html

http://code.kx.com/q/ref/filenumbers/#load-csv