V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
frmongo
V2EX  ›  Python

怎么管理大量二进制文件比较好?

  •  
  •   frmongo · 2021-03-25 16:21:55 +08:00 · 3526 次点击
    这是一个创建于 1330 天前的主题,其中的信息可能已经有所发展或是发生改变。
    RT,团队有很多打包工作,一年下来也成千上万个了,希望把每个包的 release tag,和关联的一堆键值对(主要是各种参数)记录下来,有什么好的平台可以使用吗?
    出于方便管理\链接分发\海量文件中快速根据键值对搜索结果 等等这些目的,想整个平台
    现在我有两个思路,1 是自己开发一个平台,插库,将二进制文件和一堆文本信息关联起来,web 展示
    2 是找一个造好的轮子的服务,可以简单配置下直接使用。
    各位大佬有没有推荐的思路
    13 条回复    2021-03-26 22:52:57 +08:00
    csulyb
        1
    csulyb  
       2021-03-25 16:29:54 +08:00
    没有比 jekins 更合适 要搜索的东西可以自己记录到数据库
    bthulu
        2
    bthulu  
       2021-03-25 18:24:12 +08:00
    键值对直接写到 release 包文件属性里, 搜索的时候, 直接用 windows 资源管理器里对文件属性进行检索
    omph
        3
    omph  
       2021-03-25 18:38:39 +08:00
    joesonw
        4
    joesonw  
       2021-03-25 18:43:59 +08:00
    这不就是 Bintray 嘛
    ch2
        5
    ch2  
       2021-03-25 19:28:20 +08:00
    不就才上万个吗,Mongo 一张表的事
    gBurnX
        6
    gBurnX  
       2021-03-25 19:53:22 +08:00
    @ch2 同意,我甚至觉得一张 Excel 的事情...

    如果我是你,直接 C#写个 WCF 用 SQL Server 管理,既方便有 WCF 接口可以提供 API,SQL Server 这种东西又能管理起来很省心。
    iyaozhen
        7
    iyaozhen  
       2021-03-25 20:33:28 +08:00
    和你们公司的 CI/CD 系统结合起来,你提供各接口,打包完成后 上传给你,你存储到对象文件系统

    当然请求接口的时候不光要传文件,还得传一些参数,比如版本啥的。(你要不嫌麻烦也能从 apk 里面获取)
    WIN233
        8
    WIN233  
       2021-03-26 00:23:53 +08:00 via Android
    artifactory ?
    stabc
        9
    stabc  
       2021-03-26 00:30:14 +08:00
    就目前这些需求,MongoDB 很适合你。
    kerro1990
        10
    kerro1990  
       2021-03-26 08:41:57 +08:00
    MongoDB
    frmongo
        11
    frmongo  
    OP
       2021-03-26 15:20:24 +08:00
    我用了现成的 nextCloud 服务,然后用 python 将文件上传到 nextCloud,然后将 share link 和其他参数记录到另外一个数据库里,目前打算这么实现
    littlewing
        12
    littlewing  
       2021-03-26 15:51:43 +08:00 via iPhone
    @ch2 一个 sqlite 的事
    autotesting
        13
    autotesting  
       2021-03-26 22:52:57 +08:00
    分享一下我们已经做好的实现,基本就是上面提到的方法。

    我们用 jenkins pipeline 支持各种编译操作,同时建一个下游 job 专门用来收集上游 job 的各种构建参数信息,然后通过 api 塞给一个自建的服务,包括版本号,版本构建原因,构建者,xxxx,然后由这个自建服务实现构建信息的可视化,同时 ci/cd 如果支持自动化测试或者自动化发布,都可以将信息关联到这个自建服务,这个自建服务,可以有效量测每个版本发布的质量以及各处历史的版本质量指标的横向对比。

    当然也可以据此挖掘出一些 ci 服务指向型的信息,比如,某个 app 版本的构建时间的减少,量测出,我们在这个 app 版本上投入的缩短编译时间的投入收获,等等。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5309 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 07:50 · PVG 15:50 · LAX 23:50 · JFK 02:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.