AI 时代:聊聊大数据中的 MapReduce AI时代中的大数据处理中,MapReduce起源于Google的处理大规模数据的需求,通过函数式编程中的map()和reduce()函数实现并行计算。Google早期的GFS和MapReduce论文直接影响了Hadoop等大数据框架的发展。MapReduce的重要性在于提供了处理海量数据的高性能并行计算模型,成为大数据处理的工业标准。函数式编程中的map()和reduce()函数与MapReduce的思想一致。在C#中的PLINQ也提供了类似MapReduce的并行计算模型。整篇文章围绕MapReduce的起源、原理、函数式编程以及在C#中的应用展开讨论,以及对AI时代和大数据处理的一些思考。
Redis 缓存技术学习系列之 Lua 脚本 Payne在他的博客中分享了关于Redis中Lua脚本的学习,探讨了如何通过Redis内置的Lua解释器执行脚本,以及为什么选择脚本语言进行开发。他介绍了Redis中处理脚本的Eval系列和Script系列命令的用法,以及如何在Redis中使用Lua脚本进行交互。此外,他展示了如何通过具体案例演示Redis与Lua脚本的交互,并讨论了Lua数据结构与Redis数据结构之间的转换。最后,他分享了为什么使用Lua脚本以及在处理类型转换时的一些原则。整体而言,他强调了Lua脚本在Redis中的应用和重要性。
Redis 缓存技术学习系列之发布订阅 本文讨论了Redis中的发布-订阅模式,首先介绍了观察者模式及其实现,包括抽象主题、具体主题、抽象观察者和具体观察者的角色和功能。接着详细介绍了如何在C#中实现观察者模式。随后,文章引入Redis中的发布-订阅模式,解释了其概念,与观察者模式的联系以及相关的Redis命令,如PSUBSCRIBE、PUBLISH等。最后通过示例展示了Redis发布-订阅模式的实际操作过程。整体强调了设计模式的重要性以及Redis的发布-订阅模式与观察者模式的关联。
Redis 缓存技术学习系列之事务处理 本文讨论了Redis中的事务处理技术。在数据库事务部分解释了事务概念,ACID属性以及事务处理的重要性。在Redis中,事务可以看作是一个命令队列,通过MULTI开始一个事务,然后逐条向Redis提交命令,最后通过EXEC执行事务。Redis中的事务与传统事务类似,具有原子性和一致性。文章还介绍了悲观锁和乐观锁的概念,以及Redis中的check-and-set机制。另外,文章提及了如何管理Redis的键,包括惰性删除和定期删除策略,以及一些建议如临时键和普通键的使用等。
Redis 缓存技术学习系列之邂逅 Redis 这篇文章介绍了对传统关系型数据库的一些看法,引入了学习 Redis 缓存技术的决定。详细解释了 Redis 的定义、特点和优势,以及如何开始使用 Redis,包括编译和安装步骤。进一步介绍了 Redis 中支持的数据类型,如字符串、散列、列表、集合和有序集合,以及与键相关的命令。最后,作者强调了在学习技术时注重整体理解,留下细节问题在实际使用时查阅文档的重要性,并展望了对 Redis 的事务、脚本、发布/订阅和多语言使用的关注。