大数据核心技术有哪些

昨天加班到半夜,对着电脑屏幕上的数据报表发呆。
那些花花绿绿的图表,其实就是机器学习跑出来的结果。
突然想到,当初刚入行那会儿,为了抓取用户行为数据,整晚整晚地盯着FlumeNG的日志输出,看那些滚动的小窗口,感觉像是看股票行情。
那时候用的是Flume1 .6 版本,部署在两台旧的Dell服务器上,内存总是不够用,时不时就得重启。
Zookeeper倒是稳定,就是配置起来真麻烦,总得记得修改zoo.cfg文件里的dataDir路径。
等等,还有个事,当年我们预处理数据,用的还是Python脚本,一个个清洗缺失值,感觉像是在淘金,慢得很。
现在想想,要是早点用上Spark,效率不知道能高多少倍。

MySQL怎样利用GIS函数处理空间数据 MySQL地理空间函数的实际应用案例

哎,2 02 2 年那会儿,我在一个城市搞了个大数据分析项目,用了MySQL的GIS函数处理空间数据,当时我懵了,搞不清楚这些函数怎么用,后来才反应过来,真是挺有意思的。

我们用ST_Distance()计算了两个地理点之间的距离,比如我们要找距离某个坐标点最近的1 0个用户,这功能挺实用的,就那么一串SQL语句,直接搞定,我当时还以为得跑外部的GIS软件呢。

然后呢,我们用ST_Contains()判断点是否在区域内,比如筛选位于北京市的所有用户,这功能在区域筛选上用得挺多的,挺方便的。

还有,查找附近目标,我们用了ST_Within()加ST_Buffer(),这就像是给用户周围画个圈,圈里有什么就找什么,比如我们要找用户1 2 3 周围5 00米内的餐厅,这功能在POI推荐上挺受欢迎的。

性能优化这个事儿,关键就是空间索引,我们给用户的经纬度字段创建了空间索引,这样一来,查询效率就提高了,避免了全表扫描。

哎,性能问题嘛,最常见的比如缺少空间索引,导致查询效率极低,还有复杂空间计算消耗CPU资源,数据类型选择不当,坐标系统不一致,这些问题都挺棘手的。

然后,我们看几个实际应用案例,外卖平台骑手调度,共享单车停放点推荐,区域人口密度分析,这些场景都挺常见的,用MySQLGIS函数处理起来挺方便的。

还有呢,我们和地图引擎结合,可视化空间数据,和地理编码服务结合,地址和坐标的双向转换,和大数据平台结合,处理海量空间数据,这些应用还是挺广泛的。

未来发展趋势嘛,更强大的函数,更好的性能,更广泛的应用,看来MySQLGIS函数前景挺不错的。

这MySQLGIS函数,真是挺实用的,合理使用,性能优化得当,真能发挥大作用。

MySQL和TiDB的水平扩展能力对比

MySQL扩展能力差,TiDB强多了。

MySQL单节点限制明显。
数据量上来,CPU内存磁盘全爆。
主从复制只是读写分离,本质没变。

TiDB分布式架构厉害。
数据自动分摊到多个节点。
负载均衡自动完成,不用手动搞。

MySQL分库分表麻烦。
分片键选不好,查询跨分片就慢。
扩容迁移还容易出问题。
生态也不兼容。

TiDB扩容简单。
加节点就行,数据自动迁移。
缩容也自动处理。
跨节点事务支持,功能一点不丢。

MySQL适合小业务。
数据量稳定,并发不高就行。
TiDB适合大业务。
用户多,流量突增,大数据分析。

MySQL要堆硬件。
成本高。
TiDB用普通服务器就行。
总成本低。

你自己看。