公司想搭建一个类似数据中心的东西,有什么实现思路和方式,还有工具推荐么

2020-11-10 10:54:48 +08:00
 Renco

大致需求是 所有系统的数据可以抽出来放入数据中心里,所有系统可以通过固定规范访问数据中心获取对应数据。进入到数据中心的数据需要经过一定的校验,否则会生成 csv 文件,人工修改后再选择传入数据中心。数据中心本身需要有一定的简单的业务处理能力,能对外提供查询服务(全文检索),并且可以对已有的数据进行分析的功能。

我自己的想法是可以先通过 es 实现。但是架构师后来给我提了什么数据仓库或者类似数据湖的概念,我查询了下又觉得 es 不足以能够实现或者替代 数据仓库和数据湖的思想。这种需求还有什么其他的解决思路么。

ps:个人感觉我一年的 java 开发经验上手做这种东西有点蛋疼了:( 不过创业公司,架构师基本上是一个大功能模块放出来,给我们一个思路让我们自己去尝试实现,只能加把劲争取做了。

路过的大佬给点思路!跪谢!

5646 次点击
所在节点    程序员
28 条回复
tomczhen
2020-11-10 11:01:09 +08:00
性能指标,功能指标,预算指标啥没有,就用云架构吧。
tabris17
2020-11-10 11:03:31 +08:00
碰到过好几次 es 掉数据了。不是很可靠的数据存储后端。
tabris17
2020-11-10 11:07:34 +08:00
另外 es 基本上没什么业务处理能力。不如考虑下 pgsql 或 hive 吧
Renco
2020-11-10 11:08:00 +08:00
@tomczhen 现在暂且是简单选型,和调研,具体指标方面都还没列
snappyone
2020-11-10 11:08:47 +08:00
es 做搜索,存储用 hadoop 这种,计算用 spark 。一年经验确实难为你了
huifer
2020-11-10 11:10:37 +08:00
基础技术选型: Spark/Hive/Flink 这类提供查询方式的. 并不一定是 ES , es 提供全文搜索, 更适合于文档. 非结构化数据.
确定技术选型后需要制作 ETL 即 各类数据源数据收集处理, 转换成数据中心(数据仓库)的数据对象(数据结构)
数据转移完成后进行数据分类, 此时接入 ES 或者 MONGODB 我认为相对合适. 此时接入 ES 主要是进行归档数据存储,
后续对外暴露服务可以通过 Spark sql + es 搜索 等技术进行暴露服务, 编码语言等不做限制,
ssssshi
2020-11-10 11:11:59 +08:00
直接搜数据中台技术架构 ,照着大厂的架构挑对自己公司有用的来,选型的时候多结合自己公司的业务和各产品特点,比如 CK 查询快,redis 数据新,计算用 hive spark flink 之类的,存储 hdfs,抽取 flume 等等...
一开始的时候架构分层要清晰,不要各种生命周期的数据混在一起
huifer
2020-11-10 11:12:51 +08:00
就针对数据处理而言可能需要采用 MQ 或者 主从数据库等形式来尽可能减少对线上环境的影响....考虑不是很全面. 请多指教
Renco
2020-11-10 11:14:48 +08:00
感谢!
Renco
2020-11-10 11:15:18 +08:00
@huifer
@ssssshi 感谢回复建议!
silentt
2020-11-10 11:17:05 +08:00
给你一条生产上的建议,选型一定要选 SQL 语法支持完备的数据库做数仓。你会发现绝大部分大数据的工作都是写 SQL 。
Renco
2020-11-10 11:28:16 +08:00
@silentt 好谢谢!
angryfish
2020-11-10 12:58:17 +08:00
要是我说上 oracle,大家会不会打我
rapperx2
2020-11-10 13:09:37 +08:00
ClickHouse
bxb100
2020-11-10 13:11:27 +08:00
@angryfish #13 确实是好的选择, 但是太贵了
evil0harry
2020-11-10 13:19:23 +08:00
clickhouse + kafka
levelworm
2020-11-10 13:21:30 +08:00
我们用 vertica 和 kafla,但是不知道你具体情况不好推荐。。。
zorui
2020-11-10 13:23:49 +08:00
阿里云 的话 dla 可以满足
jadec0der
2020-11-10 13:28:09 +08:00
ES 和数据湖是两个场景,数据湖里的数据做分析,是不在数据库端做条件查询的。比如一个 data scientist 用 Spark 分析订单数据,他会取全量的订单数据放到 Spark 里,然后写 Spark SQL 在内存里对数据进行查询。既然在数据库端不需要做查询,那就不需要对存储的数据做索引,数据存 csv 格式放对象存储里就行了。所以关键看数据怎么用,你得先把这个搞清楚。
zyuu2
2020-11-10 13:34:31 +08:00
postgresql+clickhouse 。clickhouse 存量大的、日志型数据,postgresql 存量小的、聚合后的数据。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/723503

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX