首页 文章 精选 留言 我的

精选列表

搜索[连接],共10003篇文章
优秀的个人博客,低调大师

Mac上连接nifi

1. open terminal 2. ssh root@nifi.webus.cn 3. logs cd /var/lib/nifi/logs 4. view log tail -100f nifi-app.log 5. configuration cd conf ls vi bootstrap.conf press i for inserting, wq : write and quit q!: quit only 6. 重启 命令行输入service nifi status看状态 命令行输入service nifi restart重新启动 /mnt/nifi/nifi-node1/conf wdp002 https://support.rackspace.com/how-to/connecting-to-a-server-using-ssh-on-linux-or-mac-os/ ambari: ambari-server restart /etc/hadoop/2.4.2.0-258/0 wdp 7. 权限 change owner: su admin hadoop fs -chown root /nifi/finance/Docs/* change read permission: hadoop fs -chmod -R 777 hdfs_path 8. 查询文件数及大小 hadoop fs -count /nifi hadoop fs -count -q /nifi 9. 查找 find / -name '*pandas*' 本文转自疯吻IT博客园博客,原文链接:http://www.cnblogs.com/fengwenit/p/5552362.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

智能数据连接世界

近年来,大数据正日益成为国家基础性战略资源,蕴藏着巨大的潜力和能量。在近期作为G20重要组成部分的B20峰会上,其主旨演讲中便突显了一句对整个互联网IT行业最为重要的判定:“以互联网为核心的新一轮科技和产业革命蓄势待发,人工智能、虚拟现实等新技术日新月异,虚拟经济与实体经济的结合,将给人们的生产方式和生活方式带来革命性变化……”作为一家专注于大数据领域的公司,TalkingData对这段话有着更深刻的理解——无论是人工智能,还是虚拟现实,抑或是自动驾驶等高新技术,背后的原动力都来自对数据的深刻理解和应用。没有海量数据的支撑,人工智能不可能在近年来快速发展;没有对人类驾驶行为数据的学习,自动驾驶只能是空中楼阁。 2016年9月13日,北京——由国内领先的独立第三方移动数据服务平台TalkingData主办的——“T11 2016暨TalkingData智能数据峰会”在北京中国大饭店隆重召开。国内外各领域的数十位数据专家、行业精英、知名学者齐聚一堂,深入探讨了业界建设性议题,引导行业方向,创造海量商机,堪称数据领域一年一度的行业盛会。 可见,以数据为核心的“第四次工业革命”——工业4.0、虚拟现实、云计算、大数据等都被认作是全球复苏发展的必由之路,其本质都是大家喊了许久的“大数据”。而发展多年的“大数据”即将进入“下半场”。回顾几年来科技领域的发展,我们不难发现,现阶段的“数据”与以往的数据已经有很大不同。其内容包含的信息量越来越大、维度越来越多,从图像、声音等富媒体数据,逐渐过渡到人的动作、姿态、行为轨迹,再加上地理位置、天气、社会群体行为等等,按照以往处理数据的思路已经难以适应“数据”本身发展的速度。“后大数据”时代,即融合人类智能、人工智能以及海量非结构化数据的智能数据时代。 图1. 智能数据时代的贝叶斯定律 智能数据时代的到来,对各行各业提出了全新的挑战。如何应对挑战成了各大企业面对的主要问题。在本次TalkingData T11 智能数据峰会上,TalkingData与所有与会嘉宾就此进行了深刻的讨论。首先,我们需要构筑数据思维,用数据的方式去思考问题;其次,需要深厚的数据科学与技术积累,只有深厚的技术积累才能更好的让数据为我所用;再次,智能数据的应用必须以商业结果为导向;最后,鲜活的数据才有价值,每一位参与者都要有开放合作的心态,才能在智能数据生态下共生共赢。 而智能数据平台将成为未来大数据生态发展的核心。智能数据平台(SmartDP)是TalkingData新创建的词。它是基于智能数据应用,探索商业价值的平台,具有数据管理、数据工程和数据科学的能力。旨在发挥自身优势,利用5年来在数据科学、数据管理、数据工程方面的各项积累,在横跨互联网、移动互联网、传统行业等领域积累的经验,有机整合并产品化,促进行业发展,并为各行各业提供更完善的数据产品及服务。 图2. 智能数据平台的定义 另外,在本次大会上,国内外领先的人工智能团队、数十家数据应用研发企业、三大运营商、移动互联网企业、金融、地产、快消、零售,乃至政府机构,共同就“构建智能数据生态”这一议题展开了讨论。 图3. TalkingData智能数据生态图谱 在未来,基于智能数据平台,整合多种数据源,充分利用数据科学、数据工程,结合不同行业扩展出更多数据应用的智能数据生态,将使得每一位生态参与者从中获益,每一位参与者既可以为数据生态贡献力量,也可以从中获得所需的驱动力,最终实现共生共赢的健康发展局面。 虚拟现实、人工智能、现实增强、物联网、车联网……网络、科技正在逐渐改变我们生活中习以为常的方方面面,可以预见在不远的将来,人类将迎来一轮新的科技爆发。而数据必将是下一次科技爆发的基石! 本文作者:赵立京 来源:51CTO

优秀的个人博客,低调大师

ConcatAdapter 顺序连接其他 Adapter

ConcatAdapter 是 recyclerview: 1.2.0-alpha 04 中提供的一个新组件,它可以帮我们顺序地组合多个 Adapter,并让它们显示在同一个 RecyclerView 中。这使您可以更好地封装 Adapter。您不必再将许多数据源组合到一个 Adapter 中,从而在减少 Adapter 复杂度的同时也让它们可以被复用。 这方面的一个用例,是在列表头部和底部显示加载状态:当列表从网络中检索数据时,我们想显示一个加载中的图标;如果出现错误,我们要显示错误信息和重试按钮。 △ 一个带有底部的 RecyclerView,底部显示了加载状态:加载进度或错误信息 ConcatAdapter 简介 ConcatAdapter 让我们可以顺序显示多个 Adapter 中的内容。例如,假设我们有下面三个 Adapter: val firstAdapter: FirstAdapter = … val secondAdapter: SecondAdapter = … val thirdAdapter: ThirdAdapter = … val concatAdapter= ConcatAdapter(firstAdapter, secondAdapter, thirdAdapter) recyclerView.adapter = concatAdapter RecyclerView 将会按 Adapter 顺序显示所有的项目。 使用不同的适配器可以使您更好地区分列表的每个部分。例如,如果要显示一个头部,可以将其封装在它自己的 Adapter 中,而无需把头部的逻辑与处理列表显示的 Adapter 混杂在一起。 △ RecyclerView 和 Adapter 数据 在头部和底部显示加载状态 我们可以在头部或底部显示一个进度条或错误信息。列表成功加载数据后,头部或底部便不应该再显示任何信息。这样一来,它们就可以用 Adapter 实现有 0 个或 1 个项目的列表: val concatAdapter = ConcatAdapter(headerAdapter, listAdapter, footerAdapter) recyclerView.adapter=concatAdapter 如果头部和底部用的是同一布局、ViewHolder 和 UI 逻辑 (例如: 进度条要何时显示、怎么显示),您可以只实现一个 Adapter,然后创建两个实例: 一个作为头部、一个作为底部。 要获得完整的实现,请查看这里 拉取请求,它添加了: 从ViewModel 中暴露出来的 LoadState 显示加载状态的头部和底部的布局 头部和底部的 ViewHolder 对象 一个 ListAdapter,它基于 LoadState 显示 1 或 0 个项目,每次 LoadState 有变动的时候,我们会通知相应条目进行改动、插入或移除 (您可以在 拉取请求 中查看相应的代码)。 🔎 更多关于 ConcatAdapter 的信息 ViewHolder 默认情况下,每个 Adapter 维护它们自己的ViewHolder池,在 Adapter 之间不会进行复用。但如果多个 Adapter 使用的是同一种 ViewHolder,我们可能会想要在 Adapter 间复用 ViewHolder 的实例。我们可以在构造 ConcatAdapter 时使用一个ConcatAdapter.Config对象来实现这样的效果。只要设置isolateViewTypes =false,就可以让所有合并进来的 Adapter 使用同一个视图池。在显示加载状态的头部和底部的例子中,两种 ViewHolder 事实上使用的是相同的内容,所以我们可以复用它们。 ⚠️如果要支持不同的 ViewHolder 类型,您应该实现 Adapter.getItemViewType方法。当您复用 ViewHolder 时,确保同一视图类型没有对应不同的 ViewHodler!防止出现这个问题的最佳实践之一,便是将布局 ID 作为视图类型返回。 <!-- Copyright 2019 Google LLC. SPDX-License-Identifier: Apache-2.0 --> class HeaderAdapter() : RecyclerView.Adapter<LoadingStateViewHolderHeaderViewHolder>() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { return LoadingStateViewHolder(parent) } override fun getItemViewType(position: Int): Int { - return 0 + return R.layout.list_loading } } class FooterAdapter() : RecyclerView.Adapter<LoadingStateViewHolderFooterViewHolder>() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { return LoadingStateViewHolder(parent) } override fun getItemViewType(position: Int): Int { - return 0 + return R.layout.list_loading } } 使用 stable id 相比于使用 stable id 搭配notifyDataSetChanged,我们更建议使用 Adapter 的特定通知事件,该事件可以为RecyclerView 提供更多有关数据集更改的信息,从而使 RecyclerView 可以更有效率地更新 UI,同时也有更好的动画效果。如果您正在使用ListAdapter的话,其内部会使用DiffUtil回调帮您处理通知事件。但是如果您需要使用 stable id,ConcatAdapter.Config 为其提供了三种不同的配置: NO_STABLE_IDS、ISOLATED_STABLE_IDS和SHARED_STABLE_IDS。其中后面两种需要您自己处理 Adapter 中的 stable id。您可以查看StableIdMode文档来获得更多关于其工作原理的信息。 数据变更通知 当 ConcatAdapter 中的一个 Adapter 调用了通知函数时,ConcatAdapter 会在更新 RecyclerView 之前计算新的项目位置。 从 RecyclerView 的角度来看,notifyItemRangeChanged表示更新的项目相同,只是内容有所更改;notifyDataSetChanged表示前后数据之间没有任何关系。因此,我们无法将 notifyDataSetChanged 映射到 notifyItemRangeChanged 中。 如果一个 Adapter 调用了 Adapter.notifyDataSetChanged,则 ConcatAdapter 也会调用Adapter.notifyDataSetChanged,而不是 Adapter.notifyItemRangeChanged。与 RecyclerViews 一样,我们要选择更精细的更新操作,一般情况下避免调用 Adapter.notifyDataSetChanged()。也可以使用自动执行此操作的 Adapter 实现,例如ListAdapter或SortedList。 查找 ViewHolder 位置 您可能使用过ViewHolder.getAdapterPosition来获得 Adapter 中某个 ViewHolder 的位置。现在,因为我们合并了多个 Adapter,作为代替,您需要调用ViewHolder.getBindingAdapterPosition()。如果您想在共享 ViewHolder 的情况下获得最后一个绑定某个 ViewHolder 的 Adapter,可以使用ViewHolder.getBindingAdapter()。 以上就是全部了!总结一下: 如果要顺序显示不同类型的数据的同时,也希望这些数据能够封装在它们自己的 Adapter 中,请开始使用 ConcatAdapter;如果想要更进一步对 ViewHolder 池和 statle id 进行高级控制,则要使用 ConcatAdapter.Config。

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Apache Tomcat

Apache Tomcat

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

JDK

JDK

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。