00:00
好,那这个呢,我们已经敲定了,用这个table name加ID的方式来作为我们的key,所以呢,这边我们应该先写string叫red。K,对吧,赋值好,那假如说我们加一个DM啊,加一个表示维度对吧,然后呢,一个哎这个冒号啊,再加上table name啊,再拼接一个冒号对吧,多个值啊呃,然后拼接上咱们的一个ID,好,那这个整体呢,作为我们的,也就是说未来它长的样子呢,就是DM括号,嗯,表明我拿一个这边有表明。然后冒号143对吧,就这个样子,好,接下来呢,我们去查询,呃,既然我们说了用这个string类型,那string类型RAAPI,我们应该怎么去获取这个值啊。点调用哪个。
01:04
String类型,那么这个时候我们应该用什么?还记得吗?陈总说了对吧。啊看加V得到一个。这个DM Ford,杰森str。对吧,啊,一个JSST啊,那这是获取了这个数据啊,查到了,但这个也不一定有。对吧,啊,也不一定有啊,那所以呢,我们判断判断这个DM它不等于呢才可以,如果说它等等于none这个东西呢,没有这个P不存在,不存在它返回这是个none对吧?是个none呢,你就继续往下游走啊,就该拼接拼接该查phoix查phoix对吧?呃,那这边我们看一下,如果说它,诶。
02:04
是不是呢,不是,那呢,首先我们最终要返回,但是返回之前呢,你要做个事情close啊,因为家长们要return把这个返回掉,对吧,把它变成接3OBJECT点。Pass object这个D的str。对吧,啊做这些事情啊,那这个中间还有一件事情就是注意啊。如果它不等于呢,这是。归还链接啊,那这边是返回结果啊,在这个中间呢,我们还要做一个事情。重置。过期时间,因为我们之前说了,对啊,陈总说对了,要重置这个TTL啊,就是这是被读了对吧,读了之后我们也要重置提点啊被读了那怎么做呢?我们就直接这个这点exp对吧,重写一下就好了,Ready好这边呢,我们说了,假如说24个小时对吧,这边注意看seconds。
03:13
对吧,他要的是秒,那就24乘以24个小时60分钟。一分钟,然后60秒对吧,24个小时60分钟啊,就这样去写一下对吧,好重置过去时间,那这个就搞定了,这就是我们的茶。四零无所谓啊,我就这样写一下也一样嘛。对吧,啊,就这样写一下也一样啊好,那接下来呢,就是说我们要干什么事啊。查询菲之后你看啊,那如果说这个等等于now,等等于now,它不走这个return吧,走不掉,那就走这个地方啊,那这个地方呢,你也不要着急反馈结果了,我们把这个结果拿出来。
04:03
呃,这个叫in for杰森。监测对象对吧,我们把它拿出来,最后呢,做一个返回,但是查询拿到值之后,在这是不是还要。不要着急返回结果,在返回结果之前。将数据写入red对吧?好,那这个key呢,我们都准备好了,那所以呢,我们就Je.set吧,啊,之前是get,现在是set啊,Set ready key value呢,把它变成字符串对吧,就拿着我们的d in for Jason。点to Jason string写进去,然后呢,设置它的一个时间,Xcel还是一样的,然后呢,24乘以60乘以60,对吧,接下来把的给它扣掉。好,那这两件事情我们搞定了,就是说第一件事情是读。
05:01
读数据对吧,第二件事情呢,是写的red啊呃,一个在我们查菲尼格斯前作,一个在查菲尼格斯之后去做,这两块有没有问题,这个是比较简单的啊。OK吗?这两块内容能不能行。应该问题不大吧,啊好,这是关于。读跟写,但是还有一个东西,我们是不是要删除数据,为了一致性还要删除数据,大家还记得吧,我们说了有三件事情要做,读写和删啊。呃,那删除数据呢,我们先在这写一个方法啊,写一个方法可以吧,假如说public static啊,删除数据那就忘就好了,然后DL这个。
06:03
这个DM info对吧?呃,那删除数据传进来的东西还是一样的,我们要传这个string肯定要用table name对吧?因为要拼接这个key用啊,呃,然后接下来呢,String类型一个ID,好,那这边呢,我们red u.get jeal得到一个je,最终呢,我们把这个还回到池子里面对吧?在这边呢,我们写一个key。啊,重新赋值,那这个呢,我们就把这个拿一下啊,它这个跟这一样。然后接下来呢,Je.delete然后呢,Key对吧,我们先把这个工具方法先写好,大家注意一下这个三个位置close close啊,然后这也有个close,一定要关掉,不关的话最后你就获取不到这个内容了,好工具方法写好了,那我问一下大家,呃,那我应该这个东西写在哪啊。
07:08
我谁什么时候去调用这个工具类呢。我什么时候去调用这个工具类,也就是说我们在哪个类里边去做这个事。或者说你说一下位置。更新维度,更新维度的时候。好,有同学说了更新维度,那你告诉我更新维度在哪个类,还记得吗?我们代码应该写到哪?写H表,有没有同学记得这个哪个类?那名叫什么?记得吗?有同学记得。
08:02
有没有同学知道是哪个类里啊?啊,这个是大类,具体一点呢。具体一点的,这个类里面调用的函数可不少,哎,调用的外部的方法。DMC function啊,没问题啊,在DM function里边啊,在我们的APP function叫DM s function这个类是专门用来往h base去写的,对不对啊,不在table process啊,并不在table process,注意一下啊。在DMC个方程,这是不是负责往Phoenix去写啊,对吧?所以我们在执行写入之前,在这判断,如果当前数据为update对的,也就是更新操作,则删除先。
09:03
中的数据。对吧,啊加这个好,那这边呢,我们要调用那个叫dim MU。点delete好表明,呃,那么这个地方的表明是谁呢?表明是不是他呀,就是table吧,是不是不要搞错了,因为这里边有很多表明啊。对吧,应该是这个叫think table对不对。因为这还有一个什么table name,那你想到底是table name还是think table?是哪个呀?因为这里边有两个表明对吧,一个是table name,一个是think table,那肯定是think table吧,因为我们要的表明是不是的一个表明啊。
10:09
就是Phoenix的表明吧,所以一定是think table啊,所以呢,我把它拿一份啊,呃,我给他写到这。还加V得到一个think table啊,第一个位置think table,但是非这个词里边都是大写的,对不对,所以呢,我们to upcase啊,把它变成大写,注意一下,第二个要一个ID,那ID哪来呢。ID哪来?对了,在阿里边是不是after里边呢,会有ID啊,所以呢,我把这个也提出来啊,就没必要写两份了,对吧。这个呢,得到一个after,好,那after.get string,然后呢,ID取出来,好,我们要做一个判断,如果是更新操作才需要做这个事,对吧?好,那这边呢,If。
11:07
update.equals这个呃,从当中点get。Tap。如果是新增操作,我们需要去删除吗?如果是新增操作,我们需要删除吗?不需要吧,我们只在更新操作的时候,是不是就删除一下就好了。对吧,我们只需要在更新操作的时候去删除一下,那就够了。没问题吧,啊,所以呢,我们找到它的一个更新操作,当然这个地方你get SP也可以啊,Get spin对吧?啊好,那这个就搞定了,那大家想一个问题啊,它存不存在这种情况,什么情况呢?我来了一个18这个维度啊,之前写进去了,写到菲尼克斯了,我对18呢又改了,但是在你写跟改之间没有人访问,那也就说是个空的,里边压根就不存在这个18这条数据,那我这样写有没有问题呢?
12:19
能听明白我说的吗?就是说这边这个18不存在。我直接这样写,你更新了对吧,根本就没有这个数据有没有问题啊。没有问题吧,对的,没有问题,为什么?因为在里边。在里面,呃,我们假如说删除一个不存在的key,它是不会报错的,对吧,它是不会报错的,你比方说这边这个方法来对力的这个方法,对类的这个方法呢,看它的返回值吧。
13:08
他返回,这是个浪类型。啊,这个是D类的,我们看这个啊看这个。对吧?啊,那也就是说它可以同时删除多个K,那返回成long什么意思呢?表示有几个可以真的被删了,假如说我这里边有ABCD4个对吧?好,这个有两个K存在,这两个K压根在边不存在,那返回值就是二证明删除了两个啊,这两个不存在的,那无所谓啊,对吧,这个是无所谓的啊,那这个要注意一下,所以呢,这边我们就写完了,接下来我们做一个测试。
我来说两句