JSON - Lua Module

Intro ๊ฒฐ๋ก ์€ lua cjson์ด ๊ฐ€์žฅ ๋น ๋ฅด๋‹ค. ๊ทธ ๋‹ค์Œ์ด lunajson dkjson์€ ์ˆœ์ˆ˜ luaํŒŒ์ผ์ด๊ณ  ๋‹จ์ผ ํŒŒ์ผ์ด๋‹ค. ๋˜ ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” json.lua ์ด๋‹ค. ๋น ๋ฅด๋‹ค๊ณ  ํ•˜๋Š”๋ฐโ€ฆ ๋น„๊ต์  ์ตœ์‹ ์ด๋‹ค. cjson์€ ๋น ๋ฅด๋‚˜ ๋ชจ๋“ˆ ์ปดํŒŒ์ผ์ด ํ•„์š”ํ•˜๊ณ  lunajson์€ ๋‹ค์Œ์œผ๋กœ ๋น ๋ฅด๊ณ  ์ˆœ์ˆ˜ luaํŒŒ์ผ์ด์ง€๋งŒ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŒŒ์ผ๋กœ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ๋‹ค. dkjson์€ ์…‹ ์ค‘ ๊ฐ€์žฅ ํผํฌ๋จผ์Šค๊ฐ€ ๋‚ฎ์œผ๋‚˜ ๋‹จ์ผ ํŒŒ์ผ์ด๋‹ค. ์ƒํ™ฉ์— ๋”ฐ๋ผ ์ ์ ˆํžˆ ์‚ฌ์šฉํ•˜๋‹ค. Links https://github.com/grafi-tt/lunajson http://dkolf.de/src/dkjson-lua.fsl/home https://github.com/rxi/json.lua https://somedudesays.com/2019/12/using-json-with-lua

2022-11-07 ยท 55 words

CSV - Lua Module

ftcsv ์ถ”์ฒœ

2022-11-07 ยท 2 words

Json to sqlite3 import howto

Intro jsonํŒŒ์ผ์„ sqlite3์— importํ•˜๋Š” ๋ฐฉ๋ฒ• json -> csv -> sqlite3 ์ˆœ์„œ๋กœ ์ง„ํ–‰ํ•œ๋‹ค. jq, sqlite3๊ฐ€ ์‚ฌ์ „์— ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. jq๋Š” ๊ฒฝ๋Ÿ‰ ๋ช…๋ น๋ผ์ธ json ๊ด€๋ฆฌ ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค. Requirement $ sudo apt install sqlite3 $ sudo apt install jq Getting the CSV $ cat data.json {"uri":"/","user_agent":"example1"} {"uri":"/foobar","user_agent":"example1"} {"uri":"/","user_agent":"example2"} {"uri":"/foobar","user_agent":"example3"} $ head -1 data.json | jq -r 'keys | @csv' "uri","user_agent" $ jq -r 'map(tostring) | @csv' < data.json "/","example1" "/foobar","example1" "/","example2" "/foobar","example3" $ % (head -1 data.json | jq -r 'keys | @csv' && jq -r 'map(tostring) | @csv' < data.json) > data.csv Loading it into sqlite3 $ sqlite3 somedata.db sqlite> .mode csv sqlite> .import data.csv my_table sqlite> select * from my_table where ... Links https://stackoverflow.com/questions/46407770/how-to-convert-a-json-file-to-an-sqlite-database ...

2022-11-07 ยท 112 words

CVS to Sqlite3

Intro csv ํŒŒ์ผ์„ sqlite3 ๊ธฐ๋ณธ๊ธฐ๋Šฅ์œผ๋กœ ๋ถˆ๋Ÿฌ ํ…Œ์ด๋ธ”์— ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. sqlite3์˜ interactive, command mode ์‚ฌ์šฉ๋ฒ• Howto $ cd data/ $ sqlite3 mydata.db # ์ €์žฅํ•  db๋ฅผ ์ •ํ•˜๊ณ  ์‹คํ–‰ sqlite> .mode csv # csv๋ชจ๋“œ๋กœ ์ „ํ™˜ sqlite> .import data.csv mytable # mytable ํ…Œ์ด๋ธ”๋กœ data.csv๋ฅผ ๋ณ€ํ™˜ sqlite> .dbinfo # db ์ •๋ณดํ™•์ธ sqlite> .tables # ํ…Œ์ด๋ธ” ํ™•์ธ sqlite> .schema mytable # mytable์˜ ์Šคํ‚ค๋งˆ ํ™•์ธ sqlite> .mode column # ์ปฌ๋Ÿผํ‘œ์‹œ sqlite> .headers on # ํ—ค๋”ํ‘œ์‹œ sqlite> select * from mytable where ... # ํ…Œ์ด๋ธ” ์ฟผ๋ฆฌ sqlite> .q # ์ข…๋ฃŒ $ ls -l mydata.db # DB์‚ฌ์ด์ฆˆ ํ™•์ธ ๋ช…๋ น๋ผ์ธ์—์„œ ํ™•์ธํ•  ์ˆ˜๋„ ์žˆ๋‹ค. $ sqlite3 mydata.db -header -column "select x from y;"

2022-11-07 ยท 103 words
Image from Copilot AI

์ •์ฃผ์„ฑ - ๋ฐฑ์„

์ •์ฃผ์„ฑ - ๋ฐฑ์„ ์‚ฐ(ๅฑฑ)ํ„ฑ ์›๋‘๋ง‰์€ ๋ท”์˜€๋‚˜ ๋ถˆ๋น›์ด ์™ธ๋กญ๋‹ค ํ—๊ฒŠ์‹ฌ์ง€์— ์•„์ฆˆ๊นŒ๋ฆฌ ๊ธฐ๋ฆ„์˜ ์ชผ๋Š” ์†Œ๋ฆฌ๊ฐ€ ๋“ค๋ฆฌ๋Š” ๋“ฏํ•˜๋‹ค. ์ž ์ž๋ฆฌ ์กฐ์„๋“  ๋ฌธํ—ˆ์ง„ ์„ฑ(ๅŸŽ)ํ„ฐ ๋ฐ˜๋””๋ถˆ์ด ๋‚œ๋‹ค ํŒŒ๋ž€ ํ˜ผ(้ญ‚)๋“ค ๊ฐ™๋‹ค ์–ด๋ฐ์„œ ๋ง์žˆ๋Š” ๋“ฏ์ด ํฌ๋‹ค๋ž€ ์‚ฐ(ๅฑฑ)์ƒˆ ํ•œ ๋งˆ๋ฆฌ ์–ด๋‘์šด ๊ณจ์งœ๊ธฐ๋กœ ๋‚œ๋‹ค ํ—๋ฆฌ๋‹ค ๋‚จ์€ ์„ฑ๋ฌธ(ๅŸŽ้–€)์ด ํ•œ์šธ๋น› ๊ฐ™์ด ํ›คํ•˜๋‹ค ๋‚ ์ด ๋ฐ์œผ๋ฉด ๋˜ ๋ฉ”๊ธฐ์ˆ˜์—ผ์˜ ๋Š™์€์ด๊ฐ€ ์ฒญ๋ฐฐ๋ฅผ ํŒ”๋Ÿฌ ์˜ฌ ๊ฒƒ์ด๋‹ค. ์ •์ฃผ์„ฑ - ์ •์ฃผ๋Š” ํ‰์•ˆ๋ถ๋„ ์„œ๋‚จ๋ถ€์˜ ํ•ด์•ˆ์ง€๋Œ€์— ์œ„์น˜ํ•œ ๊ณณ์œผ๋กœ ๋ฐฑ์„์˜ ๊ณ ํ–ฅ์ด๋‹ค. ์ด์Šนํ›ˆ์ด ์„ธ์šด ์˜ค์‚ฐํ•™๊ต๊ฐ€ ์ด๊ณณ์— ์žˆ์—ˆ๋‹ค. ์ด์ค‘ํ™˜์˜ <ํƒ๋ฆฌ์ง€>์˜ ํ‰์•ˆ๋ถ๋„ ํŽธ์„ ๋ณด๋ฉด, ์ฒญ์ฒœ๊ฐ• ์ด๋ถ์—๋Š” ๋ฌด์˜ˆ๋ฅผ ์ˆญ์ƒํ•˜๋Š”๋ฐ ์˜ค์ง ์ •์ฃผ๋งŒ์€ ๊ณผ๊ฑฐ์— ์˜ค๋ฅธ ์ธ์‚ฌ๊ฐ€ ๋งŽ์•˜๋‹ค๊ณ  ํ•œ๋‹ค. ์ •์ฃผ์„ฑ์€ ์ •์ฃผ์์— ์žˆ๋Š” ์กฐ์„ ์‹œ๋Œ€ ์„ฑ๊ณฝ์ด๋‹ค. ์„์„ฑ(็ŸณๅŸŽ)์œผ๋กœ ๋†’์ด๊ฐ€ 2~5๋ฏธํ„ฐ์— ์ด๋ฅธ๋‹ค. ๋ท”์˜€๋‚˜ - โ€˜๋น„์—ˆ๋‚˜โ€™์˜ ๊ณ ์–ด. ์•„์ฆˆ๊นŒ๋ฆฌ - โ€˜์•„์ฃผ๊นŒ๋ฆฌโ€™์˜ ํ‰๋ถ ๋ฐฉ์–ธ. ๋ฌธํ—ˆ์ง„ - โ€˜๋ฌด๋„ˆ์ง„โ€™์˜ ๊ณ ์–ด. ์–ด๋ฐ์„œ ๋ง ์žˆ๋Š” ๋“ฏ์ด - ์–ด๋””์„œ ๋ง์†Œ๋ฆฌ๊ฐ€ ๋‚˜๋Š” ๋“ฏ์ด. ํ•œ์šธ - ํ•˜๋Š˜. ์ฒญ๋ฐฐ - ์ฒญ๋ฆฌ้‘ๆขจ. ์ฒญ์‹ค๋ฆฌ้‘ๅฏฆๆขจ. ์ฒญ์ˆ ๋ ˆ. ๋ฐฐ์˜ ์ผ์ข…์œผ๋กœ ์ผ์ฐ ์ต์œผ๋ฉฐ ๋น›์ด ํ‘ธ๋ฅด๊ณ  ๋ฌผ๊ธฐ๊ฐ€ ๋งŽ๋‹ค.

2022-11-02 ยท (updated 2025-07-14) ยท 127 words