V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
freeznet
V2EX  ›  问与答

500G文本數據,應該選用什麼數據庫軟件?

  •  
  •   freeznet · 2013-10-07 09:17:09 +08:00 · 3220 次点击
    这是一个创建于 4060 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前學校實驗有差不多500G的txt文件(帶了一個移動硬盤去拷了幾個小時...完全不能理解為什麼是txt...),為了方便分析,打算導入到數據庫中,但是之前從沒有處理過超過1G的數據,所以不知道應該選擇mysql還是pregesql還是別的軟件。數據目前是一段時間的twitter的timeline,之後可能會開始抓取更新的timeline,也就是數據會繼續增長,希望各位能給點建議,謝謝~!
    8 条回复    1970-01-01 08:00:00 +08:00
    mongodb
        1
    mongodb  
       2013-10-07 09:27:57 +08:00   ❤️ 1
    直接导入mysql 也挺快的。
    如果没有对外服务的大量读写,换句话说,不需要在性能追求上吹毛求疵的话,做些简单的优化和处理也足够了。 索引必须弄好。

    有些时候吧,有些简单的操作交给linux几个文本神器,更快。。
    Livid
        2
    Livid  
    MOD
       2013-10-07 09:30:48 +08:00 via iPhone   ❤️ 1
    Hive
    freeznet
        3
    freeznet  
    OP
       2013-10-07 10:26:47 +08:00
    剛才同boss聊過以後boss的意思也是用mysql,因為基本上都是本地分析的讀寫,所以就定用mysql了~
    xdeng
        4
    xdeng  
       2013-10-07 11:40:15 +08:00
    文本压缩比 10%
    plprapper
        5
    plprapper  
       2013-10-07 12:31:36 +08:00
    这个数据规模不上hadoop 神码的 够呛 你用mysql 会卡的吧
    Livid
        6
    Livid  
    MOD
       2013-10-07 12:58:25 +08:00
    你贴 10 行 sample 出来看看吧。
    freeznet
        7
    freeznet  
    OP
       2013-10-07 21:59:39 +08:00
    sample 就是 twitter 的 tweet json

    {"favorited": false, "truncated": false, "text": "3-1. Walters. Arse.", "created_at": "Wed Dec 26 20:51:26 +0000 2012", "retweeted": false, "source": "web", "user": {"id": 70992183, "verified": true, "profile_sidebar_fill_color": "http://a0.twimg.com/profile_background_images/55981711/twitter_shankly.jpg", "profile_text_color": "333333", "followers_count": 55319, "location": "Leicester", "profile_background_color": "C0DEED", "listed_count": 1929, "statuses_count": 23032, "description": "Sportswriter. Baldie. Author of 9 books. Plan to sporadically tweet again, plus automatically-generated article/news links from http://t.co/u78KTmM8", "friends_count": 380, "profile_link_color": "0084B4", "profile_image_url": "http://a0.twimg.com/profile_images/1005760083/For_Twitter3_normal.jpg", "screen_name": "paul_tomkins", "lang": "en", "profile_background_tile": false, "favourites_count": 3, "name": "Paul Tomkins", "url": "http://tomkinstimes.com/", "created_at": "Wed Sep 02 15:31:39 +0000 2009", "time_zone": "London", "protected": false}, "retweet_count": 4, "id": 284038736671539201}

    類似這樣的
    otakustay
        8
    otakustay  
       2013-10-08 03:21:09 +08:00
    500G的数据用MySQL分析不难,如果对时间没特别高的要求还不至于要hive或者hadoop这样的,熟悉MySQL的话就用着MySQL好了
    我觉得问题在于,这数据怎么导入MySQL去……至少500G的东西全读入内存然后parseJSON是不现实的,得要一个支持流读取的JSON实现,边读边丢,读完一个对象就别留内存里。java中有jackson之类的,python有ijson这种
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1018 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:43 · PVG 05:43 · LAX 13:43 · JFK 16:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.