apache-spark - Apache Spark 可以用作数据库替代品吗? (例如替换Mysql)

标签 apache-spark pyspark apache-spark-sql

我需要一个可扩展的数据库解决方案,可以扩展到多个工作节点,并且我遇到了 Apache Spark SQL,它似乎具有非常强大的弹性。我可以用它来替代 Mysql 吗?我尝试过从 DataFrame 创建、读取、更新、删除值,但它似乎不是为此目的而构建的?我(目前)找不到一种更新和行的方法...这几乎就像一旦拥有数据就可以查询数据,但不适合插入数据

我错了吗?我对 Spark 非常陌生,我不想花时间尝试将其变成它不是的东西

如果它不能用作数据库……这是否意味着 Spark 仅用于分析?如果我想要实时信息,我应该使用数据库存储数据,然后将数据集加载到 Spark 中吗?

最佳答案

探索三角洲湖。 Delta Lake 提供酸性交易,您可以在数据湖(如 s3 或 adls)内构建可靠的“数据仓库”。

这意味着您可以对 Delta 表进行更新/删除/插入/合并。

请记住,Spark 是处理和准备层的有力候选者,这意味着您可以批量或流式地从各种来源获取数据,如果需要的话将它们混合在一起,并且您可以使用 Delta Lake 理解您的数据。

但是,服务层有更好的工具可以处理大量并发用户/查询,例如 sql 数据库或 dremio。

关于apache-spark - Apache Spark 可以用作数据库替代品吗? (例如替换Mysql),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60105479/

相关文章:

apache-spark - 抑制 Apache Spark 日志中的 OutputRedirector 文本

python - 使用 Databricks 处理大量 JSON (~12TB)

python - 如何在 PySpark 中序列化 LabeledPoint RDD?

java - 如何在 Spark sql 中舍入值

python - 如何使用许多工作人员发送 slurm 作业,而不仅仅是在本地模式下运行?

java - 在 Java 应用程序中使用的 Spark 模型

python - SPARK 安装后无法在 MAC 中运行 pyspark

apache-spark - 从 Spark 到雪花的连接

apache-spark - 如何在 Spark SQL 中分割一串数字并取其平均值?

scala - 如何创建自定义列表累加器,即 List[(Int, Int)]?