热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

每日优鲜仓管员(拼多多的仓储基地)

编辑导读:生鲜配送已经不是一件新鲜事,只要在手机上下单就能享受到送货到家的服务。这背后不仅要依靠强大的物流,还需要搭建数据仓库,以便决策。本文将以每日优鲜为例,分析它是如何搭建数据


生鲜配送已经不新鲜了。 只要用手机下单就可以享受送货上门的服务。 其背后不仅需要强大的物流,还需要建立数据仓库进行决策。 本文每天以优鲜为例,分析它是如何构建数据仓库的,并与你分享。




一、为什么要做数据仓库数据仓库的结构

1. 市场

国内生鲜销售渠道中农贸市场占73%,但超市渠道渗透率为22%,与发达国家70%以上的水平相比,仍有较大差距。


随着新零售的风向标波及到社区生鲜领域,社区生鲜近年来也密集开店。 一是行业巨头受到降维打击,布局“社区生鲜”市场,二是生鲜传说、钱大妈这样的小品牌井喷式爆发。


PEST分析:


国家政策:


国家大力发展网上农产品交易,向农产品超市发放补贴。 2017年发布的《商务部 中国农业发展银行关于共同推进农产品和农村市场体系建设的通知》版主要支持方向包括


农产品市场和仓储物流设施的建设。 支持各类农产品批发市场、综合加工配送中心、产地集配中心的新建、改造,完善预选等级、包装、仓储、物流等设施。 公益性农产品市场体系建设。 支持公益性农产品批发市场公共加工配送中心、公共信息服务平台、检测检测中心、消防安全监测中心、废物处理设施等公益性流通基础设施的建设。 支持公益性蔬菜市场、低价餐厅等公益性农产品零售店的建设。 农产品冷链物流体系建设。 协助建设、改造标准化冷库和冷链物流集散中心,提高农产品产地预冷、低温加工、冷链仓储配送能力。 推进封闭式货物通道、站台、货架等设施的标准化改造,加快环保型冷藏制冷设施的设备和技术应用。 为此,为网上生鲜的发展开辟了政策途径。


经济发展:


我国近年来经济快速发展,经济发展带动了人民的消费意愿,网上生鲜食品EC开辟了网上生鲜买卖的渠道。


社会现状:


现在人们的消费水在提高,人们越来越关注农产品的安全问题,所以人们想从农产品生产地直接获取商品,保证食品安全,满足价格,另外,随着人们网络购物习惯的培养和物流运输水平的发展,人们也越来越喜欢生鲜类


技术现状:


随着AI大数据和物联网等新技术的诞生,保质期短的生鲜产品可以在特定时间送到用户手中,跟踪用户反馈的数据,既可以提高用户的满意度,又可以保证食品的安全和新鲜。


综上所述,生鲜网上的发展正处于快速增长期,市场份额越来越大。


二、每日优鲜产品概况每日优鲜成立于2014年,2018年完成了水果、蔬菜、乳制品、零食、酒鬼、肉蛋、水产、熟食、小吃、方便面、粮油、日百等全部品种的精选生鲜布局,因此SKU非常丰富,


每天优鲜都做了更准确的触摸。 媒体环境越来越准确,作为零售商和广告主也要求在算法上越来越准确。 因此,我推测戴利优有自己的OLTP。


随着新零售的到来和社区团购迎来的新风口,大型电子商务公司也纷纷布局生鲜食品EC。 阿里有箱马鲜生,京东有7Fresh,苏宁有畅快的电源,高步幅的生食演义,同样的路线还有美团小象生鲜、易果生鲜、天天果园、大润发优鲜等,生鲜食品EC海滩攻略战的未来将进一步加剧。




因此,以上产品分析表明,天天优无需构建自己的数据仓库,用于公司决策,精细化运营。


三、数据仓库的结构


1. 事实与维度

日的优良维度分析:




数据集市行列表:




2. 数据仓库数据源

数据源分为三种:


结构化数据:一般是直接由业务数据库和日志数据库生成的数据,存储在关系数据库中,一般使用的数据库是MYSQL、ORCAL、SQL SERVER、POSTGRESQL等数据半结构化数据:一般来说,用XML将半结构化的数据转换为CLOB进行存储。 这意味着它位于XML的节点上,因此可以有效地扩展数据。 半结构化数据一般在后期保存在结构化数据库中调用。 非结构化数据:一般来说,图像、文字、语言类型通常是通过NLP、图像处理、语音识别等技术手段处理后,存在于nosql数据库中。 一般有基于mongo DB和HBASE或存储器运算的列型存储Redis数据库,使数据驻留在数据库的节点上具有可以有效扩展的优点。


3. 数据仓库的物理生产环境和ETL


在服务器集群规模选择上如下分析(举例):

日活100w,每人平均产生100条日志,那么每天总日志可以是100w*100=1亿条;每条日志一般情况5~2k,按照1k进行计算,约需要100万存储空间;如果服务器半年内不尽兴扩容,那么需要的空间就是100万*180天约为18T;保存3套数据副本,为54T;一般情况下还要预留20%~30%的空间,那么需要77T;按照一个磁盘10T的容量,那么我们就可以得出需要10个硬盘的服务器。

数据仓库的物理生产环境一般是在LINUX平台下运行,因为大数据生态体系下的编译好的很多并包都是在LINUX系统中进行编译,因此从技术开发层次在LINUX下开发。

一般服务器可以部署Apache开源的服务,当然在选择框架的过程中需要考虑企业数据的规模,一般情况下大企业使用Apache框架,而对于中小企业可以选择CDH框架。可以使用使用Mysql或其他类型的数据库(根据需求)。使用PHP或者Python、Javascript进行写入。

ETL可选择Informatica、Beeload、Kettle(开源,有数据安全风险)。

在进行服务器集群管理时,可选择软件Claudira Manager(只支持CDH框架下软件安装)简化框架安装和集群管理。

4. 半结构化数据的预处理

通常会使用XML或JOSN进行半结构化数据的处理存储。

5. 物理化实现数据库物理表

这一步就是设计数据库的表结构,依据上一部中的分析维度和事实情况进行数据库表的设计。常用的维度建模模型有星型模型(结构清晰)和星座模型。根据维度模型建立数据仓库表。

6. ETL

数据仓库设计完成,再对数据库中的数据进行抽取转换加载步骤。进行数据处理。将数据在各个框架中传递。

7. 加载事实表和维度表

对已经制作完成的表结构加载,得出我们希望看到的数据的事实表。

8. OLAP分析

将数据仓库中的数据通过报表的形式和dashboard形式呈现出来。在此常用的工具有:

选择的依据可以遵循两个方面:

1)按照超大数据的查询效率

Druid & Kylin & Presto & Spark SQL

2)从能够处理的数据源多少的种类(从多到少)

Presto & Spark SQL & Kylin& Druid

数据可视化的工具一般可选用:echarts,superset,QuickBI,DataV。后两种可视化工具为阿里提供的付费工具。

四、总结

数据仓库的搭建是企业对数据的充分重视,搭建的过程可以是高层主导直接全域搭建或者由业务主题开始搭建数据集市,然后汇总成数据仓库。

优点:数据仓库使企业数据集成,向上能够帮助高层决策,向下能够满足运营、财务、采购、物流等业务部门需求;随着企业数据量的增大,为后续数据湖和数据平台的搭建提供底层支撑,对企业数据进行数据资产化和数据管理,进一步能够指导企业的业务线发展。

缺点:数据仓库帮助企业数字集成的同时,随着企业发展壮大,缺少对数据的运维,如何能够更好服务企业发展,各部门协作,是下面需要考虑的问题。

后期,数据仓库为更好的为企业节省成本,需要搭建数据平台,集成业务中台和技术中台。

由于本人知识结构尚待优化,有不足之处,请多多指正。感谢。

作者:汪仔2296,QQ:1083368735

本文由@汪仔2296 原创发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash, 基于CC0协议


推荐阅读
  • SvpplyTable: 实现可扩展和可折叠的菜单动画
    SvpplyTable 是一个示例项目,旨在实现类似 Svpply 应用程序中的可扩展和可折叠的菜单动画效果。该项目托管在 GitHub 上,地址为 https://github.com/liuminqian/SvpplyTable。 ... [详细]
  • centos 7.0 lnmp成功安装过程(很乱)
    下载nginx[rootlocalhostsrc]#wgethttp:nginx.orgdownloadnginx-1.7.9.tar.gz--2015-01-2412:55:2 ... [详细]
  • iOS snow animation
    CTSnowAnimationView.hCTMyCtripCreatedbyalexon1614.Copyright©2016年ctrip.Allrightsreserved.# ... [详细]
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • Ubuntu 22.04 安装搜狗输入法详细指南及常见问题解决方案
    本文将详细介绍如何在 Ubuntu 22.04 上安装搜狗输入法,并提供常见问题的解决方法。包括下载安装包、更新源、安装依赖项等步骤。 ... [详细]
  • 本文介绍了 Go 语言中的高性能、可扩展、轻量级 Web 框架 Echo。Echo 框架简单易用,仅需几行代码即可启动一个高性能 HTTP 服务。 ... [详细]
  • malloc 是 C 语言中的一个标准库函数,全称为 memory allocation,即动态内存分配。它用于在程序运行时申请一块指定大小的连续内存区域,并返回该区域的起始地址。当无法预先确定内存的具体位置时,可以通过 malloc 动态分配内存。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 包含phppdoerrorcode的词条 ... [详细]
  • 在将Web服务器和MySQL服务器分离的情况下,是否需要在Web服务器上安装MySQL?如果安装了MySQL,如何解决PHP连接MySQL服务器时出现的连接失败问题? ... [详细]
  • LDAP服务器配置与管理
    本文介绍如何通过安装和配置SSSD服务来统一管理用户账户信息,并实现其他系统的登录调用。通过图形化交互界面配置LDAP服务器,确保用户账户信息的集中管理和安全访问。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 本文通过基准测试(Benchmark)对.NET Core环境下Thrift和HTTP客户端的微服务通信性能进行对比分析。基准测试是一种评估系统或组件性能的方法,通过运行一系列标准化的测试来衡量其表现。 ... [详细]
  • Python多线程详解与示例
    本文介绍了Python中的多线程编程,包括僵尸进程和孤儿进程的概念,并提供了具体的代码示例。同时,详细解释了0号进程和1号进程在系统中的作用。 ... [详细]
  • 本文旨在解决 MySQL 无法连接到 localhost 的常见问题,并提供详细的步骤来确保 MySQL 服务正确启动和配置。 ... [详细]
author-avatar
叶韵
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有