SQL索引管理器-关于SQL Server,深入挖掘和索引维护的悠久历史

SQL索引管理器

我们时不时地用自己的双手,对世界的看法,无所作为,懒惰和恐惧来制造自己的问题。 结果,在公共污水模式下游泳似乎变得非常方便……因为它既温暖又有趣,而其余的都没有关系-我们可以闻到周围的气味。 但是,一旦失败就实现了简单的真理-与其产生无穷无尽的原因,自怜和自以为是,仅仅做自己认为最重要的事情就足够了。 这将是您实现新现实的起点。

对我来说,下面的文字就是这样一个起点。 预计这种方式会持续存在...

所有人都是社会依赖者,我们在潜意识里都希望成为社会的一部分,力求获得外界的认可。 但是,随着批准的进行,我们将不断被公众评估所包围,而公众评估则受到内部复杂因素和持续约束的支持。

通常,我们会不断推迟对自己重要的事情,然后在脑海中合理地合理化以试图向自己保证,我们会害怕失败:“它无论如何都不会奏效”,“它不会被别人认可”和“是这样做的用途吗?”。 我们中的许多人根本不知道自己有多强大,因为他们从未尝试过改变生活中的某些事情。

毕竟,如果一个人只做他所能做的-他会自动在他的脑海中创建一个模板:“我能做……我会做……”。 但是,一个人只做自己能做的事情就没有什么突出的了。 他之所以这样做是因为他可以,但同时又保持了他一直以来的原始能力。 但是,如果您无法做点什么,但是却设法做到了–那就是您他妈的很棒的地方。 毕竟,只有当我们离开舒适区并超出我们的能力范围工作时,我们才能发展和自我完善。

我第一次尝试使至少有意义的事情开始于大学四年级。 我已经具有一些C ++的基本知识,并且在潜在雇主的强烈建议下,一次没有成功地记住Richter所有书籍的尝试也没有成功。 偶然地,我遇到了OpenCV库和几个图像识别演示。 出乎意料的是,我开始度过不眠之夜,试图找出如何改善该库的功能。 许多事情没有解决,通过逆向工程,我试图研究方向相似的产品。 到了这样的地步,我学会了分解一个商业库,并逐渐获得了一些我自己无法实现的算法。

第五年末快到了,我一直享受着越来越多的时间。 由于已经开始充分工作,我决定写信给商业库的开发人员,从中我汲取了自己的想法。 在我看来,他们很容易会雇用我,但是在写了几封关于我希望与他们合作的愿望的信之后,我们的谈话没有任何结果。 有一点点失望和强烈的动力来证明我可以自己取得成就。

在一个月内,我建立了一个网站,将所有内容上传到免费托管服务器上,准备了文档并开始销售。 广告没有钱,为了以某种方式吸引潜在客户的注意力,我开始以开源的名义分发我的手工艺品。 反弹大约是70%,但是,对于我自己来说,其余的人虽然不情愿,但是却开始购买。 没有人为我的英语差或存储该网站的免费主机感到尴尬。 人们对满足他们需求的低价格和基本功能的结合感到满意。

有几个普通客户想作为合作伙伴投资我的企业。 然后,我从中学到了很多东西的库本身的开发者突然出现了,轻轻地暗示他们的算法已获得专利,您最好不要与他们吵架,大胆地夺走他们的客户群。 我们的谈话远非礼貌,在某个阶段,我决定让他们亲吻我的屁股。 第二天,他们发送了一封正式信,准备与我合作,但我突然中断了与他们的对话。 为了避免这些人将来遭受攻击,我开始准备专利文档并申请版权。

随着时间的流逝,这个故事逐渐被人们遗忘。 计划是雇用一个更有经验的人来帮助我,但这太昂贵了。 贪婪接管了,很明显,我想拿一个大头奖。 计划与新客户举行会议,在我们沟通的过程中发现,新客户与我位于同一城市。 他私下里描述了合作的前景,主动提出会面。

最终,几名“令人愉悦”的年轻人参加了会议,甚至没有问我意见,便提出带我去城外兜风,坚持认为迫切需要“呼吸新鲜空气”。 到达后,发出了刻有“ Sergey”的铲子,以测试我童年在祖母的马铃薯种植园中学到的技能。 在一个小时的过程中,我的观点大致向我解释了。 他们建议不要消散我的力量,并提出停止胡说八道,最重要的是,停止对认真的人无礼。

一瞬间,世界似乎不再是一个阳光明媚,宜人的地方。 很难说我当时的行动是否正确……但是我放弃了……放弃了希望,躲在一个角落里。 以上提到的一切基本上决定了接下来发生的事情:由于缺乏实施而对他人的潜在愤怒,多年的不确定性,对自己做出重要决定的冷漠以及将对他们的组织责任转移给其他人。

那时我已经快没钱了,有必要紧急地整顿自己,但是一切都从我手中落了下来。 值得庆幸的是,父亲为我提供了很多帮助。 他在熟人的帮助下找到了一个可以毫无疑问地雇用我的地方。 后来,我发现,出于我的缘故,他欠了很多不愉快的人很多–为给我机会展示自己而做出的牺牲。

在准备一份新工作时,我回到了画板上,开始阅读里希特,并深入研究了希尔德的书籍。 我本来打算从事.NET平台的开发,但是在我的正式工作活动的第一个月,事情发生了一些变化。 公司的一名员工出乎意料地离开了项目,新鲜的人肉被扔进了新形成的洞中。

当同事收集东西时,我与首席财务官进行了史诗般的对话:

-您有使用SQL Server的经验吗?
-不
-过夜学习。 明天,我将尝试将您作为中间SQL开发人员带到客户端。

这正是我开始熟悉SQL Server的方式。 一切似乎都是新的,难以理解的,并且经常通过反复试验来完成。 缺乏一些聪明的导师,我能与他们感到平等。

在接下来的几个月里,一切看上去阴沉而阴沉。 这些项目很有趣,尽管被导演们滑了下来。 匆忙的工作开始了,永恒的加班和通常没人能正常完成的任务就在我眼前展开。 我对报告的不断完善感到高兴,该报告涉及将现成的蛋糕展开为简单的半馅料。 但是由于任何一个蛋糕都可能成为另一个蛋糕的一部分,所以我摆脱了这种苛刻的业务逻辑。

我意识到事情只会变得更糟,因此决定采取行动。 我重新学习了理论,并决定在其他地方尝试运气,但是在面试中我没有足够的经验来声称自己至少是个强壮的初中生。 给自己留下深刻印象的前几天失败了,我认真地认为换工作还为时过早,我必须获得一些经验。

最终,我开始使用SQL Server,并完全投入数据库开发。 我不会否认这项工作对我来说是一个活生生的地狱,在CTO的实践中,精神分裂症每天都会在CFO的陪同下为我加油,CFO是一名来自阿富汗的前军人,在爆发性情绪中,用于在午餐时间嚼橡皮鸭的头。

有一次,我意识到自己已经准备好了。 我收集了所有关键的工作,确保了频繁的发布和与客户的直接关系正常化。 结果,我设法使首席财务官屈服了。 现在可以开玩笑约23岁的老年人,但这就是我设法将薪水提高四倍的方式。

第二个月,我为自己的成就感到无比自豪,但付出了什么代价? 工作日的开始时间是上午7.30,持续到晚上10点。 我的健康状况开始恶化,随后董事们系统地暗示我们最好故意搞砸这个项目,而不是让您的收入超出应有的水平。 他们在一定程度上信守了诺言,而我面临着寻找新工作的困境。

过了一会儿,我被邀请去一家产品公司接受采访。 我原本打算在.NET上出任类似职位,但令我震惊的是,它没有完成一项实际任务。 乍一看,他们很高兴看到我的背影,但是最有趣的事情发生在我的潜在雇主发现我对SQL Server有一定的了解之后。 我在总结中没有写太多,因为我从没想过我对此领域了解很多。 但是,那些采访我的人有另一种看法。

为我提供了改进现有产品线以供使用SQL Server的机会。 在此之前,他们没有单独的专家来从事此类活动,并且通常都是通过反复试验来完成所有工作,通常是凭经验得出的。 即使不关注细节,通常也只能从竞争对手那里复制新功能。 我的任务是向您展示您可以走另一条路,比竞争对手更高质量地处理对系统视图的请求。

与以前处理蛋糕的活动相比,这几个月对我来说是宝贵的新经验。 但是,正如您所知,所有美好事物迟早都会消失,董事们突然改变了工作重点。 那时,已完成的工作已经完成,我能找到比重新培训QA更好的解决方案,这与我们在开发新产品方面的协议有些矛盾。 我很快被提供了一个替代方案-“稍等片刻”,并尝试进行社交活动,同时自愿同意将开发工作留给人工测试。

这项工作变成了一系列单调的回归,没有推动任何进一步的发展。 为了正式回避回归,我开始在该网站上然后在其他资源上写技术文章。 刚开始时效果不是很好,但主要的是我开始参与其中。

一段时间后,我被委托在Stack Overflow上下载官方公司资料的评级。 每天我都会遇到一些有趣的案例,试图弄清大量印度法规,为人们提供帮助,最重要的是,学习并积累了经验。 这正是我获得SQL Server金牌的方式,那是我一生的辉煌时期。

偶然地,我参加了在哈尔科夫举行的第一个SQL Saturday(星期六)。 我的同事不得不向听众介绍使用我们一直在做的产品开发数据库的过程。 我不记得为什么,但是在最后一刻,我不得不做一个演讲。 丹尼斯·雷兹尼克(Denis Reznik)脸上带着传统的仁慈笑容,传了个麦克风,然后您尝试用people脚的声音告诉别人一些有意义的东西。 起初它很吓人,但后来我被带走了。

活动结束后,丹尼斯接洽并邀请我在一个较小的活动上发言,该活动通常在哈尔科夫无线电大学举行。 时间过去了,会议的名称改变了,我主持聚会的听众有所增加。 那时我不知道该做什么,但是一系列偶然的事情构成了我的生活选择,以及我以后决定献身的一切。

试图与Denis Reznik,Dmitri Korotkevich,Dmitri Pilugin之类的专家以及我很荣幸见到的其他硬汉一样,我明白在当前工作的框架内,我没有快速进步的任务。 我能够在后台观察到良好的理论,但是缺乏实践。

我得到了在新地方从头开始一个新项目的机会。 从第一天开始的工作就如火如荼地进行着。 我想从生活中得到的全部就是:一个有趣的项目,高薪和影响产品质量的能力。 但是在某个时候,在为客户完成MVP之后,我放松了并犯了一个非常严重的错误。

为了专注于开发方面并提供更好的解决方案,我越来越无法花时间进行管理和与客户沟通。 面对一个开始代替我做这件事的新人,我得到了帮助。 然后,我很难理解因果关系,但是在那之后,我们与客户的沟通开始迅速恶化,加班和团队中的紧张情绪实际上急剧上升。

我个人试图平衡项目的状况,恢复秩序并返回到更轻松的开发中,但是他们没有让我这样做。 每个人都对必须扑灭的所谓持续不断的火灾感到满意。

在分析了情况之后,我决定休假一下,并建议以前工作地点的首席执行官按我们将共同完成一个新项目的条件重返他的办公室。 我们讨论了所有细微差别,并计划在一个月内开始开发。 一个月过去了……然后又一个……又一个月了。 我所有的问题都有相同的答案-请稍等。 我自己做点什么的想法并没有离开我,但我仍然不得不暂时从事自由职业,并帮助中亚各国人民征服乌克兰的银行业。

仅仅一个月后,我发现我的项目的开发是在前任董事的正式许可下,由陌生人轻松进行的。 这些人是很酷的.NET开发人员,但对他们的工作没有专门知识。 从外面看,一切似乎都在欺骗我一个项目。 实际上是这样。 愤慨之下,我开始独自做这个项目,但是动机很快就消失了。

这位前CTO愿意帮助他进行当前的项目,而我开始尽我所能-扑灭大火。 进入工作狂之后,我收获了它的后果:不健康的饮食,与正常的睡眠方式理解和持续的压力相差甚远。 这全部由两个项目解释,我交替将其拖向光明的未来。 其中一个与赛马博彩有关,带来了全天候工作的乐趣,第二个仅仅是对管理的错误理解,因此团队从事了永恒的紧急工作。 我这一生的这段时期只能说是受虐狂,但是总有一些有趣的时刻。

在完全放松的模式下,您正在为您的父母在别墅中挖土豆,以适应逆风的节奏,然后您会意外接到一个电话:“谢尔盖……马匹停止奔跑……”。 经过几秒钟的思考,用铁锹站着,同时自己训练了千里眼的Vanga技能,您从内存中指定了DBCC命令,以便人们可以在服务器上解决问题。 我不后悔有这样的经历-太棒了!

但是这里最有趣的开始...

2017年9月底的一次会议彻底改变了我的生活。

当时,为了使自己从工作中振作起来,我打算在会议上讲话。 午餐时,我不小心在厨房里和一位同事聊天。 突然,他告诉我:“事实证明,你是一个知名人士……全国各地都有各种各样的人认识你”。 起初,我不知道发生了什么,但是他给我看了Telegram上的聊天。 当我去第聂伯罗报道时,我立刻认出了来找我的那个女孩。 我很高兴这个人记得我。 关于袖带,我决定给她发短信,并邀请她参加哈尔科夫会议,为此我正在准备报告。

我作了第一场演讲,然后立即在第二行看到她。 她来的事实对我来说是一个意想不到的惊喜。 我们交换了几句话,我开始了长达六个小时的漫长马拉松比赛。 那天是我一生中最灿烂的一天:一个完整​​的大厅,连续五次报告,当人们在倾听您的声音时,这是一种难以描述的感觉。 我很难集中注意力于整个听众,我的视力本能地落在了她身上……一个来自另一个城市的女孩……我已经认识了两年,但我们从未与她进行过交流……我们只知道每个人所有这一切。

会议结束后,我筋疲力尽,很沮丧,但我仍然想让那个女孩满意,方法是邀请她与我们俩在一起的人一起吃晚饭。 坦率地说,我是一个可怕的对话者,不断屈服并要求关注。 那很难说我发生了什么。 晚上我们在城市周围漫步并没有效果。 在我看来,最好的办法是带女孩去旅馆然后回家睡觉。 第二天,我躺在床上,太虚弱了,无法起床,直到晚上,我才开始向下滚动脑海中她说的话:“我是为你而来的……”。 我真诚地希望再次见到她,但是到那时她已经离开了。

我们聊了几周,直到我决定去找她...

在发布之前,没有人希望为客户带来麻烦,我推迟了部署并转到了Dnipro。 我脑子里到底发生了什么,真是令人莫名其妙,但是即使我不知道该说些什么,我也想见她。 我们同意在公园见面,但我感到奇怪的是,地址和5公里的路线走错了路。 过了一会儿,意识到自己的错误,我迅速带着在某个chav地区发现的鲜花回到了出租车。 一直以来,她都在等着我喝可可。

我们在未完成的舞台上坐了下来,喝了冷可可,并谈论了我们想到的一切。 她谈到了自己的过往经历,谈到了.NET上字符串数据类型的不可变性。 她有见识和聪明,有时很有趣,有些天真,但是她说的都是真诚的。 即使那样,我仍然意识到我爱上了她。

回到工作岗位后,我处于紧急状态,试图休假几天,然后第二次去找她表白。 实际上,一切都不同了……

我的幼稚,愚蠢,旧情结和不愿充分相信一个人的事实导致了我极大地冒犯了这个真诚地取悦我的女孩的事实。 早晨,我意识到自己做了什么,并尽快去亲自向她寻求宽恕。 但是她不想见我。 回去后,我试图说服自己不需要我,但是真的是吗?

我对自己发火了一个月……我就像头疼的熊……我向一个我真诚地喜欢的人说了这些话,这是不可能原谅的。 它使我的内心变得更糟,最后一切都因神经衰弱和严重的沮丧而结束。

前同事德米特里·斯凯普卡(Dmitry Skrypka)为我揭开了体育馆的面纱,帮助我摆脱了自我cast测和内部情结的恶性循环。

之后,我的生活发生了很大变化。 我完全理解软弱和不安全感的含义。 但是当我开始训练时,我感觉到了健身房所能提供的最佳体验。 这就是自信和自立的感觉。 别人对你的态度如何的感觉正在改变。 在那一刻,我意识到我不想回到过去的生活。 我决定全心全意推迟一生。

您是否曾经注意到,当一个人开始新的事物时,他开始向周围的现实宣告他的意图吗? 每个人都在不断谈论自己的计划,但是时间流逝,几乎什么也没有发生。 这样的人经常用未来时态说:“我会做到”,“我会实现”,“我会改变”,所以他们年复一年地履行自己的愿望清单。 它们就像一个手指大小的电池-动力电荷刚好足以应付一次闪光,然后足以应付一切。 我是同一个人...

最初,我计划在一个有积极进取精神的同事的陪伴下,您可以将世界打平,但是对光明未来的期望通常与实践不同。 开始做我们自己的项目时,我们不断计划和讨论,而不是束手无策。

通常,每个人都想快速地做它…每个人都希望在第一次尝试时都做它…他们都是短跑选手…每个人都开始奔跑,但是时间过去了……一个投降者……第二个投降者也是如此。 当终点线不迫在眉睫时,很少有人愿意努力工作,仅仅是因为他们必须走到尽头……早晨,下午或深夜……没有人看到,没人会称赞,也没有人一个人会欣赏你在做什么。

实施计划之前,切勿共享计划。 无论您自己多么努力,都只共享结果。 毫无疑问,在这种情况下,我们选择的道路不会总是带来愉悦,粉色的独角兽会从驴身上闪出彩虹。 在我们优先事项的工作中,我们并非总是会受到积极动机的驱动。 生活会不时地将您带到您永远不会去的地方。 但是每次我打开Visual Studio或上体育馆时,我都记得自己曾经是以及如何做。 我回想起与第聂伯罗那个女孩的一次会面,这使我想起了自己对生活的态度……我了解很多。

通常,最后一个单词的容量应足够大,以便在很长一段时间内进入内存。 我想引用我曾经在体育馆听到的一个聪明人的话。

您是否认为您来健身房是为了与齿轮打架……还是哑铃? 不……您正在与自己作斗争……与您的模板……与您的懒惰……与您开车进入的框架。 您是否想通过推迟自己的问题来不断解决其他人的问题? 可以通过较小的步骤来实现,但是您必须自信地走到一生中寻找幸福的地方,这仅仅是因为幸福是当您未发明的原则和规则不是您的负担时的条件。 幸福是当您拥有发展的动力时,它意味着在过程中享受自己,而不是最终目标。 因此,也许值得让您的屁股起来并开始为自己工作?

哦,是的,我完全忘记了……起初,本文的构想是为了使人们熟悉我一直在做的项目。 但是事实证明,在编写过程中,优先级转移到了我开始进行此活动的总体原因以及我以后不想离开此活动的描述。 简要介绍该项目...

SQL Index Manager-是Devart和RedGate的商业产品的免费且功能更强大的替代产品,并且设计用于SQL Server和Azure上的索引维护。 我不能说我的应用程序比Ola Hallengren的脚本要好,但是由于经过了优化和为某人提供了各种有用的功能,该产品绝对可以在日常任务中使用。

SQL索引管理器

SQL索引管理器

可以在GitHub上下载该应用程序的最新版本。
该应用程序的源代码在同一位置。

任何反馈意见表示赞赏:)

PS。 还要感谢Anna Petrashko担任本文翻译的助理。

Source: https://habr.com/ru/post/zh-CN457206/


All Articles