darklinboxs 2024-08-05 23:01 采纳率: 0%
浏览 10
已结题

评论图片存取方案,求方法

公司准备爬一些评论数据到数据库里边还涉及了一些图片,然后定期会把这些数据整合成报表并附上图片
求这些图片怎么存储,有好的存取方案吗
开始想用mysql,但是感觉有点废库,如果用文档数据库,感觉又增加了清洗难度,有好的方法吗,既可以少编程又快速存储获取。
这些报表回定期通过帆软报表展现的。

  • 写回答

25条回答 默认 最新

  • 专家-郭老师 Java领域新星创作者 2024-08-05 23:01
    关注
    获得0.30元问题酬金

    🕗晚上好,题主!目前:🟢[在线]
    📢参考通义千问、由郭老师整理提供!
    📣今日诗号:二十四桥明月夜,玉人何处教吹箫。

    评论图片存储方案

    存储评论图片需要考虑以下因素:

    • 数据规模: 预计有多少图片,以及未来增长趋势。
    • 访问频率: 图片会被频繁访问吗?
    • 性能要求: 需要多快的图片加载速度?
    • 成本: 存储和访问图片的成本是多少?
    • 安全性: 如何保证图片的安全性和隐私性?

    综合考虑以上因素,以下几种方案可供参考:

    1. 对象存储服务 (推荐)

    例如: 阿里云 OSS, 腾讯云 COS, AWS S3

    优点:

    • 高扩展性: 轻松处理海量图片存储。
    • 高可用性和持久性: 保证数据安全可靠。
    • 成本效益高: 按需付费,避免资源浪费。
    • 简单易用: 提供 API 和 SDK 方便集成。
    • 丰富的功能: 支持图片处理、CDN 加速等。

    方案:

    • 将爬取的图片上传至对象存储服务。
    • 将图片 URL 存储在数据库中,例如 MySQL 中的评论表。
    • 帆软报表可以通过 URL 直接访问和展示图片。

    示例代码 (Python, 使用阿里云 OSS SDK):

    from oss2 import Auth, Bucket
    
    # 阿里云 OSS 配置
    AccessKeyId = 'your_access_key_id'
    AccessKeySecret = 'your_access_key_secret'
    endpoint = 'your_endpoint'
    bucket_name = 'your_bucket_name'
    
    # 创建授权对象
    auth = Auth(AccessKeyId, AccessKeySecret)
    # 获取存储空间对象
    bucket = Bucket(auth, endpoint, bucket_name)
    
    # 上传图片
    def upload_image(local_file, remote_file_name):
        try:
            bucket.put_object_from_file(remote_file_name, local_file)
            print('Upload Success!')
            return f'https://{bucket_name}.{endpoint}/{remote_file_name}'  # 返回图片 URL
        except Exception as e:
            print('Upload Failed:', e)
            return None
    
    # ... 爬取评论和图片 ...
    
    # 上传图片并获取 URL
    image_url = upload_image('local_image.jpg', 'comment_image.jpg')
    
    # 将图片 URL 存储到数据库
    # ...
    
    

    2. 数据库文件系统

    一些数据库,例如 MongoDB,提供文件存储功能(GridFS)。

    优点:

    • 直接存储在数据库: 方便管理和查询。

    缺点:

    • 扩展性有限: 不适合存储海量图片。
    • 性能瓶颈: 大文件存储可能影响数据库性能。

    3. 本地文件系统 + CDN 加速

    优点:

    • 简单直接: 易于实现。

    缺点:

    • 扩展性差: 不适合存储海量图片。
    • 运维成本高: 需要自行维护服务器和 CDN。

    总结:

    综合考虑,使用对象存储服务是存储评论图片的最佳方案, 具有高扩展性、高可用性、成本效益高、简单易用等优点。

    评论

报告相同问题?

问题事件

  • 系统已结题 8月13日
  • 创建了问题 8月5日

悬赏问题

  • ¥20 c语言写的8051单片机存储器mt29的模块程序
  • ¥60 求直线方程 使平面上n个点在直线同侧并且距离总和最小
  • ¥50 java算法,给定试题的难度数量(简单,普通,困难),和试题类型数量(单选,多选,判断),以及题库中各种类型的题有多少道,求能否随机抽题。
  • ¥50 rk3588板端推理
  • ¥250 opencv怎么去掉 数字0中间的斜杠。
  • ¥15 这种情况的伯德图和奈奎斯特曲线怎么分析?
  • ¥250 paddleocr带斜线的0很容易识别成9
  • ¥15 电子档案元素采集(tiff及PDF扫描图片)
  • ¥15 flink-sql-connector-rabbitmq使用
  • ¥15 zynq7015,PCIE读写延时偏大